蓝牙研发网

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 6890|回复: 0

发布蓝牙安全芯片-IN612L

[复制链接]
发表于 2020-6-12 17:55:06 | 显示全部楼层 |阅读模式
全球IoT安全市场规模预计将从2018年的82亿美元增长到2023年的352亿美元,预测期内年复合增长率(CAGR)为33.7%。随着物联网产品在无线网络、人工智能和机器学习领域的日益整合, 加上传感器和微控制器的开发, 市场对产品的安全性需求越来越强烈。
随着具有网络和计算功能的智能设备正在医院、家庭、城市和制造业广泛部署,这些设备大大提高了能源效率, 优化了管理和制造工艺,尽管好处很多, 但这些系统中的安全漏洞正引起用户的不满。因此, 解决物联网领域的安全挑战势必是开发者关注的热点。
安全加密技术的几个概念
数据的有效性和完整性
在无线通讯领域里,数据的完整和有效是非常重要的一个要求。如图表 2所示,Alice如果发送信息M给Bob,当Bob收到M的时候,数据M的完整性保证了其在无线传输过程中没有被Eve所篡改。Hash技术因为其不可逆推演而被用来解决数据不可篡改。目前比较流行的算法有MD5、Hash-1和Hash-2等, 区别是数学运算难度。

图表 1 安全漏洞拓扑模型
数据来源的真实性
当Alice发信息M给Bob的时候,Bob需要确保Alice作为发送信息的人的真伪,这就需要一种技术来实现对发送数据的来源做验真操作,又称为鉴权。在无线物联网领域,有同密认证系统,也有非对称认证系统。
同密认证系统在Alice和Bob侧采用同样的密钥,当今广泛采用的同密加密技术有AES-128、AES-192和AES-256。
非对称认证系统采用公有密钥和私有密钥配对方式。此种系统需要的是一组单方向很容易计算但是逆推很难的算法。目前市场上比较流行的非对称加密算法有RSA和ECC。
数据消息的保密性
节点和局端设备的认证鉴权做好后,通讯数据本身的保密性则是由对数据加密实现的。通常比较流行的对称加密算法有AES-128、AES-192或AES-256,数据位数越大,加解密难度越大。对称加密用的密钥多采用非对称算法生成共享密钥。而非对称算法中ECC (椭圆曲线算法),因其占用系统资源少,又最为流行。采用ECC算法生成一对公有/私有密钥,这一生成密钥对的协议算法称之为ECDH。如图表 2所示。

图表 2 非对称加密共享密钥生成
表格 1总结了上述谈到的三种安全加密技术的概念和特性。

采用ECDSA数字签名技术的加密算法协议
在无线物联网应用中,如何采用最简单有效的方式把三种需求融合起来呢?
图表 3简单示意了如何利用基于ECDSA数字签名技术并结合ECDH做共享私钥动态生成算法以满足前述的几种需求。

图表 3 采用ECDSA数字签名的加密算法协议
介绍InPlay SwiftRadioTM SoC
InPlay SwiftRadioTM SoC是一款基于2.4GHz射频工作频段的无线SoC。它集成了InPlay私有多模协同通讯协议 [其中包含蓝牙5和InPlay 软件定义无线电(2.4GHz私有协议)) ;还集成了64MHz的Arm Cortex-M4F,包含256KB ROM,1MB Flash Memory和96KB的SRAM。SwiftRadioTM SoC集成了独立的硬件安全引擎给开发者编程安全应用,例如AES256、SHA256和ECC256。同时芯片内部集成了私有ECDSA数字签名算法协议及基于ECDH协议的共享密钥生成算法协议,为保证密钥的不可篡改,芯片集成了专用的OTP(一次性可编程)存储器,同时,芯片支持认证授权安全启动。
InPlay 私有ECDSA数字签名加解密算法协议
InPlay成功开发了私有ECDSA数字签名算法协议及基于ECDH协议的共享密钥生成算法。
图表 4展示了烧录器/OTA服务器/蓝牙网关等(以下简称“主机”)与终端设备(以下简称“从机”)之间的基于InPlay私有加密鉴权协议的流程图。首先,当主机和从机需要建立连接事件前,主机需要先将文件做Hash运算并产生一个固定位数的哈希值,然后主机用存在于主机内部的私有密钥对其进行ECC签名算法运算并生成一个数字签名。同时主机和从机各自通过ECDH算法协议动态生成各自的非对称公钥/私钥对,并交换彼此的公钥给到对方,然后主机和从机用自身存储的非对称私钥和收到的对方公钥进行ECC对数运算并生成共享加密密钥,此密钥即被主机作为明文文件的加密密钥。最后,主机将经过加密的密文文件和数字签名一并发给从机。从机收到后首先对数字签名进行鉴权认证,它将预先存储于从机设备内的公钥取出与收到的数字签名文件同时作为ECDSA签名验证算法的输入条件并进行验证运算,如果结果为“真”,则证明收到的加密文件确实为主机所发送过来的,否则从机设备将拒绝此文件接收。

图表 4 InPlay私有数据文件加密鉴权传输协议
如下代码示例给出了一个通过鉴权加密做数据通讯的从机例程。开发者只需增加几行非常简单的代码即可实现安全的无线通讯应用设计。
图表 5和图表 6则示意了另外一种如何利用InPlay私有ECDSA数字签名鉴权协议做安全程序启动的应用实例。

开发者可以利用Hash算法和ECDSA算法对程序文件做数字签名生成,如图表 5所示。开发者需要通过ECC算法生成一对非对称的公钥/私钥对并需要严格保护好私钥。在工厂应用程序烧录的时候,生成的公钥需要被存储在芯片的OTP区域,而生成的数字签名可以被存储在Flash存储器中。

图表 5安全程序启动鉴权数字签名生成
开发者可将如下几行代码加入烧录器程序中,即可简单实现应用程序数字签名生成设计。

在产品开机启动后,系统的启动程序开始运行并检查安全启动选项是否有被使能,一旦确认安全选项被使能,则内置到芯片BOOTROM里的启动程序将对程序文件做Hash运算生成哈希值,并将预存在Flash存储器中的数字签名和预存在OTP中的公钥一并作为输入参数送入ECDSA算法做数字签名验证运算,如果结果通过,进入正常应用程序运行模式,否则,程序将停止执行。

图表 6安全启动程序鉴权签名验证
如下代码示例给出了一个通过鉴权数字证书验证做安全启动的例程。

总结
lnPlay公司提出了一种在蓝牙SoC上直接集成创新的安全加密算法及协议,采用国际上推崇的ECDSA数字证书加密技术及基于ECDH协议的密钥生成技术。基于此技术的应用将确保开发者专注于应用层面的价值开发,而无需担心其产品及系统在市场上潜在的安全威胁。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|蓝牙研发网 ( 粤ICP备14052215号-1 )

GMT+8, 2024-12-24 21:47 , Processed in 0.046875 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表