CN110635901A - 用于物联网设备的本地蓝牙动态认证方法和系统 - Google Patents
用于物联网设备的本地蓝牙动态认证方法和系统 Download PDFInfo
- Publication number
- CN110635901A CN110635901A CN201910860257.7A CN201910860257A CN110635901A CN 110635901 A CN110635901 A CN 110635901A CN 201910860257 A CN201910860257 A CN 201910860257A CN 110635901 A CN110635901 A CN 110635901A
- Authority
- CN
- China
- Prior art keywords
- mac address
- signature
- slave device
- public key
- key
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
- H04L9/0841—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
- H04L9/0844—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
- H04L9/3249—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using RSA or related signature schemes, e.g. Rabin scheme
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/14—Direct-mode setup
Abstract
本申请公开了一种用于物联网设备的本地蓝牙动态认证方法和系统,涉及物联网领域。该方法包括:物联网内的主设备和从设备建立蓝牙连接,各自验证对方的产品签名合法性,根据对方DH算法的公钥采用DH算法生成相同的公共密钥,分别利用公共密钥进行MD5运算得到会话密钥;主设备根据从设备的MAC地址和公共密钥计算出第一MAC地址签名,利用会话密钥发送给从设备;从设备接收到第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同则密钥确认成功;双方使用会话密钥进行数据通信。该系统包括:位于物联网内的主设备和从设备。本申请实现了物联网设备在应用层的蓝牙动态认证,提高了数据传输的安全性。
Description
技术领域
本申请涉及物联网领域,特别是涉及一种用于物联网设备的本地蓝牙动态认证方法和系统。
背景技术
随着物联网的发展,越来越多的物联网设备面世,然而大部分的物联网设备并没有对数据进行加密,数据都是明文传输。这就导致了物联网设备很容易被黑客攻击,给人们带来不同程度的损失。因此物联网安全的重要性越来越明显,在开发物联网设备的时候一定要加强设备的安全能力。
目前,由于蓝牙协议已经非常普及,因此越来越多的物联网设备支持蓝牙协议,并基于蓝牙协议进行通信。但是,在蓝牙BLE协议栈中提供的数据安全都是基于链路层的,采用的主要手段是让监听者不能轻易解密监听到的数据,而在应用层则没有相应的安全措施,因此用户的应用数据很容易被黑客破解。
发明内容
本申请的目的在于克服上述问题或者至少部分地解决或缓减解决上述问题。
根据本申请的一个方面,提供了一种用于物联网设备的本地蓝牙动态认证方法,包括:
物联网内的主设备和从设备建立蓝牙连接;
所述主设备和从设备各自验证对方的产品签名合法性,并根据对方DH算法的公钥采用DH算法生成相同的公共密钥;
所述主设备和从设备分别利用所述公共密钥进行MD5运算得到会话密钥;
所述主设备根据所述从设备的MAC地址和所述公共密钥计算出第一MAC地址签名,利用所述会话密钥发送所述第一MAC地址签名给所述从设备;
所述从设备接收到所述第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同,则密钥确认成功;
所述主设备和从设备使用所述会话密钥进行数据通信。
可选地,所述主设备和从设备各自验证对方的产品签名合法性,并根据对方DH算法的公钥采用DH算法生成相同的公共密钥,包括:
所述主设备发送第一注册包给所述从设备,所述第一注册包包括:所述主设备的产品签名和所述主设备DH算法的公钥;
所述从设备收到所述第一注册包后,验证所述主设备的产品签名是否合法,如果合法,则根据所述主设备DH算法的公钥采用DH算法生成公共密钥,并回复第二注册包给所述主设备,所述第二注册包包括:所述从设备的产品签名和所述从设备DH算法的公钥;
所述主设备收到所述第二注册包后,验证所述从设备的产品签名是否合法,如果合法,则根据所述从设备DH算法的公钥采用DH算法生成所述公共密钥。
可选地,所述方法还包括:
所述从设备如果验证所述主设备的产品签名不合法,或者超时未收到所述第一注册包,则主动断开与所述主设备的蓝牙连接;
所述主设备如果验证所述从设备的产品签名不合法,或者超时未收到所述第二注册包,则主动断开与所述从设备的蓝牙连接。
可选地,利用所述会话密钥发送所述第一MAC地址签名给所述从设备,包括:
所述主设备生成包含所述第一MAC地址签名的密钥确认包,利用所述会话密钥加密所述密钥确认包后发送给所述从设备;
所述从设备接收到所述第一MAC地址签名,包括:
所述从设备收到所述密钥确认包后,利用所述会话密钥解密所述密钥确认包得到所述第一MAC地址签名。
可选地,所述方法还包括:
所述主设备和从设备每次重新建立蓝牙连接后,所述主设备为自身生成新的DH算法的公钥,所述从设备为自身生成新的DH算法的公钥。
根据本申请的另一个方面,提供了一种用于物联网设备的本地蓝牙动态认证系统,包括:位于物联网内的主设备和从设备;
所述主设备包括:
连接模块,其配置成与所述从设备建立蓝牙连接;
注册模块,其配置成验证所述从设备的产品签名合法性,并根据所述从设备DH算法的公钥采用DH算法生成公共密钥;
计算模块,其配置成利用所述公共密钥进行MD5运算得到会话密钥,根据所述从设备的MAC地址和所述公共密钥计算出第一MAC地址签名;
验证模块,其配置成利用所述会话密钥发送所述第一MAC地址签名给所述从设备;
通信模块,其配置成使用所述会话密钥与所述从设备进行数据通信;
所述从设备包括:
连接模块,其配置成与所述主设备建立蓝牙连接;
注册模块,其配置成验证所述主设备的产品签名合法性,并根据所述主设备DH算法的公钥采用DH算法生成相同的所述公共密钥;
计算模块,其配置成利用所述公共密钥进行MD5运算得到所述会话密钥;
验证模块,其配置成接收到所述第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同,则密钥确认成功;
通信模块,其配置成使用所述会话密钥与所述主设备进行数据通信。
可选地,所述主设备的注册模块具体配置成:
发送第一注册包给所述从设备,所述第一注册包包括:所述主设备的产品签名和所述主设备DH算法的公钥;还用于在收到第二注册包后,验证所述从设备的产品签名是否合法,如果合法,则根据所述从设备DH算法的公钥采用DH算法生成公共密钥;
所述从设备的注册模块具体配置成:
收到所述第一注册包后,验证所述主设备的产品签名是否合法,如果合法,则根据所述主设备DH算法的公钥采用DH算法生成公共密钥,并回复所述第二注册包给所述主设备,所述第二注册包包括:所述从设备的产品签名和所述从设备DH算法的公钥。
可选地,所述从设备的注册模块还配置成:
如果验证所述主设备的产品签名不合法,或者超时未收到所述第一注册包,则主动断开与所述主设备的蓝牙连接;
所述主设备的注册模块还配置成:
如果验证所述从设备的产品签名不合法,或者超时未收到所述第二注册包,则主动断开与所述从设备的蓝牙连接。
可选地,所述验证模块具体配置成:
生成包含所述第一MAC地址签名的密钥确认包,利用所述会话密钥加密所述密钥确认包后发送给所述从设备;
所述从设备的验证模块具体配置成:
收到所述密钥确认包后,利用所述会话密钥解密所述密钥确认包得到所述第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同,则密钥确认成功。
可选地,所述主设备的计算模块还配置成:
每次重新建立蓝牙连接后,为所述主设备生成新的DH算法的公钥;
所述从设备的计算模块还配置成:
每次重新建立蓝牙连接后,为所述从设备生成新的DH算法的公钥。
根据本申请的又一个方面,提供了一种计算设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如上所述的方法。
根据本申请的又一个方面,提供了一种计算机可读存储介质,优选为非易失性可读存储介质,其内存储有计算机程序,所述计算机程序在由处理器执行时实现如上所述的方法。
根据本申请的又一个方面,提供了一种计算机程序产品,包括计算机可读代码,当所述计算机可读代码由计算机设备执行时,导致所述计算机设备执行上述的方法。
本申请提供的技术方案,通过物联网内的主设备和从设备建立蓝牙连接,各自验证对方的产品签名合法性,并根据对方DH算法的公钥采用DH算法生成相同的公共密钥,分别利用公共密钥进行MD5运算得到会话密钥,主设备根据从设备的MAC地址和公共密钥计算出第一MAC地址签名,利用会话密钥发送第一MAC地址签名给从设备,从设备接收到第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同,则密钥确认成功,主设备和从设备使用会话密钥进行数据通信,实现了物联网设备在应用层的蓝牙动态认证,提高了数据传输的安全性,基于DH算法协商密钥,密钥无法被逆推,暴力破解难度极高,验证产品签名合法性,实现了主从设备的双向认证功能,解决了中间人攻击的威胁。
进一步地,主设备和从设备每次重新建立蓝牙连接后,都会生成新的DH算法的公钥,保证了密钥的及时更新,实现了动态密钥的功能。
根据下文结合附图对本申请的具体实施例的详细描述,本领域技术人员将会更加明了本申请的上述以及其他目的、优点和特征。
附图说明
后文将参照附图以示例性而非限制性的方式详细描述本申请的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。附图中:
图1是根据本申请一个实施例的用于物联网设备的本地蓝牙动态认证方法流程图;
图2是根据本申请另一个实施例的用于物联网设备的本地蓝牙动态认证方法流程图;
图3是根据本申请另一个实施例的用于物联网设备的本地蓝牙动态认证系统结构图;
图4是根据本申请另一个实施例的计算设备结构图;
图5是根据本申请另一个实施例的计算机可读存储介质结构图。
具体实施方式
图1是根据本申请一个实施例的用于物联网设备的本地蓝牙动态认证方法流程图。参见图1,该方法包括:
101:物联网内的主设备和从设备建立蓝牙连接;
102:主设备和从设备各自验证对方的产品签名合法性,并根据对方DH算法的公钥采用DH算法生成相同的公共密钥;
103:主设备和从设备分别利用公共密钥进行MD5运算得到会话密钥;
104:主设备根据从设备的MAC地址和公共密钥计算出第一MAC地址签名,利用会话密钥发送第一MAC地址签名给从设备;
105:从设备接收到第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同,则密钥确认成功;
106:主设备和从设备使用会话密钥进行数据通信。
本实施例中,可选的,主设备和从设备各自验证对方的产品签名合法性,并根据对方DH算法的公钥采用DH算法生成相同的公共密钥,包括:
主设备发送第一注册包给从设备,第一注册包包括:主设备的产品签名和主设备DH算法的公钥;从设备收到第一注册包后,验证主设备的产品签名是否合法,如果合法,则根据主设备DH算法的公钥采用DH算法生成公共密钥,并回复第二注册包给主设备,第二注册包包括:从设备的产品签名和从设备DH算法的公钥;主设备收到第二注册包后,验证从设备的产品签名是否合法,如果合法,则根据从设备DH算法的公钥采用DH算法生成公共密钥。
本实施例中,可选的,上述方法还包括:
从设备如果验证主设备的产品签名不合法,或者超时未收到第一注册包,则主动断开与主设备的蓝牙连接;主设备如果验证从设备的产品签名不合法,或者超时未收到第二注册包,则主动断开与从设备的蓝牙连接。
本实施例中,可选的,利用会话密钥发送第一MAC地址签名给从设备,包括:主设备生成包含第一MAC地址签名的密钥确认包,利用会话密钥加密密钥确认包后发送给从设备;
相应的,从设备接收到第一MAC地址签名,包括:从设备收到密钥确认包后,利用会话密钥解密密钥确认包得到第一MAC地址签名。
本实施例中,可选的,上述方法还包括:
主设备和从设备每次重新建立蓝牙连接后,主设备为自身生成新的DH算法的公钥,从设备为自身生成新的DH算法的公钥。
本实施例提供的上述方法,通过物联网内的主设备和从设备建立蓝牙连接,各自验证对方的产品签名合法性,并根据对方DH算法的公钥采用DH算法生成相同的公共密钥,分别利用公共密钥进行MD5运算得到会话密钥,主设备根据从设备的MAC地址和公共密钥计算出第一MAC地址签名,利用会话密钥发送第一MAC地址签名给从设备,从设备接收到第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同,则密钥确认成功,主设备和从设备使用会话密钥进行数据通信,实现了物联网设备在应用层的蓝牙动态认证,提高了数据传输的安全性,基于DH算法协商密钥,密钥无法被逆推,暴力破解难度极高,验证产品签名合法性,实现了主从设备的双向认证功能,解决了中间人攻击的威胁。
进一步地,主设备和从设备每次重新建立蓝牙连接后,都会生成新的DH算法的公钥,保证了密钥的及时更新,实现了动态密钥的功能。
图2是根据本申请另一个实施例的用于物联网设备的本地蓝牙动态认证方法流程图。参见图2,该方法包括:
201:物联网内的主设备开启蓝牙扫描,从设备发送广播消息,主设备发现从设备后主动连接从设备,从而建立主设备与从设备之间的蓝牙连接;
本实施例中,建立蓝牙连接在链路层实现,后续步骤均在应用层实现。
202:主设备发送第一注册包给从设备,第一注册包包括:主设备的产品签名product_sign和主设备DH算法的公钥DH_pubkey_master;
其中,第一注册包还包括:产品ID product_id和随机数random。产品ID与产品密钥product_key都是成对出现的,通常是云端生成后提供给物联网设备记录在本地。产品签名可以根据产品ID、随机数以及产品密钥,结合AES加密算法和MD5算法计算出来,具体公式如下:
product_sign=MD5(AES_encrypt(“product_id+random”,product_key));
其中product_sign、product_id、random都是主设备发送给从设备的,而从设备本地保存有product_key,因此从设备能够根据该公式验证收到的product_sign是否正确。
203:从设备收到第一注册包后,验证主设备的产品签名是否合法,如果合法,则根据主设备DH算法的公钥DH_pubkey_master采用DH算法生成公共密钥DH_KEY,并回复第二注册包给主设备,如果不合法或者超时未收到第一注册包,则主动断开与主设备的蓝牙连接;
其中,第二注册包包括:从设备的产品签名product_sign和从设备DH算法的公钥DH_pubkey_slave,并且还包括:产品ID product_id、random随机数以及从设备的MAC地址。
本实施例中,公共密钥DH_KEY是根据DH算法(Diffie–Hellman key exchange,迪菲-赫尔曼密钥交换算法)计算得到的,主设备与从设备之间只要获取了对方的DH算法的公钥DH_pubkey,双方就可以协商出相同的公共密钥DH_KEY,实现密钥协商的功能。
204:主设备收到第二注册包后,验证从设备的产品签名是否合法,如果合法,则根据从设备DH算法的公钥DH_pubkey_slave采用DH算法生成相同的公共密钥DH_KEY,如果不合法或者超时未收到第二注册包,则主动断开与从设备的蓝牙连接;
205:主设备和从设备分别利用公共密钥进行MD5运算得到会话密钥session_key;
其中,计算公式可以具体如下:session_key=MD5(DH_KEY)。
206:主设备根据从设备的MAC地址和公共密钥DH_KEY计算出第一MAC地址签名mac_sign,生成包含第一MAC地址签名的密钥确认包,利用会话密钥加密密钥确认包后发送给从设备;
207:从设备收到密钥确认包后,利用会话密钥session_key解密密钥确认包得到第一MAC地址签名mac_sign,与本地生成的第二MAC地址签名mac_sign_s进行比较,如果相同,则密钥确认成功,回复密钥确认成功的消息给主设备;如果不同或者超时未收到密钥确认包,则主动断开与主设备的蓝牙连接;
其中,从设备本地生成的第二MAC地址签名的算法与主设备生成第一MAC地址签名的算法相同,此处不赘述。
主设备在指定时间内收到了从设备回复的密钥确认成功消息后,双方注册认证流程结束。
208:主设备和从设备使用会话密钥session_key进行数据通信。
本实施例中,可选的,上述方法还包括:
主设备和从设备每次重新建立蓝牙连接后,主设备为自身生成新的DH算法的公钥DH_pubkey_master,从设备为自身生成新的DH算法的公钥DH_pubkey_slave。
本实施例提供的上述方法,通过物联网内的主设备和从设备建立蓝牙连接,各自验证对方的产品签名合法性,并根据对方DH算法的公钥采用DH算法生成相同的公共密钥,分别利用公共密钥进行MD5运算得到会话密钥,主设备根据从设备的MAC地址和公共密钥计算出第一MAC地址签名,利用会话密钥发送第一MAC地址签名给从设备,从设备接收到第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同,则密钥确认成功,主设备和从设备使用会话密钥进行数据通信,实现了物联网设备在应用层的蓝牙动态认证,提高了数据传输的安全性,基于DH算法协商密钥,密钥无法被逆推,暴力破解难度极高,验证产品签名合法性,实现了主从设备的双向认证功能,解决了中间人攻击的威胁。
进一步地,主设备和从设备每次重新建立蓝牙连接后,都会生成新的DH算法的公钥,保证了密钥的及时更新,实现了动态密钥的功能。
图3是根据本申请另一个实施例的用于物联网设备的本地蓝牙动态认证系统结构图。参见图3,该系统包括:位于物联网内的主设备30和从设备40;
主设备30包括:
连接模块301,其配置成与从设备建立蓝牙连接;
注册模块302,其配置成验证从设备的产品签名合法性,并根据从设备DH算法的公钥采用DH算法生成公共密钥;
计算模块303,其配置成利用公共密钥进行MD5运算得到会话密钥,根据从设备的MAC地址和公共密钥计算出第一MAC地址签名;
验证模块304,其配置成利用会话密钥发送第一MAC地址签名给从设备;
通信模块305,其配置成使用会话密钥与从设备进行数据通信;
从设备40包括:
连接模块401,其配置成与主设备建立蓝牙连接;
注册模块402,其配置成验证主设备的产品签名合法性,并根据主设备DH算法的公钥采用DH算法生成相同的公共密钥;
计算模块403,其配置成利用公共密钥进行MD5运算得到会话密钥;
验证模块404,其配置成接收到第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同,则密钥确认成功;
通信模块405,其配置成使用会话密钥与主设备进行数据通信。
本实施例中,可选的,主设备的注册模块具体配置成:
发送第一注册包给从设备,第一注册包包括:主设备的产品签名和主设备DH算法的公钥;还用于在收到第二注册包后,验证从设备的产品签名是否合法,如果合法,则根据从设备DH算法的公钥采用DH算法生成公共密钥;
相应的,从设备的注册模块具体配置成:
收到第一注册包后,验证主设备的产品签名是否合法,如果合法,则根据主设备DH算法的公钥采用DH算法生成公共密钥,并回复第二注册包给主设备,第二注册包包括:从设备的产品签名和从设备DH算法的公钥。
本实施例中,可选的,从设备的注册模块还配置成:如果验证主设备的产品签名不合法,或者超时未收到第一注册包,则主动断开与主设备的蓝牙连接;
相应的,主设备的注册模块还配置成:如果验证从设备的产品签名不合法,或者超时未收到第二注册包,则主动断开与从设备的蓝牙连接。
本实施例中,可选的,验证模块具体配置成:生成包含第一MAC地址签名的密钥确认包,利用会话密钥加密密钥确认包后发送给从设备;
相应的,从设备的验证模块具体配置成:收到密钥确认包后,利用会话密钥解密密钥确认包得到第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同,则密钥确认成功。
本实施例中,可选的,主设备的计算模块还配置成:每次重新建立蓝牙连接后,为主设备生成新的DH算法的公钥;
相应的,从设备的计算模块还配置成:每次重新建立蓝牙连接后,为从设备生成新的DH算法的公钥。
本实施例提供的上述系统,可以执行上述任一方法实施例提供的方法,详细过程详见方法实施例中的描述,此处不赘述。
本实施例提供的上述系统,通过物联网内的主设备和从设备建立蓝牙连接,各自验证对方的产品签名合法性,并根据对方DH算法的公钥采用DH算法生成相同的公共密钥,分别利用公共密钥进行MD5运算得到会话密钥,主设备根据从设备的MAC地址和公共密钥计算出第一MAC地址签名,利用会话密钥发送第一MAC地址签名给从设备,从设备接收到第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同,则密钥确认成功,主设备和从设备使用会话密钥进行数据通信,实现了物联网设备在应用层的蓝牙动态认证,提高了数据传输的安全性,基于DH算法协商密钥,密钥无法被逆推,暴力破解难度极高,验证产品签名合法性,实现了主从设备的双向认证功能,解决了中间人攻击的威胁。
进一步地,主设备和从设备每次重新建立蓝牙连接后,都会生成新的DH算法的公钥,保证了密钥的及时更新,实现了动态密钥的功能。
根据下文结合附图对本申请的具体实施例的详细描述,本领域技术人员将会更加明了本申请的上述以及其他目的、优点和特征。
本申请实施例还提供了一种计算设备,参照图4,该计算设备包括存储器1120、处理器1110和存储在所述存储器1120内并能由所述处理器1110运行的计算机程序,该计算机程序存储于存储器1120中的用于程序代码的空间1130,该计算机程序在由处理器1110执行时实现用于执行任一项根据本发明的方法步骤1131。
本申请实施例还提供了一种计算机可读存储介质。参照图5,该计算机可读存储介质包括用于程序代码的存储单元,该存储单元设置有用于执行根据本发明的方法步骤的程序1131′,该程序被处理器执行。
本申请实施例还提供了一种包含指令的计算机程序产品。当该计算机程序产品在计算机上运行时,使得计算机执行根据本发明的方法步骤。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、获取其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令处理器完成,所述的程序可以存储于计算机可读存储介质中,所述存储介质是非短暂性(英文:non-transitory)介质,例如随机存取存储器,只读存储器,快闪存储器,硬盘,固态硬盘,磁带(英文:magnetic tape),软盘(英文:floppy disk),光盘(英文:optical disc)及其任意组合。
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (10)
1.一种用于物联网设备的本地蓝牙动态认证方法,包括:
物联网内的主设备和从设备建立蓝牙连接;
所述主设备和从设备各自验证对方的产品签名合法性,并根据对方DH算法的公钥采用DH算法生成相同的公共密钥;
所述主设备和从设备分别利用所述公共密钥进行MD5运算得到会话密钥;
所述主设备根据所述从设备的MAC地址和所述公共密钥计算出第一MAC地址签名,利用所述会话密钥发送所述第一MAC地址签名给所述从设备;
所述从设备接收到所述第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同,则密钥确认成功;
所述主设备和从设备使用所述会话密钥进行数据通信。
2.根据权利要求1所述的方法,其特征在于,所述主设备和从设备各自验证对方的产品签名合法性,并根据对方DH算法的公钥采用DH算法生成相同的公共密钥,包括:
所述主设备发送第一注册包给所述从设备,所述第一注册包包括:所述主设备的产品签名和所述主设备DH算法的公钥;
所述从设备收到所述第一注册包后,验证所述主设备的产品签名是否合法,如果合法,则根据所述主设备DH算法的公钥采用DH算法生成公共密钥,并回复第二注册包给所述主设备,所述第二注册包包括:所述从设备的产品签名和所述从设备DH算法的公钥;
所述主设备收到所述第二注册包后,验证所述从设备的产品签名是否合法,如果合法,则根据所述从设备DH算法的公钥采用DH算法生成所述公共密钥。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
所述从设备如果验证所述主设备的产品签名不合法,或者超时未收到所述第一注册包,则主动断开与所述主设备的蓝牙连接;
所述主设备如果验证所述从设备的产品签名不合法,或者超时未收到所述第二注册包,则主动断开与所述从设备的蓝牙连接。
4.根据权利要求1所述的方法,其特征在于,利用所述会话密钥发送所述第一MAC地址签名给所述从设备,包括:
所述主设备生成包含所述第一MAC地址签名的密钥确认包,利用所述会话密钥加密所述密钥确认包后发送给所述从设备;
所述从设备接收到所述第一MAC地址签名,包括:
所述从设备收到所述密钥确认包后,利用所述会话密钥解密所述密钥确认包得到所述第一MAC地址签名。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述方法还包括:
所述主设备和从设备每次重新建立蓝牙连接后,所述主设备为自身生成新的DH算法的公钥,所述从设备为自身生成新的DH算法的公钥。
6.一种用于物联网设备的本地蓝牙动态认证系统,包括:位于物联网内的主设备和从设备;
所述主设备包括:
连接模块,其配置成与所述从设备建立蓝牙连接;
注册模块,其配置成验证所述从设备的产品签名合法性,并根据所述从设备DH算法的公钥采用DH算法生成公共密钥;
计算模块,其配置成利用所述公共密钥进行MD5运算得到会话密钥,根据所述从设备的MAC地址和所述公共密钥计算出第一MAC地址签名;
验证模块,其配置成利用所述会话密钥发送所述第一MAC地址签名给所述从设备;
通信模块,其配置成使用所述会话密钥与所述从设备进行数据通信;
所述从设备包括:
连接模块,其配置成与所述主设备建立蓝牙连接;
注册模块,其配置成验证所述主设备的产品签名合法性,并根据所述主设备DH算法的公钥采用DH算法生成相同的所述公共密钥;
计算模块,其配置成利用所述公共密钥进行MD5运算得到所述会话密钥;
验证模块,其配置成接收到所述第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同,则密钥确认成功;
通信模块,其配置成使用所述会话密钥与所述主设备进行数据通信。
7.根据权利要求6所述的系统,其特征在于,所述主设备的注册模块具体配置成:
发送第一注册包给所述从设备,所述第一注册包包括:所述主设备的产品签名和所述主设备DH算法的公钥;还用于在收到第二注册包后,验证所述从设备的产品签名是否合法,如果合法,则根据所述从设备DH算法的公钥采用DH算法生成公共密钥;
所述从设备的注册模块具体配置成:
收到所述第一注册包后,验证所述主设备的产品签名是否合法,如果合法,则根据所述主设备DH算法的公钥采用DH算法生成公共密钥,并回复所述第二注册包给所述主设备,所述第二注册包包括:所述从设备的产品签名和所述从设备DH算法的公钥。
8.根据权利要求7所述的系统,其特征在于,
所述从设备的注册模块还配置成:
如果验证所述主设备的产品签名不合法,或者超时未收到所述第一注册包,则主动断开与所述主设备的蓝牙连接;
所述主设备的注册模块还配置成:
如果验证所述从设备的产品签名不合法,或者超时未收到所述第二注册包,则主动断开与所述从设备的蓝牙连接。
9.根据权利要求6所述的系统,其特征在于,所述验证模块具体配置成:
生成包含所述第一MAC地址签名的密钥确认包,利用所述会话密钥加密所述密钥确认包后发送给所述从设备;
所述从设备的验证模块具体配置成:
收到所述密钥确认包后,利用所述会话密钥解密所述密钥确认包得到所述第一MAC地址签名,与本地生成的第二MAC地址签名进行比较,如果相同,则密钥确认成功。
10.根据权利要求6-9中任一项所述的系统,其特征在于,
所述主设备的计算模块还配置成:
每次重新建立蓝牙连接后,为所述主设备生成新的DH算法的公钥;
所述从设备的计算模块还配置成:
每次重新建立蓝牙连接后,为所述从设备生成新的DH算法的公钥。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910860257.7A CN110635901B (zh) | 2019-09-11 | 2019-09-11 | 用于物联网设备的本地蓝牙动态认证方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910860257.7A CN110635901B (zh) | 2019-09-11 | 2019-09-11 | 用于物联网设备的本地蓝牙动态认证方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110635901A true CN110635901A (zh) | 2019-12-31 |
CN110635901B CN110635901B (zh) | 2023-01-17 |
Family
ID=68971579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910860257.7A Active CN110635901B (zh) | 2019-09-11 | 2019-09-11 | 用于物联网设备的本地蓝牙动态认证方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110635901B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111757422A (zh) * | 2020-06-11 | 2020-10-09 | 重庆辉烨通讯技术有限公司 | 设备激活方法、装置、用户终端、待激活设备及存储介质 |
CN112118088A (zh) * | 2020-09-09 | 2020-12-22 | 燕山大学 | 基于md5、aes和dh算法的文件加密方法、装置及存储介质 |
CN112585549A (zh) * | 2020-02-29 | 2021-03-30 | 华为技术有限公司 | 一种故障诊断方法、装置及车辆 |
CN113329386A (zh) * | 2021-06-11 | 2021-08-31 | 北京智芯微电子科技有限公司 | 支持身份鉴权的蓝牙配对方法、安全芯片及蓝牙模块 |
WO2021259015A1 (zh) * | 2020-06-24 | 2021-12-30 | 广州汽车集团股份有限公司 | 蓝牙钥匙与车辆连接的方法、车辆蓝牙系统、蓝牙钥匙 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030060148A (ko) * | 2002-01-07 | 2003-07-16 | 이임영 | 타원곡선 암호알고리즘을 이용한 안전한 피코넷 형성 및유지 방법 |
CN101183938A (zh) * | 2007-10-22 | 2008-05-21 | 华中科技大学 | 一种无线网络安全传输方法、系统及设备 |
CN103942688A (zh) * | 2014-04-25 | 2014-07-23 | 天地融科技股份有限公司 | 数据安全交互系统 |
CN104796265A (zh) * | 2015-05-06 | 2015-07-22 | 厦门大学 | 一种基于蓝牙通信接入的物联网身份认证方法 |
CN104955166A (zh) * | 2014-03-28 | 2015-09-30 | 北京奇虎科技有限公司 | 蓝牙通信方法和系统 |
CN105610832A (zh) * | 2015-12-30 | 2016-05-25 | 北京华大智宝电子系统有限公司 | 一种蓝牙设备配对方法及蓝牙设备 |
US20160286395A1 (en) * | 2015-03-24 | 2016-09-29 | Intel Corporation | Apparatus, system and method of securing communication between wireless devices |
US20170006003A1 (en) * | 2015-07-03 | 2017-01-05 | Afero, Inc. | Apparatus and method for establishing secure communication channels in an internet of things (iot) system |
CN106788977A (zh) * | 2016-12-28 | 2017-05-31 | 北京握奇数据系统有限公司 | 低功耗蓝牙设备通讯加密方法及系统 |
CN107317677A (zh) * | 2017-05-25 | 2017-11-03 | 苏州科达科技股份有限公司 | 密钥存储及设备身份认证方法、装置 |
CN107454561A (zh) * | 2017-08-14 | 2017-12-08 | 恒宝股份有限公司 | 一种蓝牙链路数据保护方法及其保护系统 |
US10129228B1 (en) * | 2016-03-30 | 2018-11-13 | Amazon Technologies, Inc. | Authenticated communication between devices |
CN109639412A (zh) * | 2018-12-05 | 2019-04-16 | 成都卫士通信息产业股份有限公司 | 一种通信方法、系统及电子设备和存储介质 |
-
2019
- 2019-09-11 CN CN201910860257.7A patent/CN110635901B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030060148A (ko) * | 2002-01-07 | 2003-07-16 | 이임영 | 타원곡선 암호알고리즘을 이용한 안전한 피코넷 형성 및유지 방법 |
CN101183938A (zh) * | 2007-10-22 | 2008-05-21 | 华中科技大学 | 一种无线网络安全传输方法、系统及设备 |
CN104955166A (zh) * | 2014-03-28 | 2015-09-30 | 北京奇虎科技有限公司 | 蓝牙通信方法和系统 |
CN103942688A (zh) * | 2014-04-25 | 2014-07-23 | 天地融科技股份有限公司 | 数据安全交互系统 |
US20160286395A1 (en) * | 2015-03-24 | 2016-09-29 | Intel Corporation | Apparatus, system and method of securing communication between wireless devices |
CN104796265A (zh) * | 2015-05-06 | 2015-07-22 | 厦门大学 | 一种基于蓝牙通信接入的物联网身份认证方法 |
US20170006003A1 (en) * | 2015-07-03 | 2017-01-05 | Afero, Inc. | Apparatus and method for establishing secure communication channels in an internet of things (iot) system |
CN105610832A (zh) * | 2015-12-30 | 2016-05-25 | 北京华大智宝电子系统有限公司 | 一种蓝牙设备配对方法及蓝牙设备 |
US10129228B1 (en) * | 2016-03-30 | 2018-11-13 | Amazon Technologies, Inc. | Authenticated communication between devices |
CN106788977A (zh) * | 2016-12-28 | 2017-05-31 | 北京握奇数据系统有限公司 | 低功耗蓝牙设备通讯加密方法及系统 |
CN107317677A (zh) * | 2017-05-25 | 2017-11-03 | 苏州科达科技股份有限公司 | 密钥存储及设备身份认证方法、装置 |
CN107454561A (zh) * | 2017-08-14 | 2017-12-08 | 恒宝股份有限公司 | 一种蓝牙链路数据保护方法及其保护系统 |
CN109639412A (zh) * | 2018-12-05 | 2019-04-16 | 成都卫士通信息产业股份有限公司 | 一种通信方法、系统及电子设备和存储介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112585549A (zh) * | 2020-02-29 | 2021-03-30 | 华为技术有限公司 | 一种故障诊断方法、装置及车辆 |
CN111757422A (zh) * | 2020-06-11 | 2020-10-09 | 重庆辉烨通讯技术有限公司 | 设备激活方法、装置、用户终端、待激活设备及存储介质 |
CN111757422B (zh) * | 2020-06-11 | 2022-09-16 | 重庆辉烨物联科技有限公司 | 设备激活方法、装置、用户终端、待激活设备及存储介质 |
WO2021259015A1 (zh) * | 2020-06-24 | 2021-12-30 | 广州汽车集团股份有限公司 | 蓝牙钥匙与车辆连接的方法、车辆蓝牙系统、蓝牙钥匙 |
CN112118088A (zh) * | 2020-09-09 | 2020-12-22 | 燕山大学 | 基于md5、aes和dh算法的文件加密方法、装置及存储介质 |
CN113329386A (zh) * | 2021-06-11 | 2021-08-31 | 北京智芯微电子科技有限公司 | 支持身份鉴权的蓝牙配对方法、安全芯片及蓝牙模块 |
Also Published As
Publication number | Publication date |
---|---|
CN110635901B (zh) | 2023-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109309565B (zh) | 一种安全认证的方法及装置 | |
CN110380852B (zh) | 双向认证方法及通信系统 | |
CN110635901B (zh) | 用于物联网设备的本地蓝牙动态认证方法和系统 | |
JP4712871B2 (ja) | サービス提供者、端末機及びユーザー識別モジュールの包括的な認証と管理のための方法及びその方法を用いるシステムと端末装置 | |
CN108599925B (zh) | 一种基于量子通信网络的改进型aka身份认证系统和方法 | |
JP5431479B2 (ja) | 機器とステーションの関連付けのためのプロトコル | |
JP5845393B2 (ja) | 暗号通信装置および暗号通信システム | |
CN112425136B (zh) | 采用多方计算(mpc)的物联网安全性 | |
CN109150897B (zh) | 一种端到端的通信加密方法及装置 | |
CN110933484A (zh) | 一种无线投屏设备的管理方法及装置 | |
WO2024031868A1 (zh) | 一种基于属性加密的设备安全认证方法及其相关装置 | |
KR20150135032A (ko) | Puf를 이용한 비밀키 업데이트 시스템 및 방법 | |
CN105141629A (zh) | 一种基于WPA/WPA2 PSK多密码提升公用Wi-Fi网络安全性的方法 | |
CN111130799B (zh) | 一种基于tee进行https协议传输的方法及系统 | |
CN104243452A (zh) | 一种云计算访问控制方法及系统 | |
CN110519222B (zh) | 基于一次性非对称密钥对和密钥卡的外网接入身份认证方法和系统 | |
JP4550759B2 (ja) | 通信システム及び通信装置 | |
US20240064027A1 (en) | Identity authentication method and apparatus, and storage medium, program and program product | |
CN111654481A (zh) | 一种身份认证方法、装置和存储介质 | |
CN110611679A (zh) | 一种数据传输方法、装置、设备及系统 | |
CN115473655B (zh) | 接入网络的终端认证方法、装置及存储介质 | |
US20240064006A1 (en) | Identity authentication method and apparatus, storage medium, program, and program product | |
EP4270860A1 (en) | Identity authentication method, authentication access controller, request device, storage medium, program, and program product | |
JP2005175992A (ja) | 証明書配布システムおよび証明書配布方法 | |
JP2004274134A (ja) | 通信方法並びにこの通信方法を用いた通信システム、サーバおよびクライアント |
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 |