CN109688573A - 蓝牙设备间的交互方法及蓝牙设备 - Google Patents
蓝牙设备间的交互方法及蓝牙设备 Download PDFInfo
- Publication number
- CN109688573A CN109688573A CN201910059076.4A CN201910059076A CN109688573A CN 109688573 A CN109688573 A CN 109688573A CN 201910059076 A CN201910059076 A CN 201910059076A CN 109688573 A CN109688573 A CN 109688573A
- Authority
- CN
- China
- Prior art keywords
- bluetooth
- key
- data
- host
- bluetooth host
- 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.)
- Pending
Links
Classifications
-
- 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
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/02—Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
-
- 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 Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例公开了一种蓝牙设备间的交互方法及蓝牙设备。所述方法应用于包含数据安全模块的蓝牙从设备,所述方法包括:接收蓝牙主机发送的握手命令,所述握手命令中包括验证数据;在根据所述验证数据确定所述蓝牙主机为已绑定蓝牙主机,以及通过数据安全模块根据预设密钥计算得到数据交互密钥之后,向所述蓝牙主机发送握手应答;所述数据交互密钥用于和所述蓝牙主机交互时进行数据加解密。通过采用本申请公开的技术方案,可以实现提高数据通信过程中安全性的效果。
Description
技术领域
本申请实施例涉及数据安全技术领域,尤其涉及一种蓝牙设备间的交互方法及蓝牙设备。
背景技术
随着互联网技术的出现和迅猛发展,人类的生活方式得到了巨大的改变,但在大量数据的传输同时,数据安全也显得尤为重要。
现有技术中,对于低功耗蓝牙从设备与蓝牙主设备之间的数据通信来说,在建立连接后,并不能够提供有效的信息安全保护机制,数据交互容易被监听,安全性较低。
发明内容
本申请实施例提供一种蓝牙设备间的交互方法及蓝牙设备,可以实现提高数据通信过程中安全性的效果。
第一方面,本申请实施例提供了一种蓝牙设备间的交互方法,所述方法应用于蓝牙从设备,该方法包括:
接收蓝牙主机发送的握手命令,所述握手命令中包括验证数据;
在根据所述验证数据确定所述蓝牙主机为已绑定蓝牙主机,以及通过数据安全模块根据预设密钥计算得到数据交互密钥之后,向所述蓝牙主机发送握手应答;
所述数据交互密钥用于和所述蓝牙主机交互时进行数据加解密。
进一步的,通过所述数据安全模块根据预设密钥以及所述验证数据的部分或全部计算所述数据交互密钥。
进一步的,所述验证数据中包括第一密钥参数;所述数据安全模块根据预设密钥和所述第一密钥参数计算所述数据交互密钥。
进一步的,所述验证数据中包括设备身份信息;
相应的,根据所述验证数据确定所述蓝牙主机为已绑定蓝牙主机,包括:
根据所述设备身份信息判断所述蓝牙主机是否为已绑定蓝牙主机。
进一步的,在接收蓝牙主机发送的握手命令之前,所述方法还包括:与蓝牙主机建立绑定关系,其中:
在与蓝牙主机建立蓝牙连接后,接收蓝牙主机发送的配对请求,所述配对请求中包括第二密钥参数;
在根据所述第二密钥参数计算得到所述预设密钥后,向所述蓝牙主机发送配对应答。
进一步的,所述第二密钥参数包括以下一种或多种:蓝牙主机信息、约定密钥和随机数据。
第二方面,本申请实施例还提供了一种蓝牙设备间的交互方法,所述方法应用于蓝牙主机,所述方法包括:
向蓝牙从设备发送握手命令,所述握手命令中包括用于验证蓝牙主机是否为蓝牙从设备绑定蓝牙主机的验证数据;
接收所述蓝牙从设备发送的握手响应以及根据预设密钥计算数据交互密钥;
其中,所述数据交互密钥用于和所述蓝牙从设备交互时进行数据加解密。
进一步的,所述根据预设密钥计算数据交互密钥,包括:根据预设密钥以及所述验证数据的部分或全部计算所述数据交互密钥。
进一步的,所述验证数据中包括第一密钥参数;相应的,根据预设密钥和所述第一密钥参数计算所述数据交互密钥。
进一步的,所述验证数据中包括用于判断所述蓝牙主机是否为蓝牙从设备已绑定蓝牙主机的设备身份信息。
进一步的,在向蓝牙从设备发送握手命令之前,所述方法还包括:与蓝牙主机建立绑定关系,其中:
在与蓝牙从设备建立蓝牙连接之后,向蓝牙从设备发送配对请求,所述配对请求中包括第二密钥参数;
接收蓝牙从设备发送的配对应答以及根据所述第二密钥参数计算得到所述预设密钥。
进一步的,所述第二密钥参数包括以下一种或多种:蓝牙主机信息、约定密钥和随机数据。
第三方面,本申请实施例提供了一种蓝牙设备间的交互装置,所述装置配置于包含数据安全模块的蓝牙从设备,该装置包括:
握手命令接收模块,用于接收蓝牙主机发送的握手命令,所述握手命令中包括验证数据;
交互密钥生成模块,用于在根据所述验证数据确定所述蓝牙主机为已绑定蓝牙主机,以及通过数据安全模块根据预设密钥计算得到数据交互密钥之后,向所述蓝牙主机发送握手应答;
其中,所述数据交互密钥用于和所述蓝牙主机交互时进行数据加解密。
第四方面,本申请实施例提供了一种蓝牙设备间的交互装置,所述装置配置于蓝牙主机,该装置包括:
握手命令发送模块,用于向蓝牙从设备发送握手命令,所述握手命令中包括用于验证蓝牙主机是否为蓝牙从设备绑定蓝牙主机的验证数据;
交互密钥计算模块,用于接收所述蓝牙从设备发送的握手响应以及根据预设密钥计算数据交互密钥;
其中,所述数据交互密钥用于和所述蓝牙从设备交互时进行数据加解密。
第五方面,本申请实施例提供了一种蓝牙设备,该设备包括:
数据安全模块,其配置为实现密钥的计算和存储;
存储器,其配置为存储可执行程序;
处理器,其配置为当执行所述可执行程序时实现上述第一方面所述的方法步骤。
第六方面,本申请实施例提供了一种蓝牙设备,该设备包括:
存储器,其配置为存储可执行程序;
处理器,其配置为当执行所述可执行程序时实现上述第二方面所述的方法步骤。
第七方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例上述第一方面或者第二方面所述的蓝牙设备间的交互方法。
本申请实施例所提供的技术方案中,蓝牙从设备和蓝牙主机每次在通信之前先进行应用层握手,并且在应用层握手的过程中验证绑定关系以及生成数据交互密钥,所述数据交互密钥用于在蓝牙从设备和蓝牙主机的后续交互中进行数据的加解密,本发明实施例方案通过上述设计以提高数据通信过程的安全性。
附图说明
图1是本申请实施例一提供的蓝牙设备间的交互方法的流程图;
图2是本申请实施例二提供的蓝牙设备间的交互方法的流程图;
图3是本发明实施例三提供的蓝牙设备间的交互信令图;
图4是本申请实施例四提供的一种蓝牙设备的结构示意图;
图5是本发明实施例四提供的蓝牙从设备的结构示意图;
图6是本发明实施例四提供的蓝牙从设备的具体结构示意图;
图7是本发明实施例五提供的另一种蓝牙设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图1是本申请实施例一提供的蓝牙设备间的交互方法的流程图,本实施例可适用蓝牙设备间数据交互的情况,该方法可以由蓝牙设备间交互中蓝牙从设备来执行,该蓝牙从设备中包括处理器和作为数据安全模块的加密芯片,以下将以蓝牙从设备为执行主体,更具体的说是以蓝牙从设备中的处理器为执行主体对本发明实施例提供的蓝牙设备间的密码提供方法进行说明。
如图1所示,所述蓝牙设备间的交互方法包括:
S110、接收蓝牙主机发送的握手命令,所述握手命令中包括验证数据。
本技术方案可以由配置有安全模块的蓝牙从设备执行。在本技术方案中,蓝牙从设备可以是低功耗蓝牙(Bluetooth Low Energy,BLE)设备,如智能手环、智能手表等,蓝牙主机可以是电脑、智能终端以及其他具有蓝牙功能的终端设备。加密芯片可以是专门用于在与蓝牙主机之间的数据传输过程进行认证和数据加密的芯片。
在本技术方案中,在与蓝牙主机进行数据交互之前,蓝牙从设备与蓝牙主机建立蓝牙连接。蓝牙从设备与所述蓝牙主机建立蓝牙连接后,在预设时间内检测是否接收到所述蓝牙主机发送的握手命令,其中,预设时间可以是30秒、45秒或者1分钟,如果在预设时间内检测到蓝牙主机发出的握手命令,则对蓝牙主机进行验证后反馈握手应答;如果在预设时间内未检测到蓝牙主机发出的握手命令,则断开与蓝牙主机之间的蓝牙连接,这样设置的好处是可以提高交互服务的安全性。
进一步的,蓝牙主机发送的握手命令中包含验证数据,所述验证数据中可以包括用来验证蓝牙主机身份的设备身份信息、蓝牙主机所使用加密算法及版本等数据,由此蓝牙从可以在与蓝牙主机正式交互数据之前对蓝牙主机的身份进行验证,比如,蓝牙从设备中预先存储有已绑定蓝牙主机的MAC,蓝牙主机在向蓝牙从设备发送握手命令时,在握手命令中包含主机MAC,蓝牙从设备比较握手命令中的主机MAC和已存储的绑定主机的MAC是否一致,若一致,则确定发送握手命令的蓝牙主机为已绑定蓝牙主机。
进一步的,在握手命令的验证数据中还可以包括固件版本、算法信息以及其他附加数据。通过这样的设置,蓝牙从设备还可以对蓝牙主机使用的固件版本和算法进行确认,以保证在后续通过算法进行加密的结果是正确的。
S120、在根据所述验证数据确定所述蓝牙主机为已绑定蓝牙主机,以及通过数据安全模块根据预设密钥计算得到数据交互密钥之后,向所述蓝牙主机发送握手应答。
在本技术方案中,蓝牙从设备在根据握手命令中的验证数据验证蓝牙主机为自身已绑定蓝牙主机后,还进一步通过数据安全模块根据预设密钥计算数据交互密钥,所述数据交互密钥用于和所述蓝牙主机交互时进行数据加解密。
可选的,蓝牙从设备中的数据安全模块计算数据交互密钥的方式可以是:根据预设密钥以及握手命令中包含的验证数据的部分或全部计算所述数据交互密钥。
在本技术方案中,蓝牙从设备和蓝牙主机在每次正式交互数据之前均进行应用层握手,其中,每次应用层握手的握手命令中所包含的验证数据,尤其用于计算数据交互密钥的部分均不同,由此可以使蓝牙从设备和蓝牙主机每次通信中使用的数据交互密钥均不同,可以有效防止密钥泄漏。
可选的,所述验证数据中包括第一密钥参数;所述数据安全模块根据预设密钥和所述第一密钥参数计算所述数据交互密钥。
上述第一密钥参数可以是上述由蓝牙主机随机生成的初始向量。具体的,可以在每次蓝牙主机和蓝牙从设备连接之后,通过预设密钥以及初始向量生成交互密钥,这样设置的好处是可以避免存在伪连接设备采用不法手段获取传输数据的效果。
上述预设密钥可以是蓝牙从设备根据与蓝牙主机协商的通信协议在接收到握手命令后生成的,也可以是蓝牙从设备预先存储的。在一种可能的设计中,蓝牙从设备在与蓝牙主机首次连接时建立绑定关系,并且在建立所述绑定关系的过程中存储蓝牙主机的设备身份信息以及存储所述预设密钥。
其中,蓝牙从设备和蓝牙主机建立绑定关系的过程可以是:
蓝牙从设备与蓝牙主机建立蓝牙连接;之后,蓝牙主机向蓝牙从设备发起配对请求,蓝牙从设备接收蓝牙主机发送的配对请求,所述配对请求中包括第二密钥参数;蓝牙从设备根据所述第二密钥参数计算所述预设密钥,并且在计算得到所述预设密钥后向所述蓝牙主机发送配对应答。蓝牙从设备在于蓝牙主机蓝牙连接的过程中获取蓝牙主机的设备身份信息,并且在成功生成所述预设密钥后,蓝牙从设备与蓝牙主机建立应用层绑定关系。对应的,蓝牙主机在接收到配对应答后也会根据第二密钥参数计算得到预设密钥。
具体的,所述第二密钥参数可以包括以下一种或多种:蓝牙主机信息、约定密钥和随机数据。
在一个可能的具体设计中,所述第二密钥参数包括:基础密钥加密的MAGIC(“DDOE”)、蓝牙主机MAC以及随机数R1,其中基础密钥就是在出厂时带的加密密钥。蓝牙从设备收到配对请求后,必须解密检查其中的MAGIC,确保双方的密钥匹配。之后蓝牙从设备根据配对请求中携带的信息生成预设密钥(AES_OFB的Keyb),其中Keyb=MAGIC|主机MAC|R1。这样设置的好处是既可以确保蓝牙连接的两者之间可以进行绑定和握手,又能够确保所生成的交互密钥是准确切唯一的。
进一步的,在蓝牙从设备与蓝牙主机建立绑定关系的过程中,蓝牙从设备首先与蓝牙主机建立蓝牙连接,具体的,蓝牙从设备与蓝牙主机建立连接的过程可以是:
控制蓝牙从设备进入配对广播状态,此时蓝牙从设备通过加密芯片生成配对码并显示在蓝牙从设备的显示屏上,同时蓝牙从设备发出的广播数据中携带加密后的配对码数据,如从生成的配对码中选取部分数据,并对选取的该部分数据加密后携带在蓝牙广播中;相应的,用户可以将蓝牙从设备显示屏中显示的配对码输入到蓝牙主机中,蓝牙主机还进一步从蓝牙从设备发送的广播数据中获取加密后的配对码数据并解密,以根据解密后的配对码确定待连接的蓝牙从设备,并完成蓝牙连接。
例如,上述的蓝牙从设备为包含加密芯片的蓝牙手环,蓝牙手环在于主机配对时,蓝牙手环中的加密芯片生成配对随机码,此随机码会显示在手环屏幕上,例如显示654321,同时会将随机码的一部分内容,例如321,进行加密映射后ABC,添加到BLE广播数据中。蓝牙主机即可通过扫描蓝牙广播数据,在用户在手机上输入对应的配对码后,指导要连接哪一个加密手环。
通过加密芯片对所述配对码进行部分加密并在广播数据中携带部分加密的配对码,这样设置的好处是可以不携带全部的配对码,提高连接安全性,防止伪设备进行伪配对。相应的,蓝牙主机根据用户输入的配对码,以及接收到的携带部分加密的配对码的广播数据,可以确定蓝牙从设备,达到确定匹配目标的效果;蓝牙主机根据用户输入的配对码生成配对请求信息,并向蓝牙从设备发送配对请求信息,可以供蓝牙从设备对进行验证,进而提高蓝牙配对过程的安全性,避免出现伪配对,进而通过伪配对来拦截传输数据的现象。
需要说明的是,蓝牙从设备和蓝牙主机仅在建立绑定关系的蓝牙连接中需要输入配对码;在蓝牙从设备和蓝牙主机建立绑定关系之后的每次通信中仅需要进行应用层握手并在握手过程中生成数据交互密钥,不再需要进行配对码输入等类似过程,简化用户操作过程。
实施例二
图2是本申请实施例二提供的蓝牙设备间的交互方法的流程图。本实施例可适用蓝牙设备间数据交互的情况,该方法可以由蓝牙设备间交互中的蓝牙主机来执行,以下将以蓝牙主机为执行主体对本发明实施例提供的蓝牙设备间的交互方法进行说明。
如图2所示,所述蓝牙设备间的交互方法包括:
S210、向蓝牙从设备发送握手命令,所述握手命令中包括用于验证蓝牙主机是否为蓝牙从设备绑定蓝牙主机的验证数据。
其中,蓝牙主机可以是移动终端、笔记本电脑等设备。在蓝牙主机在与蓝牙从设备建立蓝牙连接之后,向蓝牙从设备发送握手命令,其中握手命令包含有验证数据。示例性的,握手命令中验证数据的构成可以是固件版本(VER)+算法信息(ALG)+蓝牙主机MAC+初始向量。蓝牙从设备接收到握手命令后可以根据其中的蓝牙主机MAC对蓝牙主机进行验证。
S220、接收所述蓝牙从设备发送的握手响应以及根据预设密钥计算数据交互密钥。
其中,所述数据交互密钥用于和所述蓝牙从设备交互时进行数据加解密。
蓝牙从设备在根据所述验证数据验证蓝牙主机为已绑定主机设备后,向蓝牙主机发送握手应答,蓝牙主机接收握手应答,其中在握手应答中可以包括:状态(Status)+固件版本(VER)+算法信息(ALG)+蓝牙从设备MAC。固件版本和算法信息可以用于固件和算法的同步,蓝牙从设备MAC用于验证蓝牙从设备是否为绑定从设备,由此可见,握手命令以及握手应答可以用于实现对初始向量的传输,以及在蓝牙主机和蓝牙从设备之间同步二者的固件版本以及算法信息。
蓝牙主机接收到蓝牙从设备发送的握手应答后,表明蓝牙从设备对蓝牙主机验证成功并且蓝牙从设备已生成用于数据交互的数据交互密钥,对应的,蓝牙主机也计算对应的数据交互密钥,具体的,蓝牙主机计算数据交互密钥的过程可以是:蓝牙主机根据预设密钥以及所述验证数据的部分或全部计算所述数据交互密钥。
可选的,所述验证数据中包括第一密钥参数;相应的,根据预设密钥和所述第一密钥参数计算所述数据交互密钥。
其中,第一密钥参数可以是上述由蓝牙主机随机生成的初始向量。具体的,可以在每次蓝牙主机和蓝牙从设备连接之后,通过预设密钥以及初始向量生成交互密钥,这样设置的好处是可以避免存在伪连接设备采用不法手段获取传输数据的效果。
在蓝牙从设备接收到握手命令中的初始向量之后,可以根据预设密钥和初始向量生成交互密钥。而在蓝牙主机端,其可以根据预设密钥与自身生成的初始向量,确定交互密钥。这样,蓝牙连接的两端就都有交互密钥,当发生数据交互时,可以通过交互密钥进行加密和解密,实现了提高数据传输安全的效果。
在上述技术方案的基础上,可选的,所述验证数据中包括用于判断所述蓝牙主机是否为蓝牙从设备已绑定蓝牙主机的设备身份信息。
其中,身份验证信息可以包括蓝牙主机的唯一身份标识等信息。其中,可以通过加密芯片对身份验证信息进行认证,例如,可以在蓝牙连接时存储蓝牙主机的身份信息,在生成交互密钥之前,对蓝牙主机的身份信息进行获取,并与已存储的身份信息比对,如果相同则验证通过,如果不同则验证不通过。具体的,验证数据可以包括固件版本、算法信息、主机MAC以及初始向量,这样可以提高数据传输的安全性。
可选的,所述方法还包括:蓝牙主机与蓝牙从设备建立绑定关系,具体可以是:蓝牙主机在与蓝牙从设备建立蓝牙连接之后,向蓝牙从设备发送配对请求,所述配对请求中包括第二密钥参数;接收蓝牙从设备发送的配对应答以及根据所述第二密钥参数计算得到所述预设密钥。可选的,蓝牙主机可以在接收到蓝牙从设备发送的配对应答后根据第二密钥参数计算所述预设密钥。其中,蓝牙主机和蓝牙从设备建立绑定关系的过程可以参见实施例一的相关内容,不再赘述。
可选的,所述第二密钥参数包括以下一种或多种:蓝牙主机信息、约定密钥和随机数据。
其中,第二密钥参数可以包括基础密钥加密的MAGIC(“DDOE”)、蓝牙主机MAC以及随机数R1,其中基础密钥就是在出厂时带的加密密钥。蓝牙从设备收到配对请求后,必须解密检查其中的MAGIC,确保双方的密钥匹配。之后蓝牙从设备根据配对请求中携带的信息生成预设密钥(AES_OFB的Keyb),其中Keyb=MAGIC|主机MAC|R1。这样设置的好处是既可以确保蓝牙连接的两者之间可以进行绑定和握手,又能够确保所生成的交互密钥是准确切唯一的。
实施例三
图3是本发明实施例三提供的蓝牙设备间的交互信令图。其中,蓝牙主机和蓝牙从设备之间的交互分为蓝牙主机和蓝牙从设备绑定过程、蓝牙主机和蓝牙从设备正常交互两个过程,并且蓝牙主机和蓝牙从设备绑定过程可以仅在蓝牙主机和蓝牙从设备首次通信时。以下将结合附图对蓝牙设备间的信令交互过程进行详细说明。
如图3所示,在蓝牙主机和蓝牙从设备的绑定交互过程中:首先在蓝牙主机上打开应用程序,应用程序上面会显示对蓝牙从设备进行操作使其进入配对状态的提示信息,以下以待配对手环作为蓝牙从设备进行说明。具体的,所述提示信息可以是长按待配对手环按键的提示信息。用户基于上述提示长按待配对手环按键,如持续5秒后,待配对手环进入配对状态,并且待配对手环中的处理器会向加密芯片发送按键通知。加密芯片接收到按键通知之后生成配对码并向处理器发送按键通知反馈。进一步的,处理器收到按键通知反馈后向加密芯片发送显示屏显示询问消息,加密芯片接收到显示屏显示询问消息后基于生成的配对码向处理器发送显示字符,处理器读取所述显示字符并在显示屏中进行显示。此时,待配对手环进入等待授权广播状态,待配对手环的广播数据和扫描响应数据中也会更新广播状态指示,具体的,所述广播数据中携带部分加密后的配对码信息。当蓝牙主机接收到用户输入显示屏中显示的配对码后,从待配对手环的授权广播中读取部分加密后的配对码信息,并对部分加密的配对码解密,以基于解密后的配对码和用户输入的配对码确定待配对手环并建立蓝牙连接。
在建立蓝牙连接之后,通过安全通道透传,蓝牙主机与待配对手环之间进入到应用层配对绑定过程。蓝牙主机发送配对请求,其中在配对请求中携带蓝牙主机MAC、基础密钥加密的MAGIC(“DDOE”)和随机数R1,待配对手环接收到所述配对请求后,将所述配对请求或者所述配对请求中携带的参数发送给加密芯片,使加密芯片基于MAGIC|主机MAC|R1计算预设密钥Keyb;加密芯片成功生成预设密钥Keyb后,向蓝牙主机反馈配对成功应答,蓝牙主机接收到配对成功应答后基于同样的算法生成主机侧预设密钥,蓝牙主机和待配对手环应用层绑定成功。
在蓝牙主机和蓝牙从设备正常交互两个过程中,蓝牙主机和蓝牙从设备建立蓝牙连接后,进行应用层握手,在应用层握手过程中,蓝牙从设备验证当前主机是否为已绑定主机,并且根据在绑定过程中生成的预设密钥和握手命令中的初始向量生成数据交互密钥,以使用数据交互密钥对往来数据加解密,其中,蓝牙从设备和蓝牙主机每次握手使用的初始向量可以随机生成,由此可以使每次生成的数据交互密钥均不同,防止数据交互密钥泄漏和破解。
实施例四
图4是本申请实施例四提供的一种蓝牙设备的结构示意图。如图4所示,所述蓝牙设备可作为蓝牙从设备,所述蓝牙从设备除包含数据安全模块外,还包括:
握手命令接收模块310,用于接收蓝牙主机发送的握手命令,所述握手命令中包括验证数据;
交互密钥生成模块320,用于在根据所述验证数据确定所述蓝牙主机为已绑定蓝牙主机,以及通过数据安全模块根据预设密钥计算得到数据交互密钥之后,向所述蓝牙主机发送握手应答;其中,所述数据交互密钥用于和所述蓝牙主机交互时进行数据加解密。
可选的,所述数据安全模块根据预设密钥以及所述验证数据的部分或全部计算所述数据交互密钥。
可选的,所述验证数据中包括第一密钥参数;所述数据安全模块根据预设密钥和所述第一密钥参数计算所述数据交互密钥。
在上述各技术方案的基础上,可选的,所述装置中还包括验证模块,所述验证数据中包括设备身份信息;
所述验证模块用于根据所述验证数据确定所述蓝牙主机是否为已绑定蓝牙主机,具体的,所述验证模块根据所述设备身份信息判断所述蓝牙主机是否为已绑定蓝牙主机。
可选的,所述装置中还包括绑定关系建立模块,用于与蓝牙主机建立绑定关系,具体的:绑定关系建立模块接收蓝牙主机发送的配对请求,所述配对请求中包括第二密钥参数;在根据所述第二密钥参数计算得到所述预设密钥后,向所述蓝牙主机发送配对应答。其中,绑定关系建立模块可以通过数据安全模块根据第二密钥参数计算得到预设密钥。
可选的,所述第二密钥参数包括以下一种或多种:蓝牙主机信息、约定密钥和随机数据。
图4所示装置可以执行上述方法实施例中蓝牙从设备所执行的方法,本实施例未详细描述的部分,可参考方法实施例的相关说明。该技术方案的执行过程和技术效果参见方法实施例中的描述,在此不再赘述。
以上描述了蓝牙从设备的内部功能和结构,在一个可能的设计中,蓝牙从设备的结构可实现为一电子设备,该电子设备可以为蓝牙手环、蓝牙锁等设备。图5是本发明实施例四提供的蓝牙从设备的结构示意图。如图5所示,该电子设备可以包括:
加密芯片410,其配置为实现密钥的计算和存储,如实现上述数据安全模块所实现的预设密钥、数据交互密钥的计算和存储功能;
存储器420,其配置为存储可执行程序;
处理器430,其配置为当执行所述可执行程序时实现上述蓝牙设备间的交互方法中蓝牙从设备所执行的除密钥计算和存储外的其它方法步骤。
图6是本发明实施例四提供的蓝牙从设备的具体结构示意图。如图6所示,所述设备包括:按键,BLE(Bluetooth Low Energy,低功耗蓝牙)处理器,显示屏以及加密芯片,其中BLE处理器作为蓝牙从设备的核心处理器,与按键、显示屏以及加密芯片连接,用控制按键、显示屏以及加密芯片的开启和关闭,以及接收按键、显示屏以及加密芯片接收和发送的信息。其中,加密芯片种可以包括密码本,密码本用于存储密码编号和相应的密码数据。
上述产品可执行本申请实施例一所提供的方法,具备执行方法相应的功能模块和有益效果。
实施例五
图7是本发明实施例五提供的另一种蓝牙设备的结构示意图。如图7所示,所述蓝牙设备可作为蓝牙主机,所述蓝牙主机包括:
握手命令发送模块610,用于向蓝牙从设备发送握手命令,所述握手命令中包括用于验证蓝牙主机是否为蓝牙从设备绑定蓝牙主机的验证数据;
交互密钥计算模块620,用于接收所述蓝牙从设备发送的握手响应以及根据预设密钥计算数据交互密钥;其中,所述数据交互密钥用于和所述蓝牙从设备交互时进行数据加解密。
可选的,交互密钥计算模块620根据预设密钥计算数据交互密钥,具体可以是根据预设密钥以及所述验证数据的部分或全部计算所述数据交互密钥。
其中,所述验证数据中包括第一密钥参数;相应的,交互密钥计算模块620根据预设密钥和所述第一密钥参数计算所述数据交互密钥。
可选的,所述验证数据中包括用于判断所述蓝牙主机是否为蓝牙从设备已绑定蓝牙主机的设备身份信息。
可选的,所述蓝牙主机中还包括绑定关系建立模块,用于在向蓝牙从设备发送握手命令之前,与蓝牙主机建立绑定关系,具体的:在与蓝牙从设备建立蓝牙连接之后,向蓝牙从设备发送配对请求,所述配对请求中包括第二密钥参数;接收蓝牙从设备发送的配对应答以及根据所述第二密钥参数计算得到所述预设密钥。
可选的,所述第二密钥参数包括以下一种或多种:蓝牙主机信息、约定密钥和随机数据。
在一种蓝牙主机的具体实现结构中其可以包括存储器,其配置为存储可执行程序;处理器,其配置为当执行所述可执行程序时实现上述蓝牙设备间的交互方法中蓝牙主机所执行的方法步骤。
本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由处理器执行时实现上述由蓝牙主机或者由蓝牙从设备实现的蓝牙设备间交互方法。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的模块、单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块、单元的名称在某种情况下并不构成对该模块、单元本身的限定。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。
Claims (14)
1.一种蓝牙设备间的交互方法,其特征在于,所述方法应用于包含数据安全模块的蓝牙从设备,所述方法包括:
接收蓝牙主机发送的握手命令,所述握手命令中包括验证数据;
在根据所述验证数据确定所述蓝牙主机为已绑定蓝牙主机,以及通过数据安全模块根据预设密钥计算得到数据交互密钥之后,向所述蓝牙主机发送握手应答;
所述数据交互密钥用于和所述蓝牙主机交互时进行数据加解密。
2.根据权利要求1所述的方法,其特征在于,通过所述数据安全模块根据预设密钥以及所述验证数据的部分或全部计算所述数据交互密钥。
3.根据权利要求2所述的方法,其特征在于,所述验证数据中包括第一密钥参数;所述数据安全模块根据预设密钥和所述第一密钥参数计算所述数据交互密钥。
4.根据权利要1至3中任一项所述的方法,其特征在于,所述验证数据中包括设备身份信息;
相应的,根据所述验证数据确定所述蓝牙主机为已绑定蓝牙主机,包括:
根据所述设备身份信息判断所述蓝牙主机是否为已绑定蓝牙主机。
5.根据权利要求1所述的方法,其特征在于,在接收蓝牙主机发送的握手命令之前,所述方法还包括:与蓝牙主机建立绑定关系,其中:
在与蓝牙主机建立蓝牙连接后,接收蓝牙主机发送的配对请求,所述配对请求中包括第二密钥参数;
在根据所述第二密钥参数计算得到所述预设密钥后,向所述蓝牙主机发送配对应答。
6.根据权利要求5所述的方法,其特征在于,所述第二密钥参数包括以下一种或多种:蓝牙主机信息、约定密钥和随机数据。
7.一种蓝牙设备间的交互方法,其特征在于,所述方法应用于蓝牙主机,所述方法包括:
向蓝牙从设备发送握手命令,所述握手命令中包括用于验证蓝牙主机是否为蓝牙从设备绑定蓝牙主机的验证数据;
接收所述蓝牙从设备发送的握手响应以及根据预设密钥计算数据交互密钥;
其中,所述数据交互密钥用于和所述蓝牙从设备交互时进行数据加解密。
8.根据权利要求7所述的方法,其特征在于,所述根据预设密钥计算数据交互密钥,包括:根据预设密钥以及所述验证数据的部分或全部计算所述数据交互密钥。
9.根据权利要求8所述的方法,其特征在于,所述验证数据中包括第一密钥参数;相应的,根据预设密钥和所述第一密钥参数计算所述数据交互密钥。
10.根据权利要求7-9任一项所述的方法,其特征在于,所述验证数据中包括用于判断所述蓝牙主机是否为蓝牙从设备已绑定蓝牙主机的设备身份信息。
11.根据权利要求7所述的方法,其特征在于,在向蓝牙从设备发送握手命令之前,所述方法还包括:与蓝牙主机建立绑定关系,其中:
在与蓝牙从设备建立蓝牙连接之后,向蓝牙从设备发送配对请求,所述配对请求中包括第二密钥参数;
接收蓝牙从设备发送的配对应答以及根据所述第二密钥参数计算得到所述预设密钥。
12.根据权利要求11所述的方法,其特征在于,所述第二密钥参数包括以下一种或多种:蓝牙主机信息、约定密钥和随机数据。
13.一种蓝牙设备,其特征在于,包括:
数据安全模块,其配置为实现密钥的计算和存储;
存储器,其配置为存储可执行程序;
处理器,其配置为当执行所述可执行程序时实现根据权利要求1-6中任一项所述的方法步骤。
14.一种蓝牙设备,其特征在于,包括:
存储器,其配置为存储可执行程序;
处理器,其配置为当执行所述可执行程序时实现根据权利要求7-12中任一项所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910059076.4A CN109688573A (zh) | 2019-01-22 | 2019-01-22 | 蓝牙设备间的交互方法及蓝牙设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910059076.4A CN109688573A (zh) | 2019-01-22 | 2019-01-22 | 蓝牙设备间的交互方法及蓝牙设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109688573A true CN109688573A (zh) | 2019-04-26 |
Family
ID=66193835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910059076.4A Pending CN109688573A (zh) | 2019-01-22 | 2019-01-22 | 蓝牙设备间的交互方法及蓝牙设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109688573A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111462866A (zh) * | 2020-03-27 | 2020-07-28 | 深圳开立生物医疗科技股份有限公司 | 医疗诊断系统、图像处理设备及其加密保护方法和系统 |
CN111540458A (zh) * | 2020-04-02 | 2020-08-14 | 出门问问信息科技有限公司 | 一种信息处理方法和装置、电子设备和计算机存储介质 |
CN111556555A (zh) * | 2020-04-29 | 2020-08-18 | 杭州涂鸦信息技术有限公司 | 一种网络摄像机与网关低功耗保活方法及其系统 |
CN113038444A (zh) * | 2021-03-25 | 2021-06-25 | 支付宝(杭州)信息技术有限公司 | 生成应用层密钥的方法和装置 |
CN113473434A (zh) * | 2021-08-17 | 2021-10-01 | 杭州涂鸦信息技术有限公司 | 蓝牙连接方法、装置、计算机设备和计算机可读存储介质 |
CN113573289A (zh) * | 2021-06-30 | 2021-10-29 | 杭州博联智能科技股份有限公司 | 基于蓝牙的客户端添加设备的方法和系统 |
CN113672547A (zh) * | 2021-08-26 | 2021-11-19 | 中国核动力研究设计院 | 一种仪控设备数据交互握手方法 |
WO2022032535A1 (zh) * | 2020-08-12 | 2022-02-17 | Oppo广东移动通信有限公司 | 用于设备发现的方法和设备 |
WO2023143188A1 (zh) * | 2022-01-27 | 2023-08-03 | 格力博(江苏)股份有限公司 | 一种配对方法及系统 |
US11924631B2 (en) | 2021-01-10 | 2024-03-05 | Realtek Semiconductor Corp. | Bluetooth communication system capable of increasing generation efficiency of cypher keys required for data transmission between bluetooth host device and bluetooth device set, and related bluetooth device set |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102315942A (zh) * | 2011-09-30 | 2012-01-11 | 福源立信(北京)科技有限公司 | 一种带蓝牙的安全终端及其与客户端的通信方法 |
CN104616148A (zh) * | 2015-01-23 | 2015-05-13 | 恒银金融科技有限公司 | 一种可穿戴式支付终端的支付方法及该支付终端 |
CN107046687A (zh) * | 2016-01-26 | 2017-08-15 | 谷歌公司 | 低功率设备的安全连接 |
-
2019
- 2019-01-22 CN CN201910059076.4A patent/CN109688573A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102315942A (zh) * | 2011-09-30 | 2012-01-11 | 福源立信(北京)科技有限公司 | 一种带蓝牙的安全终端及其与客户端的通信方法 |
CN104616148A (zh) * | 2015-01-23 | 2015-05-13 | 恒银金融科技有限公司 | 一种可穿戴式支付终端的支付方法及该支付终端 |
CN107046687A (zh) * | 2016-01-26 | 2017-08-15 | 谷歌公司 | 低功率设备的安全连接 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111462866A (zh) * | 2020-03-27 | 2020-07-28 | 深圳开立生物医疗科技股份有限公司 | 医疗诊断系统、图像处理设备及其加密保护方法和系统 |
CN111540458A (zh) * | 2020-04-02 | 2020-08-14 | 出门问问信息科技有限公司 | 一种信息处理方法和装置、电子设备和计算机存储介质 |
CN111556555A (zh) * | 2020-04-29 | 2020-08-18 | 杭州涂鸦信息技术有限公司 | 一种网络摄像机与网关低功耗保活方法及其系统 |
WO2022032535A1 (zh) * | 2020-08-12 | 2022-02-17 | Oppo广东移动通信有限公司 | 用于设备发现的方法和设备 |
US11924631B2 (en) | 2021-01-10 | 2024-03-05 | Realtek Semiconductor Corp. | Bluetooth communication system capable of increasing generation efficiency of cypher keys required for data transmission between bluetooth host device and bluetooth device set, and related bluetooth device set |
US12096209B2 (en) | 2021-01-10 | 2024-09-17 | Realtek Semiconductor Corp. | Bluetooth communication system capable of increasing generation efficiency of cypher keys required for data transmission between Bluetooth host device and Bluetooth device set, and related Bluetooth device set |
US11997480B2 (en) | 2021-01-10 | 2024-05-28 | Realtek Semiconductor Corp. | Bluetooth communication system capable of increasing generation efficiency of cypher keys required for data transmission between Bluetooth host device and Bluetooth device set, and related Bluetooth device set |
US11991517B2 (en) | 2021-01-10 | 2024-05-21 | Realtek Semiconductor Corp. | Bluetooth communication system capable of increasing generation efficiency of cypher keys required for data transmission between bluetooth host device and bluetooth device set, and related bluetooth device set |
US11943609B2 (en) | 2021-01-10 | 2024-03-26 | Realtek Semiconductor Corp. | Bluetooth communication system capable of increasing generation efficiency of cypher keys required for data transmission between bluetooth host device and bluetooth device set, and related bluetooth device set |
US11943608B2 (en) | 2021-01-10 | 2024-03-26 | Realtek Semiconductor Corp. | Bluetooth communication system capable of increasing generation efficiency of cypher keys required for data transmission between Bluetooth host device and Bluetooth device set, and related Bluetooth device set |
CN113038444B (zh) * | 2021-03-25 | 2022-07-19 | 支付宝(杭州)信息技术有限公司 | 生成应用层密钥的方法和装置 |
CN113038444A (zh) * | 2021-03-25 | 2021-06-25 | 支付宝(杭州)信息技术有限公司 | 生成应用层密钥的方法和装置 |
CN113573289B (zh) * | 2021-06-30 | 2024-03-26 | 杭州博联智能科技股份有限公司 | 基于蓝牙的客户端添加设备的方法和系统 |
CN113573289A (zh) * | 2021-06-30 | 2021-10-29 | 杭州博联智能科技股份有限公司 | 基于蓝牙的客户端添加设备的方法和系统 |
CN113473434A (zh) * | 2021-08-17 | 2021-10-01 | 杭州涂鸦信息技术有限公司 | 蓝牙连接方法、装置、计算机设备和计算机可读存储介质 |
CN113672547A (zh) * | 2021-08-26 | 2021-11-19 | 中国核动力研究设计院 | 一种仪控设备数据交互握手方法 |
WO2023143188A1 (zh) * | 2022-01-27 | 2023-08-03 | 格力博(江苏)股份有限公司 | 一种配对方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109688573A (zh) | 蓝牙设备间的交互方法及蓝牙设备 | |
US10601801B2 (en) | Identity authentication method and apparatus | |
CN106533687B (zh) | 一种身份认证方法和设备 | |
CN110177354A (zh) | 一种车辆的无线控制方法及系统 | |
CN107358441B (zh) | 支付验证的方法、系统及移动设备和安全认证设备 | |
CN102595404B (zh) | 用于存储和执行访问控制客户端的方法及装置 | |
CN110784322B (zh) | 一种网关设备与云平台连接的方法、系统、设备及介质 | |
CN104410967B (zh) | 一种进行连接的方法、设备和系统 | |
CN105450269A (zh) | 一种实现蓝牙设备间安全交互配对认证的方法及装置 | |
CN109949461B (zh) | 开锁方法及装置 | |
KR20170042549A (ko) | 제2 전자 엔티티에 의한 제1 전자 엔티티의 인증 방법 및 그러한 방법을 구현하는 전자 엔티티 | |
CN108762791A (zh) | 固件升级方法及装置 | |
US20150055779A1 (en) | Method of secure communication, controlled device, and control program | |
US9998287B2 (en) | Secure authentication of remote equipment | |
CN110690966B (zh) | 终端与业务服务器连接的方法、系统、设备及存储介质 | |
WO2017012176A1 (zh) | 基于hce的移动支付方法及装置、移动终端 | |
CN106788989A (zh) | 一种建立安全加密信道的方法及设备 | |
CN105719131A (zh) | 服务器、客户端及电子支付的代付方法 | |
CN113920616A (zh) | 车辆与蓝牙钥匙安全连接的方法、蓝牙模块、蓝牙钥匙 | |
WO2024152967A1 (zh) | 数据处理方法、装置、电子设备和可读存储介质 | |
CN105407109A (zh) | 一种蓝牙设备间数据安全传输方法 | |
CN101895538B (zh) | 建立数据交互通道的方法和系统、智能卡、服务器 | |
CN109451504A (zh) | 物联网模组鉴权方法及系统 | |
CN102264069B (zh) | 基于通用引导架构的认证控制方法、装置及系统 | |
CN115171245B (zh) | 一种基于hce的门锁安全认证方法及系统 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190426 |
|
RJ01 | Rejection of invention patent application after publication |