泰凌微电子三元组认证功能实现

描述

本篇文章主要讲述泰凌的三元组功能实现,该功能是基于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多协议无线连接系统级芯片和丰富的固件协议栈。公司产品广泛应用于智能照明,智能家居/楼宇,智能遥控,无线外设,智能零售,穿戴设备,无线音频,智能玩具,物流追踪,智慧城市等各类消费和商业应用场景中。

审核编辑 :李倩

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分