电子说
在当今数字化时代,数据安全至关重要。Microchip的ATSHA204A作为CryptoAuthentication™家族的一员,是一款高安全性硬件认证设备,为众多应用场景提供了强大的安全保障。本文将深入剖析ATSHA204A的特点、应用、组织架构、安全特性、I/O接口、电气特性以及安全命令等方面,帮助电子工程师更好地了解和应用这款设备。
ATSHA204A具备受保护的基于硬件的密钥存储功能,采用先进的加密技术,确保密钥的安全性。其拥有256位的密钥长度,最多可存储16个密钥,为数据安全提供了坚实的基础。
支持主机和客户端操作的安全对称认证,采用卓越的SHA - 256哈希算法,结合消息认证码(MAC)和基于哈希的消息认证码(HMAC)选项,有效防止数据被篡改和伪造。
每台ATSHA204A都配有保证唯一的72位序列号,可用于身份验证和防克隆。同时,内部高质量的随机数生成器(RNG)能够生成32字节的随机数,为加密操作提供了可靠的随机源,有效防止重放攻击。
拥有4.5kb的EEPROM用于存储密钥和数据,其中包括512位的一次性可编程(OTP)位,可用于存储固定信息,如序列号、校准数据等。
支持UART兼容的高速单总线接口和1MHz的I2C接口,可根据不同的应用场景选择合适的通信方式。工作电压范围为2.0V至5.5V,通信电压范围为1.8V至5.5V,睡眠电流小于150nA,具有低功耗的特点。
提供生态系统控制、消息安全和防克隆等功能,确保设备在启动和运行过程中的安全性。
提供8引脚SOIC、8引脚TSSOP、3引脚SOT23、8焊盘UDFN和3引脚CONTACT等多种封装形式,满足不同应用的需求。
可用于验证可移动、可替换或消耗性客户端的真实性,如打印机墨盒、电子子卡、医疗一次性用品或备件等。还可用于验证软件/固件模块或内存存储元件。
在启动时验证存储在闪存中的代码,防止未经授权的修改(即安全启动),对下载的媒体文件进行加密,并对代码映像进行唯一加密,确保其只能在单个系统上使用。
安全、轻松地交换流加密密钥,供系统微处理器中的加密/解密引擎使用,以管理机密通信通道、加密下载等。
存储标准微处理器中加密加速器使用的秘密密钥,还可用于存储配置、校准、电子钱包值、消费数据等少量数据,支持可编程保护,包括加密/认证的读写操作。
验证用户输入的密码,同时不泄露预期值,将简单密码映射到复杂密码,并与远程系统安全交换密码值。
EEPROM总容量为664字节(5312位),分为数据区、配置区和OTP区。
SRAM用于存储输入命令、输出结果、中间计算值和临时密钥(TempKey)。当设备进入睡眠模式或断电时,SRAM内容无效。TempKey可作为MAC、HMAC、CheckMac、GenDig和DeriveKey命令的输入,也可作为Read和Write命令的数据保护密钥。
ATSHA204A采用了多种物理安全措施,如有源屏蔽、内部内存加密、安全测试模式、毛刺保护、电压和温度篡改检测等,防止EEPROM内容被未经授权的访问。
内部的RNG可生成高质量的随机数,与输入的随机数结合形成随机数(nonce),存储在TempKey中,用于后续的加密命令。在锁定配置区之前,RNG返回固定的32字节值,方便系统测试。
支持单总线接口和I2C接口两种通信协议。单总线接口只需一个GPIO连接,位速率可达25.6kb/s,兼容标准UART信号;I2C接口支持最高1Mb/s的位速率,与Microchip AT24C16串行EEPROM接口兼容。
在单总线接口上,数据以LSb(最低有效位)先传输;在I2C接口上,数据以MSb(最高有效位)先传输。
单总线接口使用多种I/O令牌进行通信,包括唤醒(Wake)、逻辑0(Zero)、逻辑1(One)等输入令牌,以及ZeroOut和OneOut等输出令牌。唤醒令牌用于唤醒设备,逻辑0和逻辑1令牌用于传输数据。
系统在进行I/O事务之前,需发送8位标志给设备,指示后续的I/O操作,如睡眠(Sleep)、空闲(Idle)、命令(Command)、传输(Transmit)等。
为防止系统和设备失去同步,设备实现了超时机制,在一定条件下强制进入睡眠状态。多个CryptoAuthentication设备可共享单总线接口,通过唤醒令牌和暂停命令(Pause)实现设备的选择和管理。
单总线接口可采用3线或2线配置。3线配置使用SDA、VCC和GND;2线配置中,SDA和GND连接,设备可从SDA引脚窃取电源并存储在旁路电容上。
当设备处于睡眠状态时,仅响应唤醒条件;当设备处于唤醒状态时,遵循数据0、数据1、起始条件、停止条件、确认(ACK)和非确认(NACK)等I/O条件。
I2C传输包括起始条件、设备地址字节、字地址字节、可选数据字节和停止条件。系统发送命令后,可通过轮询或单延迟方式等待命令完成。
I2C接口的读写操作将设备的I/O缓冲区视为FIFO,地址计数器控制数据的读写位置。可通过发送特定的字地址(如0x00)重置地址计数器。
当系统与设备失去同步时,可通过发送标准的I2C软件重置序列、唤醒令牌等方式重新同步。文档中提供了I2C接口的事务示例,帮助工程师理解和实现通信。
包括工作温度范围(-40°C至+85°C)、存储温度范围(-65°C至+150°C)、最大工作电压(6.0V)、直流输出电流(5.0mA)等。
采用Microchip CMOS EEPROM制造技术,具有高可靠性。EEPROM的写入耐久性为100,000次,数据保留时间在不同温度下有所不同。
包括唤醒低持续时间、唤醒高延迟、高低侧毛刺滤波等参数,确保通信的稳定性。
涵盖环境工作温度、电源电压、有源电源电流、空闲电源电流、睡眠电流、输出低电压和电流等参数。输入电压阈值根据设备状态和TTLenable位的设置而变化。
命令和响应以块的形式传输,块包括计数、数据和校验和。设备没有专用的状态寄存器,输出FIFO共享状态、错误和命令结果。常见的状态/错误代码包括成功执行(0x00)、Checkmac不匹配(0x01)、解析错误(0x03)、执行错误(0x0F)等。
系统使用完设备后,可发送睡眠序列将设备置于低功耗模式;在看门狗间隔内,可发送空闲序列防止设备自动进入睡眠状态。看门狗计数器在设备接收到唤醒令牌后启动,超时后设备进入睡眠模式。
命令包包括命令标志、计数、操作码、参数和校验和。不同命令的执行时间因命令类型和参数而异,文档中提供了详细的命令操作码、简短描述和执行时间列表。
ATSHA204A与ATSHA204在所有主机、客户端和个性化操作方面完全兼容,并在一些方面进行了改进,如降低有源功耗、支持两线连接模式、增加SHA命令、加强写操作的安全性等。
提供多种封装形式的引脚排列和封装尺寸信息,包括8焊盘UDFN、8引脚SOIC、8引脚TSSOP、3引脚SOT23和3引脚CONTACT等。同时,文档中还提供了各封装形式的详细图纸和推荐的焊盘尺寸。
ATSHA204A使用SHA - 256和HMAC/SHA - 256算法进行加密计算,文档中提供了相关算法的参考链接和详细的消息处理说明。
包括多样化密钥、滚动密钥、创建密钥、有限使用密钥等功能。多样化密钥可结合设备的序列号提高安全性;滚动密钥可防止密钥的重复使用;创建密钥可根据父密钥生成唯一的临时密钥;有限使用密钥可限制密钥的使用次数。
ATSHA204A可安全存储预期密码,通过CheckMac命令进行密码验证,并提供多种密码验证选项,如返回布尔结果、生成保护密钥、释放高熵秘密等。
设备内部的硬件密钥阵列(传输密钥)可用于安全个性化,通过GenDig命令使用。SlotID值大于等于0x8000时,引用传输密钥;小于0x8000时,引用EEPROM数据区的密钥。
Microchip的ATSHA204A是一款功能强大、安全性高的硬件认证设备,适用于多种应用场景。其丰富的特性、灵活的命令集和多种封装形式为电子工程师提供了广阔的设计空间。通过深入了解ATSHA204A的各个方面,工程师可以更好地利用该设备,为系统提供可靠的安全保障。在实际应用中,工程师需要根据具体需求选择合适的通信接口、配置设备参数,并合理使用安全命令,以确保设备的安全性和稳定性。同时,还需关注设备的兼容性和机械信息,选择合适的封装形式进行设计。希望本文能为电子工程师在使用ATSHA204A时提供有益的参考。你在实际应用中是否遇到过类似设备的使用问题呢?欢迎在评论区分享你的经验和见解。
全部0条评论
快来发表一下你的评论吧 !