探索Atmel AT88SA10HS 加密认证主机安全芯片
引言
在当今数字化的时代,数据安全成为重中之重。在众多保障数据安全的设备中,Atmel AT88SA10HS芯片凭借其卓越的特性,在数据加密认证领域占据重要地位。不过需要注意的是,该芯片已不推荐用于新设计,被ATSHA204所取代。下面就让我们一起深入了解这款芯片。
文件下载:AT88SA10HS-SH-T.pdf
芯片特性
安全存储与算法优势
AT88SA10HS能为Atmel® AT88SA100S和Atmel AT88SA102S设备提供安全的密钥存储。它采用了先进的SHA - 256哈希算法,256位的密钥空间让穷举攻击变得几乎不可能,为数据安全提供了坚实的保障。
唯一序列号与接口特性
每颗芯片都拥有独一无二的48位序列号,这为设备的识别和认证提供了可靠的依据。同时,它具备高速单总线接口,还可与客户端共享,大大提高了使用的灵活性。
电气特性与安全防护
其工作电压范围为2.7V - 5.25V,通信电压范围在1.8V - 5.5V,能适应多种不同的电源环境。睡眠电流小于150nA,有效降低了功耗。此外,芯片还具备4KV ESD保护和多级硬件安全防护,能有效抵御各种外部攻击。
封装与环保特性
芯片提供3引脚SOT - 23或8引脚SOIC封装,方便不同的应用需求。并且它符合绿色环保标准,超过RoHS要求,体现了环保理念。
应用领域
耗材设备认证
可用于电池、碳粉等耗材设备的认证,防止假冒伪劣产品进入市场,保障用户的权益。
网络与计算机访问控制
在网络和计算机系统中,对用户的访问进行认证和控制,确保系统的安全性。
控制网络认证通信
为控制网络的通信提供认证服务,保证通信的真实性和可靠性。
子卡防克隆认证
有效防止子卡被克隆,保护设备的知识产权。
物理访问控制
在电子锁和钥匙等物理访问控制设备中发挥作用,提高门禁系统的安全性。
芯片结构与资源
引脚配置
芯片的引脚配置清晰明了,SIGNAL引脚用于串行数据传输和单总线时钟与数据交互,GND为接地引脚,VCC为电源引脚。不同封装的引脚排列有所不同,在设计时需要根据具体情况进行选择。
内存资源
- Fuse:包含128位熔丝位,可通过单线接口写入。其中Fuse[87]有特殊含义,Fuses[88:95]是制造商ID的一部分,Fuses[96:127]是唯一序列号的一部分。
- ROM:金属掩膜编程内存,前64位可无限制读取。其中ROM MfrID指定了部分制造ID代码,ROM SN用于识别芯片,RevNum用于标识芯片的型号和设计版本。
芯片标识
芯片通过72位信息来区分不同的芯片,其中48位序列号由ROM SN和Fuse SN组成,24位制造ID由ROM MfrID和Fuse MfrID组成。这些信息在加密计算中起着重要作用。
密钥与计算
芯片内部的密钥数组在晶圆制造时就已硬连线,所有芯片的内部密钥相同,但外部无法确定其具体值。客户需要将唯一的秘密数字编程到64位秘密熔丝中,并安全存储Atmel提供的密钥值。芯片基于SHA - 256算法进行计算,在计算过程中会自动包含24位MfrID代码,秘密熔丝则根据HOST命令的参数有条件地追加。
安全特性
芯片采用了多种物理安全特性来保护密钥,如表面的有源屏蔽、内部内存加密、内部时钟生成、毛刺保护、电压篡改检测等,使得通过外部分析获取密钥变得极为困难。
通信协议
IO协议
芯片通过单异步定时线使用脉冲计数方案进行通信,通信结构呈层次化。包括Tokens(实现总线上的单个数据位传输或唤醒事件)、Flags(由8个Tokens组成,传达下一组位的方向和含义)、Blocks(包含字节计数和校验和,确保数据传输的正确性)和Packets(命令或状态信息的核心部分)。
IO令牌
分为输入和输出两类令牌。输入令牌包括Wake(唤醒芯片)、Zero(发送值为0的位)和One(发送值为1的位);输出令牌包括ZeroOut(发送值为0的位)和OneOut(发送值为1的位)。位定时设计使得标准UART能以230.4 K波特率高效传输和接收令牌。
AC参数
芯片的AC参数规定了各种信号的时间要求,如唤醒低持续时间、唤醒到数据通信的延迟、起始脉冲持续时间等。这些参数对于确保芯片的正常通信至关重要。
DC参数
DC参数包括工作温度、电源电压、熔丝烧录电压、电源电流等。了解这些参数有助于在不同的工作环境下正确使用芯片。
IO标志
系统作为总线主设备,在进行IO事务前需要发送8位标志给芯片,包括Command(开始发送命令块)、Transmit(芯片开始发送响应)和Sleep(芯片进入低功耗模式)。不同的标志对应不同的操作,需要根据实际情况进行选择。
IO块
命令和响应以块的形式传输,块由Count(字节数)、Packet(命令、参数和数据)和Checksum(CRC - 16校验)组成。块的大小有一定的限制,超出范围可能会导致不可预测的操作。
IO流程
一般的IO流程包括发送唤醒令牌、发送传输标志、验证唤醒同步、发送命令标志、发送完整命令块、等待解析和执行、发送传输标志、接收输出块、检查CRC等步骤。在命令执行延迟较短的情况下,可以简化流程。
同步与超时
由于通信协议是半双工的,可能会出现系统和芯片不同步的情况。芯片通过IO超时机制来解决这个问题,当超过一定时间未收到合法令牌时,芯片会进入睡眠状态。同时,芯片还具备看门狗故障保护机制,在一定时间后会强制芯片进入睡眠模式,以降低功耗。
命令功能
HOST0
将芯片内存储的密钥与256位挑战输入进行拼接,并生成消息的摘要。根据overwrite参数的不同,摘要的计算方式也有所不同。
HOST1
完成由HOST0开始的两区块SHA - 256摘要计算,并将结果留在芯片内部内存中。该命令需要在HOST0成功运行后才能执行。
HOST2
将芯片内部生成的摘要与客户端输入的响应进行比较,返回比较结果。该命令需要在HOST1成功运行后才能执行。
Read
从熔丝或ROM中读取4字节数据,如果尝试读取非法位置会返回错误。
GenPersonalizationKey
将个性化密钥加载到内部内存中,并使用输入种子生成解密摘要。该命令在Fuse[87]未烧录时才能执行。
BurnSecure
烧录前88位熔丝中的任意组合,可对熔丝图进行加密传输。烧录过程需要满足一定的电源电压和时间要求,并且在烧录前需要验证Fuse[87]未烧录。
PauseShort
强制芯片进入忙碌模式一段时间,期间忽略IO信号,用于防止与其他共享同一信号线的芯片发生总线冲突。
引脚与封装
引脚定义
芯片的引脚功能明确,SIGNAL引脚用于通信,VCC为电源引脚,GND为接地引脚,部分引脚为NC(未连接)。在设计电路时,需要注意引脚的连接和电源的旁路电容配置。
封装尺寸
芯片提供3引脚SOT - 23和8引脚SOIC两种封装,文档中给出了详细的封装尺寸图和相关参数,设计时需要根据实际需求选择合适的封装。
订购信息与修订历史
订购代码
提供了两种订购代码,分别对应不同的封装类型和电压、温度范围,用户可以根据自己的需求进行选择。
修订历史
文档记录了芯片数据手册的修订历史,包括去除TSSOP封装选项、更新Atmel标志和免责声明页面、修正参考和章节编号等内容。了解修订历史有助于用户及时掌握芯片的最新信息。
Atmel AT88SA10HS芯片以其丰富的特性和强大的功能,在数据安全领域发挥着重要作用。尽管它已不推荐用于新设计,但对于已有的应用系统,了解其工作原理和使用方法仍然具有重要意义。在实际设计中,工程师需要根据具体需求,合理选择芯片和配置参数,以确保系统的安全性和稳定性。你在使用类似芯片时遇到过哪些问题呢?欢迎在评论区分享你的经验。
-
数据安全
+关注
关注
2文章
800浏览量
30887
发布评论请先 登录
探索Atmel AT88SA10HS 加密认证主机安全芯片
评论