利用SHA-256主/从安全认证系统实现增强安全性
时间:08-22
来源:互联网
点击:
- 加密读、写操作
DS28C22安全认证器不仅具备普通的SHA-256安全认证功能,始终不会暴露密钥,甚至可以配置成在存储器读/写操作期间也不暴露其存储数据。这种增强保护方案是通过在传输期间对数据进行加密实现的。在芯片内部,以确定方式储存数据,以满足安全认证的需要。
写操作加密采用一次性密码本(OTP,根据主机提供的加密种子计算得到)、安全认证器的密钥、安全认证器的部分ROM ID以及其它数据(填充符、格式化符号以及数据地址相关的数据)。如图5所示,这些数据单元组成一条消息,根据SHA-256算法对其进行处理,得到的信息验证代码为OTP。主机将新存储器数据与OTP中对应的数据进行XOR运算,然后发送至安全认证器。安全认证器再次执行XOR运算,重建EEPROM中编程的原始数据。主机提供加密种子,种子应为随机数。按照这种方式,即使主机重复写相同的数据,对于I?C总线上的窃听者,加密后的数据每次都不同。
图5:加密写操作。
读操作加密类似于写操作加密。尽管消息的数据单元实质上是相同的,但“其它数据”存在差异,使得读操作OTP不同于写操作OTP,即使其它数据源完全相同。如图6所示,安全认证器读取用户存储器中的数据,将其与OTP进行XOR运算,使主机能够对其进行读操作。然后主机利用其自身的OTP执行XOR运算。如果主机能够计算得到用于加密的安全认证器密钥和OTP,XOR运算步骤将成功解密数据。同样,主机提供加密种子,种子应为随机数。现在,即使主机重复读取相同的数据,对于I?C总线上的窃听者,数据每次都不同。
图6:加密读操作。
加密认证写操作
加密写操作不能防止不知道安全认证器密钥的主处理器对存储器进行写操作,尽管实际写入存储器的数据无用。当然,破坏者可恶意耗尽存储器,以此损害安全认证器。为防止发生以上现象,设置为加密的存储器区域应在初始写操作后采取写保护或安全认证保护,只有合法主机可更改存储器数据。
安全认证器的密钥和协处理器的主密钥通过硬件设计进行读保护。如果需要,密钥可采取写保护,防止利用已知密钥代替未知密钥来篡改安全认证器的存储数据。绑定数据一般储存在协处理器的存储器内,应在安装之后进行读保护。只要在受信任的生产环境下针对应用设置协处理器和安全认证器,这种级别的保护就非常有效。
加密认证写操作包括两步:第一步中,主机按图5所示对新数据进行加密,然后将其送至安全认证器;第二步中,主机按图4所示计算写操作安全认证MAC,然后将其送至安全认证器。相对于没有加密的安全认证写操作,现在是根据已有加密存储器数据和加密后的新数据计算得到MAC。
密钥保护
安全认证器的密钥和安全协处理器的主密钥通过硬件设计进行读保护。如果需要,密钥可采取写保护,防止利用已知密钥代替未知密钥来篡改安全认证器的数据。绑定数据一般储存在协处理器的存储器内,应在安装之后进行读保护。只要在受信任的生产环境下针对应用设置协处理器和安全认证器,这种级别的保护就非常有效。
DeepCover终极安全
Maxim Integrated的DeepCover技术提供强大、经济的保护方案,可防止试图侦测密钥的芯片级攻击。DeepCover技术包括多种监测芯片级篡改事件的有源电路,采用先进的芯片级布线、布局技术,以及专利技术,有效抵御各种攻击性操作。
双向安全认证
上述系统的密匙认证支持质询-应答安全认证和写保护操作(主机安全认证)。整个用户存储器可用于质询-应答安全认证,双向安全认证适用于储存安全数据(安全认证写操作)的存储器区域。数据加密不妨碍质询-应答安全认证。始终利用用户EEPROM中的未加密数据计算安全认证MAC。
总结
SHA-256的密钥、质询和MAC均为256位,相对于原来的SHA-1安全认证方案有了显著改进。本文介绍了最新的安全认证系统,该系统对主机系统(具有SHA-256协处理器的主控制)与传感器/外设模块(SHA-256安全认证器)的匹配性进行验证。SHA-256安全认证的实施方案比以往任何时候都简单!
参考资料
1. 关于相互认证的一般介绍,请参见Maxim Integrated应用笔记3675《利用安全认证保护您的研发成果》:www.maximintegrated.com/AN3675。
2. Maxim Integrated数据资料DS28C22。
3. Maxim Integrated数据资料DS28C22。
DeepCover是Maxim Integrated Products, Inc.的注册商标。
- IC故障诊断及失效分析:发现事实避免臆测(09-11)
- Pmod规范,或Arduino伪标准(08-27)
- 物联网的SoC验证(01-18)
- 工程设计是为傻瓜准备的(我就是活生生的例子)(05-17)
- Maxim Integrated推出高速、18位数据采集系统(DAS)参考设计(12-05)
- 基于MAX3420的USB控制器接口设计(07-24)