存储芯片AT88SC1616的原理和应用技术
AT88SC1616加密存储芯片内部结构主要由电源管理复位模块、同步传输模块、认证单元、密码校验单元、伪随机数发生器和EEPROM等几部分组成。其中电源管理复位模块主要对芯片进行供电、提供复位管理和掉电保护等功能;同步传输模块用于控制在不同通信方式下数据的传输;认证和密码校验单元实现在不同安全等级下用户用户应用区数据访问的安全管理;伪随机数发生器用于进行内部加密机的加密计算;EEPROM则保存需要加密的重要数据和代码。
AT88SC1616逻辑加密芯片是一款串行EEPROM,共有2KB的用户应用存储区和256B的系统配置区,应用存储区通过配置可划分成16个相同容量的应用存储区。分别受8套(16个)读、写密码的控制,错误计数最大8次。这16个应用分区也可以通过配置使用相同的密码和安全等级可自由合并使用。
AT88SC1616配置区的结构如图3所示。
由于
AT88SC1616加密芯片采用两线的I2C总线通信方式,因此与微处理器的硬件接口相对容易。AT88SC1616与AVR
单片机Atmegal128相连的硬件接口电路。由于Atmegal128内部带有I2C接口,因此它可与AT88SC1616直接相连。在其它嵌入式系统中,AT88SC1616与其它微处理器的接口同样简单,只要与相应的I2C接口引脚直接相连即可。如系统的MCU没有专用I2C接口引脚,可使用一般的I/O引脚与AT88SC1616的时钟线和数据线相连。
AT88SC1616采用两线的I2C通信方式,其控制时序比较简单,本文不再多述。这里重点讲述一下芯片使用工作过程。
加密存储芯片AT88SC1616的原理和应用技术
由于AT88SC1616具有使用方便、安全可靠等诸多优点,使其在工业控制、消费类电子、医疗器械、计费系统等领域具有广阔的应用前景。笔者已将该芯片用于已开发的选择性漏电保护系统中。在这个系统中的64条供电支路被人为划分成4个区,每个区设定独立的电压、电流和相位。针对不同区的管理员,还设定不同的用户名和密码,这些参量都被保存在AT88SC1616的用户使用区中。我们在维护系统数据安全性方面采用的办法是,在程序中对这些参量的读写访问都设定了密码,密码不正确是不能读写这些参量的,保证了只有真正的供电分区管理员才可对相应区的系统参数进行设定;同时采用加密验证访问方式,使得总线上传输的数据是密文,维护了系统数据的安全性。为防止有些不良用户利用非法手段获取系统时序进行反汇编,以此达到破解系统牟取高额利润的目的,也采用了两个办法来保证整个系统的安全性,一是系统中不定期地对芯片进行认证访问,系统一次认证不成功就返回错误信息;第二是对非法的认证访问数进行错误限制,错误一旦超过8次,芯片锁死,从而维护了我们的知识产权。
本文详细介绍了
AT88SC1616的芯片结构、特点、数据存储访问原理,并以Atmega128与其接口为例,给出了实用的硬件接口电路与软件实现流程。由于AT88SC1616具有较大的存储空间、严格的安全性能和简单可靠性的高速数据传输方式,因此极大地提高了嵌入式系统的数据安全性和适用性。我们已将此芯片成功应用于选择性漏电保护的软硬件加密系统中。AT88SC1616良好的安全性使得它还可更广泛地应用于远程抄表、医疗器械、机顶盒、汽车、通信、消费类家电等嵌入式系统。本文所介绍的方法对这些应用都有很好的参考价值。