CN107645719A - 一种蓝牙绑定方法及装置 - Google Patents

一种蓝牙绑定方法及装置 Download PDF

Info

Publication number
CN107645719A
CN107645719A CN201710801726.9A CN201710801726A CN107645719A CN 107645719 A CN107645719 A CN 107645719A CN 201710801726 A CN201710801726 A CN 201710801726A CN 107645719 A CN107645719 A CN 107645719A
Authority
CN
China
Prior art keywords
mobile phone
request
key
bluetooth equipment
module
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
Application number
CN201710801726.9A
Other languages
English (en)
Other versions
CN107645719B (zh
Inventor
陆舟
于华章
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Feitian Technologies Co Ltd
Original Assignee
Feitian Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Feitian Technologies Co Ltd filed Critical Feitian Technologies Co Ltd
Priority to CN201710801726.9A priority Critical patent/CN107645719B/zh
Publication of CN107645719A publication Critical patent/CN107645719A/zh
Application granted granted Critical
Publication of CN107645719B publication Critical patent/CN107645719B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开一种蓝牙绑定方法及装置,该方法包括:当蓝牙设备在预设时间内未接收到手机下发的请求时向手机发送绑定重新设置请求;当在预设时间内接收到绑定请求时则与手机协商出短密钥并保存;当接收到加密请求则给手机返回加密响应和加密开始通知,判断在绑定之后是否首次接收到加密请求,是则生成身份识别码和长密钥,并将二者与手机物理地址对应保存,使用短密钥完成加密过程,开始进行正常数据通讯,否则根据身份识别码和手机物理地址检索对应的长密钥是否存在,如存在则进行正常数据通讯,如不存在则向手机发送绑定重新设置请求。本发明的技术方案可以实现自动刷新苹果手机中的绑定信息,简化了用户操作,提升了用户体验。

Description

一种蓝牙绑定方法及装置
技术领域
本发明涉及蓝牙通信技术领域,尤其涉及一种蓝牙绑定方法及装置。
背景技术
目前,蓝牙设备与苹果手机绑定之后,蓝牙设备和苹果手机会各自保存用于表明两个设备已绑定的蓝牙绑定信息,由于蓝牙设备只能存储有限个蓝牙绑定信息,当蓝牙设备中存储的蓝牙绑定信息达到上限值时,蓝牙设备为了存储新的蓝牙绑定信息就需要与一个已绑定的苹果手机解绑并删除与之对应的蓝牙绑定信息,而对于该苹果手机,由于IOS系统开发环境封闭,目前需要用户手动在后台删除蓝牙绑定信息,非常不方便,因此,寻求可以自动刷新苹果手机中的绑定信息的方法是目前亟待解决的问题。
发明内容
为解决现有技术中存在的技术问题,本发明提供了一种蓝牙绑定方法及装置。
本发明提供一种蓝牙绑定方法,包括:
步骤A0:蓝牙设备进行初始化,并与手机建立蓝牙连接;
步骤A1:当所述蓝牙设备在预设时间内未接收到所述手机下发的请求时向所述手机发送绑定重新设置请求,等待接收所述手机下发请求,返回步骤A1;当所述蓝牙设备在预设时间内接收到所述手机下发的请求时判断接收到的请求的类型,如为绑定请求则所述蓝牙设备与所述手机协商出短密钥并保存,等待接收所述手机下发请求,返回步骤A1;如为加密请求则执行步骤A2;
步骤A2:所述蓝牙设备给所述手机返回加密响应和加密开始通知;
步骤A3:所述蓝牙设备判断在绑定之后是否首次接收到加密请求,是则执行步骤A6,否则执行步骤A4;
步骤A4:所述蓝牙设备根据身份识别码和手机物理地址检索对应的长密钥是否存在,是则进行正常数据通讯,否则执行步骤A5;
步骤A5:所述蓝牙设备向手机发送绑定重新设置请求,等待接收所述手机下发请求,返回步骤A1;
步骤A6:所述蓝牙设备生成身份识别码和长密钥,并将所述身份识别码和长密钥与手机物理地址对应保存,使用所述短密钥完成加密过程,开始进行正常数据通讯。
进一步地,所述进行正常数据通讯包括:
当所述蓝牙设备接收到属性协议层的数据时,对接收到的数据进行处理,并将处理结果通过属性协议层返回给上位机,等待接收属性协议层的数据。
进一步地,所述蓝牙设备与所述手机协商出短密钥,包括:
步骤B1:所述蓝牙设备给所述手机返回绑定响应;
步骤B2:所述蓝牙设备接收所述手机发送的第一随机数并保存,生成第二随机数并将其发送给所述手机;
步骤B2:所述蓝牙设备和所述手机分别根据预设认证码、所述第一随机数、所述第二随机数计算得到短密钥。
进一步地,所述步骤A3具体包括:所述蓝牙设备判断短密钥是否存在,是则执行步骤A6,否则执行步骤A4。
进一步地,所述蓝牙设备与手机建立连接时获取手机物理地址;
所述步骤A6包括:
步骤A6-1:所述蓝牙设备生成长密钥,使用所述短密钥对所述长密钥进行加密并将加密结果发送给所述手机;
步骤A6-2:所述蓝牙设备生成第三随机数,并根据所述第三随机数生成身份识别码,使用所述短密钥对所述第三随机数和所述身份识别码进行加密并将加密结果发送给所述手机,对应保存所述手机物理地址、所述长密钥和所述身份识别码;
步骤A6-3:所述蓝牙设备使用所述短密钥对身份解析密钥进行加密,并将加密结果上行发送给所述手机;
步骤A6-4:所述蓝牙设备使用所述短密钥对蓝牙设备物理地址进行加密,并将加密结果发送给所述手机,开始进行正常通讯。
进一步地,所述根据所述第三随机数生成身份识别码,包括:所述蓝牙设备根据自身的识别码和生成的所述第三随机数据计算得到加密识别码,根据所述加密识别码和所述自身的识别码进行异或计算得到身份识别码。
进一步地,所述生成长密钥具体为:根据密钥传输协议生成所述长密钥。
进一步地,所述对应保存所述手机物理地址、所述长密钥和所述身份识别码包括:
所述蓝牙设备更新绑定计数值,根据所述绑定计数值计算存储位置地址,并将所述长密钥、所述身份识别码和手机物理地址保存在存储列表中与所述存储位置地址对应的位置。
进一步地,所述更新绑定计数值具体为:所述绑定计数值自加1;
所述根据绑定计数值计算存储位置地址具体为:将绑定计数值除以4取余的结果作为存储位置地址。
进一步地,所述对应保存所述手机物理地址、所述长密钥和所述身份识别码包括:
所述蓝牙设备判断存储列表中是否有空闲的存储位置,是则将所述长密钥、所述身份识别码、手机物理地址和当前的存储时刻顺序存储到存储列表中空闲的存储位置,否则将所述长密钥、所述身份识别码、手机物理地址和当前的存储时刻存储到存储列表中与最早的存储时刻相对应的存储位置。
进一步地,所述对应保存所述手机物理地址、所述长密钥和所述身份识别码包括:
所述蓝牙设备显示与其连接的手机信息,提示用户进行选择替换的手机;当所述蓝牙设备接收到用户选择的替换手机信息时,将所述长密钥、身份识别码和所述手机物理地址保存到存储列表中与替换手机信息相对应的存储位置。
进一步地,所述步骤A5包括:所述蓝牙设备延时预设时间,向手机发送绑定重新设置请求,等待接收所述手机下发请求。
本发明又提供一种蓝牙绑定装置,包括:
初始化连接模块,用于对蓝牙设备进行初始化,并与手机建立蓝牙连接;
接收模块,用于接收所述手机下发的请求;
第一判断模块,用于当所述接收模块在预设时间内接收到所述手机下发的请求时判断接收到的请求的类型;
协商模块,用于在所述第一判断模块判断接收到的请求的类型为绑定请求时与所述手机协商出短密钥;
第一保存模块,用于保存所述协商模块协商出的短密钥;
第二判断模块,用于在发送模块给所述手机返回加密响应和加密开始通知之后,判断在绑定之后所述接收模块是否首次接收到加密请求;
第三判断模块,用于在所述第二判断模块判断为否时根据身份识别码和手机物理地址检索对应的长密钥是否存在;
生成加密模块,用于在所述第二判断模块判断为是时生成身份识别码和长密钥,并将所述身份识别码和长密钥与手机物理地址对应保存,使用所述第一保存模块保存的短密钥完成加密过程;
通讯模块,用于在所述第三判断模块判断为是时和所述生成加密模块完成加密过程之后与所述手机进行正常数据通讯;
所述发送模块,用于当所述接收模块在预设时间内未接收到所述手机下发的请求时向所述手机发送绑定重新设置请求;还用于当所述第一判断模块判断接收到的请求为加密请求时给所述手机返回加密响应和加密开始通知;还用于当所述第三判断模块判断为否时向所述手机发送绑定重新设置请求。
进一步地,所述通讯模块包括:
第一接收单元,用于接收属性协议层的数据;
第一处理单元,用于对所述第一接收单元接收到的属性协议层的数据进行处理;
第一发送单元,用于将所述处理单元的处理结果通过属性协议层返回给上位机。
进一步地,所述协商模块,包括:
第二接收单元,用于接收所述手机发送的第一随机数;
第一保存单元,用于保存所述第二接收单元接收的第一随机数;
第一生成单元,用于生成第二随机数;
第一计算单元,用于根据预设认证码、所述保存单元保存的第一随机数、所述生成单元生成的第二随机数计算得到短密钥;
第二发送单元,用于在所述第一判断模块判断接收到的请求的类型为绑定请求时给所述手机返回绑定响应,还用于将第一生成单元生成的第二随机数发送给所述手机。
进一步地,所述第二判断模块具体用于在所述发送模块给所述手机返回加密响应和加密开始通知之后,判断短密钥是否存在,是则所述接收模块首次接收到加密请求,否则所述接收模块不是首次接收到加密请求。
进一步地,所述装置还包括获取模块,用于在所述初始化连接模块将蓝牙设备与手机建立连接时获取手机物理地址;
所述生成加密模块包括:
第二生成单元,用于生成长密钥;
第一加密单元,用于使用所述第一保存模块保存的短密钥对所述第二生成单元生成的长密钥进行加密;
第三生成单元,用于生成第三随机数,并根据所述第三随机数生成身份识别码;
第二加密单元,用于使用所述第一保存模块保存的短密钥对所述第三生成单元生成的第三随机数和所述身份识别码进行加密;
第二保存单元,用于对应保存所述获取模块获取的手机物理地址、所述第三生成单元生成的长密钥和所述身份识别码;
第三加密单元,用于使用所述第一保存模块保存的短密钥对身份解析密钥进行加密;
第四加密单元,用于使用所述第一保存模块保存的短密钥对蓝牙设备物理地址进行加密;
第三发送单元,用于将所述第一加密单元的加密结果、第二加密单元的加密结果、第三加密单元的加密结果和第四加密单元的加密结果发送给所述手机。
进一步地,所述第三生成单元具体用于生成第三随机数,并根据自身的识别码和生成的所述第三随机数据计算得到加密识别码,根据所述加密识别码和所述自身的识别码进行异或计算得到身份识别码。
进一步地,所述第二生成单元具体用于根据密钥传输协议生成所述长密钥。
进一步地,所述第二保存单元具体用于更新绑定计数值,根据所述绑定计数值计算存储位置地址,并将所述第三生成单元生成的长密钥和所述身份识别码、所述获取模块获取的手机物理地址保存在存储列表中与所述存储位置地址对应的位置。
进一步地,所述第二保存单元包括:
更新子单元,用于将绑定计数值自加1;
计算子单元,用于将绑定计数值除以4取余的结果作为存储位置地址;
保存子单元,用于将所述第三生成单元生成的长密钥和所述身份识别码、所述获取模块获取的手机物理地址保存在存储列表中与所述存储位置地址对应的位置。
进一步地,所述第二保存单元具体用于判断存储列表中是否有空闲的存储位置,是则将所述长密钥、所述身份识别码、手机物理地址和当前的存储时刻顺序存储到存储列表中空闲的存储位置,否则将所述第三生成单元生成的长密钥和所述身份识别码、所述获取模块获取的手机物理地址、当前的存储时刻存储到存储列表中与最早的存储时刻相对应的存储位置。
进一步地,所述第二保存单元具体用于显示与其连接的手机信息,提示用户进行选择替换的手机;当所述蓝牙设备接收到用户选择的替换手机信息时,将所述第三生成单元生成的长密钥和身份识别码、所述获取模块获取的手机物理地址保存到存储列表中与替换手机信息相对应的存储位置。
进一步地,所述发送模块具体用于当所述接收模块在预设时间内未接收到所述手机下发的请求时向所述手机发送绑定重新设置请求;还用于当所述第一判断模块判断接收到的请求为加密请求时给所述手机返回加密响应和加密开始通知;还用于当所述第三判断模块判断为否时在延时预设时间之后向所述手机发送绑定重新设置请求。
本发明的技术方案如下:
本发明的有益效果如下:本发明提供的蓝牙绑定方法及装置,可以实现自动刷新苹果手机中的绑定信息,无需用户手动刷新,简化了用户操作,提升了用户体验。
附图说明
图1是实施例2提供的一种蓝牙绑定方法流程图;
图2是实施例3提供的一种蓝牙绑定方法流程图;
图3是实施例4提供的一种蓝牙绑定装置方框示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本实施例1提供的一种蓝牙绑定方法,包括:
步骤A0:蓝牙设备进行初始化,并与手机建立蓝牙连接;
在本实施例中,蓝牙设备与手机建立连接时获取手机物理地址;
步骤A1:当蓝牙设备在预设时间内未接收到手机下发的请求时向手机发送绑定重新设置请求,等待接收手机下发请求,返回步骤A1;当蓝牙设备在预设时间内接收到手机下发的请求时判断接收到的请求的类型,如为绑定请求则蓝牙设备与手机协商出短密钥并保存,等待接收手机下发请求,返回步骤A1;如为加密请求则执行步骤A2;
在本实施例中,蓝牙设备与手机协商出短密钥,包括:
步骤B1:蓝牙设备给手机返回绑定响应;
步骤B2:蓝牙设备接收手机发送的第一随机数并保存,生成第二随机数并将其发送给手机;
步骤B2:蓝牙设备和手机分别根据预设认证码、第一随机数、第二随机数计算得到短密钥;
步骤A2:蓝牙设备给手机返回加密响应和加密开始通知;
步骤A3:蓝牙设备判断在绑定之后是否首次接收到加密请求,是则执行步骤A6,否则执行步骤A4;
具体的,在本实施例中,步骤A3具体包括:蓝牙设备判断短密钥是否存在,是则执行步骤A6,否则执行步骤A4;
步骤A4:蓝牙设备根据身份识别码和手机物理地址检索对应的长密钥是否存在,是则进行正常数据通讯,否则执行步骤A5;
步骤A5:蓝牙设备向手机发送绑定重新设置请求,等待接收手机下发请求,返回步骤A1;
优选的,步骤A5中蓝牙设备延时预设时间,向手机发送绑定重新设置请求,等待接收所述手机下发请求;
步骤A6:蓝牙设备生成身份识别码和长密钥,并将身份识别码和长密钥与手机物理地址对应保存,使用短密钥完成加密过程,开始进行正常数据通讯;
具体的,本实施例中的步骤A6包括:
步骤A6-1:蓝牙设备生成长密钥,使用短密钥对长密钥进行加密并将加密结果发送给手机;
在本实施例中,蓝牙设备生成长密钥具体为:根据密钥传输协议生成长密钥;
步骤A6-2:蓝牙设备生成第三随机数,并根据第三随机数生成身份识别码,使用短密钥对第三随机数和身份识别码进行加密并将加密结果发送给手机,对应保存手机物理地址、长密钥和身份识别码;
具体的,根据第三随机数生成身份识别码,包括:蓝牙设备根据自身的识别码和生成的第三随机数据计算得到加密识别码,根据加密识别码和自身的识别码进行异或计算得到身份识别码;
在本实施例中,对应保存手机物理地址、长密钥和身份识别码有多种实现方式,本发明实施例以下述三种方式为例进行说明;
(一)蓝牙设备更新绑定计数值,根据绑定计数值计算存储位置地址,并将长密钥、身份识别码和手机物理地址保存在存储列表中与存储位置地址对应的位置;
其中,更新绑定计数值具体为:绑定计数值自加1;根据绑定计数值计算存储位置地址具体为:将绑定计数值除以4取余的结果作为存储位置地址;
(二)蓝牙设备判断存储列表中是否有空闲的存储位置,是则将长密钥、身份识别码、手机物理地址和当前的存储时刻顺序存储到存储列表中空闲的存储位置,否则将长密钥、身份识别码、手机物理地址和当前的存储时刻存储到存储列表中与最早的存储时刻相对应的存储位置;
(三)蓝牙设备显示与其连接的手机信息,提示用户进行选择替换的手机;当蓝牙设备接收到用户选择的替换手机信息时,将长密钥、身份识别码和手机物理地址保存到存储列表中与替换手机信息相对应的存储位置;
步骤A6-3:蓝牙设备使用短密钥对身份解析密钥进行加密,并将加密结果上行发送给手机;
步骤A6-4:蓝牙设备使用短密钥对蓝牙设备物理地址进行加密,并将加密结果发送给手机,开始进行正常通讯。
在本实施例中,进行正常数据通讯包括:当蓝牙设备接收到属性协议层的数据时,对接收到的数据进行处理,并将处理结果通过属性协议层返回给上位机,等待接收属性协议层的数据。
实施例2
本实施例2提供的一种蓝牙绑定方法,如图1所示,包括以下步骤:
步骤101:蓝牙设备进行初始化;
步骤102:蓝牙设备与手机建立蓝牙连接,获取手机MAC地址(物理地址)并保存;
具体的,在本实施例中,蓝牙设备接收到手机下发的连接请求后会产生一个蓝牙连接事件实现与手机建立蓝牙连接;
例如,在本实施例中,手机下发的连接请求为:0x1b 0x06 0x35 0x01 0x34 0x110x06 0x0a 0x01 0x26 0x2f 0x00 0x00 0x97 0x00 0x00 0x00 0xd6 0xbe 0x89 0x8e0x85 0x22 0xa1 0x06 0x15 0xd0 0x9e 0x78 0xad 0x99 0xa4 0xbc 0x55 0xc0 0xe00x5c 0x65 0x50 0x28 0xb0 0xf0 0x03 0x19 0x00 0x27 0x00 0x00 0x00 0xbc 0x020xff 0xff 0xff 0xff 0x1f 0xa8 0xf2 0x61 0xda;获取的手机MAC地址为:0xa1 0x060x15 0xd0 0x9e 0x78;
步骤103:蓝牙设备判断在预设时间内是否接收到手机下发的请求,是则执行步骤105,否则执行步骤104;
例如,预设时间为3秒;
步骤104:蓝牙设备向手机发送绑定重新设置请求,等待接收手机下发请求,返回步骤103;
具体的,在本实施例中,蓝牙设备根据访问地址、数据包头、L2CAP层数据长度、加密层协议CID、加密请求操作码、默认配对方式和包CRC校验码生成绑定重新设置请求,并将其发送给手机;
例如,本实施例中的访问地址为0xe4 0x62 0x65 0x50,数据包头为0x0a 0x06,L2CAP层数据长度为0x02 0x00,加密层协议CID为0x06 0x00,加密请求操作码为0x0b,默认配对方式为0x01,包CRC校验为0x95 0x0a 0xf9;生成的绑定重新设置请求为0x13 0x060x19 0x01 0xca 0x02 0x06 0x0a 0x03 0x09 0x2c 0x17 0x00 0xe0 0x74 0x00 0x000xe4 0x62 0x65 0x50 0x0a 0x06 0x02 0x00 0x06 0x00 0x0b 0x01 0x95 0x0a 0xf9;
在本实施例中,手机收到绑定重新设置请求后会重新发送绑定请求;
步骤105:蓝牙设备判断接收到的请求的类型,如为绑定请求则执行步骤106,如为加密请求则执行步骤108;
具体的,在本实施例中,蓝牙设备判断接收到的请求中第二十八个字节数据(OPCPDE),如为第一数据则为绑定请求,如为第二数据则为加密请求;例如,第一数据为0x03,第二数据为0x00;
在本实施例中,如蓝牙设备接收到的请求为0x1b 0x06 0x28 0x01 0x70 0x110x06 0x0a 0x03 0x12 0x2f 0x1d 0x00 0xe0 0xbc 0x00 0x00 0xe0 0x5c 0x65 0x500x0e 0x15 0x11 0x00 0x06 0x00 0x03 0x38 0x82 0xd7 0xf6 0x90 0x56 0xfa 0x2f0x89 0xf5 0x39 0x30 0x89 0x16 0x5f 0xe0 0xa1 0xc9 0x95则为绑定请求;如蓝牙设备接收到的请求为0x1b 0x06 0x2a 0x01 0x78 0x11 0x06 0x0a 0x03 0x0d 0x2f 0x210x00 0x8f 0xbc 0x00 0x00 0xe0 0x5c 0x65 0x50 0x0f 0x17 0x03 0x00 0x00 0x000x00 0x00 0x00 0x00 0x00 0x00 0x00 0xdf 0xde 0xd8 0x67 0x5f 0x08 0xdc 0xe20xda 0x2d 0xe1 0xdb 0x94 0xad 0x0f则为加密请求;
步骤106:蓝牙设备与手机协商出短密钥并保存;
具体的,在本实施例中,步骤106中的蓝牙设备与手机协商出短密钥包括:
步骤106-1:蓝牙设备给手机返回绑定响应;
例如,本实施例中,蓝牙设备给手机返回的绑定响应为:0x1b 0x06 0x28 0x010x74 0x11 0x06 0x0a 0x03 0x22 0x2f 0x1f 0x00 0x8f 0xbc 0x00 0x00 0xe0 0x5c0x65 0x50 0x0e 0x15 0x11 0x00 0x06 0x00 0x04 0x4b 0xac 0xe7 0x3b 0xcb 0xd20x8b 0x5c 0x96 0x86 0x2d 0x5c 0x76 0xea 0x87 0x75 0x2d 0xb7 0x14;
步骤106-2:手机向蓝牙设备发送第一随机数;
例如,本实施例中,第一随机数为:0x4b 0xac 0xe7 0x3b 0xcb 0xd2 0x8b 0x5c0x96 0x86 0x2d 0x5c 0x76 0xea 0x87 0x75,手机给蓝牙设备发送数据为:0x1b 0x060x28 0x01 0x74 0x11 0x06 0x0a 0x03 0x22 0x2f 0x1f 0x00 0x8f 0xbc 0x00 0x000xe0 0x5c 0x65 0x50 0x0e 0x15 0x11 0x00 0x06 0x00 0x04 0x4b 0xac 0xe7 0x3b0xcb 0xd2 0x8b 0x5c 0x96 0x86 0x2d 0x5c 0x76 0xea 0x87 0x75 0x2d 0xb7 0x14;
步骤106-3:蓝牙设备接收第一随机数并保存,生成第二随机数并将其发送给手机;
例如,本实施例中,生成的第二随机数为:0x34 0xbb 0x92 0x07 0x99 0x42 0x260xcf 0xcf 0xa6 0x7e 0x10 0x95 0x5d 0xec 0x87,蓝牙设备给手机发送的数据为:0x1b0x06 0x28 0x01 0x77 0x11 0x06 0x0a 0x01 0x05 0x2f 0x20 0x00 0x97 0x00 0x000x00 0xe0 0x5c 0x65 0x50 0x06 0x15 0x11 0x00 0x06 0x00 0x04 0x34 0xbb 0x920x07 0x99 0x42 0x26 0xcf 0xcf 0xa6 0x7e 0x10 0x95 0x5d 0xec 0x87 0x49 0x1e0x67;
步骤106-4:蓝牙设备和手机分别根据预设认证码、第一随机数、第二随机数计算得到短密钥(STK);
在本实施例中,第一随机数和第二随机数均为128bit的数据,蓝牙设备将第一随机数和第二随机数中的低64bit数据进行收尾拼接,然后根据预设认证码和拼接结果进行计算得到短密钥,其中根据预设认证码和拼接结果进行计算得到会话密钥所使用的公式为s1(k,r1,r2)=e(k,r’),e()为aes128算法,r1为第一随机数,r2为第二随机数,k为预设认证码,r’为拼接结果;例如,预设认证码为0x00000000000000000000000000000000,第一随机数为0x000F0E0D0C0B0A091122334455667788,第二随机数为0x010203040506070899AABBCCDDEEFF00,拼接结果为0x112233445566778899AABBCCDDEEFF00,计算得到的会话密钥为:0x9a1fe1f0e8b0f49b5b4216ae796da062;蓝牙设备与手机在后续的数据通讯中,使用短密钥对传输的数据进行加密;
步骤107:蓝牙设备等待接收手机下发请求,返回步骤103;
步骤108:蓝牙设备给手机返回加密响应和加密开始通知;
步骤109:蓝牙设备判断在绑定之后是否首次接收到加密请求,是则执行步骤112,否则执行步骤110;
在本实施例中,蓝牙设备判断短密钥是否存在,是则执行步骤112,否则执行步骤110;
步骤110:蓝牙设备根据身份识别码和手机MAC检索对应的长密钥是否存在,是则执行步骤113,否则执行步骤111;
如蓝牙设备检索到长密钥存在,则在后续的正常通讯过程中使用长密钥对传输的数据进行加密;即步骤113、114传输的数据是经过长密钥加密的数据;
步骤111:蓝牙设备延时预设时间,向手机发送绑定重新设置请求,等待接收手机下发请求,返回步骤103;
在本实施例中,手机接收到绑定重新设置请求之后,在预设时间内手机会向蓝牙设备发送加密请求;优选的,预设之间为3秒;
步骤112:蓝牙设备生成身份识别码和长密钥,并将身份识别码和长密钥与手机MAC对应保存,使用保存的短密钥完成加密过程,执行步骤113;
具体的,蓝牙设备生成身份识别码包括:蓝牙设备根据自身的DIV(识别码,例如可以为蓝牙设备生产期间生成的私钥)和生成的第三随机数据计算得到mask(具体为蓝牙设备用私钥和第三随机数据做AES128算法取2的16次方的余数得到mask(加密识别码)),然后根据mask和自身的DIV进行异或计算得到EDIV,蓝牙设备将EDIV和第三随机数据发送给手机;例如,在本实施例中,生成的第三随机数据为:0x6b 0xfd 0x3c 0x77 0xd7 0x2c 0x240x5f;计算得到的EDIV为0x28 0xcd;手机获取的LTK为0x35 0xcc 0x25 0x38 0xa7 0x110x81 0x8e 0x33 0x9c 0xee 0xc2 0xa4 0x9f 0xef 0x30;
在本实施例中,蓝牙设备生成LTK(长密钥)是根据密钥传输协议生成的,具体为:LTK=d1(ER,DIV,0),函数d1为多元函数,该函数基于AES-128加密,DIV(Diversifying)为分散器,将一些数据分散然后通过计算将数据还原,是16位的变化符,ER是本实施例中的第二随机数,优选的为128位的伪随机数;
具体的,将身份识别码(EDIV)和长密钥与手机MAC对应保存有多种实现方式,本实施例中以下面几种常见方式为例进行说明;
(1)蓝牙设备更新绑定计数值,根据绑定计数值计算存储位置地址,并将长密钥、身份识别码和手机MAC保存在存储列表中与存储位置地址对应的位置;
具体的,绑定计数值的初始值为0,更新绑定计数值具体为:绑定计数值自加1;根据绑定计数值计算存储位置地址具体为:将绑定计数值除以4取余的结果作为存储位置地址;
(2)蓝牙设备判断存储列表中是否有空闲的存储位置,是则将长密钥、身份识别码、手机MAC和当前的存储时刻顺序存储到存储列表中空闲的存储位置,否则将长密钥、身份识别码、手机MAC和当前的存储时刻存储到存储列表中与最早的存储时间相对应的存储位置;
(3)蓝牙设备显示与其连接的手机信息,提示用户进行选择替换的手机;当蓝牙设备接收到用户选择的替换手机信息时,将长密钥、身份识别码和手机MAC保存到存储列表中与替换手机信息相对应的存储位置;
例如,本实施例中,手机的信息包括手机型号、名称、MAC值等等;
优选的,在本实施例中,如手机在预设时间内接收到蓝牙设备返回的加密响应则手机与蓝牙设备开始正常通行,如手机在预设之间内未收到蓝牙设备返回的加密响应时会发送绑定重新设置请求。例如,本实施例中的加密响应为:0x1b 0x06 0x20 0x01 0x7b0x11 0x06 0x0a 0x01 0x15 0x2f 0x22 0x00 0x95 0x00 0x00 0x00 0xe0 0x5c 0x650x50 0x07 0x0d 0x04 0xc3 0x65 0x80 0x56 0x8f 0x21 0xec 0xca 0xd1 0xe7 0x1b0xd4 0x56 0xa8 0x8b;
步骤112之后的正常通讯过程中使用短密钥对传输的数据进行加密;即步骤113、114传输的数据是经过短密钥加密的数据;
步骤113:蓝牙设备判断是否接收到ATT(英文全称:Attribute Protocol;中文名称:属性协议)层的数据,是则执行步骤114,否则等待接收ATT层的数据,返回步骤113;
步骤114:蓝牙设备对接收到的数据进行处理,并将处理结果通过ATT层返回给上位机,等待接收ATT层的数据,返回步骤113;
例如,蓝牙设备对接收到的数据0009FFFF003039300d060960864801650304020105000428B97B104DEF62D3A8进行签名操作,得到的签名值为83FB83A31DEB21F3AF9DC4CC16CD1912C65DF0DCB68A943A7392D29341C18DE37059835951D3A4B9A061889B0B598D6DBC99BD1A749A6AA970F15A278DF96FCB。
在本实施例中,如蓝牙设备与手机第一次进行绑定连接成功时使用短密钥进行正常通讯,如蓝牙设备与手机断开再连接之后则使用长密钥进行正常通讯。
实施例3
本实施例3提供的一种蓝牙绑定方法,如图2所示,包括以下步骤:
步骤201:蓝牙设备进行初始化;
步骤202:蓝牙设备与手机建立蓝牙连接,获取手机MAC地址并保存;
具体的,在本实施例中,蓝牙设备接收到手机下发的连接请求后会产生一个蓝牙连接事件实现与手机建立蓝牙连接;
步骤203:蓝牙设备判断在预设时间内是否接收到手机下发的请求,是则执行步骤205,否则执行步骤204;
例如,预设时间为3秒;
步骤204:蓝牙设备向手机发送绑定重新设置请求,等待接收手机下发请求,返回执行步骤203;
步骤205:蓝牙设备判断接收到的请求的类型,如为绑定请求则执行步骤206,如为加密请求则执行步骤208;
步骤206:蓝牙设备与手机协商出短密钥并保存;
具体的,在本实施例中,步骤206的实现过程与实施例二中的步骤106相同,在此不再赘述;
在本实施例中,蓝牙设备与手机在绑定连接成功之后的正常数据通讯中,使用短密钥对传输的数据进行加密;
步骤207:蓝牙设备等待接收手机下发请求,返回步骤203;
步骤208:蓝牙设备给手机返回加密响应和加密开始通知;
在本实施例中,蓝牙设备先给手机返回加密响应,再给手机返回加密开始通知;
步骤209:蓝牙设备判断在绑定之后是否首次接收到加密请求,是则执行步骤212,否则执行步骤210;
在本实施例中,蓝牙设备判断短密钥是否存在,是则执行步骤212,否则执行步骤210;
步骤210:蓝牙设备根据身份识别码和手机MAC检索对应的长密钥是否存在,是则执行步骤216,否则执行步骤211;
如蓝牙设备检索到长密钥存在,则在后续的正常通讯过程中使用长密钥对传输的数据进行加密;即步骤216、217传输的数据是经过长密钥加密的数据;
步骤211:蓝牙设备延时预设时间,向手机发送绑定重新设置请求,等待接收手机下发请求,返回步骤203;
步骤212:蓝牙设备生成LTK(长密钥),使用短密钥对长密钥进行加密并将加密结果发送给手机;
在本实施例中,蓝牙设备生成LTK是根据密钥传输协议生成的,具体为:LTK=d1(ER,DIV,0),函数d1为多元函数,该函数基于AES-128加密,DIV(Diversifying)为分散器,将一些数据分散然后通过计算将数据还原,是16位的变化符,ER是本实施例中的第二随机数,优选的为128位的伪随机数;
步骤213:蓝牙设备生成第三随机数,并根据第三随机数生成身份识别码,使用短密钥对第三随机数和身份识别码进行加密并将加密结果发送给手机,对应保存手机MAC地址、生成的长密钥和身份识别码;
具体的,根据随机数生成身份识别码包括:蓝牙设备根据自身的DIV(识别码,例如可以为蓝牙设备生产期间生成的私钥)和第三随机数据计算得到mask(具体为蓝牙设备用私钥和第三随机数据做AES128算法取2的16次方的余数得到mask(加密识别码)),然后根据mask和自身的DIV进行异或计算得到EDIV(身份识别码);
步骤214:蓝牙设备使用短密钥对IRK(英文全称:Identity Resolving Key,中文全称:身份解析密钥)进行加密,并将加密结果上行发送给手机;
在本实施例中,步骤214之前还包括:手机下发的IRK;手机下行向蓝牙设备发送一个身份认证地址信息;手机下发一个签名值;
步骤215:蓝牙设备使用短密钥对蓝牙设备MAC地址进行加密,并将加密结果发送给手机,执行步骤216;
步骤215之后的正常通讯过程中使用短密钥对传输的数据进行加密;即步骤216、217传输的数据是经过短密钥加密的数据;
步骤216:蓝牙设备判断是否接收到ATT层的数据,是则执行步骤217,否则等待接收ATT层的数据,返回步骤216;
步骤217:蓝牙设备对接收到的数据进行处理,并将处理结果通过ATT层返回给上位机,等待接收ATT层的数据,返回步骤216。
在本实施例中,如蓝牙设备与手机第一次进行绑定连接成功时使用短密钥进行正常通讯,如蓝牙设备与手机断开再连接之后则使用长密钥进行正常通讯。
实施例4
本实施例4提供的一种蓝牙绑定装置,如图3所示,包括以下步骤:
初始化连接模块301,用于对蓝牙设备进行初始化,并与手机建立蓝牙连接;
接收模块302,用于接收手机下发的请求;
第一判断模块303,用于当接收模块302在预设时间内接收到手机下发的请求时判断接收到的请求的类型;
协商模块304,用于在第一判断模块303判断接收到的请求的类型为绑定请求时与手机协商出短密钥;
具体的,本实施例中的,协商模块304包括:
第二接收单元,用于接收手机发送的第一随机数;
第一保存单元,用于保存第二接收单元接收的第一随机数;
第一生成单元,用于生成第二随机数;
第一计算单元,用于根据预设认证码、保存单元保存的第一随机数、生成单元生成的第二随机数计算得到短密钥;
第二发送单元,用于在第一判断模块303判断接收到的请求的类型为绑定请求时给手机返回绑定响应,还用于将第一生成单元生成的第二随机数发送给手机;
第一保存模块305,用于保存协商模块304协商出的短密钥;
第二判断模块306,用于在发送模块310给手机返回加密响应和加密开始通知之后,判断在绑定之后接收模块302是否首次接收到加密请求;
优选的,第二判断模块306具体用于在发送模块310给手机返回加密响应和加密开始通知之后,判断短密钥是否存在,是则接收模块302首次接收到加密请求,否则接收模块302不是首次接收到加密请求;
第三判断模块307,用于在第二判断模块306判断为否时根据身份识别码和手机物理地址检索对应的长密钥是否存在;
生成加密模块308,用于在第二判断模块306判断为是时生成身份识别码和长密钥,并将身份识别码和长密钥与手机物理地址对应保存,使用第一保存模块305保存的短密钥完成加密过程;
通讯模块309,用于在第三判断模块307判断为是时和生成加密模块完成加密过程之后与手机进行正常数据通讯;
具体的,在本实施例中,通讯模块309包括:
第一接收单元,用于接收属性协议层的数据;
第一处理单元,用于对第一接收单元接收到的属性协议层的数据进行处理;
第一发送单元,用于将处理单元的处理结果通过属性协议层返回给上位机;
发送模块310,用于当接收模块302在预设时间内未接收到手机下发的请求时向手机发送绑定重新设置请求;还用于当第一判断模块303判断接收到的请求为加密请求时给手机返回加密响应和加密开始通知;还用于当第三判断模块307判断为否时向手机发送绑定重新设置请求。
优选的,本实施例中的发送模块310具体用于当接收模块302在预设时间内未接收到手机下发的请求时向手机发送绑定重新设置请求;还用于当第一判断模块303判断接收到的请求为加密请求时给手机返回加密响应和加密开始通知;还用于当第三判断模块307判断为否时在延时预设时间之后向手机发送绑定重新设置请求。
其中,本实施例的装置还包括获取模块,用于在初始化连接模块301将蓝牙设备与手机建立连接时获取手机物理地址;
生成加密模块308包括:
第二生成单元,用于生成长密钥;
在本实施例中,第二生成单元具体用于根据密钥传输协议生成长密钥;
第一加密单元,用于使用第一保存模块305保存的短密钥对第二生成单元生成的长密钥进行加密;
第三生成单元,用于生成第三随机数,并根据第三随机数生成身份识别码;
在本实施例中,第三生成单元具体用于生成第三随机数,并根据自身的识别码和生成的第三随机数据计算得到加密识别码,根据加密识别码和自身的识别码进行异或计算得到身份识别码;
第二加密单元,用于使用第一保存模块305保存的短密钥对第三生成单元生成的第三随机数和身份识别码进行加密;
第二保存单元,用于对应保存获取模块获取的手机物理地址、第三生成单元生成的长密钥和身份识别码;
本实施例中的第二保存单元有多种实现方式,本发明实施例中具体以下述三种为例进行说明;
(一)第二保存单元具体用于更新绑定计数值,根据绑定计数值计算存储位置地址,并将第三生成单元生成的长密钥和身份识别码、获取模块获取的手机物理地址保存在存储列表中与存储位置地址对应的位置;
可选的,第二保存单元包括:
更新子单元,用于将绑定计数值自加1;
计算子单元,用于将绑定计数值除以4取余的结果作为存储位置地址;
保存子单元,用于将第三生成单元生成的长密钥和身份识别码、获取模块获取的手机物理地址保存在存储列表中与存储位置地址对应的位置;
(二)第二保存单元具体用于判断存储列表中是否有空闲的存储位置,是则将长密钥、身份识别码、手机物理地址和当前的存储时刻顺序存储到存储列表中空闲的存储位置,否则将第三生成单元生成的长密钥和身份识别码、获取模块获取的手机物理地址、当前的存储时刻存储到存储列表中与最早的存储时刻相对应的存储位置;
(三)第二保存单元具体用于显示与其连接的手机信息,提示用户进行选择替换的手机;当蓝牙设备接收到用户选择的替换手机信息时,将第三生成单元生成的长密钥和身份识别码、获取模块获取的手机物理地址保存到存储列表中与替换手机信息相对应的存储位置;
第三加密单元,用于使用第一保存模块305保存的短密钥对身份解析密钥进行加密;
第四加密单元,用于使用第一保存模块305保存的短密钥对蓝牙设备物理地址进行加密;
第三发送单元,用于将第一加密单元的加密结果、第二加密单元的加密结果、第三加密单元的加密结果和第四加密单元的加密结果发送给手机。
本发明实施例提供的蓝牙绑定方法及装置,可以实现自动刷新苹果手机中的绑定信息,无需用户手动刷新,简化了用户操作,提升了用户体验。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (24)

1.一种蓝牙绑定方法,其特征在于,包括:
步骤A0:蓝牙设备进行初始化,并与手机建立蓝牙连接;
步骤A1:当所述蓝牙设备在预设时间内未接收到所述手机下发的请求时向所述手机发送绑定重新设置请求,等待接收所述手机下发请求,返回步骤A1;当所述蓝牙设备在预设时间内接收到所述手机下发的请求时判断接收到的请求的类型,如为绑定请求则所述蓝牙设备与所述手机协商出短密钥并保存,等待接收所述手机下发请求,返回步骤A1;如为加密请求则执行步骤A2;
步骤A2:所述蓝牙设备给所述手机返回加密响应和加密开始通知;
步骤A3:所述蓝牙设备判断在绑定之后是否首次接收到加密请求,是则执行步骤A6,否则执行步骤A4;
步骤A4:所述蓝牙设备根据身份识别码和手机物理地址检索对应的长密钥是否存在,是则进行正常数据通讯,否则执行步骤A5;
步骤A5:所述蓝牙设备向手机发送绑定重新设置请求,等待接收所述手机下发请求,返回步骤A1;
步骤A6:所述蓝牙设备生成身份识别码和长密钥,并将所述身份识别码和长密钥与手机物理地址对应保存,使用所述短密钥完成加密过程,开始进行正常数据通讯。
2.如权利要求1所述的方法,其特征在于,所述进行正常数据通讯包括:
当所述蓝牙设备接收到属性协议层的数据时,对接收到的数据进行处理,并将处理结果通过属性协议层返回给上位机,等待接收属性协议层的数据。
3.如权利要求1所述的方法,其特征在于,所述蓝牙设备与所述手机协商出短密钥,包括:
步骤B1:所述蓝牙设备给所述手机返回绑定响应;
步骤B2:所述蓝牙设备接收所述手机发送的第一随机数并保存,生成第二随机数并将其发送给所述手机;
步骤B2:所述蓝牙设备和所述手机分别根据预设认证码、所述第一随机数、所述第二随机数计算得到短密钥。
4.如权利要求1所述的方法,其特征在于,所述步骤A3具体包括:所述蓝牙设备判断短密钥是否存在,是则执行步骤A6,否则执行步骤A4。
5.如权利要求1所述的方法,其特征在于,所述蓝牙设备与手机建立连接时获取手机物理地址;
所述步骤A6包括:
步骤A6-1:所述蓝牙设备生成长密钥,使用所述短密钥对所述长密钥进行加密并将加密结果发送给所述手机;
步骤A6-2:所述蓝牙设备生成第三随机数,并根据所述第三随机数生成身份识别码,使用所述短密钥对所述第三随机数和所述身份识别码进行加密并将加密结果发送给所述手机,对应保存所述手机物理地址、所述长密钥和所述身份识别码;
步骤A6-3:所述蓝牙设备使用所述短密钥对身份解析密钥进行加密,并将加密结果上行发送给所述手机;
步骤A6-4:所述蓝牙设备使用所述短密钥对蓝牙设备物理地址进行加密,并将加密结果发送给所述手机,开始进行正常通讯。
6.如权利要求5所述的方法,其特征在于,所述根据所述第三随机数生成身份识别码,包括:所述蓝牙设备根据自身的识别码和生成的所述第三随机数据计算得到加密识别码,根据所述加密识别码和所述自身的识别码进行异或计算得到身份识别码。
7.如权利要求5所述的方法,其特征在于,所述生成长密钥具体为:根据密钥传输协议生成所述长密钥。
8.如权利要求5所述的方法,其特征在于,所述对应保存所述手机物理地址、所述长密钥和所述身份识别码包括:
所述蓝牙设备更新绑定计数值,根据所述绑定计数值计算存储位置地址,并将所述长密钥、所述身份识别码和手机物理地址保存在存储列表中与所述存储位置地址对应的位置。
9.如权利要求8所述的方法,其特征在于,
所述更新绑定计数值具体为:所述绑定计数值自加1;
所述根据绑定计数值计算存储位置地址具体为:将绑定计数值除以4取余的结果作为存储位置地址。
10.如权利要求5所述的方法,其特征在于,所述对应保存所述手机物理地址、所述长密钥和所述身份识别码包括:
所述蓝牙设备判断存储列表中是否有空闲的存储位置,是则将所述长密钥、所述身份识别码、手机物理地址和当前的存储时刻顺序存储到存储列表中空闲的存储位置,否则将所述长密钥、所述身份识别码、手机物理地址和当前的存储时刻存储到存储列表中与最早的存储时刻相对应的存储位置。
11.如权利要求5所述的方法,其特征在于,所述对应保存所述手机物理地址、所述长密钥和所述身份识别码包括:
所述蓝牙设备显示与其连接的手机信息,提示用户进行选择替换的手机;当所述蓝牙设备接收到用户选择的替换手机信息时,将所述长密钥、身份识别码和所述手机物理地址保存到存储列表中与替换手机信息相对应的存储位置。
12.如权利要求1所述的方法,其特征在于,所述步骤A5包括:所述蓝牙设备延时预设时间,向手机发送绑定重新设置请求,等待接收所述手机下发请求。
13.一种蓝牙绑定装置,其特征在于,包括:
初始化连接模块,用于对蓝牙设备进行初始化,并与手机建立蓝牙连接;
接收模块,用于接收所述手机下发的请求;
第一判断模块,用于当所述接收模块在预设时间内接收到所述手机下发的请求时判断接收到的请求的类型;
协商模块,用于在所述第一判断模块判断接收到的请求的类型为绑定请求时与所述手机协商出短密钥;
第一保存模块,用于保存所述协商模块协商出的短密钥;
第二判断模块,用于在发送模块给所述手机返回加密响应和加密开始通知之后,判断在绑定之后所述接收模块是否首次接收到加密请求;
第三判断模块,用于在所述第二判断模块判断为否时根据身份识别码和手机物理地址检索对应的长密钥是否存在;
生成加密模块,用于在所述第二判断模块判断为是时生成身份识别码和长密钥,并将所述身份识别码和长密钥与手机物理地址对应保存,使用所述第一保存模块保存的短密钥完成加密过程;
通讯模块,用于在所述第三判断模块判断为是时和所述生成加密模块完成加密过程之后与所述手机进行正常数据通讯;
所述发送模块,用于当所述接收模块在预设时间内未接收到所述手机下发的请求时向所述手机发送绑定重新设置请求;还用于当所述第一判断模块判断接收到的请求为加密请求时给所述手机返回加密响应和加密开始通知;还用于当所述第三判断模块判断为否时向所述手机发送绑定重新设置请求。
14.如权利要求13所述的装置,其特征在于,所述通讯模块包括:
第一接收单元,用于接收属性协议层的数据;
第一处理单元,用于对所述第一接收单元接收到的属性协议层的数据进行处理;
第一发送单元,用于将所述处理单元的处理结果通过属性协议层返回给上位机。
15.如权利要求13所述的装置,其特征在于,所述协商模块,包括:
第二接收单元,用于接收所述手机发送的第一随机数;
第一保存单元,用于保存所述第二接收单元接收的第一随机数;
第一生成单元,用于生成第二随机数;
第一计算单元,用于根据预设认证码、所述保存单元保存的第一随机数、所述生成单元生成的第二随机数计算得到短密钥;
第二发送单元,用于在所述第一判断模块判断接收到的请求的类型为绑定请求时给所述手机返回绑定响应,还用于将第一生成单元生成的第二随机数发送给所述手机。
16.如权利要求13所述的装置,其特征在于,所述第二判断模块具体用于在所述发送模块给所述手机返回加密响应和加密开始通知之后,判断短密钥是否存在,是则所述接收模块首次接收到加密请求,否则所述接收模块不是首次接收到加密请求。
17.如权利要求13所述的装置,其特征在于,还包括获取模块,用于在所述初始化连接模块将蓝牙设备与手机建立连接时获取手机物理地址;
所述生成加密模块包括:
第二生成单元,用于生成长密钥;
第一加密单元,用于使用所述第一保存模块保存的短密钥对所述第二生成单元生成的长密钥进行加密;
第三生成单元,用于生成第三随机数,并根据所述第三随机数生成身份识别码;
第二加密单元,用于使用所述第一保存模块保存的短密钥对所述第三生成单元生成的第三随机数和所述身份识别码进行加密;
第二保存单元,用于对应保存所述获取模块获取的手机物理地址、所述第三生成单元生成的长密钥和所述身份识别码;
第三加密单元,用于使用所述第一保存模块保存的短密钥对身份解析密钥进行加密;
第四加密单元,用于使用所述第一保存模块保存的短密钥对蓝牙设备物理地址进行加密;
第三发送单元,用于将所述第一加密单元的加密结果、第二加密单元的加密结果、第三加密单元的加密结果和第四加密单元的加密结果发送给所述手机。
18.如权利要求17所述的装置,其特征在于,所述第三生成单元具体用于生成第三随机数,并根据自身的识别码和生成的所述第三随机数据计算得到加密识别码,根据所述加密识别码和所述自身的识别码进行异或计算得到身份识别码。
19.如权利要求17所述的装置,其特征在于,所述第二生成单元具体用于根据密钥传输协议生成所述长密钥。
20.如权利要求17所述的装置,其特征在于,所述第二保存单元具体用于更新绑定计数值,根据所述绑定计数值计算存储位置地址,并将所述第三生成单元生成的长密钥和所述身份识别码、所述获取模块获取的手机物理地址保存在存储列表中与所述存储位置地址对应的位置。
21.如权利要求20所述的装置,其特征在于,所述第二保存单元包括:
更新子单元,用于将绑定计数值自加1;
计算子单元,用于将绑定计数值除以4取余的结果作为存储位置地址;
保存子单元,用于将所述第三生成单元生成的长密钥和所述身份识别码、所述获取模块获取的手机物理地址保存在存储列表中与所述存储位置地址对应的位置。
22.如权利要求17所述的装置,其特征在于,所述第二保存单元具体用于判断存储列表中是否有空闲的存储位置,是则将所述长密钥、所述身份识别码、手机物理地址和当前的存储时刻顺序存储到存储列表中空闲的存储位置,否则将所述第三生成单元生成的长密钥和所述身份识别码、所述获取模块获取的手机物理地址、当前的存储时刻存储到存储列表中与最早的存储时刻相对应的存储位置。
23.如权利要求17所述的装置,其特征在于,所述第二保存单元具体用于显示与其连接的手机信息,提示用户进行选择替换的手机;当所述蓝牙设备接收到用户选择的替换手机信息时,将所述第三生成单元生成的长密钥和身份识别码、所述获取模块获取的手机物理地址保存到存储列表中与替换手机信息相对应的存储位置。
24.如权利要求13所述的装置,其特征在于,所述发送模块具体用于当所述接收模块在预设时间内未接收到所述手机下发的请求时向所述手机发送绑定重新设置请求;还用于当所述第一判断模块判断接收到的请求为加密请求时给所述手机返回加密响应和加密开始通知;还用于当所述第三判断模块判断为否时在延时预设时间之后向所述手机发送绑定重新设置请求。
CN201710801726.9A 2017-09-07 2017-09-07 一种蓝牙绑定方法及装置 Active CN107645719B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710801726.9A CN107645719B (zh) 2017-09-07 2017-09-07 一种蓝牙绑定方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710801726.9A CN107645719B (zh) 2017-09-07 2017-09-07 一种蓝牙绑定方法及装置

Publications (2)

Publication Number Publication Date
CN107645719A true CN107645719A (zh) 2018-01-30
CN107645719B CN107645719B (zh) 2020-02-21

Family

ID=61110220

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710801726.9A Active CN107645719B (zh) 2017-09-07 2017-09-07 一种蓝牙绑定方法及装置

Country Status (1)

Country Link
CN (1) CN107645719B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108595574A (zh) * 2018-04-16 2018-09-28 上海达梦数据库有限公司 数据库集群的连接方法、装置、设备及存储介质
CN112995137A (zh) * 2021-02-03 2021-06-18 深圳市凯迪仕智能科技有限公司 一种智能锁的绑定方法及智能锁系统
CN117279119A (zh) * 2023-11-21 2023-12-22 微泰医疗器械(杭州)股份有限公司 用于设备间无线通信的方法和通信装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103581900A (zh) * 2012-08-01 2014-02-12 中国移动通信集团公司 通信安全控制方法、装置、第一移动终端及移动健康设备
CN104967966A (zh) * 2015-05-22 2015-10-07 西安海导信息技术有限公司 一种绑定蓝牙设备的方法及装置
US20160174277A1 (en) * 2014-12-12 2016-06-16 Samsung Electronics Co., Ltd. Method of connecting wireless network and electronic device thereof
CN106102184A (zh) * 2016-07-15 2016-11-09 杭州赫智电子科技有限公司 一种用于管理蓝牙设备绑定连接的系统及方法
CN106385352A (zh) * 2016-10-20 2017-02-08 北京小米移动软件有限公司 设备绑定方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103581900A (zh) * 2012-08-01 2014-02-12 中国移动通信集团公司 通信安全控制方法、装置、第一移动终端及移动健康设备
US20160174277A1 (en) * 2014-12-12 2016-06-16 Samsung Electronics Co., Ltd. Method of connecting wireless network and electronic device thereof
CN104967966A (zh) * 2015-05-22 2015-10-07 西安海导信息技术有限公司 一种绑定蓝牙设备的方法及装置
CN106102184A (zh) * 2016-07-15 2016-11-09 杭州赫智电子科技有限公司 一种用于管理蓝牙设备绑定连接的系统及方法
CN106385352A (zh) * 2016-10-20 2017-02-08 北京小米移动软件有限公司 设备绑定方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108595574A (zh) * 2018-04-16 2018-09-28 上海达梦数据库有限公司 数据库集群的连接方法、装置、设备及存储介质
CN112995137A (zh) * 2021-02-03 2021-06-18 深圳市凯迪仕智能科技有限公司 一种智能锁的绑定方法及智能锁系统
CN112995137B (zh) * 2021-02-03 2023-04-07 深圳市凯迪仕智能科技有限公司 一种智能锁的绑定方法及智能锁系统
CN117279119A (zh) * 2023-11-21 2023-12-22 微泰医疗器械(杭州)股份有限公司 用于设备间无线通信的方法和通信装置
CN117279119B (zh) * 2023-11-21 2024-02-02 微泰医疗器械(杭州)股份有限公司 用于设备间无线通信的方法和通信装置

Also Published As

Publication number Publication date
CN107645719B (zh) 2020-02-21

Similar Documents

Publication Publication Date Title
CN108901010A (zh) 一种蓝牙设备及蓝牙连接方法
CN107645719A (zh) 一种蓝牙绑定方法及装置
CN109005530A (zh) 一种与移动终端执行配对服务的方法及蓝牙设备
EP2866419A1 (en) Method and system for implementing smart card remote operation
CN108494773A (zh) 计算机实现的方法和第一便携式电子设备
EP2039114A2 (fr) Procede de controle d'application dans un chipset nfc comprenant plusieurs processeurs hotes
CN103746990B (zh) 一种移动终端中浏览器与客户端的数据交互系统和方法
CN107516196A (zh) 一种移动支付系统及其移动支付方法
CN104301113B (zh) 一种基于多证书多用途的数字签名方法和系统
CN103440576A (zh) 一种移动直接支付系统
CN103905435A (zh) 一种前端页面与后端服务器通信方法
CN103905457B (zh) 服务器、客户端、认证系统及用户认证和数据访问方法
CN105657468A (zh) 一种fido遥控器及电视支付系统及方法
CN107733919A (zh) 一种用户身份识别的方法、终端、服务器及系统
CN102857564B (zh) 一种数据同步方法、终端及系统
WO2014194822A1 (zh) 用于电子资源转移的安全性信息交互方法
CN110198214A (zh) 身份标识生成方法、验证方法及装置
CN103067389A (zh) 基于短网址的高安全性文件传输方法
JP2024516335A (ja) オンライン購入商品のタックスリファンドサービスを提供するためのシステム、サーバ、及び方法
CN110061848B (zh) 一种安全导入支付终端密钥的方法、支付终端及系统
CN104394151A (zh) 一种校园网接入运营商网络的方法、设备及系统
WO2022078078A1 (zh) 一种外接设备模拟键盘的实现方法、装置及系统
Urien et al. Securing NFC mobile services with cloud of secure elements (CoSE)
KR20140054425A (ko) 네트워크 발호 방법 및 장치
CN105847286B (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