本篇文章主要讲述泰凌的三元组功能实现,该功能是基于B91 ble single connection sdk开发实现,并可以扩展应用于泰凌其他sdk。三元组是由泰凌的上位机工具根据算法生成的三元数组表,目的是为了给设备配对时做身份合法性校验,并对设备的通信数据进行加解密操作,保障用户使用设备时的数据安全。
1
三元组生成
三元组成员
Product info:产品信息,由 vendor ID+ product ID 组成
Mac Address:蓝牙设备唯一标识符
Secret:密钥,由 Product info + Mac Address + Random(随机数) 按小端序拼接成数组,并通过 sha256 运算得到
三元组表格
通过上位机按照Secret生成规则以Mac Address递增的方式生成三元组表格
上位机界面如下所示
Secret:初始参数生成的密钥,对应于三元组表格里面的第一组三元组密钥
Count:可以设置要生成的三元组个数
CSV File Path: 代表生成三元组表格的绝对路径
重置:恢复到默认设置参数
三元组表格内容,如下所示
2
三元组校验和加解密
从三元组表格中获取一组三元组通过生产工具写入到Device flash
Device上电从flash里面获取三元组内容,在广播包中添加Product info 和 Mac Address字段
App扫描广播并连接Device,Device主动上报三元组Confirm + Random(随机数),App将广播包里的Product_info + Mac_address上报云端查找三元组表格获取Secret,云端再通过AES128验证Confirm
Confirm验证成功后,App,Device分别计算Session key,Session key由 Secret的Hash(即Sha256)结果按字节进行与Random(随机数)异或算法得出
App,Device分别使用session key 对数据进行AES128加密传输,接收端使用session key对数据使用AES128解密处理
关 于 泰 凌
泰凌微电子致力于为客户提供一站式的低功耗高性能无线连接SoC芯片解决方案,包括经典蓝牙,蓝牙低功耗,蓝牙Mesh,Zigbee,Thread,Matter,Apple HomeKit,Apple“查找(Find My)”,和私有协议等低功耗2.4GHz多协议无线连接系统级芯片和丰富的固件协议栈。公司产品广泛应用于智能照明,智能家居/楼宇,智能遥控,无线外设,智能零售,穿戴设备,无线音频,智能玩具,物流追踪,智慧城市等各类消费和商业应用场景中。
审核编辑 :李倩
全部0条评论
快来发表一下你的评论吧 !