CN110572828A - 基于国密算法的物联网安全认证方法、系统及终端 - Google Patents
基于国密算法的物联网安全认证方法、系统及终端 Download PDFInfo
- Publication number
- CN110572828A CN110572828A CN201911018609.0A CN201911018609A CN110572828A CN 110572828 A CN110572828 A CN 110572828A CN 201911018609 A CN201911018609 A CN 201911018609A CN 110572828 A CN110572828 A CN 110572828A
- Authority
- CN
- China
- Prior art keywords
- terminal
- byte
- session key
- server
- identification information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/041—Key generation or derivation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Storage Device Security (AREA)
Abstract
本公开公开了基于国密算法的物联网安全认证方法、系统及终端,采集物联网终端的基本信息;将采集的物联网终端的基本信息进行加密处理,得到终端标识信息;将终端标识信息和会话密钥请求,发送给服务器;终端标识信息用于服务器对物联网终端进行有效性验证;超时判断步骤:判断是否超过设定时间段,如果超过,则返回终端标识信息制备步骤;如果未超时,则继续判断是否接收到服务器反馈的会话密钥应答消息;如果接收到服务器反馈的会话密钥应答消息,则对会话密钥应答消息进行解密并恢复出会话密钥;进入下一步;如果未接收到,则返回超时判断步骤;采用会话密钥对物联网终端的待传输的数据进行加密处理,将加密处理后的数据传输给服务器。
Description
技术领域
本公开涉及物联网终端数据加解密技术领域,特别是涉及基于国密算法的物联网安全认证方法、系统及终端。
背景技术
本部分的陈述仅仅是提到了与本公开相关的背景技术,并不必然构成现有技术。
当前我国物联网产业中终端数据处于无保护、弱保护的状态,物联网终端上传给服务器的数据,缺乏有效的加密手段,安全性低。
在实现本公开的过程中,发明人发现现有技术中存在以下技术问题:
在很多时候,物联网终端只有几十K字节甚至几K字节的ROM可用,RAM只有几百字节到几K字节可用;同时,物联网终端处理器性能较弱,主频较低,且其中有相当部分的8位和16位单片机,无法应用复杂的公钥密码算法(例如SM2)进行密钥和会话管理;而复杂度较低的对称密码在物联网终端实现也存在算法实现效率差、加解密耗时过长的问题。
在很多物联网系统中为了降低系统复杂度一般将密钥固化在微处理器内部,显然这种方式是不安全的。
发明内容
为了解决现有技术的不足,本公开提供了基于国密算法的物联网安全认证方法、系统及终端;
第一方面,本公开提供了基于国密算法的物联网安全认证方法;
基于国密算法的物联网安全认证方法,应用于物联网终端,包括:
采集物联网终端的基本信息;
终端标识信息制备步骤:将采集的物联网终端的基本信息进行加密处理,得到终端标识信息;
将终端标识信息和会话密钥请求,发送给服务器;终端标识信息用于服务器对物联网终端进行有效性验证;
超时判断步骤:判断是否超过设定时间段,如果超过,则返回终端标识信息制备步骤;如果未超时,则继续判断是否接收到服务器反馈的会话密钥应答消息;
如果接收到服务器反馈的会话密钥应答消息,则对会话密钥应答消息进行解密并恢复出会话密钥;进入下一步;如果未接收到,则返回超时判断步骤;
采用会话密钥对物联网终端的待传输的数据进行加密处理,将加密处理后的数据传输给服务器。
第二方面,本公开还提供了基于国密算法的物联网安全认证方法;
基于国密算法的物联网安全认证方法,应用于服务器,包括:
获取终端发送过来的终端标识信息和会话密钥请求;
根据终端发送过来的终端标识信息,进行终端有效性验证;
针对有效性验证通过的终端的会话密钥请求,进行加密处理,得到会话密钥应答消息;
将会话密钥应答消息反馈给终端。
第三方面,本公开还提供了基于国密算法的物联网安全认证终端;
基于国密算法的物联网安全认证终端,包括:
采集模块,其被配置为:采集物联网终端的基本信息;
终端标识信息制备模块,其被配置为:将采集的物联网终端的基本信息进行加密处理,得到终端标识信息;
有效性验证模块,其被配置为:将终端标识信息和会话密钥请求,发送给服务器;终端标识信息用于服务器对物联网终端进行有效性验证;
超时判断模块,其被配置为:判断是否超过设定时间段,如果超过,则返回终端标识信息制备步骤;如果未超时,则继续判断是否接收到服务器反馈的会话密钥应答消息;
如果接收到服务器反馈的会话密钥应答消息,则对会话密钥应答消息进行解密并恢复出会话密钥;进入加密模块;如果未接收到,则返回超时判断模块;
加密模块,其被配置为:采用会话密钥对物联网终端的待传输的数据进行加密处理,将加密处理后的数据传输给服务器。
第四方面,本公开还提供了基于国密算法的物联网安全认证服务器;
基于国密算法的物联网安全认证服务器,包括:
获取模块,其被配置为:获取终端发送过来的终端标识信息和会话密钥请求;
终端有效性验证模块,其被配置为:根据终端发送过来的终端标识信息,进行终端有效性验证;
会话密钥应答消息生成模块,其被配置为:针对有效性验证通过的终端的会话密钥请求,进行加密处理,得到会话密钥应答消息;
反馈模块,其被配置为:将会话密钥应答消息反馈给终端。
第五方面,本公开还提供了基于国密算法的物联网安全认证系统;
基于国密算法的物联网安全认证系统,包括:如第三方面所述的基于国密算法的物联网安全认证终端,和如第四方面所述的基于国密算法的物联网安全认证服务器。
与现有技术相比,本公开的有益效果是:
该方案主要由高性能国密库、密钥和会话管理、通讯数据帧设计三大部分组成。
1、高能性国密库:我们针对16位单片机(如MSP430FR5739)进行SM4算法的优化实现,解决数据加解密速度慢这一关键性能瓶颈。同时我们采用了先进的CTR模式来避免ECB,CBC等模式必须的数据填充来提高算法性能,同时能够有效保证数据安全,确保即使同一终端的同一数据加密后的数据也不同。
2、密钥和会话管理:密钥安全是数据安全的基石,我们利用终端自身的噪声和随机性数据生成真随机数,并巧妙的把该随机数用于密钥生成来保证系统的可靠性。同时我们设计了一端一密、密钥定期更新策略进一步提升了系统的安全性。通过全数据链条的数据加密确保通讯链路中无明文传输,即使通讯链路被窃听也不会发生数据泄露。
3、简洁可靠的数据帧设计:针对物联网终端数据特点我们设计了一种精简的数据帧格式和数据规范,并通过帧尾的CRC校验字节对传输数据进行基本的验证。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
图1为第一个实施例的方法流程图。
具体实施方式
应该指出,以下详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
术语解释:
GNSS:全球导航卫星系统,支持中国北斗卫星导航系统和美国全球卫星定位系统GPS;
NBIOT:窄带物联网;
IMEI:国际移动设备识别码;
MSG:终端标识信息;
实施例一,本公开提供了基于国密算法的物联网安全认证方法;
如图1所示,基于国密算法的物联网安全认证方法,应用于物联网终端,包括:
Sa1:采集物联网终端的基本信息;
Sa2:终端标识信息制备步骤:将采集的物联网终端的基本信息进行加密处理,得到终端标识信息;
Sa3:将终端标识信息和会话密钥请求,发送给服务器;终端标识信息用于服务器对物联网终端进行有效性验证;
Sa4:超时判断步骤:判断是否超过设定时间段,如果超过,则返回终端标识信息制备步骤;如果未超时,则继续判断是否接收到服务器反馈的会话密钥应答消息;
如果接收到服务器反馈的会话密钥应答消息,则对会话密钥应答消息进行解密并恢复出会话密钥;进入Sa5;如果未接收到,则返回超时判断步骤;
Sa5:采用会话密钥对物联网终端的待传输的数据进行加密处理,将加密处理后的数据传输给服务器。
进一步地,所述物联网终端,包括:主控制单元MCU,所述主控制单元分别与温湿度传感器、光强传感器、GNSS定位模块和NBIOT模块连接,所述NBIOT模块与服务器进行通信。
作为一个或多个实施例,所述物联网终端的基本信息,包括:随机数Nounce、主控制单元MCU唯一标识、NBIOT模块的IMEI序列号和根密钥;
作为一个或多个实施例,Sa2中,将采集的待加密数据进行加密处理,得到终端标识信息;具体步骤包括:
对随机数Nounce、主控制单元MCU唯一标识、NBIOT模块的IMEI序列号和根密钥进行运算并加密得到一个唯一的终端标识信息MSG。
作为一个或多个实施例,Sa2中,将采集的待加密数据进行加密处理,得到终端标识信息;具体步骤包括:
取随机数Nounce中的1字节设为x;高4比特记作xh,低4比特记作xl;
取主控制单元MCU唯一标识中的16字节设为Muid;
设主控制单元MCU内置16字节根密钥为rootkey;
将Muid与根密钥rootkey逐字节异或;然后,将逐字节异或得到的结果循环左移xh字节,得到16字节的会话密钥KEY;
生成16字节的全0比特串,记作PL;用IMEI序列号从低字节开始填充PL;
将x填充到PL最后一字节;然后循环左移xl字节;
以KEY为密钥对PL进行SM4加密,加密模式为电码本ECB,得到终端标识信息MSG。
作为一个或多个实施例,Sa3中,终端标识信息用于服务器对物联网终端进行有效性验证;具体步骤包括:
服务器接收到终端发送的数据包后,首先对数据进行校验;
如果校验结果与数据包中的校验和不一致,则判断数据包异常,丢弃数据包;
否则,取出数据包中的第一字节;
如果数据包中的第一字节为0x60,则为通讯请求数据包,对通讯请求数据包进行有效性验证;第2字节为数据长度固定为0x14,第3字节至第5字节为终端编号,第6字节为验证方法X,第7至22字节为终端标识信息MSG;
服务器从数据库中取出终端编号对应的加密终端MCU标识CMuid和加密NBIOT模块标识CIMEI;
利用存储密钥解密CMuid得到Muid’,解密CIMEI得到IMEI’;利用与终端标识信息制备步骤相同的方式计算终端标识信息1;
取X高4比特记作Xh,低4比特记作Xl;
设服务器内置16字节根密钥为rootkey1;
Muid’逐字节异或根密钥rootkey1;然后循环左移Xh字节,得到16字节的会话密钥KEY1;
生成16字节的全0比特串,记作PL1;用IMEI’从低字节开始填充PL1;
将X填充到PL1最后一字节;然后循环左移Xl字节;
以KEY1为密钥对PL1进行SM4加密,加密模式为电码本ECB,得到终端标识信息MSG1;
如果MSG1与MSG一致,验证通过,否则验证失败。
表1数据包格式
作为一个或多个实施例,Sa4中会话密钥应答消息的生成方法,具体步骤包括:
服务器利用真随机数发生器生成128比特随机数作为会话密钥TKEY;用存储密钥加密后保存到数据库;
服务器利用真随机数发生器生成32比特的随机数作为会话ID,存储至数据库;
服务器利用真随机数发生器生成8比特的随机数作为验证方法T,取高4比特为Th,低4比特为Tl;
同时得到CTR加解密所需的128比特Nounce值;取MSG第Tl+i字节填充到Nounce;i∈[0,1,2,…,13];用0填充Nounce剩余比特至128比特后,将Nounce用存储密钥加密后保存至数据库;
生成128比特的全0比特串INFO;依次填充3字节的终端编号,4字节的会话iD和1字节的验证方法T两次;INFO逐字节异或MSG,然后循环左移Th字节,得到加密密钥INFO’;
TKEY与rootkey逐字节异或后用INFO’作为密钥加密,然后循环左移Tl字节,得到会话密钥’TKEY1;按照会话密钥应答消息格式填充数据包后发送消息至终端。
表2数据包格式
作为一个或多个实施例,Sa4中,接收服务器反馈的会话密钥应答消息,对会话密钥应答消息进行解密并恢复出会话密钥;具体步骤包括:
终端接收到服务器发送的数据包后首先对数据进行校验,校验结果与数据包中的校验和不一致则判断数据包异常,丢弃数据包;
否则取出数据包中的第一字节,如果为0x61,则为会话密钥应答消息,需要进行解密并恢复会话密钥;
第2字节为数据长度固定为0x18,如果数据长度不是0x18则退出;第3字节至第5字节为终端编号,如果终端编号与本终端编号不一致则退出;第6字节至第9字节为会话iD;第10字节为验证方法T1;第11至26字节为会话密钥”:TKEY1’;
取T1高4比特为Th’,低4比特为Tl’;
TKEY1’循环右移Tl’字节,得到128比特的临时变量TKEY0’;
生成128比特的全0比特串INFO1。依次填充3字节的终端编号,4字节的会话iD和1字节的验证方法T1两次。INFO1逐字节异或MSG,然后循环左移Th’字节,得到加密密钥INFO1’。
INFO 1’作为密钥解密TKEY0’,与rootkey逐字节异或后得到会话密钥TKEY;
同时得到CTR加解密所需的Nounce值;
取MSG第(T1%16+i)字节填充到Nounce;i∈[0,1,2,…,13]。
作为一个或多个实施例,所述服务器的终端编号对应的加密终端MCU标识CMuid生成过程,具体步骤包括:
首先离线获取终端编号,终端MCU标识Muid和NBIOT的IMEI。
以终端编号为索引,用存储密钥加密Muid后得到CMuid。
作为一个或多个实施例,所述服务器的终端编号对应加密NBIOT模块标识CIMEI生成过程,具体步骤包括:
生成16字节的临时变量IEMIF,将IMEI填充至该变量,然后用0填充剩余字节。用存储密钥加密IMEIF后得到CIMEI。
数据传输方法:
表3会话生命周期内的数据包格式
其中会话ID和数据均为CTR模式加密后的数据。
终端:
发送数据:用终端数据包编号TPACKNO填充Nounce最后2个字节然后利用会话密钥对待加密数据进行加密,然后按照数据包格式进行填充,发送数据包到服务器。然后TPACKNO自增1,如果TPACKNO>0xffff则设数据包编号为0。
接收数据:首先验证数据校验和,验证通过后,取出数据类型,如果为会话阶段数据包则需要CTR解密处理。首先取出服务器数据包编号,将该编号填充至Nounce最后两个字节,利用会话密钥对待解密数据进行解密得到解密后数据,然后检查解密后数据的前4个字节是否为本终端会话ID,如果一致则解密成功,继续进行数据处理;否则解密失败,抛弃数据包。
服务器:
接收数据:
首先验证数据校验和,验证通过后,取出数据类型,如果为会话阶段数据包则需要CTR解密处理。首先取出终端编号,从数据库中取出该终端加密后的Nounce,用存储密钥解密后得到Nounce;从数据库中取出加密后的会话密钥,用存储密钥解密后得到会话密钥TKEY;从数据库中取出对应的会话ID。取出终端数据包编号,将该编号填充至Nounce最后两个字节,利用会话密钥对待解密数据进行解密得到解密后数据,然后检查解密后数据的前4个字节是否与会话ID一致,如果一致则解密成功,继续进行数据处理;否则解密失败,抛弃数据包。
发送:
如果为接收后直接发送:
用服务器数据包编号CPACKNO填充Nounce最后2个字节然后利用会话密钥对待加密数据进行加密,然后按照数据包格式进行填充,发送数据包到终端。然后CPACKNO自增1,如果CPACKNO>0xffff则设数据包编号为0。
否则:
从数据库中取出终端编号及该终端加密后的Nounce,用存储密钥解密后得到Nounce;从数据库中取出加密后的会话密钥,用存储密钥解密后得到会话密钥TKEY;从数据库中取出对应的会话ID。用CPACKNO填充Nounce最后2个字节然后利用会话密钥对待加密数据进行加密,然后按照数据包格式进行填充,发送数据包到终端。
实施例二,本公开还提供了基于国密算法的物联网安全认证方法;
基于国密算法的物联网安全认证方法,应用于服务器,包括:
Sb1:获取终端发送过来的终端标识信息和会话密钥请求;
Sb2:根据终端发送过来的终端标识信息,进行终端有效性验证;
Sb3:针对有效性验证通过的终端的会话密钥请求,进行加密处理,得到会话密钥应答消息;
Sb4:将会话密钥应答消息反馈给终端。
作为一个或多个实施例,Sb2中,根据终端发送过来的终端标识信息,进行终端有效性验证;具体步骤包括:
服务器接收到终端发送的数据包后,首先对数据进行校验;
如果校验结果与数据包中的校验和不一致,则判断数据包异常,丢弃数据包;
否则,取出数据包中的第一字节;
如果数据包中的第一字节为0x60,则为通讯请求数据包,对通讯请求数据包进行有效性验证;第2字节为数据长度固定为0x14,第3字节至第5字节为终端编号,第6字节为验证方法X,第7至22字节为终端标识信息MSG;
服务器从数据库中取出终端编号对应的加密终端MCU标识CMuid和加密NBIOT模块标识CIMEI;
利用存储密钥解密CMuid得到Muid’,解密CIMEI得到IMEI’;利用与终端标识信息制备步骤相同的方式计算终端标识信息1;
取X高4比特记作Xh,低4比特记作Xl;
设服务器内置16字节根密钥为rootkey1;
Muid’逐字节异或根密钥rootkey1;然后循环左移Xh字节,得到16字节的会话密钥KEY1;
生成16字节的全0比特串,记作PL1;用IMEI’从低字节开始填充PL1;
将X填充到PL1最后一字节;然后循环左移Xl字节;
以KEY1为密钥对PL1进行SM4加密,加密模式为电码本ECB,得到终端标识信息MSG1;
如果MSG1与MSG一致,验证通过,否则验证失败。
作为一个或多个实施例,Sb3:针对有效性验证通过的终端的会话密钥请求,进行加密处理,得到会话密钥应答消息;具体步骤包括:
服务器利用真随机数发生器生成128比特随机数作为会话密钥TKEY;用存储密钥加密后保存到数据库;
服务器利用真随机数发生器生成32比特的随机数作为会话ID,存储至数据库;
服务器利用真随机数发生器生成8比特的随机数作为验证方法T,取高4比特为Th,低4比特为Tl;
同时得到CTR加解密所需的128比特Nounce值;取MSG第Tl+i字节填充到Nounce;i∈[0,1,2,…,13];用0填充Nounce剩余比特至128比特后,将Nounce用存储密钥加密后保存至数据库;
生成128比特的全0比特串INFO;依次填充3字节的终端编号,4字节的会话iD和1字节的验证方法T两次;INFO逐字节异或MSG,然后循环左移Th字节,得到加密密钥INFO’;
TKEY与rootkey逐字节异或后用INFO’作为密钥加密,然后循环左移Tl字节,得到会话密钥’TKEY1;按照会话密钥应答消息格式填充数据包后发送消息至终端。
利用CPU如intelX64平台的IntelRNG真随机数生成器,或外置的真随机数发生器模块生成真随机数。
实施例三,本公开还提供了基于国密算法的物联网安全认证终端;
基于国密算法的物联网安全认证终端,包括:
采集模块,其被配置为:采集物联网终端的基本信息;
终端标识信息制备模块,其被配置为:将采集的物联网终端的基本信息进行加密处理,得到终端标识信息;
有效性验证模块,其被配置为:将终端标识信息和会话密钥请求,发送给服务器;终端标识信息用于服务器对物联网终端进行有效性验证;
超时判断模块,其被配置为:判断是否超过设定时间段,如果超过,则返回终端标识信息制备步骤;如果未超时,则继续判断是否接收到服务器反馈的会话密钥应答消息;
如果接收到服务器反馈的会话密钥应答消息,则对会话密钥应答消息进行解密并恢复出会话密钥;进入加密模块;如果未接收到,则返回超时判断模块;
加密模块,其被配置为:采用会话密钥对物联网终端的待传输的数据进行加密处理,将加密处理后的数据传输给服务器。
实施例四,本公开还提供了基于国密算法的物联网安全认证服务器;
基于国密算法的物联网安全认证服务器,包括:
获取模块,其被配置为:获取终端发送过来的终端标识信息和会话密钥请求;
终端有效性验证模块,其被配置为:根据终端发送过来的终端标识信息,进行终端有效性验证;
会话密钥应答消息生成模块,其被配置为:针对有效性验证通过的终端的会话密钥请求,进行加密处理,得到会话密钥应答消息;
反馈模块,其被配置为:将会话密钥应答消息反馈给终端。
实施例五,本公开还提供了基于国密算法的物联网安全认证系统;
基于国密算法的物联网安全认证系统,包括:如实施例三所述的基于国密算法的物联网安全认证终端,和如实施例四所述的基于国密算法的物联网安全认证服务器。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.基于国密算法的物联网安全认证方法,应用于物联网终端,其特征是,包括:
采集物联网终端的基本信息;
终端标识信息制备步骤:将采集的物联网终端的基本信息进行加密处理,得到终端标识信息;
将终端标识信息和会话密钥请求,发送给服务器;终端标识信息用于服务器对物联网终端进行有效性验证;
超时判断步骤:判断是否超过设定时间段,如果超过,则返回终端标识信息制备步骤;如果未超时,则继续判断是否接收到服务器反馈的会话密钥应答消息;
如果接收到服务器反馈的会话密钥应答消息,则对会话密钥应答消息进行解密并恢复出会话密钥;进入下一步;如果未接收到,则返回超时判断步骤;
采用会话密钥对物联网终端的待传输的数据进行加密处理,将加密处理后的数据传输给服务器。
2.如权利要求1所述的方法,其特征是,将采集的待加密数据进行加密处理,得到终端标识信息;具体步骤包括:
对随机数Nounce、主控制单元MCU唯一标识、NBIOT模块的IMEI序列号和根密钥进行运算并加密得到一个唯一的终端标识信息MSG。
3.如权利要求1所述的方法,其特征是,将采集的待加密数据进行加密处理,得到终端标识信息;具体步骤包括:
取随机数Nounce中的1字节设为x;高4比特记作xh,低4比特记作xl;
取主控制单元MCU唯一标识中的16字节设为Muid;
设主控制单元MCU内置16字节根密钥为rootkey;
将Muid与根密钥rootkey逐字节异或;然后,将逐字节异或得到的结果循环左移xh字节,得到16字节的会话密钥KEY;
生成16字节的全0比特串,记作PL;用IMEI序列号从低字节开始填充PL;
将x填充到PL最后一字节;然后循环左移xl字节;
以KEY为密钥对PL进行SM4加密,加密模式为电码本ECB,得到终端标识信息MSG。
4.如权利要求1所述的方法,其特征是,终端标识信息用于服务器对物联网终端进行有效性验证;具体步骤包括:
服务器接收到终端发送的数据包后,首先对数据进行校验;
如果校验结果与数据包中的校验和不一致,则判断数据包异常,丢弃数据包;
否则,取出数据包中的第一字节;
如果数据包中的第一字节为0x60,则为通讯请求数据包,对通讯请求数据包进行有效性验证;第2字节为数据长度固定为0x14,第3字节至第5字节为终端编号,第6字节为验证方法X,第7至22字节为终端标识信息MSG;
服务器从数据库中取出终端编号对应的加密终端MCU标识CMuid和加密NBIOT模块标识CIMEI;
利用存储密钥解密CMuid得到Muid’,解密CIMEI得到IMEI’;利用与终端标识信息制备步骤相同的方式计算终端标识信息1;
取X高4比特记作Xh,低4比特记作Xl;
设服务器内置16字节根密钥为rootkey1;
Muid’逐字节异或根密钥rootkey1;然后循环左移Xh字节,得到16字节的会话密钥KEY1;
生成16字节的全0比特串,记作PL1;用IMEI’从低字节开始填充PL1;
将X填充到PL1最后一字节;然后循环左移Xl字节;
以KEY1为密钥对PL1进行SM4加密,加密模式为电码本ECB,得到终端标识信息MSG1;
如果MSG1与MSG一致,验证通过,否则验证失败。
5.如权利要求1所述的方法,其特征是,会话密钥应答消息的生成方法,具体步骤包括:
服务器利用真随机数发生器生成128比特随机数作为会话密钥TKEY;用存储密钥加密后保存到数据库;
服务器利用真随机数发生器生成32比特的随机数作为会话ID,存储至数据库;
服务器利用真随机数发生器生成8比特的随机数作为验证方法T,取高4比特为Th,低4比特为Tl;
同时得到CTR加解密所需的128比特Nounce值;取MSG第Tl+i字节填充到Nounce;i∈[0,1,2,…,13];用0填充Nounce剩余比特至128比特后,将Nounce用存储密钥加密后保存至数据库;
生成128比特的全0比特串INFO;依次填充3字节的终端编号,4字节的会话iD和1字节的验证方法T两次;INFO逐字节异或MSG,然后循环左移Th字节,得到加密密钥INFO’;
TKEY与rootkey逐字节异或后用INFO’作为密钥加密,然后循环左移Tl字节,得到会话密钥’TKEY1;按照会话密钥应答消息格式填充数据包后发送消息至终端。
6.如权利要求1所述的方法,其特征是,接收服务器反馈的会话密钥应答消息,对会话密钥应答消息进行解密并恢复出会话密钥;具体步骤包括:
终端接收到服务器发送的数据包后首先对数据进行校验,校验结果与数据包中的校验和不一致则判断数据包异常,丢弃数据包;
否则取出数据包中的第一字节,如果为0x61,则为会话密钥应答消息,需要进行解密并恢复会话密钥;
第2字节为数据长度固定为0x18,如果数据长度不是0x18则退出;第3字节至第5字节为终端编号,如果终端编号与本终端编号不一致则退出;第6字节至第9字节为会话iD;第10字节为验证方法T1;第11至26字节为会话密钥”:TKEY1’;
取T1高4比特为Th’,低4比特为Tl’;
TKEY1’循环右移Tl’字节,得到128比特的临时变量TKEY0’;
生成128比特的全0比特串INFO1;依次填充3字节的终端编号,4字节的会话iD和1字节的验证方法T1两次;INFO1逐字节异或MSG,然后循环左移Th’字节,得到加密密钥INFO1’;
INFO 1’作为密钥解密TKEY0’,与rootkey逐字节异或后得到会话密钥TKEY;
同时得到CTR加解密所需的Nounce值;
取MSG第T1%16+i字节填充到Nounce;i∈[0,1,2,…,13]。
7.基于国密算法的物联网安全认证方法,应用于服务器,其特征是,包括:
获取终端发送过来的终端标识信息和会话密钥请求;
根据终端发送过来的终端标识信息,进行终端有效性验证;
针对有效性验证通过的终端的会话密钥请求,进行加密处理,得到会话密钥应答消息;
将会话密钥应答消息反馈给终端。
8.基于国密算法的物联网安全认证终端,其特征是,包括:
采集模块,其被配置为:采集物联网终端的基本信息;
终端标识信息制备模块,其被配置为:将采集的物联网终端的基本信息进行加密处理,得到终端标识信息;
有效性验证模块,其被配置为:将终端标识信息和会话密钥请求,发送给服务器;终端标识信息用于服务器对物联网终端进行有效性验证;
超时判断模块,其被配置为:判断是否超过设定时间段,如果超过,则返回终端标识信息制备步骤;如果未超时,则继续判断是否接收到服务器反馈的会话密钥应答消息;
如果接收到服务器反馈的会话密钥应答消息,则对会话密钥应答消息进行解密并恢复出会话密钥;进入加密模块;如果未接收到,则返回超时判断模块;
加密模块,其被配置为:采用会话密钥对物联网终端的待传输的数据进行加密处理,将加密处理后的数据传输给服务器。
9.基于国密算法的物联网安全认证服务器,其特征是,包括:
获取模块,其被配置为:获取终端发送过来的终端标识信息和会话密钥请求;
终端有效性验证模块,其被配置为:根据终端发送过来的终端标识信息,进行终端有效性验证;
会话密钥应答消息生成模块,其被配置为:针对有效性验证通过的终端的会话密钥请求,进行加密处理,得到会话密钥应答消息;
反馈模块,其被配置为:将会话密钥应答消息反馈给终端。
10.基于国密算法的物联网安全认证系统,其特征是,包括:如权利要求8所述的基于国密算法的物联网安全认证终端,和如权利要求9所述的基于国密算法的物联网安全认证服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911018609.0A CN110572828B (zh) | 2019-10-24 | 2019-10-24 | 基于国密算法的物联网安全认证方法、系统及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911018609.0A CN110572828B (zh) | 2019-10-24 | 2019-10-24 | 基于国密算法的物联网安全认证方法、系统及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110572828A true CN110572828A (zh) | 2019-12-13 |
CN110572828B CN110572828B (zh) | 2020-09-08 |
Family
ID=68785831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911018609.0A Active CN110572828B (zh) | 2019-10-24 | 2019-10-24 | 基于国密算法的物联网安全认证方法、系统及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110572828B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112087752A (zh) * | 2020-07-30 | 2020-12-15 | 中国信息安全测评中心 | 一种多无线终端数据监测方法及系统 |
CN112202556A (zh) * | 2020-10-30 | 2021-01-08 | 联通物联网有限责任公司 | 安全认证方法、装置和系统 |
CN113473456A (zh) * | 2021-05-14 | 2021-10-01 | 中国科学院声学研究所南海研究站 | 基于国产密码的百万级物联网终端安全接入方法及系统 |
CN113518056A (zh) * | 2020-04-09 | 2021-10-19 | 武汉慧禹信息科技有限公司 | 一种物联网链路安全传输方法 |
CN114338807A (zh) * | 2021-12-30 | 2022-04-12 | 紫光云(南京)数字技术有限公司 | 一种主机overlay下的消息排序机制 |
CN114662073A (zh) * | 2022-05-23 | 2022-06-24 | 深圳市中科创激光技术有限公司 | 用于led系统的验证方法、装置、计算机设备与介质 |
CN115296911A (zh) * | 2022-08-06 | 2022-11-04 | 山东润通科技有限公司 | 基于国密算法的数据加密采集传输仪及安全认证方法 |
CN116074811A (zh) * | 2023-04-06 | 2023-05-05 | 深圳华大北斗科技股份有限公司 | 基于eSim的北斗短报文通信方法、装置及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104955040A (zh) * | 2014-03-27 | 2015-09-30 | 西安西电捷通无线网络通信股份有限公司 | 一种网络鉴权认证的方法及设备 |
CN107426723A (zh) * | 2016-05-24 | 2017-12-01 | 中兴通讯股份有限公司 | 终端文件加密方法、终端文件解密方法和终端 |
-
2019
- 2019-10-24 CN CN201911018609.0A patent/CN110572828B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104955040A (zh) * | 2014-03-27 | 2015-09-30 | 西安西电捷通无线网络通信股份有限公司 | 一种网络鉴权认证的方法及设备 |
CN107426723A (zh) * | 2016-05-24 | 2017-12-01 | 中兴通讯股份有限公司 | 终端文件加密方法、终端文件解密方法和终端 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113518056A (zh) * | 2020-04-09 | 2021-10-19 | 武汉慧禹信息科技有限公司 | 一种物联网链路安全传输方法 |
CN112087752A (zh) * | 2020-07-30 | 2020-12-15 | 中国信息安全测评中心 | 一种多无线终端数据监测方法及系统 |
CN112087752B (zh) * | 2020-07-30 | 2022-07-29 | 中国信息安全测评中心 | 一种多无线终端数据监测方法及系统 |
CN112202556A (zh) * | 2020-10-30 | 2021-01-08 | 联通物联网有限责任公司 | 安全认证方法、装置和系统 |
CN113473456A (zh) * | 2021-05-14 | 2021-10-01 | 中国科学院声学研究所南海研究站 | 基于国产密码的百万级物联网终端安全接入方法及系统 |
CN114338807A (zh) * | 2021-12-30 | 2022-04-12 | 紫光云(南京)数字技术有限公司 | 一种主机overlay下的消息排序机制 |
CN114338807B (zh) * | 2021-12-30 | 2023-12-22 | 紫光云(南京)数字技术有限公司 | 一种主机overlay下的消息排序机制 |
CN114662073A (zh) * | 2022-05-23 | 2022-06-24 | 深圳市中科创激光技术有限公司 | 用于led系统的验证方法、装置、计算机设备与介质 |
CN114662073B (zh) * | 2022-05-23 | 2022-08-19 | 深圳市中科创激光技术有限公司 | 用于led系统的验证方法、装置、计算机设备与介质 |
CN115296911A (zh) * | 2022-08-06 | 2022-11-04 | 山东润通科技有限公司 | 基于国密算法的数据加密采集传输仪及安全认证方法 |
CN116074811A (zh) * | 2023-04-06 | 2023-05-05 | 深圳华大北斗科技股份有限公司 | 基于eSim的北斗短报文通信方法、装置及存储介质 |
CN116074811B (zh) * | 2023-04-06 | 2023-07-21 | 深圳华大北斗科技股份有限公司 | 基于eSim的北斗短报文通信方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110572828B (zh) | 2020-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110572828B (zh) | 基于国密算法的物联网安全认证方法、系统及终端 | |
US8746363B2 (en) | System for conducting remote biometric operations | |
Lu et al. | LEAP: A lightweight encryption and authentication protocol for in-vehicle communications | |
CN106357400B (zh) | 建立tbox终端和tsp平台之间通道的方法以及系统 | |
EP3183836B1 (en) | Generating cryptographic checksums | |
US10623187B2 (en) | Generating cryptographic checksums | |
EP3161995B1 (en) | Generating cryptographic checksums | |
CN113595744B (zh) | 入网方法、装置、电子设备及存储介质 | |
CN102594842A (zh) | 一种基于设备指纹的网管消息认证与加密方案 | |
CN113312608B (zh) | 一种基于时间戳的电力计量终端身份认证方法及系统 | |
CN112653719A (zh) | 汽车信息安全存储方法、装置、电子设备和存储介质 | |
CN102598575B (zh) | 用于对密码保护的有效数据单元加速解密的方法和系统 | |
CN102946315B (zh) | 一种采用分组方式构造mac码的方法及系统 | |
CN111079178B (zh) | 一种可信电子病历脱敏和回溯方法 | |
CN111406390A (zh) | 加密通信方法、装置、系统及计算机存储介质 | |
CN112749182B (zh) | 代理访问Oracle数据库的方法、审计终端、装置及计算机可读存储介质 | |
JP6534913B2 (ja) | 情報処理装置および不正メッセージ検知方法 | |
CN101542962A (zh) | 容许消息数据非顺序到达的情况下消息完整性的处理方法 | |
CN104683976A (zh) | 报文发送以及接收方法 | |
CN107154920B (zh) | 安全信息的加密方法、解密方法及用以接收安全信息的接收装置 | |
AU2021102898A4 (en) | Transmission Encryption Method, System, Device And Readable Storage Medium Of Function Parameter Data | |
CN113383514A (zh) | 用于在资源受限系统中认证消息的方法 | |
US10200348B2 (en) | Method to detect an OTA (over the air) standard message affected by an error | |
CN113645616A (zh) | 一种适用于wban数据实时加密传输的超轻量级加密方法 | |
CN103634113B (zh) | 一种带用户/设备身份认证的加解密方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |