CN105956852B - 一种蓝牙智能密钥设备及其工作方法 - Google Patents

一种蓝牙智能密钥设备及其工作方法 Download PDF

Info

Publication number
CN105956852B
CN105956852B CN201610453114.0A CN201610453114A CN105956852B CN 105956852 B CN105956852 B CN 105956852B CN 201610453114 A CN201610453114 A CN 201610453114A CN 105956852 B CN105956852 B CN 105956852B
Authority
CN
China
Prior art keywords
bluetooth
broadcast
mobile terminal
blue
instruction
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.)
Active
Application number
CN201610453114.0A
Other languages
English (en)
Other versions
CN105956852A (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 CN201610453114.0A priority Critical patent/CN105956852B/zh
Publication of CN105956852A publication Critical patent/CN105956852A/zh
Application granted granted Critical
Publication of CN105956852B publication Critical patent/CN105956852B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/327Short range or proximity payments by means of M-devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)

Abstract

本发明公开了一种蓝牙智能密钥设备及其工作方法,所述方法包括:蓝牙智能密钥设备初始化;交替进行蓝牙3.0广播和蓝牙4.0广播;当接收到来自移动终端的连接请求后,停止广播,判断连接请求的类型,当连接请求为蓝牙4.0连接请求时,和移动终端建立蓝牙4.0连接;蓝牙智能密钥设备接收来自移动终端的蓝牙4.0通讯指令,向移动终端返回蓝牙4.0通讯应答;当连接请求为蓝牙3.0连接请求时,和移动终端建立蓝牙3.0连接;蓝牙智能密钥设备接收来自移动终端的蓝牙3.0通讯指令后,向移动终端返回蓝牙3.0通讯应答。本发明公开的一种蓝牙智能密钥设备及其工作方法,能够兼容蓝牙3.0通讯方式和蓝牙4.0通讯方式。

Description

一种蓝牙智能密钥设备及其工作方法
技术领域
本发明涉及通信技术领域,特别涉及一种蓝牙智能密钥设备及其工作方法。
背景技术
蓝牙3.0核心规范(Bluetooth Core Specification Version 3.0 High Speed,简称蓝牙3.0)能够实现高速的蓝牙无线传输,是目前最普及的蓝牙版本,已应用于众多领域。随着蓝牙技术的不断发展,2010年蓝牙技术联盟(Bluetooth SIG)宣布,正式采纳蓝牙4.0核心规范(Bluetooth Core Specification Version 4.0),简称蓝牙4.0。蓝牙4.0是现在的主流蓝牙版本,具有更省电、成本低、3毫秒低延迟、超长有效连接距离、AES-128加密等特点;可以用于计步器、心律监视器、智能仪表、传感器物联网等众多领域。
蓝牙智能密钥设备(简称蓝牙KEY)是为保证网上银行交易的安全性而提出的一种安全且便捷的智能密钥设备。现有技术中,蓝牙智能密钥设备仅能支持蓝牙3.0通讯方式或蓝牙4.0通讯方式,不能兼容两种通讯方式。
发明内容
本发明提供了一种蓝牙智能密钥设备及其工作方法,兼容蓝牙3.0通讯方式和蓝牙4.0通讯方式。
本发明提供了一种蓝牙智能密钥设备的工作方法,包括:
步骤s1:蓝牙智能密钥设备初始化;
步骤s2:所述蓝牙密钥设备交替进行蓝牙3.0广播和蓝牙4.0广播;当接收到来自移动终端的连接请求后,停止广播,判断所述连接请求的类型,当所述连接请求为蓝牙4.0连接请求时,执行步骤s3;当所述连接请求为蓝牙3.0连接请求时,执行步骤s5;
步骤s3:所述蓝牙智能密钥设备和所述移动终端建立蓝牙4.0连接;
步骤s4:当所述蓝牙智能密钥设备接收到来自所述移动终端的蓝牙4.0通讯指令后,向所述移动终端返回蓝牙4.0通讯应答,返回步骤s4;
步骤s5:所述蓝牙智能密钥设备和所述移动终端建立蓝牙3.0连接;
步骤s6:当所述蓝牙智能密钥设备接收到来自所述移动终端的蓝牙3.0通讯指令后,向所述移动终端返回蓝牙3.0通讯应答,返回步骤s6。
本发明还提供了一种蓝牙智能密钥设备,包括:初始化模块、广播模块、第一接收模块、第一判断模块、第一连接模块、第二接收模块、第一发送模块、第二连接模块、第三接收模块、第二发送模块;
所述初始化模块,用于初始化;
所述广播模块,用于当所述初始化模块初始化后,交替进行蓝牙3.0广播和蓝牙4.0广播;以及当所述第一接收模块接收到来自移动终端的连接请求后,停止广播;
所述第一判断模块,用于判断所述第一接收模块接收到的连接请求的类型;
所述第一连接模块,用于当所述第一判断模块判定所述连接请求为蓝牙4.0连接请求时,和所述移动终端建立蓝牙4.0连接;
所述第二接收模块,用于接收来自所述移动终端的蓝牙4.0通讯指令;
所述第一发送模块,用于向所述移动终端返回蓝牙4.0通讯应答;
所述第二连接模块,用于当所述第一判断模块判定所述连接请求为蓝牙3.0连接请求时,和所述移动终端建立蓝牙3.0连接;
所述第三接收模块,用于接收来自所述移动终端的蓝牙3.0通讯指令;
所述第二发送模块,用于向所述移动终端返回蓝牙3.0通讯应答。
本发明的有益效果:本发明提供的一种蓝牙智能密钥设备及其工作方法,能够兼容蓝牙3.0通讯方式和蓝牙4.0通讯方式。
附图说明
图1为本发明实施例1提供的一种蓝牙智能密钥设备的工作方法;
图2-图3为本发明实施例2提供的一种蓝牙智能密钥设备的工作方法;
图4为本发明实施例3提供的一种蓝牙智能密钥设备的工作方法;
图5为本发明实施例4提供的一种蓝牙智能密钥设备的方框示意图。
具体实施方法
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本实施例提供了一种蓝牙智能密钥设备的工作方法,如图1所示,包括:
步骤101:蓝牙智能密钥设备上电,初始化;
其中,蓝牙智能密钥设备初始化,包括:
步骤a1:蓝牙智能密钥设备初始化蓝牙4.0协议栈,初始化GATT(GenericAttribute Profile,通用属性协议)服务,创建UUID(Universally Unique Identifier,通用唯一识别码)服务并配置UUID服务参数;
其中,UUID服务参数包括UUID写属性和UUID通知属性。
例如,蓝牙智能密钥设备初始化蓝牙4.0协议栈,初始化GATT服务,创建UUID服务的标识为“4546415354460000C300010003005446”的UUID服务,配置UUID服务写属性和UUID服务通知属性。
步骤a2:蓝牙智能密钥设备配置包括蓝牙设备标识的蓝牙4.0广播参数,打开蓝牙4.0广播通道。
具体地,蓝牙智能密钥设备配置包括蓝牙设备标识和双模标识的蓝牙4.0广播参数,打开蓝牙4.0广播通道。
更加具体地,蓝牙智能密钥设备将蓝牙4.0广播参数中的第三个字节上的数据设置为双模标识,配置包括蓝牙设备标识和双模标识的蓝牙4.0广播参数,打开蓝牙4.0广播通道。
本实施例中,蓝牙设备标识为用来标识蓝牙智能密钥设备的信息,可以具体为蓝牙设备名称或UUID服务的标识。双模标识为蓝牙智能密钥设备支持双模通讯的标识信息,可以具体为“02”。
例如,蓝牙智能密钥设备将蓝牙4.0广播参数中的第三个字节上的数据设置为双模标识“02”,配置包括双模标识“02”和蓝牙设备名称“59 4B 36 36 31 44 4D 32 30”的蓝牙4.0广播参数“02 01 02 0B 09 59 4B 36 36 31 44 4D 32 30 41 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00”,打开蓝牙4.0广播通道。
又例如:蓝牙智能密钥设备向蓝牙4.0模块将蓝牙4.0广播参数中的第三个字节上的数据设置为双模标识“02”,配置包括UUID服务的标识“4546415354460000C300010003005446”的广播参数“02 01 02 11 06 45 46 41 53 54 46 00 00 C3 00 01 00 01 00 5446 00 00 00 00 00 00 00 00 00 00”,打开蓝牙4.0广播通道。
本实施例中,蓝牙智能密钥设备配置包括蓝牙设备标识的蓝牙4.0广播参数,具体为:蓝牙智能密钥设备根据蓝牙4.0协议配置包括蓝牙设备标识的蓝牙4.0广播参数。
步骤b1:蓝牙智能密钥设备初始化蓝牙3.0协议栈,配置包括蓝牙智能密钥设备的MAC(Media Access Control,介质访问控制)地址和/或蓝牙设备名称的蓝牙3.0广播参数,打开蓝牙3.0广播通道。
例如,蓝牙智能密钥设备初始化蓝牙3.0协议栈,配置包括蓝牙智能密钥设备的MAC地址“29 10 05 0D 00 00”和蓝牙设备名称“59 4B 36 36 31 44 4D 32 30”的蓝牙3.0广播参数,打开蓝牙3.0广播通道。
本实施例中,蓝牙智能密钥设备配置包括蓝牙智能密钥设备的MAC地址和/或蓝牙设备名称的蓝牙3.0广播参数,具体为:蓝牙智能密钥设备根据蓝牙3.0协议配置包括蓝牙智能密钥设备的MAC地址和/或蓝牙设备名称的蓝牙3.0广播参数。
步骤102:蓝牙智能密钥设备交替进行蓝牙3.0广播和蓝牙4.0广播,等待接收来自移动终端的连接请求;
具体地,蓝牙智能密钥设备交替地广播蓝牙3.0广播参数和蓝牙4.0广播参数,等待接收来自移动终端的连接请求。
更加具体地,蓝牙智能密钥设备第一预设时间内交替广播蓝牙3.0广播参数和蓝牙4.0广播参数,在第二预设时间内等待接收来自移动终端的连接请求。若在第二预设时间内没有接收到来自移动终端的连接请求,则关机;若在第二预设时间内接收到来自移动终端的连接请求,则执行步骤103。
例如:蓝牙智能密钥设备通过蓝牙3.0模块在第一预设频道上广播蓝牙3.0广播参数,经过第一预设时间后,在第二预设频道范围上广播蓝牙4.0广播参数,经过第一预设时间后,重新在第一预设频道上广播蓝牙3.0广播参数,并且在蓝牙智能密钥设备交替广播蓝牙3.0广播参数和蓝牙4.0广播参数的过程中,在第二预设时间内等待接收来自移动终端的连接请求。若在第二预设时间内没有接收到来自移动终端的连接请求,则关机;若在第二预设时间内接收到来自移动终端的连接请求,则执行步骤103。或者蓝牙智能密钥设备在第二预设频道范围上广播蓝牙4.0广播参数,经过第一预设时间后,在第一预设频道上广播蓝牙3.0广播参数,到达第一预设时间后,重新在第二预设频道范围上广播蓝牙4.0广播参数,并且在蓝牙智能密钥设备交替广播蓝牙3.0广播参数和蓝牙4.0广播参数的过程中,在第二预设时间内等待接收来自移动终端的连接请求。若在第二预设时间内没有接收到来自移动终端的连接请求,则关机;若在第二预设时间内接收到来自移动终端的连接请求,则执行步骤103。
本实施例中,第一预设时间为蓝牙协议栈中的预设交替时间。
本实施例中,蓝牙协议栈包括蓝牙3.0协议栈和蓝牙4.0协议栈。
本实施例中,优选地,第二预设时间为3分钟。
本实施例中,第一预设频道,具体为1个频道。第二预设频道范围具体可以包括3个频道,每个频道之间的间隔频率为2MHZ。第一预设频道可以和第二预设频道范围中的3个频道均不同;第一预设频道也可以和第二预设频道范围中的3个频道中的其中一个频道为相同频道。优选地,第一预设频道和第二预设频道范围中的3个频道均不同。
步骤103:当接收到来自移动终端的连接请求后,蓝牙智能密钥设备停止广播,蓝牙智能密钥设备判断连接请求的类型,当连接请求为蓝牙4.0连接请求时,执行步骤104;当连接请求为蓝牙3.0连接请求时,执行步骤108;
具体地,当接收到来自移动终端的连接请求后,蓝牙智能密钥设备停止广播,获取连接请求中的请求标识,当连接请求中的请求标识为第一预设标识时,判断连接请求为蓝牙4.0连接请求,执行步骤104;当连接请求中的请求标识为第二预设标识时,判断连接请求为蓝牙3.0连接请求,执行步骤108。
本实施例中,请求标识位于连接请求的第二字节上,第一预设标识为3E;第二预设标识为03。
更加具体地,当接收到来自移动终端的连接请求后,蓝牙智能密钥设备停止广播,获取连接请求中的第二个字节上的数据,并将其作为请求标识,当连接请求中的请求标识为第一预设标识时,判定连接请求为蓝牙4.0连接请求,执行步骤104;当连接请求中的请求标识为第二预设标识时,判定连接请求为蓝牙3.0连接请求,执行步骤108。
例如,当接收到来自移动终端的连接请求为“04 3E 0B 00 29 00 5F 21 A3 6010 00 01 00”,蓝牙智能密钥设备获取连接请求中的第二个字节上的数据为第二预设标识“3E”,则判定连接请求为蓝牙4.0连接请求,执行步骤104;当接收到来自移动终端的连接请求为“04 03 0B 00 29 00 5F 21 A3 60 10 00 01 00”,蓝牙智能密钥设备获取连接请求中的第二个字节上的数据为第二预设标识“03”,则判定连接请求为蓝牙3.0连接请求,执行步骤108。
步骤104:蓝牙智能密钥设备和移动终端建立蓝牙4.0连接。
具体地,蓝牙智能设备根据蓝牙4.0协议和移动终端建立蓝牙4.0连接。
步骤105:蓝牙智能密钥设备等待接收来自移动终端的蓝牙4.0通讯指令;
步骤106:当蓝牙智能密钥设备接收到来自移动终端的蓝牙4.0通讯指令后,解析蓝牙4.0通讯指令,根据解析后的蓝牙4.0通讯指令执行相应操作,组织有效应答数据;
具体地,当蓝牙智能密钥设备接收到来自移动终端的蓝牙4.0通讯指令后,在蓝牙4.0通讯指令中获取蓝牙4.0指令头之后的数据,将获取到的数据作为蓝牙4.0通讯指令中的有效指令数据,根据有效指令数据执行相应操作,组织有效应答数据。
本实施例中,蓝牙4.0通讯指令的格式为:
蓝牙4.0指令头 有效指令数据
11个字节
其中,蓝牙4.0通讯指令中的蓝牙4.0指令头的格式为:
本实施例中,蓝牙4.0通讯指令中的命令字具体为“D3 C9”。
本实施例中,蓝牙4.0通讯指令包括取蓝牙4.0随机数指令、蓝牙4.0生成密钥对指令、蓝牙4.0获取公钥指令和蓝牙4.0复核签名指令等。
例如,当蓝牙智能密钥设备接收到来自移动终端的蓝牙4.0通讯指令后,在蓝牙4.0通讯指令中获取蓝牙4.0指令头之后的数据,将获取到的数据作为获取蓝牙4.0通讯指令中的有效指令数据,根据有效指令数据判断蓝牙4.0通讯指令为蓝牙4.0复核签名指令,在蓝牙4.0复核签名指令中获取交易报文,根据交易报文获取哈希结果和关键信息,输出关键信息;当蓝牙智能密钥设备检测到确认信号后,使用用户私钥对哈希结果进行签名,得到签名结果,根据签名结果输出操作结果并根据签名结果组织有效应答数据。
本实施例中,解析蓝牙4.0通讯指令具体为:根据蓝牙4.0协议解析蓝牙4.0通讯指令。
步骤107:蓝牙智能密钥设备根据有效应答数据组织蓝牙4.0通讯应答,向移动终端返回蓝牙4.0通讯应答,返回步骤105。
具体地,蓝牙智能密钥设备在有效应答数据前添加蓝牙4.0应答头,得到蓝牙4.0通讯应答,向移动终端返回蓝牙4.0通讯应答,返回步骤105。
本实施例中,蓝牙4.0通讯应答的格式为:
蓝牙4.0应答头 有效应答数据
11个字节
其中,蓝牙4.0通讯应答中的蓝牙4.0应答头的格式为:
本实施例中,蓝牙4.0通讯应答中的命令字具体为“00 52”。
本实施例中,步骤107具体为:蓝牙智能密钥设备根据蓝牙4.0协议,组织包括有效应答数据的蓝牙4.0通讯应答,向移动终端返回蓝牙4.0通讯应答,返回步骤105。
步骤108:蓝牙智能密钥设备和移动终端建立蓝牙3.0连接。
具体地,蓝牙智能设备根据蓝牙3.0协议和移动终端建立蓝牙3.0连接。
步骤109:蓝牙智能密钥设备等待接收来自移动终端的蓝牙3.0通讯指令;
步骤110:当蓝牙智能密钥设备接收到来自移动终端的蓝牙3.0通讯指令后,解析蓝牙3.0通讯指令,根据解析后的蓝牙3.0通讯指令执行相应操作,组织有效应答数据;
具体地,当蓝牙智能密钥设备接收到来自移动终端的蓝牙3.0通讯指令后,在蓝牙3.0通讯指令中获取蓝牙3.0指令头之后的数据,将获取到的数据作为蓝牙3.0通讯指令中的有效指令数据,根据有效指令数据执行相应操作,组织有效应答数据。
本实施例中,蓝牙3.0通讯指令的格式为:
蓝牙3.0指令头 有效指令数据
9个字节
其中,蓝牙3.0指令头的格式为:
本实施例中,蓝牙3.0通讯指令中的命令字具体为“E5 49”。
本实施例中,蓝牙3.0通讯指令包括取蓝牙3.0随机数指令、蓝牙3.0生成密钥对指令、蓝牙3.0获取公钥指令和蓝牙3.0复核签名指令等。
例如,当蓝牙智能密钥设备根据有效指令数据判断蓝牙3.0通讯指令为蓝牙3.0复核签名指令后,在蓝牙3.0复核签名指令中获取交易报文,根据交易报文获取哈希结果和关键信息,输出关键信息;当蓝牙智能密钥设备检测到确认信号后,使用用户私钥对哈希结果进行签名,得到签名结果,根据签名结果输出操作结果并根据签名结果组织有效应答数据。
本实施例中,解析蓝牙3.0通讯指令具体为:根据蓝牙3.0协议解析蓝牙3.0通讯指令。
步骤111:蓝牙智能密钥设备根据有效应答数据组织蓝牙3.0通讯应答,向移动终端返回蓝牙3.0通讯应答,返回步骤109。
具体地,蓝牙智能密钥设备在有效应答数据前添加蓝牙3.0应答头,得到蓝牙3.0通讯应答,向移动终端返回蓝牙3.0通讯应答,返回步骤109。
本实施例中,蓝牙3.0通讯应答的格式为:
蓝牙3.0应答头 有效应答数据
9个字节
其中,蓝牙3.0应答头的格式为:
本实施例中,蓝牙3.0通讯应答中的命令字具体为“00 40”。
本实施例中,步骤111具体为:蓝牙智能密钥设备根据蓝牙3.0协议,组织包括有效应答数据的蓝牙3.0通讯应答,向移动终端返回蓝牙3.0通讯应答,返回步骤109。
本实施例中,蓝牙智能密钥设备打开蓝牙4.0广播通道或蓝牙3.0广播通道之前,还可以包括:蓝牙智能密钥设备加强自身配置。
本实施例中,蓝牙智能密钥设备加强自身配置,具体为:蓝牙智能密钥设备为提高自身的配置而设置的功能。可以具体包括:蓝牙智能密钥设备设置增加自身被移动终端发现的功能、设置增加自身的设备名称被移动终端发现的功能或者通过设置自身的扫描参数,来调节自身被移动终端发现的快慢。
本实施例中,蓝牙智能密钥设备中可以包括主控模块、蓝牙3.0模块和蓝牙4.0模块,蓝牙智能密钥设备初始化,具体可以通过主控模块向蓝牙3.0模块或蓝牙4.0模块,发送相应的初始化指令来实现。其中,初始化指令中还可以包括设置功能指令,相应地,蓝牙智能密钥设备加强自身配置,具体可以通过主控模块向蓝牙3.0模块或蓝牙4.0模块,发送相应的设置功能指令来实现。
例如,设置功能指令包括第一加强指令、第二加强指令和设置参数指令,当蓝牙智能密钥设备打开蓝牙3.0广播通道之前,蓝牙智能密钥设备可以通过主控芯片向蓝牙3.0模块发送第一加强指令“01 43 0C 01 01”和“01 47 0C 01 01”来实现加强设备被移动终端发现的功能;向蓝牙3.0模块发送第二加强指令“01 52 0C F1 00 0A 09 59 4B 36 36 3144 4D 32 30 03 02 01 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00”来实现增加自身的设备名称“59 4B 36 36 31 44 4D 32 30”被移动终端发现的功能;向蓝牙3.0模块发送配置参数指令“0E 00 00 E1 3D 07 00 1E 0C 04 00 04 12 00”来实现设置扫描参数中的蓝牙3.0广播和蓝牙4.0广播的交替时间的功能,从而缩短自身被移动终端发现的时间。
本实施例中,当蓝牙智能密钥设备设置加强设备被移动终端发现功能后,可以提升蓝牙智能密钥设备被移动终端发现的几率;当蓝牙智能密钥设备设置增加设备名称被移动终端发现功能,可以解决蓝牙智能密钥设备的设备名称无法被移动终端发现的技术问题;蓝牙智能密钥设备还可以通过设置扫描参数中的蓝牙3.0广播和蓝牙4.0广播的交替时间,来自实现调节自身被移动终端发现的,从而提高了蓝牙智能密钥设备的自身配置,完善了自身的产品性能。
其中,扫描参数中包括蓝牙3.0广播和蓝牙4.0广播的交替时间,还包括蓝牙3.0广播和蓝牙4.0广播各自的频道停留时间。
实施例2
本实施例提供了一种蓝牙智能密钥设备的工作方法,如图2-图3所示,包括:
步骤201:蓝牙智能密钥设备上电,初始化;
其中,蓝牙智能密钥设备初始化,包括:
步骤a1:蓝牙智能密钥设备初始化蓝牙4.0协议栈,初始化GATT(GenericAttribute Profile,通用属性协议)服务,创建UUID(Universally Unique Identifier,通用唯一识别码)服务并配置UUID服务参数;
其中,UUID服务参数包括UUID写属性和UUID通知属性。
例如,蓝牙智能密钥设备初始化蓝牙4.0协议栈,初始化GATT服务,创建UUID服务的标识为“4546415354460000C300010003005446”的UUID服务,配置UUID服务写属性和UUID服务通知属性。
步骤a2:蓝牙智能密钥设备配置包括蓝牙设备标识的蓝牙4.0广播参数,打开蓝牙4.0广播通道。
具体地,蓝牙智能密钥设备配置包括蓝牙设备标识和双模标识的蓝牙4.0广播参数,打开蓝牙4.0广播通道。
更加具体地,蓝牙智能密钥设备将蓝牙4.0广播参数中的第三个字节上的数据设置为双模标识,配置包括蓝牙设备标识和双模标识的蓝牙4.0广播参数,打开蓝牙4.0广播通道。
本实施例中,蓝牙设备标识为用来标识蓝牙智能密钥设备的信息,可以具体为蓝牙设备名称或UUID服务的标识。双模标识为蓝牙智能密钥设备支持双模通讯的标识信息,可以具体为“02”。
例如,蓝牙智能密钥设备将蓝牙4.0广播参数中的第三个字节上的数据设置为双模标识“02”,配置包括双模标识“02”和蓝牙设备名称“59 4B 36 36 31 44 4D 32 30”的蓝牙4.0广播参数“02 01 02 0B 09 59 4B 36 36 31 44 4D 32 30 41 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00”,打开蓝牙4.0广播通道。
又例如:蓝牙智能密钥设备将蓝牙4.0广播参数中的第三个字节上的数据设置为双模标识“02”,配置包括UUID服务的标识“4546415354460000C300010003005446”的广播参数“02 01 02 11 06 45 46 41 53 54 46 00 00 C3 00 01 00 01 00 54 46 00 00 00 0000 00 00 00 00 00”,打开蓝牙4.0广播通道。
本实施例中,蓝牙智能密钥设备配置包括蓝牙设备标识的蓝牙4.0广播参数,具体为:蓝牙智能密钥设备根据蓝牙4.0协议配置包括蓝牙设备标识的蓝牙4.0广播参数。
需说明的是,蓝牙4.0广播参数中的第四个字节上的数据为蓝牙设备标识和蓝牙设备标识句柄的数据长度,蓝牙4.0广播参数中的第五个字节上为蓝牙设备标识句柄。蓝牙设备标识从蓝牙设备广播数据的第六个字节开始。
步骤b1:蓝牙智能密钥设备初始化蓝牙3.0协议栈,配置包括蓝牙智能密钥设备的MAC(Media Access Control,介质访问控制)地址和/或蓝牙设备名称的蓝牙3.0广播参数,打开蓝牙3.0广播通道。
例如,蓝牙智能密钥设备初始化蓝牙3.0协议栈,配置包括蓝牙智能密钥设备的MAC地址“29 10 05 0D 00 00”和蓝牙设备名称“59 4B 36 36 31 44 4D 32 30”的蓝牙3.0广播参数,打开蓝牙3.0广播通道。
本实施例中,蓝牙智能密钥设备配置包括蓝牙智能密钥设备的MAC地址和/或蓝牙设备名称的蓝牙3.0广播参数,具体为:蓝牙智能密钥设备根据蓝牙3.0协议配置包括蓝牙智能密钥设备的MAC地址和/或蓝牙设备名称的蓝牙3.0广播参数。
步骤202:蓝牙智能密钥设备交替进行蓝牙3.0广播和蓝牙4.0广播,等待接收来自移动终端的连接请求;
具体地,蓝牙智能密钥设备交替地广播蓝牙3.0广播参数和蓝牙4.0广播参数,等待接收来自移动终端的连接请求。
更加具体地,蓝牙智能密钥设备第一预设时间内交替广播蓝牙3.0广播参数和蓝牙4.0广播参数,在第二预设时间内等待接收来自移动终端的连接请求。若在第二预设时间内没有接收到来自移动终端的连接请求,则关机;若在第二预设时间内接收到来自移动终端的连接请求,则执行步骤203。
例如:蓝牙智能密钥设备通过蓝牙3.0模块在第一预设频道上广播蓝牙3.0广播参数,经过第一预设时间后,在第二预设频道范围上广播蓝牙4.0广播参数,经过第一预设时间后,重新在第一预设频道上广播蓝牙3.0广播参数,并且在蓝牙智能密钥设备交替广播蓝牙3.0广播参数和蓝牙4.0广播参数的过程中,在第二预设时间内等待接收来自移动终端的连接请求。若在第二预设时间内没有接收到来自移动终端的连接请求,则关机;若在第二预设时间内接收到来自移动终端的连接请求,则执行步骤203。或者蓝牙智能密钥设备在第二预设频道范围上广播蓝牙4.0广播参数,经过第一预设时间后,在第一预设频道上广播蓝牙3.0广播参数,经过第一预设时间后,重新在第二预设频道范围上广播蓝牙4.0广播参数,并且在蓝牙智能密钥设备交替广播蓝牙3.0广播参数和蓝牙4.0广播参数的过程中,在第二预设时间内等待接收来自移动终端的连接请求。若在第二预设时间内没有接收到来自移动终端的连接请求,则关机;若在第二预设时间内接收到来自移动终端的连接请求,则执行步骤203。
本实施例中,第一预设时间为蓝牙协议栈中的预设交替时间。
本实施例中,蓝牙协议栈包括蓝牙3.0协议栈和蓝牙4.0协议栈。
本实施例中,优选地,第二预设时间为3分钟。
本实施例中,第一预设频道,具体为1个频道。第二预设频道范围具体可以包括3个频道,每个频道之间的间隔频率为2MHZ。第一预设频道可以和第二预设频道范围中的3个频道均不同;第一预设频道也可以和第二预设频道范围中的3个频道中的其中一个频道为相同频道。优选地,第一预设频道和第二预设频道范围中的3个频道均不同。
步骤203:当接收到来自移动终端的连接请求后,蓝牙智能密钥设备停止广播,蓝牙智能密钥设备判断连接请求的类型,当连接请求为蓝牙4.0连接请求时,执行步骤204;当连接请求为蓝牙3.0连接请求时,执行步骤215;
具体地,当接收到来自移动终端的连接请求后,蓝牙智能密钥设备停止广播,获取连接请求中的请求标识,当连接请求中的请求标识为第一预设标识时,判断连接请求为蓝牙4.0连接请求,执行步骤204;当连接请求中的请求标识为第二预设标识时,判断连接请求为蓝牙3.0连接请求,执行步骤215。
本实施例中,请求标识位于连接请求的第二字节上,第一预设标识为3E;第二预设标识为03。
更加具体地,当接收到来自移动终端的连接请求后,蓝牙智能密钥设备停止广播,获取连接请求中的第二个字节上的数据,并将其作为请求标识,当连接请求中的请求标识为第一预设标识时,判定连接请求为蓝牙4.0连接请求,执行步骤204;当连接请求中的请求标识为第二预设标识时,判定连接请求为蓝牙3.0连接请求,执行步骤215。
例如,当接收到来自移动终端的连接请求为“04 3E 0B 00 29 00 5F 21 A3 6010 00 01 00”,蓝牙智能密钥设备获取连接请求中的第二个字节上的数据为第二预设标识“3E”,则判定连接请求为蓝牙4.0连接请求,执行步骤204;当接收到来自移动终端的连接请求为“04 03 0B 00 29 00 5F 21 A3 60 10 00 01 00”,蓝牙智能密钥设备获取连接请求中的第二个字节上的数据为第二预设标识“03”,则判定连接请求为蓝牙3.0连接请求,执行步骤215。
步骤204:蓝牙智能密钥设备和移动终端建立蓝牙4.0连接。
具体地,蓝牙智能设备根据蓝牙4.0协议和移动终端建立蓝牙4.0连接。
步骤205:蓝牙智能密钥设备等待接收来自移动终端的蓝牙4.0通讯指令;
步骤206:当蓝牙智能密钥设备接收到来自移动终端的蓝牙4.0通讯指令后,解析蓝牙4.0通讯指令,判断蓝牙4.0通讯指令类型,当蓝牙4.0通讯指令为蓝牙4.0生成随机数指令时,执行步骤207;当蓝牙4.0通讯指令为蓝牙4.0生成密钥对指令时,执行步骤209;当蓝牙4.0通讯指令为蓝牙4.0获取公钥指令时,执行步骤211;当蓝牙4.0通讯指令为蓝牙4.0复核签名指令时,执行步骤213;
具体地,当蓝牙智能密钥设备接收到来自移动终端的蓝牙4.0通讯指令后,在蓝牙4.0通讯指令中获取蓝牙4.0指令头之后的数据,将获取到的数据作为获取蓝牙4.0通讯指令中的有效指令数据,根据有效指令数据判断蓝牙4.0通讯指令的类型,当根据有效指令数据判断蓝牙4.0通讯指令为蓝牙4.0生成随机数指令时,执行步骤207;当根据有效指令数据判断蓝牙4.0通讯指令为蓝牙4.0生成密钥对指令时,执行步骤209;当根据有效指令数据判断蓝牙4.0通讯指令为蓝牙4.0获取公钥指令时,执行步骤211;当根据有效指令数据判断蓝牙4.0通讯指令为蓝牙4.0复核签名指令时,执行步骤213;
例如:当蓝牙智能密钥设备获取到来自移动终端的蓝牙4.0通讯指令“1B 00 00D3C9 14 00 01 00 11 01 6F 06 00 00 00 00 02 00 00 00 00 00 84 00 00 08”,解析蓝牙4.0通讯指令,获取蓝牙4.0指令头之后的数据“6F 06 00 00 00 00 02 00 00 00 00 0084 00 00 08”,将获取到的数据作为获取蓝牙4.0通讯指令中的有效指令数据,根据有效指令数据判断蓝牙4.0通讯指令为蓝牙4.0生成随机数指令,执行步骤207。
本实施例中,解析蓝牙4.0通讯指令具体为:根据蓝牙4.0协议解析蓝牙4.0通讯指令。
步骤207:蓝牙智能密钥设备生成第一随机数,根据第一随机数组织第一有效应答数据;
例如,蓝牙智能密钥设备生成第一随机数“21 52 36 4A 8C CA 04DE”,根据第一随机数组织第一有效应答数据,得到的第一有效应答数据为“6F 09 00 00 00 00 02 0000 00 00 21 52 36 4A 8C CA 04 DE”。
步骤208:蓝牙智能密钥设备根据第一有效应答数据组织蓝牙4.0第一通讯应答,向移动终端返回蓝牙4.0第一通讯应答,返回步骤205;
具体地,蓝牙智能密钥设备在第一有效应答数据前添加蓝牙4.0应答头,得到蓝牙4.0第一通讯应答,向移动终端返回蓝牙4.0第一通讯应答,返回步骤205;
例如,蓝牙智能密钥设备在第一有效应答数据“6F 09 00 00 00 00 02 00 00 0000 21 52 36 4A 8C CA 04 DE”前添加蓝牙4.0应答头,“1E 00 00 00 52 17 00 01 00 1101”,得到的蓝牙4.0第一通讯应答为“1E 00 00 00 52 17 00 01 00 11 01 6F 09 00 0000 00 02 00 00 00 00 21 52 36 4A 8C CA 04 DE”,向移动终端返回蓝牙4.0第一通讯应答,返回步骤205。
其中,蓝牙4.0第一通讯应答中的第四和第五字节上的数据“00 52”为蓝牙4.0第一通讯应答中的命令字。
步骤208具体为:蓝牙智能密钥设备根据蓝牙4.0协议,组织包括第一有效应答数据的蓝牙4.0第一通讯应答,向移动终端返回蓝牙4.0第一通讯应答,返回步骤205。
步骤209:蓝牙智能密钥设备生成第一密钥对,组织第二有效应答数据;
步骤210:蓝牙智能密钥设备根据第二有效应答数据组织蓝牙4.0第二通讯应答,向移动终端返回蓝牙4.0第二通讯应答,返回步骤205;
具体地:蓝牙智能密钥设备根据蓝牙4.0协议,组织包括第二有效应答数据的蓝牙4.0第二通讯应答,向移动终端返回蓝牙4.0第二通讯应答,返回步骤205。
步骤211:蓝牙智能密钥设备根据第一密钥对中的公钥组织第三有效应答数据;
步骤212:蓝牙智能密钥设备根据第三有效应答数据组织蓝牙4.0第三通讯应答,向移动终端返回蓝牙4.0第三通讯应答,返回步骤205;
具体地:蓝牙智能密钥设备根据蓝牙4.0协议,组织包括第三有效应答数据的蓝牙4.0第三通讯应答,向移动终端返回蓝牙4.0第三通讯应答,返回步骤205。
步骤213:蓝牙智能密钥设备获取蓝牙4.0复核签名指令中的交易报文,根据交易报文获取哈希结果和关键信息,输出关键信息;当蓝牙智能密钥设备检测到确认信号后,使用第一密钥对中的私钥对哈希结果进行签名,得到签名结果,根据签名结果输出操作结果并根据签名结果组织第四有效应答数据;
步骤214:蓝牙智能密钥设备根据第四有效应答数据组织蓝牙4.0第四通讯应答,向移动终端返回蓝牙4.0第四通讯应答,返回步骤205。
具体地:蓝牙智能密钥设备根据蓝牙4.0协议,组织包括第四有效应答数据的蓝牙4.0第四通讯应答,向移动终端返回蓝牙4.0第四通讯应答,返回步骤205。
步骤215:蓝牙智能密钥设备和移动终端建立蓝牙3.0连接。
具体地,蓝牙智能设备根据蓝牙3.0协议和移动终端建立蓝牙4.0连接。
步骤216:蓝牙智能密钥设备等待接收来自移动终端的蓝牙3.0通讯指令;
步骤217:当蓝牙智能密钥设备接收到来自移动终端的蓝牙3.0通讯指令后,解析蓝牙3.0通讯指令,判断蓝牙3.0通讯指令类型,当蓝牙3.0通讯指令为蓝牙3.0生成随机数指令时,执行步骤218;当蓝牙3.0通讯指令为蓝牙3.0生成密钥对指令时,执行步骤220;,当蓝牙3.0通讯指令为蓝牙3.0获取公钥指令时,执行步骤222;当蓝牙3.0通讯指令为蓝牙3.0复核签名指令时,执行步骤224;
具体地,当蓝牙智能密钥设备接收到来自移动终端的蓝牙3.0通讯指令后,在蓝牙3.0通讯指令中获取蓝牙3.0指令头之后的数据,将获取到的数据作为获取蓝牙3.0通讯指令中的有效指令数据,根据有效指令数据判断蓝牙3.0通讯指令的类型,当根据有效指令数据判断蓝牙3.0通讯指令为蓝牙3.0生成随机数指令时,执行步骤218;当根据有效指令数据判断蓝牙3.0通讯指令为蓝牙3.0生成密钥对指令时,执行步骤220;当根据有效指令数据判断蓝牙3.0通讯指令为蓝牙3.0获取公钥指令时,执行步骤222;当根据有效指令数据判断蓝牙3.0通讯指令为蓝牙3.0复核签名指令时,执行步骤224;
例如:当蓝牙智能密钥设备获取到来自移动终端的蓝牙3.0通讯指令“1D 00 00E5 48 16 00 14 00 6F 06 00 00 00 00 02 00 00 00 00 00 84 00 00 08”,解析蓝牙3.0通讯指令,获取蓝牙3.0指令头之后的数据“6F 06 00 00 00 00 02 00 00 00 00 0084 00 00 08”,将获取到的数据作为获取蓝牙3.0有效指令数据中的有效指令数据,根据有效指令数据判断蓝牙3.0通讯指令为蓝牙3.0生成随机数指令,执行步骤218。
本实施例中,解析蓝牙3.0通讯指令具体为:根据蓝牙3.0协议解析蓝牙3.0通讯指令。
步骤218:蓝牙智能密钥设备生成第一随机数,根据第一随机数组织第一有效应答数据;
例如,蓝牙智能密钥设备生成第一随机数“21 52 36 4A 8C CA 04 DE”,根据第一随机数组织第一有效应答数据,得到的第一有效应答数据为“6F 09 00 00 00 00 02 0000 00 00 21 52 36 4A 8C CA 04 DE”。
步骤219:蓝牙智能密钥设备根据第一有效应答数据组织蓝牙3.0第一通讯应答,向移动终端返回蓝牙3.0第一通讯应答,返回步骤216;
具体地,蓝牙智能密钥设备在第一有效应答数据前添加蓝牙3.0应答头,得到蓝牙3.0第一通讯应答,向移动终端返回蓝牙3.0第一通讯应答,返回步骤216;
例如,蓝牙智能密钥设备在第一有效应答数据“6F 09 00 00 00 00 02 00 00 0000 21 52 36 4A 8C CA 04 DE”前添加蓝牙3.0应答头“02 11 01 17 00 13 00 40 00”,得到的蓝牙3.0第一通讯应答为“02 11 01 17 00 13 00 40 00 6F 09 00 00 00 00 02 0000 00 00 21 52 36 4A 8C CA 04 DE”,向移动终端返回蓝牙3.0第一通讯应答,返回步骤216。
其中,蓝牙3.0第一通讯应答中的第九和第八字节上的数据“00 40”为蓝牙3.0第一通讯应答中的命令字。
本实施例中,步骤219具体为:蓝牙智能密钥设备根据蓝牙3.0协议,组织包括第一有效应答数据的蓝牙3.0第一通讯应答,向移动终端返回蓝牙3.0第一通讯应答,返回步骤216。
步骤220:蓝牙智能密钥设备生成第一密钥对,组织第二有效应答数据;
步骤221:蓝牙智能密钥设备根据第二有效应答数据组织蓝牙3.0第二通讯应答,向移动终端返回蓝牙3.0第二通讯应答,返回步骤216;
具体地,蓝牙智能密钥设备根据蓝牙3.0协议,组织包括第二有效应答数据的蓝牙3.0第二通讯应答,向移动终端返回蓝牙3.0第二通讯应答,返回步骤216。
步骤222:蓝牙智能密钥设备根据第一密钥对中的公钥组织第三有效应答数据;
步骤223:蓝牙智能密钥设备根据第三有效应答数据组织蓝牙3.0第三通讯应答,向移动终端返回蓝牙3.0第三通讯应答,返回步骤216;
具体地,蓝牙智能密钥设备根据蓝牙3.0协议,组织包括第三有效应答数据的蓝牙3.0第三通讯应答,向移动终端返回蓝牙3.0第三通讯应答,返回步骤216。
步骤224:蓝牙智能密钥设备获取蓝牙3.0复核签名指令中的交易报文,根据交易报文获取哈希结果和关键信息,输出关键信息;当蓝牙智能密钥设备检测到确认信号后,使用第一密钥对中的私钥对哈希结果进行签名,得到签名结果,根据签名结果输出操作结果并根据签名结果组织第四有效应答数据;
步骤225:蓝牙智能密钥设备根据第四有效应答数据组织蓝牙3.0第四通讯应答,向移动终端返回蓝牙3.0第四通讯应答,返回步骤216。
具体地,蓝牙智能密钥设备根据蓝牙3.0协议,组织包括第四有效应答数据的蓝牙3.0第四通讯应答,向移动终端返回蓝牙3.0第四通讯应答,返回步骤216。
本实施例中,蓝牙智能密钥设备打开蓝牙4.0广播通道或蓝牙3.0广播通道之前,还可以包括:蓝牙智能密钥设备加强自身配置。
本实施例中,蓝牙智能密钥设备加强自身配置,具体为:蓝牙智能密钥设备为提高自身的配置而设置的功能。可以具体包括:蓝牙智能密钥设备设置增加自身被移动终端发现的功能、设置增加自身的设备名称被移动终端发现的功能或者通过设置自身的扫描参数,来调节自身被移动终端发现的快慢。
本实施例中,蓝牙智能密钥设备中可以包括主控模块、蓝牙3.0模块和蓝牙4.0模块,蓝牙智能密钥设备初始化,具体可以通过主控模块向蓝牙3.0模块或蓝牙4.0模块,发送相应的初始化指令来实现。其中,初始化指令中还可以包括设置功能指令,相应地,蓝牙智能密钥设备加强自身配置,具体可以通过主控模块向蓝牙3.0模块或蓝牙4.0模块,发送相应的设置功能指令来实现。
例如,设置功能指令包括第一加强指令、第二加强指令和设置参数指令,当蓝牙智能密钥设备打开蓝牙3.0广播通道之前,蓝牙智能密钥设备可以通过主控芯片向蓝牙3.0模块发送第一加强指令“01 43 0C 01 01”和“01 47 0C 01 01”来实现加强设备被移动终端发现的功能;向蓝牙3.0模块发送第二加强指令“01 52 0C F1 00 0A 09 59 4B 36 36 3144 4D 32 30 03 02 01 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00”来实现增加自身的设备名称“59 4B 36 36 31 44 4D 32 30”被移动终端发现的功能;向蓝牙3.0模块发送配置参数指令“0E 00 00 E1 3D 07 00 1E 0C 04 00 04 12 00”来实现设置扫描参数中的蓝牙3.0广播和蓝牙4.0广播的交替时间的功能,从而缩短自身被移动终端发现的时间。
本实施例中,当蓝牙智能密钥设备设置加强设备被移动终端发现功能后,可以提升蓝牙智能密钥设备被移动终端发现的几率;当蓝牙智能密钥设备设置增加设备名称被移动终端发现功能,可以解决蓝牙智能密钥设备的设备名称无法被移动终端发现的技术问题;蓝牙智能密钥设备还可以通过设置扫描参数中的蓝牙3.0广播和蓝牙4.0广播的交替时间,来自实现调节自身被移动终端发现的,从而提高了蓝牙智能密钥设备的自身配置,完善了自身的产品性能。
其中,扫描参数中包括蓝牙3.0广播和蓝牙4.0广播的交替时间,还包括蓝牙3.0广播和蓝牙4.0广播各自的频道停留时间。
实施例3
本实施例提供了一种蓝牙智能密钥设备的工作方法,如图3所示,包括:
步骤301:蓝牙智能密钥设备上电,初始化。
其中,蓝牙智能密钥设备初始化,包括:
步骤a1:蓝牙智能密钥设备初始化蓝牙4.0协议栈,初始化GATT(GenericAttribute Profile,通用属性协议)服务,创建UUID(Universally Unique Identifier,通用唯一识别码)服务并配置UUID服务参数;
其中,UUID服务参数包括UUID写属性和UUID通知属性。
例如,蓝牙智能密钥设备初始化蓝牙4.0协议栈,初始化GATT服务,创建UUID服务的标识为“4546415354460000C300010003005446”的UUID服务,配置UUID服务写属性和UUID服务通知属性。
步骤a2:蓝牙智能密钥设备配置包括蓝牙设备标识的蓝牙4.0广播参数,打开蓝牙4.0广播通道。
具体地,蓝牙智能密钥设备配置包括蓝牙设备标识和双模标识的蓝牙4.0广播参数,打开蓝牙4.0广播通道。
更加具体地,蓝牙智能密钥设备将蓝牙4.0广播参数中的第三个字节上的数据设置为双模标识,配置包括蓝牙设备标识和双模标识的蓝牙4.0广播参数,打开蓝牙4.0广播通道。
本实施例中,蓝牙设备标识为用来标识蓝牙智能密钥设备的信息,可以具体为蓝牙设备名称或UUID服务的标识。双模标识为蓝牙智能密钥设备支持双模通讯的标识信息,可以具体为“02”。
例如,蓝牙智能密钥设备将蓝牙4.0广播参数中的第三个字节上的数据设置为双模标识“02”,配置包括双模标识“02”和蓝牙设备名称“59 4B 36 36 31 44 4D 32 30”的蓝牙4.0广播参数“02 01 02 0B 09 59 4B 36 36 31 44 4D 32 30 41 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00”,打开蓝牙4.0广播通道。
又例如:蓝牙智能密钥设备向蓝牙4.0模块将蓝牙4.0广播参数中的第三个字节上的数据设置为双模标识“02”,配置包括UUID服务的标识“4546415354460000C300010003005446”的广播参数“02 01 02 11 06 45 46 41 53 54 46 00 00 C3 00 01 00 01 00 5446 00 00 00 00 00 00 00 00 00 00”,打开蓝牙4.0广播通道。
需说明的是,蓝牙4.0广播参数中的第四个字节上的数据为蓝牙设备标识和蓝牙设备标识句柄的数据长度,蓝牙4.0广播参数中的第五个字节上为蓝牙设备标识句柄。蓝牙设备标识从蓝牙设备广播数据的第六个字节开始。
本实施例中,蓝牙智能密钥设备配置包括蓝牙设备标识的蓝牙4.0广播参数,具体为:蓝牙智能密钥设备根据蓝牙4.0协议配置包括蓝牙设备标识的蓝牙4.0广播参数。
步骤b1:蓝牙智能密钥设备初始化蓝牙3.0协议栈,配置包括蓝牙智能密钥设备的MAC(Media Access Control,介质访问控制)地址和/或蓝牙设备名称的蓝牙3.0广播参数,打开蓝牙3.0广播通道。
例如,蓝牙智能密钥设备初始化蓝牙3.0协议栈,配置包括蓝牙智能密钥设备的MAC地址“29 10 05 0D 00 00”和蓝牙设备名称“59 4B 36 36 31 44 4D 32 30”的蓝牙3.0广播参数,打开蓝牙3.0广播通道。
本实施例中,蓝牙智能密钥设备配置包括蓝牙智能密钥设备的MAC地址和/或蓝牙设备名称的蓝牙3.0广播参数,具体为:蓝牙智能密钥设备根据蓝牙3.0协议配置包括蓝牙智能密钥设备的MAC地址和/或蓝牙设备名称的蓝牙3.0广播参数。
步骤302:蓝牙智能密钥设备判断广播类型,当广播类型为初始类型时,执行步骤303;当广播类型为3.0广播时,执行步骤313;当广播类型为4.0广播时,执行步骤315;
具体地,蓝牙智能密钥设备获取广播类型标识,当广播类型标识为第一预设值时,判定广播类型为初始类型,执行步骤303;当广播类型标识为第二预设值时,判定广播类型为3.0广播类型,执行步骤;当广播类型标识为第三预设值时,判定广播类型为4.0广播类型,执行步骤;
例如,第一预设值可以为0xFF;第二预设值为0x03;第三预设值为0x04。
优选地,蓝牙智能密钥在出厂时,将广播类型标识设置为第一预设值。需说明的是,当蓝牙智能密钥设备上电或者关机后,不会清除广播类型标识。
步骤303:蓝牙智能密钥设备交替进行蓝牙3.0广播和蓝牙4.0广播,等待接收来自移动终端的连接请求;
具体地,蓝牙智能密钥设备交替地广播蓝牙3.0广播参数和蓝牙4.0广播参数,等待接收来自移动终端的连接请求。
更加具体地,蓝牙智能密钥设备第一预设时间内交替广播蓝牙3.0广播参数和蓝牙4.0广播参数,在第二预设时间内等待接收来自移动终端的连接请求。若在第二预设时间内没有接收到来自移动终端的连接请求,则关机;若在第二预设时间内接收到来自移动终端的连接请求,则执行步骤303。
例如:蓝牙智能密钥设备通过蓝牙3.0模块在第一预设频道上广播蓝牙3.0广播参数,经过第一预设时间后,在第二预设频道范围上广播蓝牙4.0广播参数,经过第一预设时间后,重新在第一预设频道上广播蓝牙3.0广播参数,并且在蓝牙智能密钥设备交替广播蓝牙3.0广播参数和蓝牙4.0广播参数的过程中,在第二预设时间内等待接收来自移动终端的连接请求。若在第二预设时间内没有接收到来自移动终端的连接请求,则关机;若在第二预设时间内接收到来自移动终端的连接请求,则执行步骤303。或者蓝牙智能密钥设备通过蓝牙4.0模在第二预设频道范围上广播蓝牙4.0广播参数,经过第一预设时间后,在第一预设频道上广播蓝牙3.0广播参数,经过第一预设时间后,重新在第二预设频道范围上广播蓝牙4.0广播参数,并且在蓝牙智能密钥设备交替广播蓝牙3.0广播参数和蓝牙4.0广播参数的过程中,在第二预设时间内等待接收来自移动终端的连接请求。若在第二预设时间内没有接收到来自移动终端的连接请求,则关机;若在第二预设时间内接收到来自移动终端的连接请求,则执行步骤303。
本实施例中,第一预设时间为蓝牙协议栈中的预设交替时间。
本实施例中,蓝牙协议栈包括蓝牙3.0协议栈和蓝牙4.0协议栈。
本实施例中,优选地,第二预设时间为3分钟。
本实施例中,第一预设频道,具体为1个频道。第二预设频道范围具体可以包括3个频道,每个频道之间的间隔频率为2MHZ。第一预设频道可以和第二预设频道范围中的3个频道均不同;第一预设频道也可以和第二预设频道范围中的3个频道中的其中一个频道为相同频道。优选地,第一预设频道和第二预设频道范围中的3个频道均不同。
步骤304:当接收到来自移动终端的连接请求后,蓝牙智能密钥设备停止广播,蓝牙智能密钥设备判断连接请求的类型;当连接请求为蓝牙4.0连接请求时,执行步骤305;当连接请求为蓝牙3.0连接请求时,执行步骤309;
具体地,当接收到来自移动终端的连接请求后,蓝牙智能密钥设备获取连接请求中的请求标识,当连接请求中的请求标识为第一预设标识时,判定连接请求为蓝牙4.0连接请求,执行步骤305;当连接请求中的请求标识为第二预设标识时,判定连接请求为蓝牙3.0连接请求,执行步骤309。
本实施例中,请求标识位于连接请求的第二字节上,第一预设标识为3E;第二预设标识为03。
更加具体地,当接收到来自移动终端的连接请求后,蓝牙智能密钥设备将获取连接请求中的第二个字节上的数据,并将其作为请求标识,当连接请求中的请求标识为第一预设标识时,判定连接请求为蓝牙4.0连接请求,执行步骤304;当连接请求中的请求标识为第二预设标识时,判定连接请求为蓝牙3.0连接请求,执行步骤308。
例如,当接收到来自移动终端的连接请求为“04 3E 0B 00 29 00 5F 21 A3 6010 00 01 00”,蓝牙智能密钥设备获取连接请求中的第二个字节上的数据为第二预设标识“3E”,则判定连接请求为蓝牙4.0连接请求,执行步骤304;当接收到来自移动终端的连接请求为“04 03 0B 00 29 00 5F 21 A3 60 10 00 01 00”,蓝牙智能密钥设备获取连接请求中的第二个字节上的数据为第二预设标识“03”,则判定连接请求为蓝牙3.0连接请求,执行步骤309。
步骤305:蓝牙智能密钥设备和移动终端建立蓝牙4.0连接,将广播类型设置为4.0广播类型。
具体地,蓝牙智能密钥设备和移动终端建立蓝牙4.0连接,将广播类型标识设置为第三预设值。
其中,蓝牙智能密钥设备和移动终端建立蓝牙4.0连接,具体为:蓝牙智能设备根据蓝牙4.0协议和移动终端建立蓝牙4.0连接。
步骤306:蓝牙智能密钥设备等待接收来自移动终端的蓝牙4.0指令;当接收到来自移动终端的蓝牙4.0指令后,判断蓝牙4.0指令的类型,当蓝牙4.0指令为蓝牙4.0通讯指令后,执行步骤307;当蓝牙4.0指令为蓝牙4.0切换指令后,将广播类型设置为3.0广播类型,向移动终端返回蓝牙4.0切换模式应答后,关机。
具体地,当蓝牙智能密钥设备接收到来自移动终端的蓝牙4.0指令后,获取蓝牙4.0指令头之后的数据,并将其作为蓝牙4.0指令中的有效指令数据,根据有效指令数据判断蓝牙4.0指令的类型,当根据有效指令数据判断蓝牙4.0指令为蓝牙4.0通讯指令后,执行步骤307;当根据有效指令数据判断蓝牙4.0指令为蓝牙4.0切换模式指令后,将广播类型设置为3.0广播类型,向移动终端返回蓝牙4.0切换模式应答,关机。
本实施例中,蓝牙4.0指令的格式为:
蓝牙4.0指令头 有效指令数据
11个字节
其中,蓝牙4.0指令中的蓝牙4.0指令头的格式为:
本实施例中,蓝牙4.0指令中的命令字具体为“D3 C9”。
本实施例中,判断蓝牙4.0指令的类型,具体为:当蓝牙智能密钥设备接收到来自移动终端的蓝牙4.0指令后,根据蓝牙4.0协议获取蓝牙4.0指令中的有效指令数据,根据有效指令数据判断蓝牙4.0指令的类型。
本实施例中,向移动终端返回蓝牙4.0切换模式应答之前,还包括根据蓝牙4.0协议组织蓝牙4.0切换模式应答。
步骤307:蓝牙智能密钥设备根据蓝牙4.0通讯指令执行相应操作,组织有效应答数据;
本实施例中,蓝牙4.0通讯指令包括取蓝牙4.0随机数指令、蓝牙4.0生成密钥对指令、蓝牙4.0获取公钥指令和蓝牙4.0复核签名指令等。
例如,当蓝牙智能密钥设备根据有效指令数据判断蓝牙4.0指令为蓝牙4.0复核签名指令后,在蓝牙4.0复核签名指令中获取交易报文,根据交易报文获取哈希结果和关键信息,输出关键信息;当蓝牙智能密钥设备检测到确认信号后,使用用户私钥对哈希结果进行签名,得到签名结果,根据签名结果输出操作结果并根据签名结果组织有效应答数据。
步骤308:蓝牙智能密钥设备根据有效应答数据组织蓝牙4.0通讯应答,向移动终端返回蓝牙4.0通讯应答,返回步骤306。
具体地,蓝牙智能密钥设备在有效应答数据前添加蓝牙4.0应答头,得到蓝牙4.0通讯应答,向移动终端返回蓝牙4.0通讯应答,返回步骤306。
本实施例中,蓝牙4.0通讯应答的格式为:
蓝牙4.0应答头 有效应答数据
11个字节
其中,蓝牙4.0通讯应答中的蓝牙4.0应答头的格式为:
本实施例中,蓝牙4.0通讯应答中的命令字具体为“00 52”。
本实施例中,步骤308具体为:蓝牙智能密钥设备根据蓝牙4.0协议,组织包括有效应答数据的蓝牙4.0通讯应答,向移动终端返回蓝牙4.0通讯应答,返回步骤306。
步骤309:蓝牙智能密钥设备和移动终端建立蓝牙3.0连接,将广播类型设置为3.0广播类型。
具体地,蓝牙智能密钥设备和移动终端建立蓝牙3.0连接,将广播类型标识设置为第二预设值。
其中,蓝牙智能密钥设备和移动终端建立蓝牙3.0连接,具体为:蓝牙智能设备根据蓝牙3.0协议和移动终端建立蓝牙4.0连接。
步骤310:蓝牙智能密钥设备等待接收来自移动终端的蓝牙3.0指令;当接收到来自移动终端的蓝牙3.0指令后,判断蓝牙3.0指令的类型,当蓝牙3.0指令为蓝牙3.0通讯指令后,执行步骤311;当蓝牙3.0指令为蓝牙3.0切换指令后,将广播类型设置为4.0广播类型,向移动终端返回蓝牙3.0切换模式应答后,关机。
具体地,蓝牙智能密钥设备等待接收来自移动终端的蓝牙3.0指令;当蓝牙智能密钥设备接收到来自移动终端的蓝牙3.0指令后,解析蓝牙3.0指令,获取蓝牙3.0指令头之后的数据,并将其作为蓝牙3.0指令中的有效指令数据,根据有效指令数据判断蓝牙3.0指令的类型,当根据有效指令数据判断蓝牙3.0指令为蓝牙3.0通讯指令时,执行步骤311;当根据有效指令数据判断蓝牙3.0指令为蓝牙3.0切换模式指令时,将广播类型设置为4.0广播类型,向移动终端返回蓝牙3.0切换模式应答,关机。
本实施例中,蓝牙3.0指令的格式为:
蓝牙3.0指令头 有效指令数据
9个字节
其中,蓝牙3.0指令头的格式为:
本实施例中,蓝牙3.0指令中的命令字具体为“E5 49”。
本实施例中,判断蓝牙3.0指令的类型,具体为:当蓝牙智能密钥设备接收到来自移动终端的蓝牙3.0指令后,根据蓝牙3.0协议获取蓝牙3.0指令中的有效指令数据,根据有效指令数据判断蓝牙3.0指令的类型。
本实施例中,向移动终端返回蓝牙3.0切换模式应答之前,还包括根据蓝牙3.0协议组织蓝牙3.0切换模式应答。
步骤311:蓝牙智能密钥设备根据蓝牙3.0通讯指令执行相应操作,组织有效应答数据;
本实施例中,蓝牙3.0通讯指令包括取蓝牙3.0随机数指令、蓝牙3.0生成密钥对指令、蓝牙3.0获取公钥指令和蓝牙3.0复核签名指令等。
例如,当蓝牙智能密钥设备根据有效指令数据判断蓝牙3.0通讯指令为蓝牙3.0复核签名指令后,在蓝牙3.0复核签名指令中获取交易报文,根据交易报文获取哈希结果和关键信息,输出关键信息;当蓝牙智能密钥设备检测到确认信号后,使用用户私钥对哈希结果进行签名,得到签名结果,根据签名结果输出操作结果并根据签名结果组织有效应答数据。
步骤312:蓝牙智能密钥设备根据有效应答数据组织蓝牙3.0通讯应答,向移动终端返回蓝牙3.0通讯应答,返回步骤310。
具体地,蓝牙智能密钥设备在有效应答数据前添加蓝牙3.0应答头,得到蓝牙3.0通讯应答,向移动终端返回蓝牙3.0通讯应答,返回步骤310。
本实施例中,蓝牙3.0通讯应答的格式为:
蓝牙3.0应答头 有效应答数据
9个字节
其中,蓝牙3.0应答头的格式为:
本实施例中,蓝牙3.0通讯应答中的命令字具体为“00 40”。
本实施例中,步骤312具体为:蓝牙智能密钥设备根据蓝牙3.0协议,组织包括有效应答数据的蓝牙3.0通讯应答,向移动终端返回蓝牙3.0通讯应答,返回步骤310。
步骤313:蓝牙智能密钥设备进行蓝牙3.0广播,判断是否接收到来自移动终端的蓝牙3.0连接请求,如果是,则执行步骤314;否则,返回步骤303;
具体地,蓝牙智能密钥设备进行蓝牙3.0广播,判断是否在第三预设时间内接收到来自移动终端的蓝牙3.0连接请求,如果是,则执行步骤314;否则,返回步骤303;
更加具体地,蓝牙智能密钥设备进行蓝牙3.0广播,当在第三预设时间内接收到来自移动终端的连接请求后,获取连接请求中的请求标识,判断请求标识是否为第二预设标识,如果是,则判断是在第三预设时间内接收到来自移动终端的蓝牙3.0连接请,执行步骤314;否则,判断没有接收到来自移动终端的蓝牙3.0连接请,返回步骤303;当在第三预设时间内没有接收到来自移动终端的连接请求后,判断没有接收到来自移动终端的蓝牙3.0连接请,返回步骤303。
优选地,第三预设时间为1分钟。
步骤314:蓝牙智能密钥设备停止蓝牙3.0广播,和移动终端建立蓝牙3.0连接,返回步骤310;
具体地,蓝牙智能设备停止蓝牙3.0广播,根据蓝牙3.0协议和移动终端建立蓝牙3.0连接;返回步骤310。
步骤315:蓝牙智能密钥设备进行蓝牙4.0广播,判断是否接收到来自移动终端的蓝牙4.0连接请求,如果是,则执行步骤316;否则,返回步骤303;
具体地,蓝牙智能密钥设备进行蓝牙4.0广播,判断是否在第三预设时间内接收到来自移动终端的蓝牙4.0连接请求,如果是,则执行步骤316;否则,返回步骤303;
更加具体地,蓝牙智能密钥设备进行蓝牙4.0广播,当在第三预设时间内接收到来自移动终端的连接请求后,获取连接请求中的请求标识,判断请求标识是否为第二预设标识,如果是,则判断在第三预设时间内接收到来自移动终端的蓝牙4.0连接请,执行步骤316;否则,判断没有接收到来自移动终端的蓝牙4.0连接请,返回步骤303;当在第三预设时间内没有接收到来自移动终端的连接请求后,判断没有接收到来自移动终端的蓝牙4.0连接请,返回步骤303。
步骤316:蓝牙智能密钥设备停止蓝牙4.0广播,和移动终端建立蓝牙4.0连接,返回步骤306;
具体地,蓝牙智能设备停止蓝牙4.0广播,根据蓝牙4.0协议和移动终端建立蓝牙4.0连接;返回步骤306。
本实施例中,蓝牙智能密钥设备打开蓝牙4.0广播通道或蓝牙3.0广播通道之前,还可以包括:蓝牙智能密钥设备加强自身配置。
本实施例中,蓝牙智能密钥设备加强自身配置,具体为:蓝牙智能密钥设备为提高自身的配置而设置的功能。可以具体包括:蓝牙智能密钥设备设置增加自身被移动终端发现的功能、设置增加自身的设备名称被移动终端发现的功能或者通过设置自身的扫描参数,来调节自身被移动终端发现的快慢。
本实施例中,蓝牙智能密钥设备中可以包括主控模块、蓝牙3.0模块和蓝牙4.0模块,蓝牙智能密钥设备初始化,具体可以通过主控模块向蓝牙3.0模块或蓝牙4.0模块,发送相应的初始化指令来实现。其中,初始化指令中还可以包括设置功能指令,相应地,蓝牙智能密钥设备加强自身配置,具体可以通过主控模块向蓝牙3.0模块或蓝牙4.0模块,发送相应的设置功能指令来实现。
例如,设置功能指令包括第一加强指令、第二加强指令和设置参数指令,当蓝牙智能密钥设备打开蓝牙3.0广播通道之前,蓝牙智能密钥设备可以通过主控芯片向蓝牙3.0模块发送第一加强指令“01 43 0C 01 01”和“01 47 0C 01 01”来实现加强设备被移动终端发现的功能;向蓝牙3.0模块发送第二加强指令“01 52 0C F1 00 0A 09 59 4B 36 36 3144 4D 32 30 03 02 01 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00”来实现增加自身的设备名称“59 4B 36 36 31 44 4D 32 30”被移动终端发现的功能;向蓝牙3.0模块发送配置参数指令“0E 00 00 E1 3D 07 00 1E 0C 04 0004 12 00”来实现设置扫描参数中的蓝牙3.0广播和蓝牙4.0广播的交替时间的功能,从而缩短自身被移动终端发现的时间。
本实施例中,当蓝牙智能密钥设备设置加强设备被移动终端发现功能后,可以提升蓝牙智能密钥设备被移动终端发现的几率;当蓝牙智能密钥设备设置增加设备名称被移动终端发现功能,可以解决蓝牙智能密钥设备的设备名称无法被移动终端发现的技术问题;蓝牙智能密钥设备还可以通过设置扫描参数中的蓝牙3.0广播和蓝牙4.0广播的交替时间,来自实现调节自身被移动终端发现的,从而提高了蓝牙智能密钥设备的自身配置,完善了自身的产品性能。
其中,扫描参数中包括蓝牙3.0广播和蓝牙4.0广播的交替时间,还包括蓝牙3.0广播和蓝牙4.0广播各自的频道停留时间。
实施例4
本实施例提供了一种蓝牙智能密钥设备,如图5所示,包括:
初始化模块01、广播模块02、第一接收模块03、第一判断模块04、第一连接模块05、第二接收模块06、第一发送模块07、第二连接模块08、第三接收模块09、第二发送模块10;
初始化模块01,用于初始化;
广播模块02,用于当初始化模块01初始化后,交替进行蓝牙3.0广播和蓝牙4.0广播;以及当第一接收模块03接收到来自移动终端的连接请求后,停止广播;
第一判断模块04,用于判断第一接收模块03接收到的连接请求的类型;
第一判断模块04具体用于获取连接请求中的请求标识,当连接请求中的请求标识为第一预设标识时,判定连接请求为蓝牙4.0连接请求;当连接请求中的请求标识为第二预设标识时,判定连接请求为蓝牙3.0连接请求。
第一连接模块05,用于当第一判断模块04判定连接请求为蓝牙4.0连接请求时,和移动终端建立蓝牙4.0连接;
第二接收模块06,用于接收来自移动终端的蓝牙4.0通讯指令;
第二接收模块06,具体用于接收到来自移动终端的蓝牙4.0通讯指令后,从蓝牙4.0通讯指令中获取蓝牙4.0指令头之后的数据,并将其作为蓝牙4.0通讯指令中的有效指令数据,根据有效指令数据获取有效应答数据,在有效应答数据前添加蓝牙4.0应答头得到蓝牙4.0通讯应答;
第一发送模块07,用于向移动终端返回蓝牙4.0通讯应答;
第二连接模块08,用于当第一判断模块04判定连接请求为蓝牙3.0连接请求时,和移动终端建立蓝牙3.0连接;
第三接收模块09,用于接收来自移动终端的蓝牙3.0通讯指令;
第三接收模块09具体用于接收到来自移动终端的蓝牙3.0通讯指令后,从蓝牙3.0通讯指令中获取蓝牙3.0指令头之后的数据,并将其作为蓝牙3.0通讯指令中的有效指令数据,根据有效指令数据获取有效应答数据,在有效应答数据前添加蓝牙3.0应答头得到蓝牙3.0通讯应答,向移动终端返回蓝牙3.0通讯应答。
第二发送模块10,用于向移动终端返回蓝牙3.0通讯应答。
本实施例中,设备还可以包括:第一获取模块、第二判断模块、第三判断模块、第一设置模块和第二设置模块;广播模块02包括第一广播单元、第二广播单元、第三广播单元和第一停止单元;第一连接模块05包括第一连接单元和第二连接单元;第二连接模块08包括第三连接单元和第四连接单元;
第一获取模块,用于当广播模块02交替进行蓝牙3.0广播和蓝牙4.0广播之前,获取广播类型;
第一获取模块,具体用于当广播模块02交替进行蓝牙3.0广播和蓝牙4.0广播之前,获取广播类型标识,根据广播类型标识获取广播类型,当广播类型标识为第三预设值时,获取到广播类型为4.0广播类型;当广播类型标识为第二预设值时,获取到广播类型为3.0广播类型;当广播类型标识为第一预设值时,获取到广播类型为初始类型;
第一广播单元,用于当第一获取模块获取到广播类型为4.0广播类型时,进行蓝牙4.0广播;
第二判断模块,用于当第一广播单元进行蓝牙4.0广播后,判断是否接收到来自移动终端的蓝牙4.0连接请求;
第一停止单元,用于当第二判断模块判断为是后,停止蓝牙4.0广播;当第三判断模块判断为是后,停止蓝牙3.0广播;以及当第一接收模块03接收到来自移动终端的连接请求后,停止蓝牙3.0广播和蓝牙4.0交替广播;
第二广播单元,用于当第一获取模块获取到广播类型为3.0广播类型时,进行蓝牙3.0广播;
第三判断模块,用于当第二广播单元进行蓝牙3.0广播后,判断是否接收到来自移动终端的蓝牙3.0连接请求;
第三广播单元用于当第一获取模块获取到广播类型为初始类型或当第二判断模块判断为否后或当第三判断模块判断为否时,交替进行蓝牙3.0广播和蓝牙4.0广播;
第一连接单元,用于当第一判断模块04判定连接请求为蓝牙4.0连接请求时,和移动终端建立蓝牙4.0连接;
第二连接单元,用于当第一停止单元停止蓝牙4.0广播后,和移动终端建立蓝牙4.0连接;
第三连接单元,用于当第一判断模块04判定连接请求为蓝牙3.0连接请求时,和移动终端建立蓝牙3.0连接;
第四连接单元,用于当第一停止单元停止蓝牙3.0广播后,和移动终端建立蓝牙3.0连接;
第一设置模块,用于当第一连接单元和移动终端建立蓝牙4.0连接后,将广播类型设置为4.0广播类型;
第一设置模块具体用于当第一连接单元和移动终端建立蓝牙4.0连接后,将广播类型标识设置为第三预设值。
第二设置模块,用于当第三连接单元和移动终端建立蓝牙3.0连接后,将广播类型设置为3.0广播类型。
第二设置模块具体用于当第三连接单元和移动终端建立蓝牙3.0连接后,将广播类型标识设置为第二预设值。
本实施例中,设备还可以包括第三发送模块和第一关机模块;相应地:
第二接收模块06还用于接收来自移动终端的蓝牙4.0切换模式指令;第一设置模块,还用于当第二接收模块06接收到来自移动终端的蓝牙4.0切换模式指令后,将广播类型设置为3.0广播类型;第三发送模块,用于向移动终端返回蓝牙4.0切换模式应答;第一关机模块,用于第三发送模块向移动终端返回蓝牙4.0切换模式应答后,关机。
进一步地,第二接收模块06包括:第一接收单元、第一获取单元、第一判断单元、第二获取单元和第一组织单元;
第一接收单元,用于接收来自移动终端的蓝牙4.0指令;
第一获取单元,用于获取第一接收单元接收到的蓝牙4.0指令中的蓝牙4.0指令头之后的数据,并将其作为蓝牙4.0指令中的有效指令数据;
第一判断单元,用于根据有效指令数据判断蓝牙4.0指令的类型;
第二获取单元,用于当第一判断单元判断蓝牙4.0指令为蓝牙4.0通讯指令后,根据有效指令数据获取有效应答数据;
第一组织单元,用于在有效应答数据前添加蓝牙4.0应答头得到蓝牙4.0通讯应答;
第一发送模块07,具体用于向移动终端返回第一组织单元组织的蓝牙4.0通讯应答;
第一设置模块具体用于当第一连接单元和移动终端建立蓝牙4.0连接后,将广播类型设置为4.0广播类型;当第一判断单元判断蓝牙4.0指令为蓝牙4.0切换模式指令后,将广播类型设置为3.0广播类型。
本实施例中,设备还可以包括第四发送模块和第二关机模块;相应地:
第三接收模块09还用于接收来自移动终端的蓝牙3.0切换模式指令;第二设置模块,还用于当第三接收模块09接收到来自移动终端的蓝牙3.0切换模式指令后,将广播类型设置为4.0广播类型;第四发送模块,用于向移动终端返回蓝牙3.0切换模式应答;第二关机模块,用于当第四发送模块向移动终端返回蓝牙3.0切换模式应答后,关机。
进一步地,第三接收模块09包括:第二接收单元、第三获取单元、第二判断单元、第四获取单元和第二组织单元;
第二接收单元,用于接收来自移动终端的蓝牙3.0指令;
第三获取单元,用于获取第二接收单元接收到的蓝牙3.0指令中的蓝牙3.0指令头之后的数据,并将其作为蓝牙3.0指令中的有效指令数据;
第二判断单元,用于根据有效指令数据判断蓝牙3.0指令的类型;
第四获取单元,用于当第二判断单元判断蓝牙3.0指令为蓝牙3.0通讯指令后,根据有效指令数据获取有效应答数据;
第二组织单元,用于在有效应答数据前添加蓝牙3.0应答头得到蓝牙3.0通讯应答;
第二发送模块10,具体用于向移动终端返回第二组织单元组织的蓝牙3.0通讯应答;
第二设置模块具体用于当第三连接单元和移动终端建立蓝牙3.0连接后,将广播类型设置为3.0广播类型;当第二判断单元判断蓝牙3.0指令为蓝牙3.0切换模式指令后,将广播类型设置为4.0广播类型。
本实施例中,初始化模块01包括第一初始化单元、第一配置单元、第一打开通道单元、第二初始化单元、第二配置单元和第二打开通道单元;
第一初始化单元,用于初始化蓝牙4.0协议栈,初始化通用属性协议服务,创建UUID(Universally Unique Identifier,通用唯一识别码)服务并配置UUID服务参数;
第一配置单元,用于配置包括蓝牙设备标识的蓝牙4.0广播参数;
第一配置单元具体用于配置包括蓝牙智能密钥设备的蓝牙设备名称或UUID服务的标识的蓝牙4.0广播参数;
本实施例中,蓝牙4.0广播参数中还包括双模标识。
第一打开通道单元,用于打开蓝牙4.0广播通道;
第二初始化单元,用于初始化蓝牙3.0协议栈;
第二配置单元,用于配置包括蓝牙设备标识的蓝牙3.0广播参数;
第二配置单元,具体用于配置包括蓝牙智能密钥设备的蓝牙设备名称和/或蓝牙智能密钥设备的MAC(Media Access Control,介质访问控制)地址的蓝牙3.0广播参数。
第二打开通道单元,用于打开蓝牙3.0广播通道;
广播模块02具体用于交替地广播蓝牙3.0广播参数和蓝牙4.0广播参数;以及当第一接收模块03接收到来自移动终端的连接请求后,停止广播蓝牙3.0广播参数和蓝牙4.0广播参数。
进一步地,设备中还可以包括加强模块;
加强模块,用于加强自身配置。
本实施例中,加强模块具体为:为提高蓝牙智能密钥设备自身的配置的功能模块。加强模块可以具体用于:设置增加自身被移动终端发现的功能、设置增加自身的设备名称被移动终端发现的功能或者通过设置自身的扫描参数,来调节自身被移动终端发现的快慢等。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (24)

1.一种蓝牙智能密钥设备的工作方法,其特征在于,包括:
步骤s1:蓝牙智能密钥设备初始化;
步骤s2:所述蓝牙密钥设备交替进行蓝牙3.0广播和蓝牙4.0广播;当接收到来自移动终端的连接请求后,停止广播,判断所述连接请求的类型,当所述连接请求为蓝牙4.0连接请求时,执行步骤s3;当所述连接请求为蓝牙3.0连接请求时,执行步骤s5;
步骤s3:所述蓝牙智能密钥设备和所述移动终端建立蓝牙4.0连接;
步骤s4:当所述蓝牙智能密钥设备接收到来自所述移动终端的蓝牙4.0通讯指令后,向所述移动终端返回蓝牙4.0通讯应答,返回步骤s4;
步骤s5:所述蓝牙智能密钥设备和所述移动终端建立蓝牙3.0连接;
步骤s6:当所述蓝牙智能密钥设备接收到来自所述移动终端的蓝牙3.0通讯指令后,向所述移动终端返回蓝牙3.0通讯应答,返回步骤s6;
步骤s4具体为:当所述蓝牙智能密钥设备接收到来自所述移动终端的蓝牙4.0通讯指令后,从所述蓝牙4.0通讯指令中获取蓝牙4.0指令头之后的数据,并将其作为蓝牙4.0通讯指令中的有效指令数据,根据所述有效指令数据获取有效应答数据,在所述有效应答数据前添加蓝牙4.0应答头得到蓝牙4.0通讯应答,向所述移动终端返回所述蓝牙4.0通讯应答,返回步骤s4;
步骤s6具体为:当所述蓝牙智能密钥设备接收到来自所述移动终端的蓝牙3.0通讯指令后,从所述蓝牙3.0通讯指令中获取蓝牙3.0指令头之后的数据,并将其作为蓝牙通讯3.0指令中的有效指令数据,根据所述有效指令数据获取有效应答数据,在所述有效应答数据前添加蓝牙3.0应答头得到蓝牙3.0通讯应答,向所述移动终端返回蓝牙3.0通讯应答,返回步骤s6;
所述蓝牙4.0通讯指令包括:蓝牙4.0复核签名指令;所述步骤s4包括:当所述蓝牙智能密钥设备接收到来自所述移动终端的蓝牙4.0复核签名指令后,获取所述蓝牙4.0复核签名指令中的交易报文,根据所述交易报文获取哈希结果和关键信息,输出所述关键信息;当所述蓝牙智能密钥设备检测到确认信号后,使用第一密钥对中的私钥对所述哈希结果进行签名,得到签名结果,根据所述签名结果输出操作结果并根据所述签名结果组织有效应答数据,在所述有效应答数据前添加蓝牙4.0应答头得到蓝牙4.0通讯应答,向所述移动终端返回所述蓝牙4.0通讯应答,返回步骤s4;
所述蓝牙3.0通讯指令包括:蓝牙3.0复核签名指令;所述步骤s6包括:蓝牙智能密钥设备接收到来自所述移动终端的蓝牙3.0复核签名指令后,获取蓝牙3.0复核签名指令中的交易报文,根据交易报文获取哈希结果和关键信息,输出关键信息;当蓝牙智能密钥设备检测到确认信号后,使用第一密钥对中的私钥对哈希结果进行签名,得到签名结果,根据签名结果输出操作结果并根据签名结果组织有效应答数据,在所述有效应答数据前添加蓝牙3.0应答头得到蓝牙3.0通讯应答,向所述移动终端返回蓝牙3.0通讯应答,返回步骤s6。
2.根据权利要求1所述的方法,其特征在于,所述步骤s2之前还包括:
步骤a0:所述蓝牙智能密钥设备获取广播类型,当所述广播类型为4.0广播类型时,执行步骤a1;当所述广播类型为3.0广播类型时,执行步骤a2;当所述广播类型为初始类型时,执行步骤s2;
步骤a1:所述蓝牙智能密钥设备进行蓝牙4.0广播,判断是否接收到来自所述移动终端的蓝牙4.0连接请求,如果是,则停止蓝牙4.0广播,和所述移动终端建立蓝牙4.0连接,执行步骤s4;否则,执行步骤s2;
步骤a2:所述蓝牙智能密钥设备进行蓝牙3.0广播,判断是否接收到来自所述移动终端的蓝牙3.0连接请求,如果是,则停止蓝牙3.0广播,和所述移动终端建立蓝牙3.0连接,执行步骤s6;否则,执行步骤s2;
所述步骤s3中还包括:所述蓝牙智能密钥设备将所述广播类型设置为4.0广播类型;
所述步骤s5中还包括:所述蓝牙智能密钥设备将所述广播类型设置为3.0广播类型。
3.根据权利要求2所述的方法,其特征在于,所述步骤s4中还包括:当所述蓝牙智能密钥设备接收到来自所述移动终端的蓝牙4.0切换模式指令后,将所述广播类型设置为3.0广播类型,向所述移动终端返回蓝牙4.0切换模式应答,关机。
4.根据权利要求3所述的方法,其特征在于,所述步骤s4具体为:所述蓝牙智能密钥设备等待接收来自所述移动终端的蓝牙4.0指令;当所述蓝牙智能密钥设备接收到来自所述移动终端的蓝牙4.0指令后,从所述蓝牙4.0指令中获取蓝牙4.0指令头之后的数据,并将其作为蓝牙4.0指令中的有效指令数据,根据所述有效指令数据判断所述蓝牙4.0指令的类型,当根据所述有效指令数据判断所述蓝牙4.0指令为蓝牙4.0通讯指令后,根据所述有效指令数据获取有效应答数据,在所述有效应答数据前添加蓝牙4.0应答头得到蓝牙4.0通讯应答,向所述移动终端返回所述蓝牙4.0通讯应答,返回步骤s4;当根据有效指令数据判断所述蓝牙4.0指令为蓝牙4.0切换模式指令后,将所述广播类型设置为3.0广播类型,向所述移动终端返回蓝牙4.0切换模式应答,关机。
5.根据权利要求2所述的方法,其特征在于,所述步骤s6中还包括:当所述蓝牙智能密钥设备接收到来自所述移动终端的蓝牙3.0切换模式指令后,将所述广播类型设置为4.0广播类型,向所述移动终端返回蓝牙3.0切换模式应答,关机。
6.根据权利要求5所述的方法,其特征在于,所述步骤s6具体为:所述蓝牙智能密钥设备等待接收来自所述移动终端的蓝牙3.0指令;当所述蓝牙智能密钥设备接收到来自所述移动终端的蓝牙3.0指令后,从所述蓝牙3.0指令中获取蓝牙3.0指令头之后的数据,并将其作为蓝牙3.0指令中的有效指令数据,根据所述有效指令数据判断所述蓝牙3.0指令的类型,当根据所述有效指令数据判断所述蓝牙3.0指令为蓝牙3.0通讯指令后,根据所述有效指令数据获取有效应答数据,在所述有效应答数据前添加蓝牙3.0应答头得到蓝牙3.0通讯应答,向所述移动终端返回所述蓝牙3.0通讯应答,返回步骤s6;当根据有效指令数据判断所述蓝牙3.0指令为蓝牙3.0切换模式指令后,将所述广播类型设置为4.0广播类型,向所述移动终端返回蓝牙3.0切换模式应答,关机。
7.根据权利要求2所述的方法,其特征在于,所述步骤a0具体为:所述蓝牙智能设备获取广播类型标识,根据所述广播类型标识获取所述广播类型,当所述广播类型标识为第三预设值时,获取到所述广播类型为4.0广播类型,执行步骤a1;当所述广播类型标识为第二预设值时,获取到所述广播类型为3.0广播类型时,执行步骤a2;当所述广播类型标识为第一预设值时,获取到所述广播类型为初始类型,执行步骤s2;
所述将广播类型设置为4.0广播类型,具体为:将所述广播类型标识设置为所述第三预设值;
所述将广播类型设置为3.0广播类型,具体为:将所述广播类型标识设置为所述第二预设值。
8.根据权利要求1所述的方法,其特征在于,所述步骤s1具体包括:
所述蓝牙智能密钥设备初始化蓝牙4.0协议栈,初始化通用属性协议服务,创建UUID服务并配置UUID服务参数;配置包括蓝牙设备标识的蓝牙4.0广播参数,打开蓝牙4.0广播通道;
所述蓝牙智能密钥设备初始化蓝牙3.0协议栈,配置包括蓝牙设备标识的蓝牙3.0广播参数,打开蓝牙3.0广播通道;
所述蓝牙密钥设备交替进行蓝牙3.0广播和蓝牙4.0广播,具体为:所述蓝牙智能密钥设备交替地广播所述蓝牙3.0广播参数和所述蓝牙4.0广播参数。
9.根据权利要求8所述的方法,其特征在于,所述蓝牙4.0广播参数中还包括双模标识。
10.根据权利要求8所述的方法,其特征在于,所述配置包括蓝牙设备标识的蓝牙4.0广播参数,具体为:配置包括所述蓝牙智能密钥设备的蓝牙设备名称或所述UUID服务的标识的蓝牙4.0广播参数;
所述配置包括蓝牙设备标识的蓝牙3.0广播参数,具体为:配置包括所述蓝牙智能密钥设备的蓝牙设备名称和/或所述蓝牙智能密钥设备的MAC地址的蓝牙3.0广播参数。
11.根据权利要求8所述的方法,其特征在于,所述打开蓝牙4.0广播通道或打开蓝牙3.0广播通道之前,还包括:加强自身配置。
12.根据权利要求1所述的方法,其特征在于,所述判断所述连接请求的类型,具体为:所述蓝牙智能密钥设备获取所述连接请求中的请求标识,当所述连接请求中的请求标识为第一预设标识时,判定所述连接请求为蓝牙4.0连接请求;当所述连接请求中的请求标识为第二预设标识时,判定连接请求为蓝牙3.0连接请求。
13.一种蓝牙智能密钥设备,其特征在于,包括:初始化模块、广播模块、第一接收模块、第一判断模块、第一连接模块、第二接收模块、第一发送模块、第二连接模块、第三接收模块、第二发送模块;
所述初始化模块,用于初始化;
所述广播模块,用于当所述初始化模块初始化后,交替进行蓝牙3.0广播和蓝牙4.0广播;以及当所述第一接收模块接收到来自移动终端的连接请求后,停止广播;
所述第一判断模块,用于判断所述第一接收模块接收到的连接请求的类型;
所述第一连接模块,用于当所述第一判断模块判定所述连接请求为蓝牙4.0连接请求时,和所述移动终端建立蓝牙4.0连接;
所述第二接收模块,用于接收来自所述移动终端的蓝牙4.0通讯指令;
所述第一发送模块,用于向所述移动终端返回蓝牙4.0通讯应答;
所述第二连接模块,用于当所述第一判断模块判定所述连接请求为蓝牙3.0连接请求时,和所述移动终端建立蓝牙3.0连接;
所述第三接收模块,用于接收来自所述移动终端的蓝牙3.0通讯指令;
所述第二发送模块,用于向所述移动终端返回蓝牙3.0通讯应答;
所述第二接收模块,具体用于接收到来自所述移动终端的蓝牙4.0通讯指令后,从所述蓝牙4.0通讯指令中获取蓝牙4.0指令头之后的数据,并将其作为蓝牙4.0通讯指令中的有效指令数据,根据所述有效指令数据获取有效应答数据,在所述有效应答数据前添加蓝牙4.0应答头得到蓝牙4.0通讯应答;
所述第三接收模块具体用于接收到来自所述移动终端的蓝牙3.0通讯指令后,从所述蓝牙3.0通讯指令中获取蓝牙3.0指令头之后的数据,并将其作为蓝牙3.0通讯指令中的有效指令数据,根据所述有效指令数据获取有效应答数据,在所述有效应答数据前添加蓝牙3.0应答头得到蓝牙3.0通讯应答,向所述移动终端返回蓝牙3.0通讯应答;
所述蓝牙4.0通讯指令包括:蓝牙4.0复核签名指令;所述第二接收模块,具体用于接收到来自所述移动终端的蓝牙4.0复核签名指令后,获取所述蓝牙4.0复核签名指令中的交易报文,根据所述交易报文获取哈希结果和关键信息,输出所述关键信息;当所述蓝牙智能密钥设备检测到确认信号后,使用第一密钥对中的私钥对所述哈希结果进行签名,得到签名结果,根据所述签名结果输出操作结果并根据所述签名结果组织有效应答数据,在所述有效应答数据前添加蓝牙4.0应答头得到蓝牙4.0通讯应答,向所述移动终端返回所述蓝牙4.0通讯应答
所述蓝牙3.0通讯指令包括:蓝牙3.0复核签名指令;所述第三接收模块,具体用于接收到来自所述移动终端的蓝牙3.0复核签名指令后,获取蓝牙3.0复核签名指令中的交易报文,根据交易报文获取哈希结果和关键信息,输出关键信息;当蓝牙智能密钥设备检测到确认信号后,使用第一密钥对中的私钥对哈希结果进行签名,得到签名结果,根据签名结果输出操作结果并根据签名结果组织有效应答数据,在所述有效应答数据前添加蓝牙3.0应答头得到蓝牙3.0通讯应答,向所述移动终端返回蓝牙3.0通讯应答。
14.根据权利要求13所述的设备,其特征在于,还包括:第一获取模块、第二判断模块、第三判断模块、第一设置模块和第二设置模块;所述广播模块包括第一广播单元、第二广播单元、第三广播单元和第一停止单元;所述第一连接模块包括第一连接单元和第二连接单元;所述第二连接模块包括第三连接单元和第四连接单元;
所述第一获取模块,用于当所述广播模块交替进行蓝牙3.0广播和蓝牙4.0广播之前,获取广播类型;
所述第一广播单元,用于当所述第一获取模块获取到所述广播类型为4.0广播类型时,进行蓝牙4.0广播;
所述第二判断模块,用于当所述第一广播单元进行蓝牙4.0广播后,判断是否接收到来自所述移动终端的蓝牙4.0连接请求;
所述第一停止单元,用于当所述第二判断模块判断为是后,停止蓝牙4.0广播;当所述第三判断模块判断为是后,停止蓝牙3.0广播;以及当所述第一接收模块接收到来自移动终端的连接请求后,停止蓝牙3.0广播和蓝牙4.0交替广播;
所述第二广播单元,用于当所述第一获取模块获取到所述广播类型为3.0广播类型时,进行蓝牙3.0广播;
所述第三判断模块,用于当所述第二广播单元进行蓝牙3.0广播后,判断是否接收到来自移动终端的蓝牙3.0连接请求;
所述第三广播单元,用于当所述第一获取模块获取到所述广播类型为初始类型或当所述第二判断模块判断为否或当所述第三判断模块判断为否时,交替进行蓝牙3.0广播和蓝牙4.0广播;
所述第一连接单元,用于当所述第一判断模块判定所述连接请求为蓝牙4.0连接请求时,和所述移动终端建立蓝牙4.0连接;
所述第二连接单元,用于当所述第一停止单元停止蓝牙4.0广播后,和所述移动终端建立蓝牙4.0连接;
所述第三连接单元,用于当所述第一判断模块判定所述连接请求为蓝牙3.0连接请求时,和所述移动终端建立蓝牙3.0连接;
所述第四连接单元,用于当所述第一停止单元停止蓝牙3.0广播后,和所述移动终端建立蓝牙3.0连接;
所述第一设置模块,用于当所述第一连接单元和所述移动终端建立蓝牙4.0连接后,将所述广播类型设置为4.0广播类型;
所述第二设置模块,用于当所述第三连接单元和所述移动终端建立蓝牙3.0连接后,将所述广播类型设置为3.0广播类型。
15.根据权利要求14所述的设备,其特征在于,还包括第三发送模块和第一关机模块;
所述第二接收模块还用于接收来自所述移动终端的蓝牙4.0切换模式指令;
所述第一设置模块,还用于当所述第二接收模块接收到来自所述移动终端的蓝牙4.0切换模式指令后,将所述广播类型设置为3.0广播类型;
所述第三发送模块,用于向所述移动终端返回蓝牙4.0切换模式应答;
所述第一关机模块,用于当所述第三发送模块向所述移动终端返回蓝牙4.0切换模式应答后,关机。
16.根据权利要求15所述的设备,其特征在于,所述第二接收模块包括:第一接收单元、第一获取单元、第一判断单元、第二获取单元和第一组织单元;
所述第一接收单元,用于接收来自所述移动终端的蓝牙4.0指令;
所述第一获取单元,用于获取所述第一接收单元接收到的所述蓝牙4.0指令中蓝牙4.0指令头之后的数据,并将其作为蓝牙4.0指令中的有效指令数据;
所述第一判断单元,用于根据所述有效指令数据判断所述蓝牙4.0指令的类型;
所述第二获取单元,用于当所述第一判断单元判断所述蓝牙4.0指令为蓝牙4.0通讯指令后,根据所述有效指令数据获取有效应答数据;
所述第一组织单元,用于在所述有效应答数据前添加蓝牙4.0应答头得到蓝牙4.0通讯应答;
所述第一发送模块,具体用于向所述移动终端返回所述第一组织单元组织的蓝牙4.0通讯应答;
所述第一设置模块具体用于当所述第一连接单元和所述移动终端建立蓝牙4.0连接后,将所述广播类型设置为4.0广播类型;当所述第一判断单元判断所述蓝牙4.0指令为蓝牙4.0切换模式指令后,将所述广播类型设置为3.0广播类型。
17.根据权利要求14所述的设备,其特征在于,还包括第四发送模块和第二关机模块;
所述第三接收模块还用于接收来自所述移动终端的蓝牙3.0切换模式指令;
第二设置模块,还用于当所述第三接收模块接收到来自所述移动终端的蓝牙3.0切换模式指令后,将所述广播类型设置为4.0广播类型;
所述第四发送模块,用于向所述移动终端返回蓝牙3.0切换模式应答;
所述第二关机模块,用于当所述第四发送模块向所述移动终端返回蓝牙3.0切换模式应答后,关机。
18.根据权利要求17所述的设备,其特征在于,所述第三接收模块包括:第二接收单元、第三获取单元、第二判断单元、第四获取单元和第二组织单元;
所述第二接收单元,用于接收来自所述移动终端的蓝牙3.0指令;
所述第三获取单元,用于获取所述第二接收单元接收到的所述蓝牙3.0指令中的蓝牙3.0指令头之后的数据,并将其作为蓝牙3.0指令中的有效指令数据;
所述第二判断单元,用于根据所述有效指令数据判断所述蓝牙3.0指令的类型;
所述第四获取单元,用于当所述第二判断单元判断所述蓝牙3.0指令为蓝牙3.0通讯指令后,根据所述有效指令数据获取有效应答数据;
所述第二组织单元,用于在所述有效应答数据前添加蓝牙3.0应答头得到蓝牙3.0通讯应答;
所述第二发送模块,具体用于向所述移动终端返回所述第二组织单元组织的蓝牙3.0通讯应答;
所述第二设置模块具体用于当所述第三连接单元和所述移动终端建立蓝牙3.0连接后,将所述广播类型设置为3.0广播类型;当所述第二判断单元判断所述蓝牙3.0指令为蓝牙3.0切换模式指令后,将所述广播类型设置为4.0广播类型。
19.根据权利要求14所述的设备,其特征在于,所述第一获取模块,具体用于当所述广播模块交替进行蓝牙3.0广播和蓝牙4.0广播之前,获取广播类型标识,根据所述广播类型标识获取所述广播类型,当所述广播类型标识为第三预设值时,获取到所述广播类型为4.0广播类型;当所述广播类型标识为第二预设值时,获取到所述广播类型为3.0广播类型;当所述广播类型标识为第一预设值时,获取到所述广播类型为初始类型;
所述第一设置模块具体用于当所述第一连接单元和所述移动终端建立蓝牙4.0连接后,将所述广播类型标识设置为所述第三预设值;
所述第二设置模块具体用于当所述第三连接单元和所述移动终端建立蓝牙3.0连接后,将所述广播类型标识设置为所述第二预设值。
20.根据权利要求13所述的设备,其特征在于,所述初始化模块包括第一初始化单元、第一配置单元、第一打开通道单元、第二初始化单元、第二配置单元和第二打开通道单元;
所述第一初始化单元,用于初始化蓝牙4.0协议栈,初始化通用属性协议服务,创建UUID服务并配置UUID服务参数;
所述第一配置单元,用于配置包括蓝牙设备标识的蓝牙4.0广播参数;
第一打开通道单元,用于打开蓝牙4.0广播通道;
第二初始化单元,用于初始化蓝牙3.0协议栈;
所述第二配置单元,用于配置包括蓝牙设备标识的蓝牙3.0广播参数;
所述第二打开通道单元,用于打开蓝牙3.0广播通道;
所述广播模块具体用于交替地广播所述蓝牙3.0广播参数和所述蓝牙4.0广播参数;以及当所述第一接收模块接收到来自移动终端的连接请求后,停止广播所述蓝牙3.0广播参数和所述蓝牙4.0广播参数。
21.根据权利要求20所述的设备,其特征在于,所述蓝牙4.0广播参数中还包括双模标识。
22.根据权利要求20所述的设备,其特征在于,所述第一配置单元具体用于配置包括所述蓝牙智能密钥设备的蓝牙设备名称或所述UUID服务的标识的蓝牙4.0广播参数;
所述第二配置单元,具体用于配置包括所述蓝牙智能密钥设备的蓝牙设备名称和/或所述蓝牙智能密钥设备的MAC地址的蓝牙3.0广播参数。
23.根据权利要求20所述的设备,其特征在于,还包括加强模块;
所述加强模块,用于加强自身的配置。
24.根据权利要求13所述的设备,其特征在于,所述第一判断模块具体用于获取所述连接请求中的请求标识,当所述连接请求中的请求标识为第一预设标识时,判定所述连接请求为蓝牙4.0连接请求;当所述连接请求中的请求标识为第二预设标识时,判定连接请求为蓝牙3.0连接请求。
CN201610453114.0A 2016-06-21 2016-06-21 一种蓝牙智能密钥设备及其工作方法 Active CN105956852B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610453114.0A CN105956852B (zh) 2016-06-21 2016-06-21 一种蓝牙智能密钥设备及其工作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610453114.0A CN105956852B (zh) 2016-06-21 2016-06-21 一种蓝牙智能密钥设备及其工作方法

Publications (2)

Publication Number Publication Date
CN105956852A CN105956852A (zh) 2016-09-21
CN105956852B true CN105956852B (zh) 2019-11-15

Family

ID=56906083

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610453114.0A Active CN105956852B (zh) 2016-06-21 2016-06-21 一种蓝牙智能密钥设备及其工作方法

Country Status (1)

Country Link
CN (1) CN105956852B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107465994B (zh) * 2017-06-13 2020-06-30 天地融科技股份有限公司 一种业务数据传输方法、装置及系统
CN107318079A (zh) * 2017-06-23 2017-11-03 南京悦控智能科技有限公司 一种基于ios操作系统的蓝牙设备通用控制方法
CN109446786B (zh) * 2018-12-25 2021-01-01 飞天诚信科技股份有限公司 一种智能密钥装置的工作方法及智能密钥装置
CN110730441B (zh) * 2019-10-18 2021-07-02 飞天诚信科技股份有限公司 一种蓝牙设备及其工作方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8406735B2 (en) * 2008-06-24 2013-03-26 Stmicroelectronics S.R.L. Method for pairing electronic equipment in a wireless network system
WO2014200895A1 (en) * 2013-06-11 2014-12-18 Mad Catz Interactive, Inc. Systems and methods for transmitting data using selected transmission technology from among other transmission technologies
CN103916166B (zh) * 2014-03-31 2016-04-27 尚奇浩康(北京)科技有限公司 一种蓝牙数据传输方法及蓝牙装置
CN105246029B (zh) * 2015-10-23 2018-07-24 上海斐讯数据通信技术有限公司 一种蓝牙通信方法、系统以及一种电子设备
CN105516896A (zh) * 2015-12-02 2016-04-20 惠州Tcl移动通信有限公司 一种可穿戴设备与移动终端的蓝牙互连方法及系统

Also Published As

Publication number Publication date
CN105956852A (zh) 2016-09-21

Similar Documents

Publication Publication Date Title
CN105956852B (zh) 一种蓝牙智能密钥设备及其工作方法
US10952059B2 (en) Method and system for wireless extender onboarding
CN109417758B (zh) 一种蓝牙连接的方法及终端
CN105050083B (zh) 一种智能设备的网络配置方法及系统
EP2798887B1 (en) Low cost proximity pairing mechanism in wireless personal area networks
CN104010309B (zh) 接入点和终端之间建立连接的方法及终端
CN105208583B (zh) 一种配置智能家电入网的方法、装置及智能设备
CN107409145A (zh) 通过中间设备进行本地控制的方法、装置以及计算机程序产品
CN107231606A (zh) WiFi入网方法、智能硬件设备及电子终端
US9241260B2 (en) Key sharing method and system for machine type communication (MTC) server
CN109391634A (zh) 建立通信的方法、终端和计算机可读存储介质
CN112399394A (zh) 一种基于蓝牙通讯的智能电能表系统及其通信方法
CN103747535B (zh) 一种capwap控制通道的恢复方法、装置及系统
CN106413037A (zh) 用于物联设备的网络接入方法、装置、设备及移动终端
CN107094293A (zh) 一种获取WiFi终端真实MAC地址的装置及方法
WO2006043446A1 (ja) 通信装置および認証方法
CN109525939B (zh) 一种nvr和ipc自动配对方法和无线视频监控自动组网系统
CN109981360B (zh) 物联网设备站点开通方法、装置、系统及存储介质
CN105792109A (zh) 一种基于linux系统的蓝牙设备连接处理方法及系统
CN105940720B (zh) 一种触发注册机协议交互的方法、接入点、站点
CN108307374A (zh) 无线音频设备设置
CN112399393A (zh) 一种智能电能表装置及其通信方法
CN102457850B (zh) 一种接入点及无线工作站安全连接接入点的方法
CN110022374A (zh) 基于物联网的网络连接方法、装置、通信设备及存储介质
CN109756878A (zh) 一种蓝牙配对方法及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant