CN110572804A - 蓝牙通信认证请求、接收及通信方法、移动端、设备端 - Google Patents

蓝牙通信认证请求、接收及通信方法、移动端、设备端 Download PDF

Info

Publication number
CN110572804A
CN110572804A CN201910794167.2A CN201910794167A CN110572804A CN 110572804 A CN110572804 A CN 110572804A CN 201910794167 A CN201910794167 A CN 201910794167A CN 110572804 A CN110572804 A CN 110572804A
Authority
CN
China
Prior art keywords
key
communication
user
aes
data
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
CN201910794167.2A
Other languages
English (en)
Other versions
CN110572804B (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.)
Jinan University
Original Assignee
Jinan University
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 Jinan University filed Critical Jinan University
Priority to CN201910794167.2A priority Critical patent/CN110572804B/zh
Publication of CN110572804A publication Critical patent/CN110572804A/zh
Application granted granted Critical
Publication of CN110572804B publication Critical patent/CN110572804B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)

Abstract

本发明公开了蓝牙通信认证请求、接收及通信方法、移动端、设备端,所述蓝牙通信认证请求及通信方法,包括步骤:与设备端进行蓝牙扫描,建立link层上的通信链路;获取设备端公钥;进行ECDH密钥交换,生成ECDH Based AES Key对称密钥K;获取用户密码,发送用户密码至设备端;在设备端通过用户认证后,与设备端进行数据通信,通信完成后断开连接;所述发送用户密码、数据通信过程,均采用AES加密信道加密、解密传输,AES加密函数的密钥为对称秘钥K。本发明将通信双方的密钥存储在应用层,并在应用层上通过ECDH密钥交换技术进行检测和验证,保证了密钥是存储在一个受保护的线程中,数据不会被其他恶意程序访问。

Description

蓝牙通信认证请求、接收及通信方法、移动端、设备端
技术领域
本发明涉及蓝牙加密通信应用领域,特别涉及一种蓝牙通信认证请求、接收及通信方法、移动端、设备端。
背景技术
然而随着蓝牙标准的不断制定和蓝牙技术不断普及,使用蓝牙通信协议的设备数量日益增多,而由于蓝牙协议其规则庞大、架构复杂、功能模块繁多,导致出现了较多的安全问题。近年来针对蓝牙的安全漏洞事件也频繁被曝出,给用户和企业带来了严重的经济损失。
攻击者可获取蓝牙用户所拥有的私有文件,绕过将应用数据与其他应用隔离的操作***;可获取手机命令执行权限,并使手机上的蓝牙服务崩溃。通过恶意软件对蓝牙协议通信的修改,可直接窃取手机端与设备端之间通信数据明文。
发明内容
本发明的目的在于提供蓝牙通信认证请求、接收及通信方法、移动端、设备端,将通信双方的密钥存储在应用层,并在应用层上通过ECDH密钥交换技术进行检测和验证,保证了密钥是存储在一个受保护的线程中,数据不会被其他恶意程序访问。本发明的目的通过以下的技术方案实现:
蓝牙通信认证请求及通信方法,包括步骤:
与设备端进行蓝牙扫描,建立link层上的通信链路;
获取设备端公钥;
进行ECDH密钥交换,生成ECDH Based AES Key对称密钥K;
获取用户密码,发送用户密码至设备端;
在设备端通过用户认证后,与设备端进行数据通信,通信完成后断开连接;
所述发送用户密码、数据通信过程,均采用AES加密信道加密、解密传输,AES加密函数的密钥为对称秘钥K。
优选的,获取设备端公钥后,具体生成对称秘钥K包括步骤:
生成第二公钥A1和第二私钥a1;
使用第一私钥a对第二公钥A1签名,获得第一签名值;
将第一签名值、第一公钥A、第二公钥A1发送给设备端,接收设备端发送的第二签名值及第四公钥B1;
结合第一公钥和第二公钥对第二签名值进行验证,确保第二签名值是来自该设备端;
使用第二私钥a1和第四公钥B1生成ECDH Based AES Key对称密钥K。
更进一步的,所述生成第二公钥A1包括步骤:
获取设备端椭圆曲线参数和位于椭圆曲线上的基点G;
生成第二私钥a1,并生成第二公钥A1=a1*G;
所述生成对称密钥K=a1*B1。
优选的,所述获取设备端公钥是通过扫描设备端二维码,通过二维码信息获取设备端的公钥及椭圆曲线参数。
优选的,基于用户密码生成master key;并将master key分割成user Based AESkey(私人加密通道密钥)和HMAC key(校验密钥);user Based AES key用于作为AES加密函数的加密密钥对数据加密、解密;HMAC key用于验证数据的完整性。
更进一步的,在发送通信数据给设备端时,HMAC密文验证的具体步骤如下:
利用哈希算法,将HMAC key和通信数据作为输入,通过HMAC运算和哈希函数产生一个固定长度的消息认证码MAC作为输出;
将消息认证码MAC加入到通信数据中进行传输;
获取设备端的验证消息,若验证显示数据通信中消息完整性遭到破坏则重新发送消息。
更进一步的,所述MAC通过如下计算产生:
MAC=HMAC(k,m)=H((k XOR opad)+H((k XORipad)+m))
其中,H是哈希函数,K是Hmac的密钥,m是需要验证的消息,ipad是内部填充函数,opad是外部填充函数,XOR是异或操作。
更进一步的,在接收设备端的通信数据时,HMAC密文验证的具体步骤如下:
接收设备端通信数据和其中的消息认证码MAC';
基于消息认证码验证通信数据的完整性,若通信数据不完整则发送提醒消息至设备端,提示数据通信中消息完整性遭到破坏。
由于不能彻底杜绝攻击者的信道监听,因此通过密文验证预防攻击者对密文进行修改,从而避免影响消息的完整性。
更进一步的,使用挑战握手协议校验User Based AES Key,具体步骤为:
通过AES加密信道在随机间隔时间发送challenge(挑战)消息;
获取设备端的应答;
比较计算的哈希值及设备端的应答,判断是否存在重放攻击;
经过一定随机时间间隔,手机端再次发送challenge消息并接收设备端的二次应答,确保User Based AES Key的有效性。
蓝牙通信认证接收及通信方法,包括步骤:
与移动端进行蓝牙扫描,建立link层上的通信链路;
与移动端进行ECDH密钥交换,生成ECDHBased AES Key对称密钥K';
获取用户密码并与用户信息库比对认证,认证通过后发送提醒至移动端;
与移动端进行数据通信,通信完成后断开连接;
所述获取用户密码、数据通信过程,均采用AES加密信道加密、解密传输,AES解密函数的密钥为对称秘钥K'。
优选的,生成对称秘钥K'包括步骤:
生成第四私钥b1和第四公钥B1;
使用第三私钥b对第四公钥B1签名,获得第二签名值;
将第二签名值、第四公钥B1、发送给移动端,接受移动端发送的第一签名值、第一公钥A、第二公钥A1;
结合第三公钥B和第四公钥B1对第一签名值进行验证,确保第一签名值时来自该移动端;
使用第四私钥b1和第二公钥A1生成对称密钥K'。
更进一步的,所述生成第四公钥B1包括步骤:
获取设备端椭圆曲线参数和位于椭圆曲线上的基点G;
生成第四私钥b1,并生成第四公钥B1=b1*G;
所述生成对称密钥K'=b1*A1。
优选的,基于用户密码生成master key';并将master key'分割成user BasedAESkey'(私人加密通道密钥)和HMAC key'(校验密钥);user Based AES key'用于作为AES加密函数的加密密钥对数据加密、解密;HMAC key'用于验证数据的完整性。
更进一步的,在发送通信数据给移动端时,HMAC密文验证的具体步骤如下:
利用哈希算法,将HMAC key'和通信数据作为输入,通过HMAC运算和哈希函数产生一个固定长度的消息认证码MAC'作为输出;
将消息认证码MAC'加入到数据通信中进行传输;
获取移动端的验证消息,若验证显示数据通信中消息完整性遭到破坏则重新发送消息。
更进一步的,在接收移动端的通信数据时,HMAC密文验证的具体步骤如下:
接收移动端通信数据和其中的消息认证码MAC;
基于消息认证码验证通信数据的完整性,若通信数据不完整则发送提醒消息至移动端,提示数据通信中消息完整性遭到破坏。
更进一步的,使用挑战握手协议校验User Based AES Key,具体步骤为:
接收移动端通过AES加密信道在随机间隔时间发送的challenge(挑战)消息;
根据challenge消息计算哈希值,向移动端发送应答;
经过一定随机时间间隔,设备端再次接收challenge消息,二次计算哈希值和比较应答,确保User Based AES Key的有效性。
移动端,包括:
第一应用层,具体包括交互单元、逻辑计算单元;
所述交互单元,包括图像采集器、用户操作图形界面,所述图像采集器用于获取设备端公钥;所述用户操作图形界面用于获取用户密码;
所述逻辑计算单元,用于生成ECDH Based AES Key对称密钥K;
第一链路层,内置低功耗蓝牙通信协议,用于与设备端进行蓝牙扫描,建立link层上的通信链路;进行ECDH密钥交换;加密、传输用户密码,加密、传输、解密通信数据,加密传输过程采用AES加密信道。
设备端,包括:
第二应用层,包括存储有用户密码的用户信息库,所述第二应用层用于比对认证用户密码;生成ECDHBased AES Key对称密钥K';
第二链路层,包括加密芯片和蓝牙集成芯片,所述蓝牙集成芯片用于与移动端进行蓝牙扫描,建立link层上的通信链路;所述加密芯片用于传输、解密用户密码;加密、传输、解密通信数据,加密传输过程采用AES加密信道;与移动端进行ECDH密钥交换。
本发明与现有技术相比,具有如下优点和有益效果:
1、本发明将通信双方的密钥存储在应用层,并在应用层上通过ECDH密钥交换技术进行检测和验证,保证了密钥是存储在一个受保护的线程中,数据不会被其他恶意程序访问。
2、本发明支持多用户管理的访问控制机制,在通信方法中加入了多用户认证管理机制,通过设置用户密码,在应用层级上识别不同的用户身份并进行相应的访问控制,每个设备的用户只能查看和修改自己账号中的数据,无法对其他用户的数据进行操作,保证了数据的安全性,防止用户设备被恶意控制后,发生对嵌入式设备的攻击行为。
3、本发明不依赖于自身硬件计算的加密解密硬件交互机制。开发并应用附加的计算芯片到嵌入式设备上,与嵌入式处理机进行串口通信,从而在硬件层面上形成一套不依赖自身有限的硬件计算资源来进行加解密的硬件交互机制,提高了加解密的运算效率。
4、本发明使用了ECDH密钥磋商算法,保证了生成对称密钥过程的安全可靠,中间人无法获取密钥内容,保障了密钥的安全性。而采用较为流行的AES对称密钥加密方式也确保数据的安全性,提高加解密的速度,降低蓝牙设备之间的通信延迟,在较低的成本下实现设备之间数据的安全传输。
5、本发明将公钥与椭圆参数存储于设备二维码上,可以在ECDH密钥交换中保证了设备链接的准确性,与公钥来源的可靠性。移动端直接获取了设备端的公钥,无需通过其他媒介进行传递,降低了被攻击者捕获的风险
6、本发明通过移动端与设备端的挑战握手协议验证,可以排除重放攻击的存在性,并可校验基于设定密码生成的User Based AES Key。
7、本发明在充分考虑在低功耗低成本的同时,能尽量规避蓝牙协议本身缺陷说带来的安全威胁。
附图说明
图1是本发明实施例1蓝牙通信认证请求、接收及通信方法的过程图。
图2是本发明实施例2由移动端和设备端构成的整体通信***示意图。
图3是本发明实施例1采用AES加密算法对数据加、解密示意图。
图4是本发明实施例1蓝牙通信方法流程图。
其中,1—智能手机;2—ATBTLC1000蓝牙集成芯片;3—ATECC608A加密芯片;4—usb接线柱;5—Microchip Technology CryptoAuthenticationTMSOIC XPRO芯片;6—二维码。
具体实施方式
为了更好的理解本发明的技术方案,下面结合附图详细描述本发明提供的实施例,但本发明的实施方式不限于此。
蓝牙的链路层,具有天然的设计漏洞。由于设计或是成本原因,部分设备没有配备屏幕和按键,往往只能使用Just Work(直接工作)配对模式,这种工作模式无法抵御任何形式的中间人攻击。因此本实施例结合移动端交互单元,使得用户可通过选择配对方进行蓝牙配对。
另外,由于物联网的多源异构,导致协议栈层漏洞频发。如2017年6月,Android的安全公告中列出了新发现的蓝牙App信息泄露漏洞CVE-2017-0639,该漏洞允许攻击者获取蓝牙用户所拥有的私有文件,绕过了将应用数据与其他应用隔离的操作***防护功能。2017年7月,CVE-2017-0781漏洞被曝出,攻击者可以根据Android蓝牙栈的该漏洞远程获取Android手机的命令执行权限,并使手机上的蓝牙服务崩溃。同样是2017年7月,CVE-2017-0783漏洞被曝出,这是一个Android信息泄露安全漏洞,攻击者可以通过构建PAN自组网络,并设置自己为NAP,进而设置DHCP服务器构造恶意中继,进行中间人攻击,窃取蓝牙通信的数据。2017年9月,物联网安全公司发现了蓝牙协议中的严重0day漏洞,攻击者可以利用该漏洞进行发起远程攻击,不需要任何用户交互就能接管设备、传播恶意程序甚至进行中间人攻击,接入设备的网络并获取设备的关键数据,并且该漏洞具有蠕虫传播特性,能够迅速进行传播,造成更大的危害。在2017年10月曝光了一个蓝牙协议中的信息泄露漏洞CVE-2017-1000250,通过蓝牙SDP服务里面的数据处理函数漏洞,能够获取敏感的信息。2018年5月,被命名为CVE-2018-5383的蓝牙漏洞被曝光,该漏洞会影响各大厂商制造的蓝牙设备,例如苹果、Broadcom、英特尔和Qualcomm,允许未经授权的近距离蓝牙设备截获用户的蓝牙连接并进行窃取数据。只要攻击者在近距离使用未经授权的蓝牙设备就可以对目标发起中间人攻击,截获设备所使用的蓝牙连接密钥。
同时,遭受攻击的不仅仅是协议层,应用层也饱受各种攻击。2018年9月,有研究指出使用Packet Sniffer软件能够对包括蓝牙挂锁在内的多类蓝牙设备进行嗅探、分析其通信数据并且重放信号,假如通信双方没有进行认证加密,就可以看到手机与BLE设备之间的连接后的通信数据明文;而BlueZ软件可以快速地扫描周围低功耗设备并与设备进行通信,通过编写自动化脚本,能够实现批量扫描和攻击;一款基于bluepy python库的BLE蓝牙扫描器Bleah可以通过命令行的方式自动扫描附近的BLE设备,并且提供了多种攻击方式,能够窃取蓝牙设备的通信信息。
综上,蓝牙安全漏洞主要是发生在应用层和链路层。在链路层上,由于设计或是成本原因,部分设备没有配备屏幕和按键,往往只能使用Just Work(直接工作)配对模式,且由于物联网设备的多样性,物联网协议栈多源异构,经常出现各种漏洞,蓝牙蓝牙指令的来源不经过认证,导致攻击者往往通过其他途径获取到设备的蓝牙指令后,采用中间人攻击的方式即可直接控制设备。在应用层上,一些使用蓝牙协议通信的应用由于防护不足,容易被恶意软件修改,造成信息泄露。因此保证低功耗蓝牙通信的安全成为了我们亟需解决的问题。
实施例1
如图4所示,本实施例公开了一种蓝牙通信方法,包括移动端(本实施例选用智能手机)的认证请求、设备端的认证接收和二者之间的数据通信。
该实施方式具体步骤如下:
步骤1、建立link链路,手机端扫描设备端的二维码获取公钥。这里的二维码包含有设备端的第二公钥信息,通过手机端摄像头(即图像采集器)扫描位于蓝牙设备端上的二维码可以直接获取。
步骤2、进行ECDH密钥交换:
步骤2.1、此处交换包括两部分:
1、手机端的密钥(包括公钥和私钥),私钥则是通过编写代码,嵌入到了手机端的app中,存在本地的存储器中。这时的手机端的公钥为A,私钥为a;
2、设备端的密钥已经提前烧录进入ATECC608A加密芯片中,该器件采用基于硬件的超安全加密密钥存储,以及各类加密对策(不包括与软件漏洞相关的潜在后门)。最重要的是该芯片具有不可读不可写的不可逆转特性,也就是说密钥一旦烧录进去,任何攻击者都无法篡改或者获得该密钥,极大的增加了安全性。这时设备端的公钥为B,私钥b。
步骤2.2、密钥交换,可以细分为以下步骤:
①手机端获取设备端椭圆曲线参数和位于椭圆曲线上的基点G;
生成第二私钥a1,并生成第二公钥A1=a1*G;
使用第一私钥a对第二公钥A1签名,获得第一签名值;
将第一签名值、第一公钥A、第二公钥A1发送给设备端,接收设备端发送的第二签名值及第四公钥B1;
结合第一公钥和第二公钥对第二签名值进行验证,确保第二签名值是来自该设备端;
使用第二私钥a1和第四公钥B1生成ECDH Based AES Key对称密钥K=a1*B1。
②设备端获取已设定好的椭圆曲线参数和位于椭圆曲线上的基点G;
生成第四私钥b1,并生成第四公钥B1=b1*G;
使用第三私钥b对第四公钥B1签名,获得第二签名值;
将第二签名值、第四公钥B1、发送给移动端,接受移动端发送的第一签名值、第一公钥A、第二公钥A1;
结合第三公钥B和第四公钥B1对第一签名值进行验证,确保第一签名值时来自该移动端;
使用第四私钥b1和第二公钥A1生成对称密钥K'=b1*A1=K。
步骤①与步骤②无时间先后顺序。由此手机端和设备端可在中间人不知情的情况下得到对称秘钥K。而该对称密钥用于AES加密。
步骤3、建立第一AES加密信道。为了保护步骤4中手机端的用户密码能够顺利传到设备端,建立手机端与设备端之间的AES加密信道,所用到的密钥是完成ECDH密钥交换后产生的双方都有的ECDH Based AES Key(即K和K')。加密解密算法如图3所示,设AES加密函数为E,则C=E(K,P),其中P为通信数据明文,C为密文。将明文P和密钥K作为加密函数的参数输入,可得到密文C。而密文C到达接收端后再利用解密函数E'进行解密,解密函数为P'=E'(K',C),将密文C和密钥K'作为解密函数的参数输入,即可得到明文P'=P。由此可以加密传输masterkey和通信数据。
步骤4、用户设定密码。移动端根据用户设定的密码采用哈希函数生成32位masterkey;移动端发送用户密码至设备端,设备端根据用户名识别用户,通过用户密码确认使用该设备的是用户本身,并通过哈希函数生成相同的32位master key',此时设备端建立第二AES加密信道,用于传输通信数据。通过用户设置的密码进行用户安全管理和权限管理,将安全性能提升到用户层次,也就是说对于同一个服务端,可以有多个手机端,蓝牙用户各自有自己的账户和权限,不同用户的加密和通讯不一样,保护了设备安全性。
步骤5、分割用户密码。移动端将master key分割成user Based AES key(私人加密通道密钥)和HMAC key(校验密钥)。设备端将master key'分割成user Based AES key'和HMAC key'(由于移动端和设备端各自生成的密钥实质相等,各自的实施步骤也一致,故本实施例重点对移动端的步骤进行叙述,设备端同理)。这里user Based AES key用于ASE数据加密解密;而HMAC key用于验证数据的完整性。由于不能彻底杜绝攻击者的信道监听,预防攻击者对密文进行修改影响消息的完整性,因此还需要采取HMAC密文验证,如果消息完整性遭到破坏,则会提醒移动端重新发送。在发送通信数据给设备端时,HMAC密文验证的具体步骤如下:
利用哈希算法,将HMAC key和通信数据作为输入,通过HMAC运算和哈希函数产生一个固定长度的消息认证码MAC作为输出;
MAC=HMAC(k,m)=H((k XOR opad)+H((k XORipad)+m))
其中,H是哈希函数,K是Hmac的密钥,m是需要验证的消息,ipad是内部填充函数,opad是外部填充函数,XOR是异或操作。
将消息认证码MAC加入到通信数据末尾发送给设备端;
设备端基于消息认证码验证通信数据的完整性,若通信数据不完整则发送提醒消息至移动端,提示数据通信中消息完整性遭到破坏,移动端则重新发送消息。
所述验证通信数据完整性步骤为:
设备端接收到消息后,去掉通信数据末尾附加的MAC,利用HMAC key'对去掉附加MAC的通信数据,再进行HMAC计算得到MAC'(这里的计算步骤与移动端MAC的计算步骤相同),判断MAC和MAC'是否相同,由于哈希计算的唯一性,如果MAC不同原消息必将不同,所以如果消息不完整则不可能计算出来的MAC'与原MAC相等,以此验证了消息的完整性。
步骤6、使用挑战握手协议校验步骤5生成的User Based AES Key。挑战握手协议具体实现:
①手机作为认证端使用AES加密信道在随机间隔时间发送challenge(挑战)消息;
②嵌入式设备端接受challenge消息,并根据challenge消息计算哈希值,并返回应答给移动端;
③手机端根据自己计算的哈希值来检验应答,判断是否存在重放攻击;
④经过一定随机时间间隔,手机端再次发送“challenge”消息,重复步骤,确保User Based AES Key的有效性。
所述检验应答的具体过程:challenge消息是由手机加密传输给设备端,设备端接收到challenge消息后,将challenge消息放入到哈希函数计算出唯一的哈希值H1,并将这个哈希值传送给手机端,手机端接收到设备端的哈希值H1后,再将challenge消息自己用哈希函数计算出哈希值H2,判断H1和H2是否相同。若二者相同则表现没有问题,应答成功。因为在这个应答过程是基于ASE加密的,所以一当User Based AES Key失效,则无法应答成功。
步骤7、手机端和设备端通过解密通信校验完整性的方式进行通信。发送方用UserBased AES Key/User Based AES Key'作为密钥用AES进行加密,并利用HMAC key/HMACkey'通过HMAC计算出消息认证码附加与消息上进行传输,接收方则利用消息认证码保证数据的完整性,并用User Based AES Key'/UserBased AES Key作为密钥用ASE进行解密。
步骤8、用户密码设置。用户重复步骤④-⑦,完成密码设置。
如果a1或者b1泄露,双方可以通过步骤1-8重新生成新的密钥。
步骤9、手机端与设备端进行数据通信,通信完成后断开连接。
实施例2
如图2所示,本实施例是由移动端和设备端构成的一个整体通信***的一个范例,所述移动端在本实施例中为智能手机,包括第一应用层和第一链路层:
第一应用层,具体包括交互单元、逻辑计算单元;
所述交互单元,包括图像采集器,本实施例为手机自带的摄像头;还包括用户操作图形界面,本实施例为手机APP操作界面,所述图像采集器用于获取设备端公钥;所述用户操作图形界面用于获取用户密码;
所述逻辑计算单元,用于生成ECDH Based AES Key对称密钥K;
所述逻辑计算单元还用于分割master key为user Based AES key和HMAC key;执行挑战握手协议校验User Based AES Key。
第一链路层,内置低功耗蓝牙通信协议,用于与设备端进行蓝牙扫描,建立link层上的通信链路;进行ECDH密钥交换;加密、传输用户密码,加密、传输、解密通信数据,加密传输过程采用AES加密信道;进行HMAC密文验证以检验数据完整性。
设备端,包括:
第二应用层,包括存储有包括用户密码在内的用户信息库,所述第二应用层用于比对认证用户密码以识别、确认用户;生成ECDHBased AES Key对称密钥K';生成、分割master key。
第二链路层,包括ATECC608A加密芯片和ATBTLC1000蓝牙集成芯片,加密芯片和蓝牙集成芯片集成于Microchip Technology CryptoAuthenticationTMSOIC XPRO芯片上;Microchip Technology CryptoAuthenticationTMSOIC XPRO芯片,具有功能很强的存储区保护功能,对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间;
所述ATECC608A加密芯片是设备端核心加密处理芯片,该芯片具有全面的安全特性,包括机密性、数据完整性等,集成了ECDH(椭圆曲线Diffie Hellman)和ECDSA(椭圆曲线数字签名算法)安全协议;用于传输、解密用户密码;加密、传输、解密通信数据,加密传输过程采用AES加密信道;与移动端进行ECDH密钥交换;应答挑战握手协议;进行HMAC密文验证以检验数据完整性。
所述蓝牙集成芯片用作蓝牙低功耗连接控制器或数据泵,或嵌入BLE连接和外接存储器的单独应用处理器;用于与移动端进行蓝牙扫描,建立link层上的通信链路。
设备端通过usb接线柱外接电源和其他设备。
上述实施例为本发明较完整的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (10)

1.蓝牙通信认证请求及通信方法,其特征在于,包括步骤:
与设备端进行蓝牙扫描,建立link层上的通信链路;
获取设备端公钥;
进行ECDH密钥交换,生成ECDH Based AES Key对称密钥K;
获取用户密码,发送用户密码至设备端;
在设备端通过用户认证后,与设备端进行数据通信,通信完成后断开连接;
所述发送用户密码、数据通信过程,均采用AES加密信道加密、解密传输,AES加密函数的密钥为对称秘钥K。
2.根据权利要求1所述的蓝牙通信认证请求及通信方法,其特征在于,基于用户密码生成master key,并将master key分割成user Based AES key和HMAC key;user Based AESkey用于作为AES加密函数的加密密钥对数据加密、解密;HMAC key用于验证数据的完整性。
3.根据权利要求2所述的蓝牙通信认证请求及通信方法,其特征在于,在发送通信数据给设备端时,HMAC密文验证的具体步骤如下:
利用哈希算法,将HMAC key和通信数据作为输入,通过HMAC运算和哈希函数产生一个固定长度的消息认证码MAC作为输出;
将消息认证码MAC加入到通信数据中进行传输;
获取设备端的验证消息,若验证显示数据通信中消息完整性遭到破坏则重新发送消息。
4.根据权利要求2所述的蓝牙通信认证请求及通信方法,其特征在于,在接收设备端的通信数据时,HMAC密文验证的具体步骤如下:
接收设备端通信数据和其中的消息认证码MAC';
基于消息认证码验证通信数据的完整性,若通信数据不完整则发送提醒消息至设备端,提示数据通信中消息完整性遭到破坏。
5.根据权利要求2所述的蓝牙通信认证请求及通信方法,其特征在于,使用挑战握手协议校验User Based AES Key,具体步骤为:
通过AES加密信道在随机间隔时间发送challenge消息;
获取设备端的应答;
比较计算的哈希值及设备端的应答,判断是否存在重放攻击;
经过一定随机时间间隔,手机端再次发送challenge消息并接收设备端的二次应答,确保User Based AES Key的有效性。
6.蓝牙通信认证接收及通信方法,其特征在于,包括步骤:
与移动端进行蓝牙扫描,建立link层上的通信链路;
与移动端进行ECDH密钥交换,生成ECDHBased AES Key对称密钥K';
获取用户密码并与用户信息库比对认证,认证通过后发送提醒至移动端;
与移动端进行数据通信,通信完成后断开连接;
所述获取用户密码、数据通信过程,均采用AES加密信道加密、解密传输,AES解密函数的密钥为对称秘钥K'。
7.根据权利要求6所述的蓝牙通信认证接收及通信方法,其特征在于,基于用户密码生成master key',并将master key'分割成user Based AES key'和HMAC key';user BasedAES key'用于ASE数据加密解密;HMAC key'用于验证数据的完整性。
8.根据权利要求6所述的蓝牙通信认证接收及通信方法,其特征在于,使用挑战握手协议校验User Based AES Key',具体步骤为:
接收移动端通过AES加密信道在随机间隔时间发送的challenge消息;
根据challenge消息计算哈希值,向移动端发送应答;
经过一定随机时间间隔,设备端再次接收challenge消息,二次计算哈希值和比较应答,确保User Based AES Key'的有效性。
9.移动端,其特征在于,包括:
第一应用层,具体包括交互单元、逻辑计算单元;
所述交互单元,包括图像采集器、用户操作图形界面,所述图像采集器用于获取设备端公钥;所述用户操作图形界面用于获取用户密码;
所述逻辑计算单元,用于生成ECDH Based AES Key对称密钥K;
第一链路层,内置低功耗蓝牙通信协议,用于与设备端进行蓝牙扫描,建立link层上的通信链路;进行ECDH密钥交换;加密、传输用户密码,加密、传输、解密通信数据,加密传输过程采用AES加密信道。
10.设备端,其特征在于,包括:
第二应用层,包括存储有用户密码的用户信息库,所述第二应用层用于比对认证用户密码;生成ECDHBased AES Key对称密钥K';
第二链路层,包括加密芯片和蓝牙集成芯片,所述蓝牙集成芯片用于与移动端进行蓝牙扫描,建立link层上的通信链路;所述加密芯片用于存储密钥,并传输、解密用户密码;加密、传输、解密通信数据,加密传输过程采用AES加密信道;与移动端进行ECDH密钥交换。
CN201910794167.2A 2019-08-27 2019-08-27 蓝牙通信认证请求、接收及通信方法、移动端、设备端 Active CN110572804B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910794167.2A CN110572804B (zh) 2019-08-27 2019-08-27 蓝牙通信认证请求、接收及通信方法、移动端、设备端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910794167.2A CN110572804B (zh) 2019-08-27 2019-08-27 蓝牙通信认证请求、接收及通信方法、移动端、设备端

Publications (2)

Publication Number Publication Date
CN110572804A true CN110572804A (zh) 2019-12-13
CN110572804B CN110572804B (zh) 2022-04-22

Family

ID=68776225

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910794167.2A Active CN110572804B (zh) 2019-08-27 2019-08-27 蓝牙通信认证请求、接收及通信方法、移动端、设备端

Country Status (1)

Country Link
CN (1) CN110572804B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111758248A (zh) * 2020-02-14 2020-10-09 深圳市汇顶科技股份有限公司 自动识别身份的方法、装置和芯片
CN112672335A (zh) * 2021-03-08 2021-04-16 上海逐鲨智能科技有限公司 一种蓝牙广播加密通信方法
CN112714428A (zh) * 2021-03-26 2021-04-27 广州塔塔电子科技股份有限公司 可设定前置连接协议的蓝牙数据信息传输方法
CN112737766A (zh) * 2020-12-25 2021-04-30 国网浙江省电力有限公司营销服务中心 一种适用于安装式电能表的蓝牙通信动态配对密钥方法
CN113038444A (zh) * 2021-03-25 2021-06-25 支付宝(杭州)信息技术有限公司 生成应用层密钥的方法和装置
CN113301547A (zh) * 2021-05-07 2021-08-24 范创升 一种低功耗蓝牙芯片的高效通信方法
CN113328857A (zh) * 2021-07-01 2021-08-31 北京创联易讯科技有限公司 一种单芯片门卫式端对端语音密码机
CN113347303A (zh) * 2021-05-20 2021-09-03 一汽奔腾轿车有限公司 一种基于遥控泊车的信息安全设计方法及***
CN113630240A (zh) * 2020-05-09 2021-11-09 成都天瑞芯安科技有限公司 拟态安全密码计算模型
CN117255340A (zh) * 2023-11-15 2023-12-19 北京智芯微电子科技有限公司 蓝牙通信方法、装置、***、存储介质及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102487506A (zh) * 2009-10-21 2012-06-06 中国电信股份有限公司 一种基于wapi协议的接入认证方法、***和服务器
CN104393999A (zh) * 2014-12-10 2015-03-04 暨南大学 一种主设备对其从属设备的认证方法和***
US20170006003A1 (en) * 2015-07-03 2017-01-05 Afero, Inc. Apparatus and method for establishing secure communication channels in an internet of things (iot) system
CN108738019A (zh) * 2017-04-25 2018-11-02 华为技术有限公司 融合网络中的用户认证方法及装置
CN108923927A (zh) * 2017-02-03 2018-11-30 霍尼韦尔国际公司 用于对摄像机供给动态qr码和ble连接的***和方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102487506A (zh) * 2009-10-21 2012-06-06 中国电信股份有限公司 一种基于wapi协议的接入认证方法、***和服务器
CN104393999A (zh) * 2014-12-10 2015-03-04 暨南大学 一种主设备对其从属设备的认证方法和***
US20170006003A1 (en) * 2015-07-03 2017-01-05 Afero, Inc. Apparatus and method for establishing secure communication channels in an internet of things (iot) system
CN108923927A (zh) * 2017-02-03 2018-11-30 霍尼韦尔国际公司 用于对摄像机供给动态qr码和ble连接的***和方法
CN108738019A (zh) * 2017-04-25 2018-11-02 华为技术有限公司 融合网络中的用户认证方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ARVANDY 等: "Design of Secure IoT Platform for Smart Home System", 《INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY, COMPUTER AND ELECTRICAL ENGINEERING (ICITACEE)》 *
郁滨 等: "一种蓝牙传输加密方案的设计与实现", 《计算机工程》 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111758248B (zh) * 2020-02-14 2021-10-22 深圳市汇顶科技股份有限公司 自动识别身份的方法、装置和芯片
CN111758248A (zh) * 2020-02-14 2020-10-09 深圳市汇顶科技股份有限公司 自动识别身份的方法、装置和芯片
CN113630240B (zh) * 2020-05-09 2024-04-26 成都天瑞芯安科技有限公司 一种拟态安全密码计算***
CN113630240A (zh) * 2020-05-09 2021-11-09 成都天瑞芯安科技有限公司 拟态安全密码计算模型
CN112737766B (zh) * 2020-12-25 2022-08-19 国网浙江省电力有限公司营销服务中心 一种适用于安装式电能表的蓝牙通信动态配对密钥方法
CN112737766A (zh) * 2020-12-25 2021-04-30 国网浙江省电力有限公司营销服务中心 一种适用于安装式电能表的蓝牙通信动态配对密钥方法
CN112672335A (zh) * 2021-03-08 2021-04-16 上海逐鲨智能科技有限公司 一种蓝牙广播加密通信方法
CN113038444A (zh) * 2021-03-25 2021-06-25 支付宝(杭州)信息技术有限公司 生成应用层密钥的方法和装置
CN113038444B (zh) * 2021-03-25 2022-07-19 支付宝(杭州)信息技术有限公司 生成应用层密钥的方法和装置
CN112714428A (zh) * 2021-03-26 2021-04-27 广州塔塔电子科技股份有限公司 可设定前置连接协议的蓝牙数据信息传输方法
CN113301547A (zh) * 2021-05-07 2021-08-24 范创升 一种低功耗蓝牙芯片的高效通信方法
CN113347303A (zh) * 2021-05-20 2021-09-03 一汽奔腾轿车有限公司 一种基于遥控泊车的信息安全设计方法及***
CN113328857A (zh) * 2021-07-01 2021-08-31 北京创联易讯科技有限公司 一种单芯片门卫式端对端语音密码机
CN113328857B (zh) * 2021-07-01 2022-05-24 北京创联易讯科技有限公司 一种单芯片门卫式端对端语音密码机
CN117255340A (zh) * 2023-11-15 2023-12-19 北京智芯微电子科技有限公司 蓝牙通信方法、装置、***、存储介质及电子设备
CN117255340B (zh) * 2023-11-15 2024-02-27 北京智芯微电子科技有限公司 蓝牙通信方法、装置、***、存储介质及电子设备

Also Published As

Publication number Publication date
CN110572804B (zh) 2022-04-22

Similar Documents

Publication Publication Date Title
CN110572804B (zh) 蓝牙通信认证请求、接收及通信方法、移动端、设备端
Vanhoef et al. Key reinstallation attacks: Forcing nonce reuse in WPA2
Dey et al. Session-key establishment and authentication in a smart home network using public key cryptography
Choi et al. Secure firmware validation and update for consumer devices in home networking
CN105978917B (zh) 一种用于可信应用安全认证的***和方法
US8763097B2 (en) System, design and process for strong authentication using bidirectional OTP and out-of-band multichannel authentication
EP3972293B1 (en) Bluetooth device connection methods and bluetooth devices
CN102164033B (zh) 防止服务被攻击的方法、设备及***
CN105553951A (zh) 数据传输方法和装置
CN108923927A (zh) 用于对摄像机供给动态qr码和ble连接的***和方法
KR20080065964A (ko) 무선 네트워크들에서 구조들을 안전하게 하기 위한 장치 및방법
Ayday et al. Secure, intuitive and low-cost device authentication for smart grid networks
KR101675332B1 (ko) 차량용 데이터 통신 방법 및 그를 이용하는 차량용 전자 제어 장치 및 시스템
CN109525565B (zh) 一种针对短信拦截攻击的防御方法及***
CN113225352A (zh) 一种数据传输方法、装置、电子设备及存储介质
CN113132087A (zh) 物联网、身份认证及保密通信方法、芯片、设备及介质
CN104243452A (zh) 一种云计算访问控制方法及***
CN109495441A (zh) 接入认证方法、装置、相关设备及计算机可读存储介质
JP2022117456A (ja) ハードウェアセキュリティモジュールを備えたメッセージ伝送システム
CN115473655B (zh) 接入网络的终端认证方法、装置及存储介质
KR20170032210A (ko) 차량용 데이터 통신 방법 및 그를 이용하는 차량용 전자 제어 장치 및 시스템
US20120106734A1 (en) Safe handover method and system
CN102780812B (zh) 一种利用移动终端实现安全输入的方法和***
KR101381813B1 (ko) 이미지를 이용한 모바일 디바이스 간의 인증 방법
Jain et al. SAP: a low-latency protocol for mitigating evil twin attacks and high computation overhead in WI-FI networks

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