电子说
在当今高度数字化的时代,信息安全成为了电子系统设计中至关重要的一环。Atmel推出的ATSHA204 CryptoAuthentication器件,凭借其卓越的安全性能和丰富多样的功能,在众多应用场景中展现出了强大的竞争力。它虽然已不推荐用于新设计,但对于理解和学习硬件安全认证技术依然具有极高的价值。下面,我们就来全面深入地了解一下这款器件。
ATSHA204隶属Atmel CryptoAuthentication™家族,是一款高安全性硬件认证设备。其灵活的命令集使其能够广泛应用于多个领域:
EEPROM总容量为664字节(5312位),分为以下几个区域:
器件包含一个SRAM阵列,用于存储输入命令、输出结果、中间计算值和临时密钥(TempKey)。当器件进入睡眠模式或断电时,该内存的所有内容将失效。TempKey可作为MAC、HMAC、CheckMac、GenDig和DeriveKey命令的输入,也可作为Read和Write命令的数据保护(加密或解密)密钥。
ATSHA204采用了多种物理安全特性,保护EEPROM内容不被未经授权的访问:
器件内置高质量随机数生成器,可生成32字节的随机数,并与输入数字结合形成一个临时密钥(nonce)存储在TempKey中,供后续命令使用。为防止对加密数据的重放攻击,设备要求在加密序列中包含一个新的内部生成的nonce。在锁定配置区之前,随机数生成器会返回固定值,以便于系统测试。
与ATSHA204的通信可通过两种不同的协议(I2C或单线)实现,具体取决于所选的器件:
在单线接口模式下,通信通过SDA引脚进行,SCL引脚被忽略。其通信结构具有层次性,包括唤醒令牌、I/O令牌、I/O标志、块和数据包。I/O令牌用于传输单个数据位或唤醒设备;I/O标志由八个令牌(比特)组成,用于指示下一组要传输的比特的方向和含义;块包含字节计数和校验和,确保数据传输的正确性;数据包是加密认证命令的输入或输出参数或状态信息。
I²C接口使用SDA和SCL引脚向ATSHA204指示各种I/O状态,该接口在协议层面与其他工作频率高达1MHz的I2C设备兼容。SDA引脚通常由外部上拉电阻拉高,SCL引脚必须由外部设备或上拉电阻驱动。设备根据不同的I/O条件进行响应,如睡眠状态下仅响应唤醒条件,唤醒状态下可识别数据0、数据1、起始和停止条件等。
采用Atmel CMOS EEPROM制造技术,具有高可靠性。EEPROM具有100,000次写入耐力、10 - 30年(根据温度)的数据保留时间和无限次读取耐力。
文档详细列出了所有I/O接口的AC和DC参数,包括唤醒低持续时间、电源上升延迟、唤醒高延迟到数据通信、高/低侧毛刺滤波、看门狗复位等AC参数,以及环境工作温度、电源电压、有源/空闲/睡眠电源电流、输出低电压/电流等DC参数。
定义了一系列控制标志,如Reset、Sleep(low - power)、Idle、Command、Wake等,用于控制设备的各种操作,如重置地址计数器、进入低功耗睡眠模式、进入空闲状态、写入命令等。
命令数据包由命令标志、计数、操作码、参数1、参数2、可选数据和校验和组成。设备接收到完整的命令块后进入忙碌状态并尝试执行命令,执行时间因命令和参数而异。文档详细介绍了各种命令的操作码、短描述、执行时间、输入/输出参数以及命令的具体功能和执行过程,如CheckMac、DeriveKey、DevRev、GenDig、HMAC、Lock、MAC、Nonce、Pause、Random、Read、UpdateExtra、Write等命令。
ATSHA204设计为与AT88SA102S向上兼容,大多数使用AT88SA102S的客户端设备系统无需修改主机系统软件或硬件即可与ATSHA204兼容。但也存在一些兼容性例外情况,如使用BurnFuse命令的系统、依赖固定设备修订号的系统、多设备共享单总线的系统、密钥多样化策略不同的系统以及用于电池和自供电系统的Client Atmel AT88SA100S设备等,需要进行相应的软件修改或调整。
器件提供多种封装选项,包括3 - 引脚SOT23、8 - 引脚SOIC、8 - 引脚TSSOP、8 - 焊盘UDFN和3 - 引脚Contact封装,并给出了详细的引脚配置和封装尺寸图纸。
Atmel ATSHA204 CryptoAuthentication器件凭借其丰富的功能、强大的安全特性和灵活的接口,在硬件安全认证领域展现出了卓越的性能。然而,在实际应用中,我们也需要考虑一些问题。例如,随着技术的不断发展,器件的一些特性可能逐渐无法满足更高的安全需求,如在面对日益复杂的攻击手段时,是否需要进一步加强物理安全保护机制?在多设备共享总线的应用场景中,如何更好地优化通信协议以提高通信效率和稳定性?
此外,对于器件的兼容性问题,在进行系统升级或替换时,需要仔细评估和测试,以确保系统的正常运行。同时,对于器件的电气特性和命令序列,工程师需要深入理解和掌握,以便在设计过程中能够充分发挥器件的优势,避免因参数设置不当或命令使用错误导致的问题。
总之,Atmel ATSHA204为我们提供了一个优秀的硬件安全认证解决方案,但在实际应用中,我们需要不断思考和探索,以适应不断变化的安全需求和技术挑战。
通过对Atmel ATSHA204的全面了解,你是否对硬件安全认证技术有了更深入的认识呢?在你的项目中,是否会考虑使用类似的器件来增强系统的安全性呢?欢迎在评论区分享你的想法和经验!
全部0条评论
快来发表一下你的评论吧 !