一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

使用对称密码技术增强MQTT协议身份认证方法、系统和设备与流程

2021-11-05 19:55:00 来源:中国专利 TAG:

使用对称密码技术增强mqtt协议身份认证方法、系统和设备
技术领域
1.本发明属于安全应用类产品的技术领域,特别涉及使用对称密码技术增强mqtt协议身份认证方法。


背景技术:

2.mqtt(message queuing telemetry transport,消息队列遥测传输)协议,是一种基于发布/订阅模式的通信协议,该通信协议构建于tcp/ip(transmission control protocol/internet protocol,传输控制协议/因特网互联协议)协议上。mqtt可以以较少的代码和有限的带宽,为连接的终端提供实时可靠的消息服务。
3.在mqtt协议中,服务器(可称为mqtt服务器)需要对接入的终端(可称为mqtt终端)进行认证。认证成功后,mqtt终端通过mqtt服务器发布或订阅消息。为了提高认证过程中传输数据的安全性,现有技术通常采用tls(transport layer security,安全传输层)协议进行认证。在认证之前,mqtt终端和mqtt服务器需要申请各自的证书,并将证书导入自身设备。tls协议认证的具
4.体过程包括:mqtt终端向mqtt服务器发送协商信息,协商信息包括加密算法候选列表和压缩算法候选列表等,mqtt服务器从接收到的协商信息中,确定需要使用的目标协商信息(比如需要使用的加密算法和压缩算法),然后将mqtt服务器的证书和目标协商信息发送至mqtt终端,并通知mqtt终端提供证书。mqtt终端对mqtt服务器的证书进行验证,验证通过后,可以将mqtt终端的证书发送至mqtt服务器。mqtt服务器对mqtt终端的证书进行验证,验证通过后,则判定mqtt终端认证成功。认证完成后,mqtt终端与mqtt服务器可以根据目标协商信息传输业务数据。
5.然而,在进行认证时,mqtt终端和mqtt服务器都需要申请证书,将证书导入自身设备,且需要对已导入的证书进行管理,会增大mqtt终端和mqtt服务器在认证过程中的处理复杂度。
6.针对上述问题,公开号为cn108599939a的专利申请公开了一种认证方法,可以应用于消息队列遥测传输mqtt终端,mqtt终端可以向mqtt服务器发送认证请求,根据预先存储的私钥和mqtt服务器发送的加密字符串,得到验证字符串,并发送至mqtt服务器。应用上述认证方法的mqtt服务器,可以根据mqtt终端对应的公钥,对获取的随机字符串进行加密,得到加密字符串,并发送至mqtt终端,然后可以根据随机字符串和接收到的验证字符串,得到mqtt终端的认证结果。基于上述处理,mqtt终端与mqtt服务器不需要进行证书的申请、导入及管理的操作,就可以实现mqtt终端的认证,能够降低mqtt终端与mqtt服务器的在认证过程中的处理复杂度。
7.现有技术中mqtt协议中,并且必须依赖基于公私钥体系建立通道,实现基于协议的身份认证功能,现有方案在网络攻击日益严峻的环境下,无法对抗攻击对物联网设备安全产生的影响。


技术实现要素:

8.本发明所要解决的技术问题在于如何实现安全的mqtt协议身份认证,以对抗日益严峻的互联网设备受攻击的情况。
9.本发明通过以下技术手段实现解决上述技术问题的:一种使用对称密码技术增强mqtt协议身份认证方法,包括下述步骤:
10.s1、第一次身份认证:物联网终端到物联网平台:量子密钥充注机完成将量子随机数发生器产生的量子密钥到量子安全芯片的充注、存储,同时记录存储充注安全芯片和密钥的对应关系,物联网终端调用内置集成或者外置的安全芯片内存储的量子密钥用于构造身份认证请求消息:密钥序列号 终端id 密文(时变参数 终端id 终端预设密码)到物联网平台,物联网平台根据终端id和密钥序列号从与量子交换密码机连接的量子密码管理服务系统获取与终端充注密钥对称的密钥进行解密,比对身份认证请求消息中的终端id和终端预设密码,同时保存终端发送的时变参数,认证成功后根据终端id和时变参数生成登录令牌,并向终端返回验证成功消息,如果不成功则返回不成功消息;
11.s2、第二次身份认证:物联网平台根据终端id向量子密码管理服务系统申请和终端匹配的充注密钥和对应的密钥序列号,并开始构造身份认证请求消息:密钥序列号 密文(时变参数 平台id 登录令牌),登录令牌根据第一次身份认证时终端上报的终端id和时变参数结合产生,并将该身份认证请求消息发送至终端;终端根据密钥序列号获取与对应的充注密钥对称的密钥对身份认证请求消息进行解密,验证平台id以及登录令牌,确定登录令牌是第一次身份认证时物联网平台根据认证时的终端id和时变参数产生,验证成功后,终端开始向物联网平台发送消息。
12.作为进一步优化的技术方案,每次认证结束后可以设定一个有效期。
13.作为进一步优化的技术方案,
14.s1、第一次身份认证,包括下述步骤:
15.s11、终端获取安全芯片内密钥请求,安全芯片返回芯片密钥序列号z的密钥b;
16.s12、终端根据mqtt连接消息connect内容格式构造初始身份认证请求消息:密钥序列号z 终端id 密文(时变参数 终端id 终端预设密码),密文的加密方式采用对称算法完成,加密密钥为s1中取出的密钥b;
17.s13、终端向物联网平台对外暴露的代理地址发送步骤s12构造的身份认证请求消息;
18.s14、物联网平台根据所述初始身份认证请求消息中终端id和密钥序列号z向量子密码管理服务系统获取与密钥b对称的密钥b’;
19.s15、量子密码管理服务系统返回密钥b’至物联网平台,物联网平台利用密钥b’对所述初始身份认证请求消息进行解密,得到解密后的密文:时变参数 终端id 终端预设密码,并将解密后终端id和终端预设密码和后台存储的终端id以及物联网平台预先存储的终端预设密码进行比较,确定终端的身份,同时利用mqtt消息中的connack向终端返回验证成功消息ox00,并保存终端发过来的时变参数,如果不成功则根据mqtt手册返回非0消息。
20.作为进一步优化的技术方案,
21.s2、第二次身份认证,包括下述步骤:
22.s21、物联网平台根据终端id从量子密码管理服务系统获取与终端匹配的芯片密
钥,量子密码管理服务系统向物联网平台返回和终端匹配的芯片密钥w和芯片密钥w的序列号c;
23.s22、物联网平台构造向终端申请的身份认证请求消息:密钥序列号c 密文(时变参数 平台id 登录令牌),密文的加密密钥为s21中取出的芯片密钥w,登录令牌由终端第一次身份认证保存的时变参数 终端id共同产生,用publish搭出来物联网平台对终端身份认证机制,向终端推送第二次身份认证请求消息,身份认证请求消息放入payload中;
24.s23、终端收到物联网平台推送的身份认证请求消息,根据身份认证请求消息中密钥序列号c向安全芯片内获取与序列号c对应的芯片密钥w的对称解密秘钥,安全芯片返回解密秘钥w’;
25.s24、终端使用解密秘钥w’对身份认证请求消息中的密文解密,通过验证平台id和登录令牌实施解密验证,对登录令牌主要验证是否是第一次身份认证发送的时变参数和终端id共同产生,如果通过,则终端认为物联网平台是可信的,则能够向物联网平台发送数据。
26.本发明还提供一种使用对称密码技术增强mqtt协议身份认证系统,包括下述模块:
27.第一次身份认证模块:物联网终端到物联网平台:量子密钥充注机完成将量子随机数发生器产生的量子密钥到量子安全芯片的充注、存储,同时记录存储充注安全芯片和密钥的对应关系,物联网终端调用内置集成或者外置的安全芯片内存储的量子密钥用于构造身份认证请求消息:密钥序列号 终端id 密文(时变参数 终端id 终端预设密码)到物联网平台,物联网平台根据终端id和密钥序列号从与量子交换密码机连接的量子密码管理服务系统获取与终端充注密钥对称的密钥进行解密,比对身份认证请求消息中的终端id和终端预设密码,同时保存终端发送的时变参数,认证成功后根据终端id和时变参数生成登录令牌,并向终端返回验证成功消息,如果不成功则返回不成功消息;
28.第二次身份认证模块:物联网平台根据终端id向量子密码管理服务系统申请和终端匹配的充注密钥和对应的密钥序列号,并开始构造身份认证请求消息:密钥序列号 密文(时变参数 平台id 登录令牌),登录令牌根据第一次身份认证时终端上报的终端id和时变参数结合产生,并将该身份认证请求消息发送至终端;终端根据密钥序列号获取与对应的充注密钥对称的密钥对身份认证请求消息进行解密,验证平台id以及登录令牌,确定登录令牌是第一次身份认证时物联网平台根据认证时的终端id和时变参数产生,验证成功后,终端开始向物联网平台发送消息。
29.作为进一步优化的技术方案,所述第一次身份认证模块包括:
30.终端密钥请求单元:终端获取安全芯片内密钥请求,安全芯片返回芯片密钥序列号z的密钥b;
31.初始身份认证请求消息构建单元:终端根据mqtt连接消息connect内容格式构造初始身份认证请求消息:密钥序列号z 终端id 密文(时变参数 终端id 终端预设密码),密文的加密方式采用对称算法,加密密钥为终端密钥请求单元中取出的密钥b;
32.初始身份认证请求消息发送单元:终端向物联网平台对外暴露的代理地址发送初始身份认证请求消息构建单元构造的身份认证请求消息;
33.对称密钥获取单元:物联网平台根据所述初始身份认证请求消息中终端id和密钥
序列号z向量子密码管理服务系统获取与密钥b对称的密钥b’;
34.解密单元:量子密码管理服务系统返回密钥b’至物联网平台,物联网平台利用密钥b’对所述初始身份认证请求消息进行解密,得到解密后的密文:时变参数 终端id 终端预设密码,并将解密后终端id和终端预设密码和后台存储的终端id以及物联网平台预先存储的终端预设密码进行比较,确定终端的身份,同时利用mqtt消息中的connack向终端返回验证成功消息ox00并保存终端发过来的时变参数,如果不成功则根据mqtt手册返回非0消息。
35.作为进一步优化的技术方案,所述第二次身份认证模块包括:
36.平台密钥请求单元:物联网平台根据终端id从量子密码管理服务系统获取与终端匹配的芯片密钥,量子密码管理服务系统向物联网平台返回和终端匹配的芯片密钥w和芯片密钥w的序列号c;
37.第二次身份认证请求消息构建单元:物联网平台构造向终端申请的身份认证请求消息:密钥序列号c 密文(时变参数 平台id 登录令牌),密文的加密密钥为平台密钥请求单元中取出的芯片密钥w,登录令牌由终端第一次身份认证保存的时变参数 终端id共同产生,用publish搭出来物联网平台对终端身份认证机制,向终端推送第二次身份认证请求消息,身份认证请求消息放入payload中;
38.对称密钥获取单元:终端收到物联网平台推送的身份认证请求消息,根据身份认证请求消息中密钥序列号c向安全芯片内获取与序列号c对应的芯片密钥w的对称解密秘钥,安全芯片返回解密秘钥w’;
39.解密单元:终端使用解密秘钥w’对身份认证请求消息中的密文解密,通过验证平台id和登录令牌实施解密验证,对登录令牌主要验证是否是第一次身份认证发送的时变参数和终端id共同产生,如果通过,则终端认为物联网平台是可信的,能够向物联网平台发送数据。
40.本发明还提供一种使用对称密码技术增强mqtt协议身份认证系统,应用在物联网终端,包括:
41.第一次身份认证:
42.s31、终端获取安全芯片内密钥请求,安全芯片返回芯片密钥序列号z的密钥b;
43.s32、终端根据mqtt连接消息connect内容格式构造初始身份认证请求消息:密钥序列号z 终端id 密文(时变参数 终端id 终端预设密码),密文的加密方式采用对称算法,加密密钥为s1中取出的密钥b;
44.s33、终端向物联网平台对外暴露的代理地址发送构造的身份认证请求消息;
45.s34、终端收到物联网平台返回验证成功消息ox00,如果不成功则根据mqtt手册返回非0消息;
46.第二次身份认证:
47.s41、终端收到物联网平台推送的身份认证请求消息,根据身份认证请求消息中密钥序列号c向安全芯片内获取与序列号c对应的芯片密钥w的对称解密秘钥,安全芯片返回解密秘钥w’;
48.s42、终端使用解密秘钥w’对身份认证请求消息中的密文解密,通过验证平台id和登录令牌实施解密验证,对登录令牌主要验证是否是第一次身份认证发送的时变参数和终
端id共同产生,如果通过,则终端认为物联网平台是可信的,能够向物联网平台发送数据。
49.本发明还提供一种物联网终端,包括处理器和计算机可读存储介质,计算机可读存储介质用于存放计算机程序,处理器用于执行计算机可读存储介质上所存放的计算机程序时,以使物联网终端执行权利要求8所述的步骤。
50.本发明还提供一种使用对称密码技术增强mqtt协议身份认证方法,应用在物联网平台上,包括:
51.第一次身份认证:
52.s301、物联网平台根据物联网终端发送过来的初始身份认证请求消息中终端id和密钥序列号z向量子密码管理服务系统获取与密钥b对称的密钥b’;
53.s302、物联网平台收到量子密码管理服务系统返回的密钥b’,物联网平台利用密钥b’对所述初始身份认证请求消息进行解密,得到解密后的密文:时变参数 终端id 终端预设密码,并将解密后终端id和终端预设密码和后台存储的终端id以及物联网平台预先存储的终端预设密码进行比较,确定终端的身份,同时利用mqtt消息中的connack向终端返回验证成功消息ox00,并保存终端发过来的时变参数,如果不成功则根据mqtt手册返回非0消息;
54.第二次身份认证:
55.s401、物联网平台根据终端id从量子密码管理服务系统获取与终端匹配的芯片密钥,量子密码管理服务系统向物联网平台返回和终端匹配的芯片密钥w和芯片密钥w的序列号c;
56.s402、物联网平台构造向终端申请的身份认证请求消息:密钥序列号c 密文(时变参数 平台id 登录令牌),密文的加密算法采用双方约定算法,加密密钥为s6中取出的芯片密钥w,登录令牌由终端第一次身份认证保存的时变参数 终端id共同产生,用publish搭出来物联网平台对终端身份认证机制,向终端推送第二次身份认证请求消息,身份认证请求消息放入payload中。
57.本发明还提供一种物联网平台,包括处理器和计算机可读存储介质,计算机可读存储介质用于存放计算机程序,处理器用于执行计算机可读存储介质上所存放的计算机程序时,以使物联网平台执行权利要求10所述的步骤。
58.本发明的优点在于:
59.(1)解决网络攻击日益严峻的环境对物联网设备安全影响,解决了物联网终端设备身份认证问题:使用量子安全芯片内置密钥集合对称算法进行身份认证,一次认证一份密钥。
60.(2)基于本方案,认证的安全性能极大提升:a、防范未来量子计算机和量子算法带来的安全威胁;

防范基于大因数分解难题的公钥密码算法被破译问题:使用量子对称密钥,无法通过大因数分解来破译;

防范未来出现的量子计算机带来的安全威胁:使用量子安全密码进行加密传输,理论上是完全安全可信的;

防范未来可能出现的量子算法对已有密码体系的威胁:使用量子安全密码进行加密传输,量子安全密钥是通过量子随机数生成器生成的真随机数,无法通过算法来破译。
61.(3)无需数字证书的第三方颁发和认证:

提供无证书的认证方式,减少第三方的参与:使用基于sm4的实体认证协议进行使用者双方的实体认证,无需颁发证书的第三方。
减少过程的参与方,减少三方协议风险。
62.(4)开发技术易于实现:量子安全芯片是可行的存在的技术,基于量子对称密钥的安全认证也是可以实现的技术,用于加密邮件的邮件加密密码可以使用量子随机数生成,技术成熟,安全性高。
63.(5)通用性强、延展性好:本发明对物联网平台自身进行改造的地方极少,主要是通过增加量子密钥服务系统的方式对安全性进行提升,通用性强。本发明可以集成到量子密码管理服务系统上,对外提供功能接口,延展性好。
64.(6)网络安全能力得到显著提升:本发明可以针对现有的攻击方式以及未来可能有的量子计算威胁进行防御,可极大减少因信息泄露带来的经济损失。
65.(7)终端安全能力显著升级:本发明可以极大增强终端的安全性,按照目前有两亿终端,其中对于电表、水表等计量性终端、以及对安全领域有非常高的领域均有明确的需求。目前估算单表的改造费用在25元,按照天翼物联两亿终端数量,渗透率在10%左右,未来可以支撑2.5亿市场预期。
66.(8)改造成本低:本发明可以在现有系统上进行改造,平台侧可以直接对接管理平台,设备侧可以采用集成sim卡或者安全模组进行对接即可,改造成本低。
附图说明
67.图1是本发明实施例使用对称密码技术增强mqtt协议身份认证的方法的总体流程示意图;
68.图2是应用本发明实施例使用对称密码技术增强mqtt协议身份认证的方法的系统组成图;
69.图3是应用本发明实施例对称密码技术增强mqtt协议传输身份认证的时序图;
70.图4是实施例一中第一次身份认证的详细流程图;
71.图5是实施例一中第二次身份认证的详细流程图;
72.图6是实施例二中第一次身份认证的详细流程图;
73.图7是实施例二中第二次身份认证的详细流程图;
74.图8是实施例三中第一次身份认证的详细流程图;
75.图9是实施例三中第二次身份认证的详细流程图。
具体实施方式
76.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
77.实施例一
78.本发明提供一种使用对称密码技术增强mqtt协议身份认证方法,应用在身份认证系统上,该身份认证系统包括量子随机数发生器、量子交换密码机、量子密钥充注机、量子密码管理服务系统、物联网终端、安全密钥芯片、以及物联网平台。
79.物联网终端可以是mqtt协议中的发布者,也可以是mqtt协议中的订阅者。物联网
平台可以是mqtt协议中的代理。物联网终端接入物联网平台的过程中,物联网平台需要对物联网终端进行认证,如果认证通过,物联网终端则可以与物联网平台进行业务数据传输,例如,物联网终端可以通过物联网平台发布消息,也可以通物联网平台订阅其他物联网终端发布的消息。本发明提供的使用对称密码技术增强mqtt协议身份认证在物联网终端接入物联网平台过程中使用。
80.量子随机数发生器,用于生成量子密钥;
81.量子交换密码机,接收量子随机数发生器发出的量子密钥,用于提供密钥服务,量子交换密码机内预先存储有密钥,该密钥为量子随机数生成器预生成的密钥,并存储在该量子交换密码机内,与量子安全芯片内的密钥为对称密钥;
82.量子密钥充注机,与量子交换密码机的输出端连接,用于充注量子密钥;
83.量子密码管理服务系统,通过网络与物联网平台实现数据交互,量子密码管理服务系统直接连接量子密码交换机,用于提供基于安全芯片身份的密钥分发功能。
84.物联网终端是物联网中连接传感网络层和传输网络层,实现采集数据及向网络层发送数据的设备。它担负着数据采集、初步处理、加密、传输等多种功能。终端能够适配以sim卡u盘为形态的量子安全芯片的集成。
85.量子安全芯片,可以为sim卡和u盘等形态,存储量子安全密钥,原理为:量子安全芯片在使用前初始化(预充注密码),量子安全芯片通过量子密钥充注机被充注量子安全密钥,每个量子安全芯片被充注的密钥和量子交换密码机内预置的密钥是对称密钥(即一一对应的密钥)。每个量子安全芯片有自己的编号,每支量子密钥有自己的序列号,只要提供量子安全芯片的编号和量子密钥序列号,就能在量子交换密码机内找到对应的密钥,并通过内置或者外接于物联网设备或者物联网设备的设备模组中。
86.物联网平台,提供基于mqtt协议的物联网终端设备认证、鉴权、设备数据接入功能,能够通过和密钥管理服务平台的交互完成终端集成安全芯片对应密钥的获取功能,并能够根据终端内芯片存储密钥完成对终端身份认证、上下行消息的加解密功能。
87.身份认证指使用量子安全芯片的内置的密钥实现物联网终端和物联网平台之间的实体认证。该认证方式采用“gb_t 15843.2实体认证协议机制三——双向鉴别之两次传递鉴别”的规范。
88.如图1和图2所示,使用对称密码技术增强mqtt协议身份认证方法包括以下步骤:
89.s1、第一次身份认证:物联网终端到物联网平台:量子密钥充注机完成将量子随机数发生器产生的量子密钥到量子安全芯片的充注、存储,同时记录存储充注安全芯片和密钥的对应关系。物联网终端调用内置集成或者外置的安全芯片内存储的量子密钥用于构造身份认证请求消息,根据认证协议gb_t 15843.2要求,发送身份认证请求消息:密钥序列号 终端id 密文(时变参数 终端id 终端预设密码)到物联网平台,终端id是物联网平台分配给终端的唯一身份标识,物联网平台根据终端id和密钥序列号从与量子交换密码机连接的量子密码管理服务系统获取与终端充注密钥对称的密钥进行解密,比对身份认证请求消息中的终端id和终端预设密码,同时保存终端发送的时变参数,认证成功后根据终端id和时变参数生成登录令牌,并使用mqtt的connack向终端返回验证成功消息ox00,如果不成功则根据mqtt手册返回非0消息,其中终端预设密码,指物联网平台预分配给终端,用户登录用的密码,一般在物联网终端烧制在系统中,基本都是在设备制造阶段就放进去;
90.s2、第二次身份认证:物联网平台根据终端id向量子密码管理服务系统申请和终端匹配的充注密钥和对应的密钥序列号,并开始构造身份认证请求消息,由于mqtt消息中并无终端对物联网平台的身份消息机制,此处利用publish消息机制,所有终端登录后第一个订阅主题为物联网平台身份认证,根据gb_t 15843.2要求,构造身份认证请求消息:密钥序列号 密文(时变参数 平台id 登录令牌),密文采用sm4算法、登录令牌根据第一次身份认证时终端上报的终端id和时变参数结合产生,并将该身份认证请求消息发送至终端;终端根据密钥序列号获取与对应的充注密钥对称的密钥对身份认证请求消息进行解密,验证平台id以及登录令牌,确定登录令牌是第一次身份认证时物联网平台根据认证时的终端id和时变参数产生,验证成功后,终端开始向物联网平台发送消息。
91.为了简化认证时间,每次认证结束后可以设定一个有效期,如有效期为3天或者1天等,则无需每次发送消息都认证。
92.如图2所示的架构图,量子密码管理服务系统将密钥初始化充注到物联网终端中,物联网终端与安全芯片集成,物联网终端与物联网平台进行信息交互,交互信息是基于充注密钥的身份认证、上下行消息加密,所述物联网平台与量子密码管理服务系统进行设备密钥获取的信息交互。
93.如图3至图5所示,身份认证的详细过程如下:
94.s1、第一次身份认证,包括下述步骤:
95.s11、终端获取安全芯片内密钥请求,安全芯片返回芯片密钥序列号z的密钥b;
96.s12、终端根据mqtt连接消息connect内容格式构造初始身份认证请求消息:密钥序列号z 终端id 密文(时变参数 终端id 终端预设密码),密文的加密方式可以采用sm4等对称算法完成,加密密钥为s1中取出的密钥b;
97.s13、终端向物联网平台对外暴露的代理地址发送步骤s12构造的身份认证请求消息;
98.s14、物联网平台根据所述初始身份认证请求消息中终端id和密钥序列号z向量子密码管理服务系统获取与密钥b对称的密钥b’;
99.s15、量子密码管理服务系统返回密钥b’至物联网平台,物联网平台利用密钥b’对所述初始身份认证请求消息进行解密,得到解密后的密文:时变参数 终端id 终端预设密码,并将解密后终端id和终端预设密码和后台存储的终端id以及物联网平台预先存储的终端预设密码进行比较,确定终端的身份,同时利用mqtt消息中的connack向终端返回验证成功消息ox00,并保存终端发过来的时变参数,如果不成功则根据mqtt手册返回非0消息;
100.s2、第二次身份认证,包括下述步骤:
101.s21、物联网平台根据终端id从量子密码管理服务系统获取与终端匹配的芯片密钥,量子密码管理服务系统向物联网平台返回和终端匹配的芯片密钥w和芯片密钥w的序列号c;
102.s22、物联网平台构造向终端申请的身份认证请求消息:密钥序列号c 密文(时变参数 平台id 登录令牌),密文的加密算法采用双方约定算法,可以采用sm4,加密密钥为s21中取出的芯片密钥w,登录令牌由终端第一次身份认证保存的时变参数 终端id共同产生,此时终端单向连接已经完成,终端处于连接状态,mqtt消息体制没有物联网平台对终端身份认证机制,我们用publish搭出来这个机制,向终端推送第二次身份认证请求消息,身
份认证请求消息放入payload中;
103.s23、终端收到物联网平台推送的身份认证请求消息,根据身份认证请求消息中密钥序列号c向安全芯片内获取与序列号c对应的芯片密钥w的对称解密秘钥,安全芯片返回解密秘钥w’;
104.s24、终端使用解密秘钥w’对身份认证请求消息中的密文解密,通过验证平台id和登录令牌实施解密验证,对登录令牌主要验证是否是第一次身份认证发送的时变参数和终端id共同产生,如果通过,则终端认为物联网平台是可信的,可以向物联网平台发送数据。
105.本实施例还提供一种上述身份认证对应的软件模块,包括:
106.第一次身份认证模块和第二次身份认证模块。
107.所述第一次身份认证模块包括:
108.终端密钥请求单元:终端获取安全芯片内密钥请求,安全芯片返回芯片密钥序列号z的密钥b;
109.初始身份认证请求消息构建单元:终端根据mqtt连接消息connect内容格式构造初始身份认证请求消息:密钥序列号z 终端id 密文(时变参数 终端id 终端预设密码),密文的加密方式可以采用sm4等对称算法完成,加密密钥为终端密钥请求单元中取出的密钥b;
110.初始身份认证请求消息发送单元:终端向物联网平台对外暴露的代理地址发送初始身份认证请求消息构建单元构造的身份认证请求消息;
111.对称密钥获取单元:物联网平台根据所述初始身份认证请求消息中终端id和密钥序列号z向量子密码管理服务系统获取与密钥b对称的密钥b’;
112.解密单元:量子密码管理服务系统返回密钥b’至物联网平台,物联网平台利用密钥b’对所述初始身份认证请求消息进行解密,得到解密后的密文:时变参数 终端id 终端预设密码,并将解密后终端id和终端预设密码和后台存储的终端id以及物联网平台预先存储的终端预设密码进行比较,确定终端的身份,同时利用mqtt消息中的connack向终端返回验证成功消息ox00并保存终端发过来的时变参数,如果不成功则根据mqtt手册返回非0消息;
113.所述第二次身份认证模块包括:
114.平台密钥请求单元:物联网平台根据终端id从量子密码管理服务系统获取与终端匹配的芯片密钥,量子密码管理服务系统向物联网平台返回和终端匹配的芯片密钥w和芯片密钥w的序列号c;
115.第二次身份认证请求消息构建单元:物联网平台构造向终端申请的身份认证请求消息:密钥序列号c 密文(时变参数 平台id 登录令牌),密文的加密算法采用双方约定算法,可以采用sm4,加密密钥为平台密钥请求单元中取出的芯片密钥w,登录令牌由终端第一次身份认证保存的时变参数 终端id共同产生,此时终端单向连接已经完成,终端处于连接状态,mqtt消息体制没有物联网平台对终端身份认证机制,我们用publish搭出来这个机制,向终端推送第二次身份认证请求消息,身份认证请求消息放入payload中;
116.对称密钥获取单元:终端收到物联网平台推送的身份认证请求消息,根据身份认证请求消息中密钥序列号c向安全芯片内获取与序列号c对应的芯片密钥w的对称解密秘钥,安全芯片返回解密秘钥w’;
117.解密单元:终端使用解密秘钥w’对身份认证请求消息中的密文解密,通过验证平台id和登录令牌实施解密验证,对登录令牌主要验证是否是第一次身份认证发送的时变参数和终端id共同产生,如果通过,则终端认为物联网平台是可信的,可以向物联网平台发送数据。
118.实施例二
119.本发明提供一种使用对称密码技术增强mqtt协议身份认证方法,应用在物联网终端上,如图6和图7所示,包括:
120.第一次身份认证:
121.s31、终端获取安全芯片内密钥请求,安全芯片返回芯片密钥序列号z的密钥b;
122.s32、终端根据mqtt连接消息connect内容格式构造初始身份认证请求消息:密钥序列号z 终端id 密文(时变参数 终端id 终端预设密码),密文的加密方式可以采用sm4等对称算法完成,加密密钥为s1中取出的密钥b;
123.s33、终端向物联网平台对外暴露的代理地址发送构造的身份认证请求消息;
124.s34、终端收到物联网平台返回验证成功消息ox00,如果不成功则根据mqtt手册返回非0消息;
125.第二次身份认证:
126.s41、终端收到物联网平台推送的身份认证请求消息,根据身份认证请求消息中密钥序列号c向安全芯片内获取与序列号c对应的芯片密钥w的对称解密秘钥,安全芯片返回解密秘钥w’;
127.s42、终端使用解密秘钥w’对身份认证请求消息中的密文解密,通过验证平台id和登录令牌实施解密验证,对登录令牌主要验证是否是第一次身份认证发送的时变参数和终端id共同产生,如果通过,则终端认为物联网平台是可信的,可以向物联网平台发送数据。
128.本实施例还提供一种物联网终端,包括处理器和计算机可读存储介质,计算机可读存储介质用于存放计算机程序,处理器用于执行计算机可读存储介质上所存放的计算机程序时,以使物联网终端执行上述第一次身份认证和第二次身份认证的步骤。
129.实施例三
130.本发明提供一种使用对称密码技术增强mqtt协议身份认证方法,应用在物联网平台上,如图8和图9所示,包括:
131.第一次身份认证:
132.s301、物联网平台根据物联网终端发送过来的初始身份认证请求消息中终端id和密钥序列号z向量子密码管理服务系统获取与密钥b对称的密钥b’;
133.s302、物联网平台收到量子密码管理服务系统返回的密钥b’,物联网平台利用密钥b’对所述初始身份认证请求消息进行解密,得到解密后的密文:时变参数 终端id 终端预设密码,并将解密后终端id和终端预设密码和后台存储的终端id以及物联网平台预先存储的终端预设密码进行比较,确定终端的身份,同时利用mqtt消息中的connack向终端返回验证成功消息ox00,并保存终端发过来的时变参数,如果不成功则根据mqtt手册返回非0消息;
134.第二次身份认证:
135.s401、物联网平台根据终端id从量子密码管理服务系统获取与终端匹配的芯片密
钥,量子密码管理服务系统向物联网平台返回和终端匹配的芯片密钥w和芯片密钥w的序列号c;
136.s402、物联网平台构造向终端申请的身份认证请求消息:密钥序列号c 密文(时变参数 平台id 登录令牌),密文的加密算法采用双方约定算法,可以采用sm4,加密密钥为s6中取出的芯片密钥w,登录令牌由终端第一次身份认证保存的时变参数 终端id共同产生,此时终端单向连接已经完成,终端处于连接状态,mqtt消息体制没有物联网平台对终端身份认证机制,我们用publish搭出来这个机制,向终端推送第二次身份认证请求消息,身份认证请求消息放入payload中。
137.本实施例还提供一种物联网平台,包括处理器和计算机可读存储介质,计算机可读存储介质用于存放计算机程序,处理器用于执行计算机可读存储介质上所存放的计算机程序时,以使物联网平台执行上述第一次身份认证和第二次身份认证的步骤。
138.以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献