Atmel AT88SC0104CA CryptoMemory芯片:高性能安全存储解决方案

电子说

1.4w人已加入

描述

Atmel AT88SC0104CA CryptoMemory芯片:高性能安全存储解决方案

在电子设计领域,安全存储一直是至关重要的环节。Atmel的AT88SC0104CA作为CryptoMemory家族的一员,为我们提供了一个高性能且安全的存储解决方案。今天,我们就来深入了解一下这款芯片的特点、应用及相关技术细节。

文件下载:AT88SC0104CA-TH-T.pdf

一、芯片概述

AT88SC0104CA是一款具备高级安全和加密特性的高性能安全存储器,拥有1-Kbit的用户内存。其用户内存被划分为四个32字节的区域,每个区域都能单独设置不同的安全访问权限,也可以组合起来为一到四个数据文件提供存储空间。该芯片还具备增强的命令集,可直接与微控制器硬件的2线接口通信,有助于加快固件开发速度并减少代码空间需求。

二、芯片特性

(一)内存特性

  1. 用户内存:属于1 - Kbit到8 - Kbit用户内存设备家族,拥有1 - Kbit(128字节)的EEPROM用户内存,分为四个256位(32字节)的区域,具备自定时写周期,支持单字节或16字节页写模式,每个区域的访问权限可编程设定。
  2. 配置区域:2 - Kbit的配置区域,包含37字节的OTP区域用于用户自定义代码,以及160字节的区域用于用户自定义密钥和密码。

(二)安全特性

  1. 认证协议:采用64位相互认证协议(获ELVA许可)。
  2. 加密功能:提供加密消息认证码(MAC)、流加密功能,有四组密钥用于认证和加密,八组两个24位的密码。
  3. 防护机制:具备防撕裂功能、电压和频率监测功能,能有效保护数据安全。

(三)智能卡特性

兼容ISO 7816 Class B(3V)操作,遵循ISO 7816 - 3异步T = 0协议(Gemplus®专利),支持多区域、多密钥集和多密码的多应用使用,拥有同步2线串行接口以实现更快的设备初始化,可编程的8字节复位应答寄存器,并且符合ISO 7816 - 2标准。

(四)嵌入式应用特性

  1. 供电要求:低电压供电,范围为2.7V – 3.6V。
  2. 数据存储:为敏感系统或用户信息提供安全的非易失性存储。
  3. 接口特性:采用2线串行接口(TWI,5V兼容),支持1.0MHz的快速操作。
  4. 封装形式:采用标准的8引脚塑料封装,符合环保要求(超过RoHS标准),引脚配置与Atmel® AT24CXXX串行EEPROM在SOIC和PDIP封装中相同。

(五)可靠性

  • 耐久性:具有100,000次的写入循环寿命。
  • 数据保留:数据可保留10年。
  • 静电防护:最小静电放电保护为2,000V。

三、引脚分配与说明

(一)引脚分配

Pad Description ISO Module TWI Module “SOIC, PDIP” TSSOP Mini - MAP
V CC Supply Voltage C1 C1 8 8 4
GND Ground C5 C5 4 1 5
SCL/CLK Serial Clock Input C3 C3 6 6 2
SDA/IO Serial Data Input/Output C7 C7 5 3 7
RST Reset Input C2 NC NC NC NC

(二)引脚说明

  1. 电源电压($V_{cc}$):由主机提供2.7V到3.6V的正电压。
  2. 时钟(SCL/CLK):异步T = 0协议时,CLK(SCL)输入为设备提供载波频率f;同步协议时,写设备数据在时钟上升沿同步,读数据在时钟下降沿同步。
  3. 复位(RST):提供符合ISO 7816 - 3的异步复位应答(ATR)序列,激活复位序列时,设备输出64位复位应答寄存器中的字节,RST输入引脚内部上拉,使设备可在不连接RST的情况下以同步模式运行,但同步模式下不支持复位应答序列。
  4. 串行数据(SDA/IO):用于串行数据传输的双向引脚,采用开漏驱动,可与其他开漏或开集电极设备连接,需在SDA/IO和$VCC$之间连接外部上拉电阻,电阻值和SDA/IO总线的系统电容会影响SDA/IO的上升时间,进而决定读操作的最大频率。

四、电气特性

(一)绝对最大额定值

  • 工作温度:−40°C到 + 85°C
  • 存储温度:−65°C到 + 150°C
  • 引脚电压:相对于地,任何引脚的电压范围为− 0.7V到$V_{CC}$ + 0.7V
  • 最大工作电压:4.0V
  • 直流输出电流:5.0mA

(二)直流特性

在推荐的工作范围内($V{CC}$ = + 2.7到3.6V,$T{AC}$ = - 40°C到 + 85°C),对电源电压、电流、输入输出电压和电流等参数都有相应的规定,例如电源电流在不同读写模式下最大为5mA,待机电流最大为100μA等。

(三)交流特性

在推荐的工作范围内($V{CC}$ = + 2.7到3.6V,$T{AC}$ = - 40°C到 + 85°C,$C_{L}$ = 30 pF),规定了异步和同步时钟频率、时钟占空比、上升和下降时间、数据有效时间等参数,如异步时钟频率范围为1 - 4MHz,同步时钟频率范围为0 - 1MHz等。

五、设备操作

(一)同步协议操作

  1. 时钟和数据转换:SDA引脚通常通过外部设备上拉,数据只能在SCL低电平时改变,SCL高电平时数据变化表示起始或停止条件。
  2. 起始条件:SCL高电平期间,SDA由高到低的转换定义为起始条件,所有命令前都必须有起始条件。
  3. 停止条件:SCL高电平期间,SDA由低到高的转换定义为停止条件,读序列后,停止条件会使EEPROM进入待机电源模式。
  4. 应答:所有地址和数据字以8位字的形式串行传输到EEPROM和从EEPROM传输出来,EEPROM在第九个时钟周期发送零来确认已接收每个字。
  5. 内存复位:通信中断后,可通过“应答轮询”恢复,即发送起始条件和有效的CryptoMemory命令字节,判断设备是否应答。

(二)通信安全模式

设备与主机之间的通信有三种基本模式:标准模式(上电后默认模式)、认证模式(成功认证序列激活)和加密模式(成功认证后成功激活加密激活),不同模式下对配置数据、用户数据、密码的处理和数据完整性检查方式不同。

六、安全选项

(一)防撕裂功能

写周期中电源丢失时,设备存储数据的完整性可恢复。该功能可选,激活时写命令执行时间会变长,每次写请求数据最大为8字节。数据先写入EEPROM的缓冲区,再写入目标地址,若第二次写周期因电源丢失中断,设备下次上电时会自动从系统缓冲区恢复数据。使用该功能上电时,主机需进行ACK轮询。

(二)写锁定

用户区域配置为写锁定模式时,8字节页的最低地址字节构成该页字节的写访问字节。写锁定字节本身可通过将其最低有效位写为“0”来锁定,且写锁定模式激活后,写锁定字节只能编程,写入“0”的位不能恢复为“1”。写操作每次只能写一个字节。

(三)密码验证

密码可用于保护任何用户区域的读写访问,有效密码呈现后,在电源关闭、新密码呈现或RST激活前一直有效。有八组密码可用于保护用户区域,一次只能有一个密码有效。正确的写密码也授予读访问权限。

(四)认证协议

用户区域的访问可通过认证协议保护,可选择四个密钥之一用于用户区域,认证成功在芯片通电期间有效,除非重新初始化认证或RST激活。若新认证请求未验证,卡将失去之前的认证,需重新认证才能访问。

(五)加密消息认证码

在标准、认证或加密操作模式下实现数据有效性检查功能。标准模式通过修改检测码(MDC)检查,认证和加密模式通过消息认证码(MAC)进行更强大的双向数据完整性检查和数据来源认证。只有进行有效认证的主机/设备才能计算有效MAC。

(六)加密

读写和验证密码命令期间,设备与主机之间交换的数据可加密以确保数据机密性。发行商可在配置内存中设置用户区域需要加密,可选择四个密钥之一,此时需激活加密模式才能读写该区域数据,且只传输加密数据。即使未要求,主机也可在知道正确密钥的情况下选择激活加密。

(七)管理员模式

启用此功能后,持有特定密码的用户可完全访问所有八组密码,包括更改密码的能力。

(八)禁止修改

受此功能保护的用户区域任何时候都不允许写访问,该区域必须在设备个性化期间、熔断安全保险丝之前写入数据。

(九)仅编程

受此功能保护的用户区域,数据只能编程(位从“1”变为“0”),不能擦除(位从“0”变为“1”)。

七、协议选择

(一)智能卡应用

使用ISO 7816 - B协议的异步T = 0模式,以与行业标准智能卡读卡器兼容和互操作。

(二)嵌入式应用

采用2线串行接口,与其他逻辑设备或微控制器实现快速高效的连接。上电序列决定本次电源周期内使用的通信协议,协议选择仅在上电时允许。

(三)同步2线串行接口

上电后默认模式,由于RST内部上拉。上电$VCC$时,RST也变高,$VCC$稳定后可驱动SCL(CLK)和SDA(I/O)。选择同步模式后,不关闭设备电源无法切换到异步模式。

(四)异步T = 0协议

上电序列符合ISO 7816 - 3智能卡应用的冷复位要求,$V_{CC}$变高,RST、I/O (SDA)和CLK (SCL)为低,设置I/O (SDA)为接收模式,为CLK (SCL)提供时钟信号,400个时钟周期后RST变高,设备会响应64位ATR代码。选择异步模式后,不关闭设备电源无法切换到同步模式。

八、初始设备编程

启用CryptoMemory的安全功能需要预先进行个性化设置,包括按区域设置所需的访问权限、密码和密钥值,使用简单的读写命令将这些值编程到配置内存中并验证,然后熔断保险丝将信息锁定。访问配置内存需要成功提供安全(或传输)代码,AT88SC0104CA设备的初始安全(传输)代码签名为$DD 42 97,与写七个密码相同,用户成功提供后可随时更改安全代码签名。

九、订购信息与封装

(一)订购信息

提供多种订购代码,涵盖不同的封装形式(如模块、PDIP、SOIC、TSSOP、Ultra Thin Mini - MAP等)、温度范围(商业温度和工业温度)和包装形式(如散装、卷带包装等),以满足不同用户的需求。

(二)封装信息

详细介绍了不同订购代码对应的封装尺寸、形状、厚度、间距等信息,并给出了部分封装的引脚标记信息和尺寸图,方便工程师进行设计和布局。

十、总结

Atmel AT88SC0104CA CryptoMemory芯片凭借其丰富的功能、高安全性和良好的兼容性,在智能卡和嵌入式应用领域具有广阔的应用前景。电子工程师在设计安全存储系统时,可以充分利用该芯片的特性,为系统提供可靠的安全保障。大家在实际使用过程中,有没有遇到过一些与该芯片相关的有趣问题或者独特的应用场景呢?欢迎在评论区分享交流。

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

全部0条评论

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

×
20
完善资料,
赚取积分