消息推送方法、系统以及消息设备技术方案

技术编号:21146084 阅读:30 留言:0更新日期:2019-05-18 06:40
本发明专利技术公开了一种消息推送方法、系统以及消息设备,涉及物联网技术领域。消息推送方法包括:第一消息设备和第二消息设备协商确定临时密钥;第一消息设备采用临时密钥对主题信息进行加密,生成加密主题消息;第一消息设备采用存储的第一消息设备私钥对加密主题消息进行签名;第一消息设备将签名后的加密主题消息发送给第二消息设备,以便第二消息设备采用第一消息设备公钥和临时密钥对签名后的加密主题消息进行验证和解密,获得主题信息。本发明专利技术通过令第一消息设备和第二消息设备采用协商的临时密钥进行加密通信,从而第一消息设备和第二消息设备可以经常更换加密密钥,提高了消息推送的安全性。

【技术实现步骤摘要】
消息推送方法、系统以及消息设备
本专利技术涉及物联网
,特别涉及一种消息推送方法、系统以及消息设备。
技术介绍
与传统的互联网设备相比,物联网设备由于其在处理器性能、网络带宽和稳定性等诸多方面的限制,使其对推送系统提出了更高的要求。轻量级的基于代理的发布/订阅的消息推送协议的设计思想是轻量级、简单、开放、易于实现。基于此类协议,几乎能把所有联网的物体和外部连接起来,特别是在有限的条件下,例如对于计算能力有限、且工作在不可靠、低带宽的网络环境下的传感器和控制设备端,能够方便地实现系统中各设备的通信功能。相关技术通过消息中间件,采用发布/订阅机制实现消息推送。然而,这类技术的安全性较低,在使用时会造成安全隐患。
技术实现思路
专利技术人经过分析后发现,由于相关技术所采用的协议比较简单,从而部分设备在通信时并未采用消息签名和加密机制,消息在传输过程当中容易被篡改和截取;而部分采用了加密机制的方法需要在服务器和终端等设备处预置加密密钥进行加密,密钥容易泄漏,同样会带来安全隐患。本专利技术实施例所要解决的一个技术问题是:如何提高物联网设备在消息推送时的安全性。根据本专利技术一些实施例的第一个方面,提供一种消息推送方法,包括:第一消息设备和第二消息设备协商确定临时密钥;第一消息设备采用临时密钥对主题信息进行加密,生成加密主题消息;第一消息设备采用存储的第一消息设备私钥对加密主题消息进行签名;第一消息设备将签名后的加密主题消息发送给第二消息设备,以便第二消息设备采用第一消息设备公钥和临时密钥对签名后的加密主题消息进行验证和解密,获得主题信息。在一些实施例中,临时密钥是根据第一消息设备生成的第一临时数据和第二消息设备生成的第二临时数据确定的。在一些实施例中,第一临时数据是第一消息设备生成的随机数,和/或,第二临时数据是第二消息设备生成的随机数。在一些实施例中,第一消息设备和第二消息设备协商确定临时密钥包括:第一消息设备对连接消息进行签名,其中,连接消息包括第一消息设备生成的第一临时数据,连接消息为连接请求消息或者连接响应消息;第一消息设备将签名后的连接消息发送给第二消息设备,以便第二消息设备在对签名后的连接消息进行验证并通过后提取第一临时数据,并根据第一临时数据和第二消息设备生成的第二临时数据生成临时密钥。在一些实施例中,第一消息设备和第二消息设备协商确定临时密钥包括:第一消息设备接收第二消息设备发送的签名后的连接消息,其中,连接消息包括第二消息设备生成的第二临时数据,连接消息为连接请求消息或者连接响应消息;第一消息设备对签名后的连接消息进行验证;第一消息设备响应于对签名后的连接消息的验证通过,提取连接消息中的第二临时数据;第一消息设备根据第一临时数据和第二临时数据生成临时密钥。在一些实施例中,第一消息设备采用临时密钥、根据加密签名控制消息对主题信息进行加密,生成加密主题消息;第一消息设备采用存储的第一消息设备私钥、根据加密签名控制消息对加密主题消息进行签名;其中,加密签名控制消息包括加密方法信息和签名算法信息。在一些实施例中,消息推送方法还包括:第一消息设备根据计算能力信息选择签名算法和加密方法,并根据选择的签名算法和加密方法生成加密签名控制消息。在一些实施例中,消息推送方法还包括:第一消息设备接收第二消息设备发送的签名后的加密主题消息,其中,签名后的加密主题消息是第二消息设备采用临时密钥对主题信息加密、再采用第二消息设备存储的第二消息设备私钥进行签名生成的;第一消息设备采用第二消息设备公钥对签名后的加密主题消息进行验证;第一消息设备响应于对签名后的加密主题消息的验证通过,采用临时密钥解密加密主题消息,获得主题信息。根据本专利技术一些实施例的第二个方面,提供一种消息设备,消息设备为第一消息设备,包括:临时密钥确定模块,被配置为与第二消息设备协商确定临时密钥;加密模块,被配置为采用临时密钥对主题信息进行加密,生成加密主题消息;签名模块,被配置为采用存储的第一消息设备私钥对加密主题消息进行签名;发送模块,被配置为将签名后的加密主题消息发送给第二消息设备,以便第二消息设备采用第一消息设备公钥和临时密钥对签名后的加密主题消息进行验证和解密,获得主题信息。在一些实施例中,临时密钥确定模块进一步被配置为根据第一消息设备生成的第一临时数据和第二消息设备生成的第二临时数据确定临时密钥。在一些实施例中,签名模块进一步被配置为对连接消息进行签名,其中,连接消息包括第一消息设备生成的第一临时数据,连接消息为连接请求消息或者连接响应消息;发送模块进一步被配置为将签名后的连接消息发送给第二消息设备,以便第二消息设备在对签名后的连接请求消息进行验证并通过后提取第一临时数据,并根据第一临时数据和第二消息设备生成的第二临时数据生成临时密钥。在一些实施例中,消息设备还包括:接收模块,被配置为接收第二消息设备发送的签名后的连接消息,其中,连接响应消息包括第二消息设备生成的第二临时数据,连接消息为连接请求消息或者连接响应消息;验证模块,被配置为对签名后的连接消息进行验证;临时密钥确定模块进一步被配置为响应于对签名后的连接消息的验证通过,提取连接消息中的第二临时数据,并根据第一临时数据和第二临时数据生成临时密钥。在一些实施例中,加密模块进一步被配置为采用临时密钥、根据加密签名控制消息对主题信息进行加密,生成加密主题消息;签名模块进一步被配置为采用存储的第一消息设备私钥、根据加密签名控制消息对加密主题消息进行签名;其中,加密签名控制消息包括加密方法信息和签名算法信息。在一些实施例中,消息设备还包括:控制消息生成模块,被配置为根据计算能力信息选择签名算法和加密方法,并根据选择的签名算法和加密方法生成加密签名控制消息。在一些实施例中,第一消息设备为消息客户端、第二消息设备为消息服务器,或者,第一消息设备为消息服务器、第二消息设备为消息客户端;消息客户端为消息订阅设备或消息发布设备中的任意一种。在一些实施例中,消息设备还包括:接收模块,被配置为接收第二消息设备发送的签名后的加密主题消息,其中,签名后的加密主题消息是第二消息设备采用临时密钥对主题信息加密、再采用第二消息设备存储的第二消息设备私钥进行签名生成的;验证模块,被配置为采用第二消息设备公钥对签名后的加密主题消息进行验证;解密模块,被配置为响应于对签名后的加密主题消息的验证通过,采用临时密钥解密加密主题消息,获得主题信息。根据本专利技术一些实施例的第三个方面,提供一种消息推送系统,包括:两个以上的前述任意一种消息设备。根据本专利技术一些实施例的第四个方面,提供一种消息设备,包括:存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行前述任意一种消息推送方法。根据本专利技术一些实施例的第五个方面,提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现前述任意一种消息推送方法。上述专利技术中的一些实施例具有如下优点或有益效果:本专利技术通过令第一消息设备和第二消息设备采用协商的临时密钥进行加密通信,从而第一消息设备和第二消息设备可以经常更换加密密钥,提高了消息推送的安全性。通过以下参照附图对本专利技术的示例性实施例的详细描述,本专利技术的其它特征及其优点将会变得清楚。附图说明本文档来自技高网...

【技术保护点】
1.一种消息推送方法,包括:第一消息设备和第二消息设备协商确定临时密钥;第一消息设备采用临时密钥对主题信息进行加密,生成加密主题消息;第一消息设备采用存储的第一消息设备私钥对所述加密主题消息进行签名;第一消息设备将签名后的加密主题消息发送给第二消息设备,以便第二消息设备采用第一消息设备公钥和临时密钥对签名后的加密主题消息进行验证和解密,获得主题信息。

【技术特征摘要】
1.一种消息推送方法,包括:第一消息设备和第二消息设备协商确定临时密钥;第一消息设备采用临时密钥对主题信息进行加密,生成加密主题消息;第一消息设备采用存储的第一消息设备私钥对所述加密主题消息进行签名;第一消息设备将签名后的加密主题消息发送给第二消息设备,以便第二消息设备采用第一消息设备公钥和临时密钥对签名后的加密主题消息进行验证和解密,获得主题信息。2.根据权利要求1所述的消息推送方法,其中,所述临时密钥是根据第一消息设备生成的第一临时数据和第二消息设备生成的第二临时数据确定的。3.根据权利要求2所述的消息推送方法,其中,所述第一临时数据是第一消息设备生成的随机数,和/或,所述第二临时数据是第二消息设备生成的随机数。4.根据权利要求2或3所述的消息推送方法,其中,所述第一消息设备和第二消息设备协商确定临时密钥包括:第一消息设备对连接消息进行签名,其中,所述连接消息包括第一消息设备生成的第一临时数据,所述连接消息为连接请求消息或者连接响应消息;第一消息设备将签名后的连接消息发送给第二消息设备,以便第二消息设备在对签名后的连接消息进行验证并通过后提取第一临时数据,并根据第一临时数据和第二消息设备生成的第二临时数据生成临时密钥。5.根据权利要求2或3所述的消息推送方法,其中,所述第一消息设备和第二消息设备协商确定临时密钥包括:第一消息设备接收第二消息设备发送的签名后的连接消息,其中,所述连接消息包括第二消息设备生成的第二临时数据,所述连接消息为连接请求消息或者连接响应消息;第一消息设备对签名后的连接消息进行验证;第一消息设备响应于对签名后的连接消息的验证通过,提取连接消息中的第二临时数据;第一消息设备根据第一临时数据和第二临时数据生成临时密钥。6.根据权利要求1所述的消息推送方法,其中,第一消息设备采用临时密钥、根据加密签名控制消息对主题信息进行加密,生成加密主题消息;第一消息设备采用存储的第一消息设备私钥、根据加密签名控制消息对所述加密主题消息进行签名;其中,所述加密签名控制消息包括加密方法信息和签名算法信息。7.根据权利要求6所述的消息推送方法,还包括:第一消息设备根据计算能力信息选择签名算法和加密方法,并根据选择的签名算法和加密方法生成加密签名控制消息。8.根据权利要求1所述的消息推送方法,还包括:第一消息设备接收第二消息设备发送的签名后的加密主题消息,其中,所述签名后的加密主题消息是第二消息设备采用临时密钥对主题信息加密、再采用第二消息设备存储的第二消息设备私钥进行签名生成的;第一消息设备采用第二消息设备公钥对签名后的加密主题消息进行验证;第一消息设备响应于对签名后的加密主题消息的验证通过,采用临时密钥解密加密主题消息,获得主题信息。9.一种消息设备,所述消息设备为第一消息设备,包括:临时密钥确定模块,被配置为与第二消息设备协商确定临时密钥;加密模块,被配置为采用临时密钥对主题信息进行加密,生成加密主题消息;签名模块,被配置为采用存储的第一消息设备私钥对所述加密主题消息进行签名;发送模块,被配...

【专利技术属性】
技术研发人员:黄泽源钟致民陆钢孔勇平周丽莎沙庆良陈长怡马壮展缪翀莺余冬苹
申请(专利权)人:中国电信股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1