摘要: 一组新的安全认证器和同伴安全协处理器/1-Wire 主实现SHA-256认证。本应用说明解释了这个基于sha -256的安全系统的一般逻辑,并介绍了该身份验证系统使用的双向身份验证功能。
十多年来,SHA-1认证被用来有效地保护知识产权,防止假冒和非法复制。随着计算机技术的进步,客户要求更高的安全性。
今天,一组新的安全认证器和配套的安全协处理器实现了SHA-256认证。这个新系统提供了先进的物理安全性,以提供无与伦比的低成本IP保护、克隆预防和外围设备认证。本文阐述了基于sha -256的安全系统的一般原理,并介绍了该认证系统所使用的双向认证功能。
实现安全认证系统需要将主机系统与传感器/外围模块连接起来。图1所示的系统由1- wire SHA-256安全认证器和具有1- wire主功能的SHA-256协处理器组成。通过1线接口的单个引脚在主机和外设之间操作可以减少互连的复杂性,简化设计并降低成本。
图1所示 安全认证系统的实现。该系统采用DS2465 SHA-256协处理器和DS28E25 SHA-256认证器。
该系统中的SHA-256安全认证器支持256位的挑战大小,并使用256位的秘密。图1中的安全身份验证器是一个1- wire从属器,具有唯一的64位ROM ID,作为身份验证计算的基本数据元素。系统设计人员可以将验证者的用户EEPROM划分为开放(未受保护)访问的区域和主机必须对自己进行身份验证才能进行写访问的区域。表1显示了可用的保护模式和有效的保护组合。
保护代码 | 描述 |
RP | 读保护。如果激活,数据仅供设备内部使用,例如,像一个秘密。 |
WP | 写保护。如果激活,则不能更改数据。 |
新兴市场 | EPROM仿真模式。如果激活,单个比特只能从1变为0。 |
*系统默认为无保护,未激活RP、WP、EM和AP。保护是累积的。 |
图1中的SHA-256协处理器是由主机处理器控制的I²C从机。从主机的I²C端口来看,SHA-256协处理器是一个256字节的读写存储器,其中为特殊目的分配了某些区域(数据元素)。
基于sha的安全性依赖于从开放数据和秘密计算的消息验证码(mac)。为了验证真实性,双方,即主机或协处理器和1-Wire验证者,必须知道这个秘密,这个秘密永远不能暴露。此外,为了获得最大的安全性,每个1-Wire身份验证器中的秘密必须是唯一的。这样,即使单个身份验证者的秘密被泄露,整个系统的安全性也不会受到影响。
乍一看,似乎不可能满足这些要求。然而,有一个简单的解决方案:从已知的“成分”中计算出秘密,并将其安装到受信任/受控制的制造环境中的设备中。验证者秘密的组成部分包括主秘密、绑定数据、部分秘密、验证者的ROM ID和填充/格式化(“其他数据”)。图2说明了这个过程。虽然成分在某个时间点(例如,在可信的制造环境中)是公开的,但计算出的秘密永远不会公开,并且始终保持隐藏。
图2 创建唯一的身份验证器秘密。
出于安全和存储空间的考虑,系统中所有身份验证器的唯一秘密不能存储在协处理器或主机中。相反,协处理器只将主密钥和绑定数据存储在受保护的内存部分中。部分秘密是一个系统常数,可以在主机处理器的固件中编码并公开通信。在读取了验证者的ROM ID之后,协处理器可以计算验证者的唯一秘密,如图2所示。由于验证器和协处理器现在共享唯一的验证器秘密,系统已准备好运行。
鉴定人的主要目的是提供证据,证明其所附物品是真品。基于对称密钥的认证使用一个秘密密钥和待认证数据(“消息”)作为输入来计算MAC。主机使用期望的秘密和相同的消息数据执行相同的计算;然后,它将自己的MAC版本与从验证者那里收到的MAC版本进行比较。如果两个MAC结果相同,则验证者是系统的一部分。
在这个SHA-256身份验证系统中,消息是主机质询和存储在身份验证器中的数据元素的组合。至关重要的是,挑战是基于随机数据的。一个永不改变的挑战打开了重播攻击的大门,使用有效的、静态的MAC来记录和重播,而不是立即计算的MAC。
验证者从质询、秘密、内存数据和共同构成消息的其他数据中计算出一个MAC(图3)。如果验证者可以为任何质询生成一个有效的MAC,那么可以安全地假设它知道秘密,因此可以认为它是可信的。
图3 计算一个质询-响应认证MAC。
除了证明真实性之外,非常希望知道存储在身份验证器中的数据是可信的。为此,安全身份验证器中的部分或全部EEPROM可以被“身份验证保护”。激活身份验证保护后,内存写访问要求主机通过向身份验证者提供主机身份验证MAC来证明其真实性(图4)。
图4 认证写访问(主机认证MAC)。
主机认证MAC是根据新的内存数据、现有内存数据、验证者的唯一秘密加上ROM ID以及共同构成消息的其他数据计算的。验证者用同样的方法计算MAC,使用它的秘密。
一个真实的主机已经重新创建了验证者的秘密,并且可以生成一个有效的写访问MAC。当从主机接收到MAC时,验证者将其与自己的结果进行比较。只有当两个mac匹配时,数据才会写入EEPROM。被写保护的用户内存区域不能被修改,即使MAC是正确的。
通过硬件设计对验证者的秘密和协处理器的主秘密进行读取保护。如果需要,可以对秘密进行写保护,这可以防止通过用已知秘密替换未知秘密来篡改身份验证者的内存数据。安装后,绑定数据(通常存储在协处理器的内存中)应该受到读取保护。只要在可信的生产站点上为应用程序设置了协处理器和身份验证器,这种级别的保护就有效。
DeepCover 技术的部署提供了最强大的经济保护,防止任何试图发现密钥的芯片级攻击。DeepCover技术包括许多电路,以主动监测模级篡改事件,先进的模路由和布局技术,以及额外的专有方法,以对抗攻击者的复杂能力。
这里的示例系统中的安全身份验证器既支持询问-响应身份验证,也支持经过身份验证的写操作(主机身份验证)。整个用户内存可用于询问-响应身份验证。双向身份验证适用于配置为安全数据存储(身份验证写入)的内存区域。
SHA-256的秘密、挑战和MAC分别为256位,是对旧的SHA-1身份验证的重大改进。本文介绍了一个现代的、安全的身份验证系统,它将主机系统(带有1-Wire主机的SHA-256协处理器)与传感器/外设模块(1-Wire SHA-256身份验证器)相匹配。协处理器内置的1-Wire主机将主机从实时执行1-Wire通信中解脱出来。DeepCover 1-Wire SHA-256认证器有三种内存配置,可用于3.3V和1.8V操作。(2,3)也可用于3.3V和1.8V,协处理器/主处理器(4,5)可用于所有三种身份验证器。SHA-256安全性从未如此简单。
(1)对相互认证的一般介绍见Maxim Integrated应用笔记3675,“用安全认证保护研发投资”。
(2)数据表DS28E15, DS28E22, DS28E25适用于3.3V工作。
(3)数据表DS28EL15, DS28EL22, DS28EL25适用于1.8V工作。
(4)数据表DS2465与DS28E15、DS28E22、DS28E25配合使用。
(5)数据表DS24L65与DS28EL15、DS28EL22、DS28EL25配合使用。
社群二维码
关注“华强商城“微信公众号
Copyright 2010-2023 hqbuy.com,Inc.All right reserved. 服务热线:400-830-6691 粤ICP备05106676号 经营许可证:粤B2-20210308