应用新型电子标签实现身份识别与认证及系统安全保护

2010-12-18 09:29:18 来源:《半导体器件应用》2010年01-02月刊 点击:1121
1  前言-认证如在必行
在当今竞争激烈的市场上,必须解决的问题是确保原设备生产商的产品质量与消费者的安全及满意,并获得最终用户有一个良好的应用环境,因为这些因素均是一个产品或系统成功与否的关键。而重要的是硬件和软件知识产权的安全管理与防止产品被非法拷贝的安全屏障等,是涉及保护商业利益的关键,也是开发投资所要求和期望的。与此同时,特别是在冒名顶替、伪造证件行为屡禁不止的社会中,要保证正确的身份识别至关重要。这不仅对个人如此,对电子产品也是如此。其系统供应商需要在外有黑客攻击这样的“外患”,内存克隆硬件这样的“内优”的环境中保护真产品的安全性。而实观这些安全需求的关键,是用电子标签实现身份识别与认证及系统安全保护。本文所述的新型电子标签就是低成本的1-Wire EEPROM芯片技术的应用,包括以下将叙述的1-Wire技术的DS2432、DS2401、DS2703及DS28E04-100型等芯片。
为此,本文将对1-Wire EEPROM芯片实现认证与系统安全保护方案作分析说明。首先对相关的基于密钥的认证与SHA-1算法的特征等基本理念作介绍。
2  何谓认证与SHA-1算法
认证是指两个或多个实体之间建立身份认可的过程。单向认证情况下,一方需向另一方证明其身份的合法性。对于双向认证,双方需要彼此向对方证明自己的身份。这其中安全不应依靠隐匿性(如非公开的保密算法),而应依靠算法及其密钥的力量。如果安全受到破坏,只需替换密钥,而不是替换整个系统。那基于密钥的认证过程是怎样的呐?
2.1 基于密钥的认证过程
基于密钥的认证过程,即密钥(私密)和需要认证的数据(“信息”)作为输入,来计算信息认证码。为证明信息认证码(MAC)发送方的合法身份,接收方可产生一个随机数,作为质询码回送给发送方。MAC发送方必须根据密钥、信息和质询码重新计算新的MAC,并返回给接收方。如果对应任何质询码发送方都可产生有效的MAC,则可以确信发送方是知道密钥的,其身份是合法的。图1所示为该过程,就是质询—响应认证。
2.2 SHA-1算法的主要特征
在加密学中,由信息产生固定长度MAC的算法称为“单向”散列函数。单向表示从固定长度MAC输出推演出较长的原始信息极为困难。相反,通过加密,其加密的信息与原始信息是成正比的。而SHA-1是经过深入研究和国际认可的单向散列算法。算法的数学基础是公开的。
SHA-1特征:不可逆性-从计算角度讲,不可能从MAC推演出输入信息或不可能根据SHA-1输出推算出对应的输入;实际上无法找到一种以上的输入以产生同一个给定的输出;高雪崩效应-输入的任何变化都会使MAC结果产生巨大的变化;经过了周密的审查和论证,SHA-1已经发展成为国际标准ISO/IEC 10118-3:2004,并符合US FIPS 180-1和180-2。
基于这些原因,很多芯片制造商选择SHA-1作为其安全存储器的质询—响应认证算法。
3  用1-Wire EEPROM芯片实现认证与系统安全保护方案
3.1 DS2432认证说明
3.1.1 DS2432芯片特征-具有先进而安全性的低成本EEPROM
DS2432具有先进而安全性的低成本1-Wire 1k位EEPROM,执行160位SHA-1算法只需1ms,采用ISO/IEC 10118-3安全散列算法(SHA-1)为所存储的数据提供质询/响应保护。DS2432的特性和SHA-1的安全性提供了一个低成本的电子手段来保护用户的知识产权;对大批量消费品进行售后跟踪;实现一个小型的电子支付系统,或者是作为一个防窜改的数据载体。DS2432也可用于两个独立的、远离的系统通过公用网络进行相互识别和安全地进行数据交换。图2(a)为DS2432内部组成与外接μC(微控制器)示意图。
3.1.2 DS2432认证架构与质询-响应认证流程
①DS2432认证架构
DS2432 1-Wire接口、1kb SHA-1安全存储器的主要数据单元和数据流路径如图2(b)所示。
可以看到8字节密钥和临时存储质询码的缓冲存储器(暂存器)。前面未曾提及的数据单元包括唯一的器件ID号(标准1-Wire特性)、四个用户EEPROM页面、控制寄存器和系统常数。器件ID用作1-Wire网络中的节点地址,同时还用于认证过程。用户存储器存放待认证“信息”的主要部分。系统常数有助于满足格式需求和完成填充功能,从而构成SHA-1计算的64字节输人数据块。控制寄存器执行特定的器件功能,例如可选的密钥写保护或EEPROM仿真模式;控制寄存器通常不参与认证过程。
可毫无限制地读取器件ID号和用户EEPROM。并可完全读/写访问缓冲存储器。可以直接装入密钥,但永远不能读取它。改变用户存储器或寄存器的内容要求主机和从机(即DS2432)计算出相同的写操作认证MAC,才可以打开缓冲存储器至EEPROM的路径。取决于MAC结果的不同用途,DS2432 SHA-1引擎具有三种不同的工作方式。任何情况下,SHA-1引擎均接收64字节输入数据,并计算出20字节MAC结果。不同之处在于输入数据。作为安全系统的根本需求,主机必须要么知道、要么能够计算出应用中有效/合法从器件的密钥。
②关于信息认定码
DS2432的SHA-1存储器件安全性依赖于双向数据通信中的信息认证码(MAC)。计算MAC仅需要输入公开的字符串(由存储器内容、器件的唯一序列号和随机质询码等组成),和密码字结合在一起进行SHA-1运算。以及一个作为SHA-1算法输入信息的机密密钥。计算出的摘要(或散列)被称为MAC。将MAC连同信息一起传输,提供了一种安全的方法,验证你是否知道密钥,以及在传输过程中数据未被篡改。在读操作期间,SHA-1存储器件以MAC响应,据此验证其是真实可信的,以及主机正确地接收数据。在写操作期间,主机提供MAC,以验证它有权对器件的存储内容进行修改和器件正确地接收到新存储器内容。 FPGA需实现下述功能,以利用这些器件的安全特性:产生随机数;知道一个用于芯片内部运算的密钥,且该密钥对外界不可见;同安全存储器一样进行包含密钥、随机数、附加数据及器件识别号在内的HASH计算;比较HASH计算结果
3.1.3 关于数据可靠与密钥防盗的解决
①数据可靠
除了提供从器件的认证功能外,同时强烈要求存放在器件中的数据是可信的。为实现这一点,DS2432的写访问是安全受限的。将数据从暂存器拷贝到EEPROM或控制寄存器之前,DS2432要求主机提供写访问认证MAC来证明其合法身份。DS2432根据暂存器中的新数据、密钥、需要更新的存储器页数据、以及其它数据计算该MAC。
合法主机知道密钥并可计算出有效的写访问MAC。拷贝命令执行过程中收到主机MAC时,DS2432将其与自身计算的结果进行比较。只有当二者匹配时,数据才会从缓冲存储器传输至目标EEPROM。当然,不能修改写保护的存储器页,即使MAC是正确的。
②密钥防盗
DS2432的架构允许直接向器件装入密钥。可通过读保护提供密钥保护,如果需要,还可以采用写保护提供密钥保护,这将永远不能改变密钥。只要在设备制造现场访问密钥是安全和可控的,这种保护等级是很有效的。
可以采用不同方法提升密钥保护等级:其一、由DS2432计算其密钥;其二、由DS2432在不同场合分阶段计算其密钥;其三、计算密钥时包含独一无二的器件ID号,生成与器件相关的密钥;组合第2和第3种方法。
如果采用上面第1种方法,每个DS2432自己计算其密钥,只知道计算密钥的原始数据;永远不会暴露密钥本身。如果采用第2种方法,密钥在不同场合分阶段计算,只知道密钥的“本地”原始数据。这种方法可有效控制“最终”密钥的信息。如果密钥是与器件相关的(第3种方法),主机还需要增加一个计算步骤。但如果一个器件的密钥被意外发现,潜在危害却可降至最低。如果密钥分阶段计算,并且与具体器件相关(第4种方法),可获得最高保护等级。但是,为确保系统保密性,主机和从机一样需要在不同地点进行设置。
计算密钥之前,必须先装入一个已知数值作为密钥。有了这个已知密钥,必须向四个存储器页之一写人计算新密钥的32字节数据。接下来,需要向DS2432的暂存器写入一个局部密钥。局部密钥可以是用于计算的存储器页码和独一无二的器件ID号(CRC字节除外),或任何其它与应用相关的8字节数据。如果指示DS2432计算密钥,则DS2432启动SHA-l引擎,使输人数据计算MAC。20字节MAC的最低8个字节自动拷贝到密钥存储器地址,立即成为有效密钥。
4  通过1-wire芯片(标签)识别、认证和控制配件及传感器
4.1 DS2401的应用
多种不同因素促成了对于用电子标签方式对传感器、配件和电子系统外设进行识别、安全认证或提供控制的需求,其示意图见图3所示。
这种识别能力使主系统能够自动对接人的传感器或配件进行校准,或进入适当的工作模式。安全认证提供了一个确保系统可靠、安全和高质量运行的机制,防止系统因劣质的OEM伪劣产品而受损。配件或外设中的控制功能使主系统能够激活一种模式或指示,给使用者一个可视化的反馈。主系统和配件之间的连接器能够提供的空闲引脚通常非常有限,这就给这项功能的添加一同时又不增加连接器的复杂性和成本一带来了挑战。1-Wire芯片为所有这些要求提供了解决方案,只需单个专用的连接器引线就可解决问题。
4.2 采用低成本、1-Wire数字接口IC为蜂窝电话电池组粘贴电子标签
用低成本、1-Wire数字接口硅标IC能够为电池组提供一个唯一的、不可更改的电子标签。这些器件能够提供—系列各具特色的功能,满足不同蜂窝电话的应用要求。低成本的DS2401是这一系列中的基本型号,包含64位ROM,可通过1-Wire串行数字接口访问。而DS2415除序列号外增加了一个实时时钟,在手机中省掉了用于实时时钟的备用电池。DSl822在64位ROM的基础上增加了数字温度计和16位EEPROM,可以取代电池组中的热敏电阻。DS2432提供1024位的用户EEPROM和一个512位的SHA-1算法用于加密EEPROM阵列。DS2432提供的安全机制能够有效遏制非OEM电池组,增加配件销售,更为重要的是,为使用锂基电池组的手机用户提供更高的安全保障。DS2436内部包括64位ROM和256位用户EEPROM用于数据存储,可替换电池组中的热敏电阻和手机中用于测量电池电压的ADC。图4为采用低成本、1-Wire数字接口IC为蜂窝电话电池组粘贴电子标签的示意图。
图4为采用低成本、1-Wire数字接口IC为蜂窝电话电池组粘贴电子标签的示意图。
图4中1-Wire数字接口,唯一的64位序列号,将电池组连线减少至3线,与设备选择无关,其用户可编程EEPROM可用16位(DSl822芯片)、或1024位(DS2432芯片)或256位(DS2436),而实时时钟(DS2415芯片),本地温度传感器:9至12位(DSl822)、13位(DS2436),电池电压ADC:10位(OS2436),512位SHA-1加密引擎(DS2432)。
4.3 专用IC轻松实现基于SHA-1的令牌认证系统
DS2705提供专门的SHA-1主机方案,可在基于微处理器或分离器件的系统中轻松实现基于SHA-1的令牌认证方案。对干使用DS2703/DS2704SHA-1认证IC的应用来说,该器件是非常理想的SHA-1主机。其特点为:执行基于SHA-1算法的质询-响应认证;1-Wire主/从接口支持标准和高速通信速率;输入和输出引脚,启动质询过程和指示认证通过/失败;可编程配置;2.7V至5.5V电源工作
4.4 识别、定位、监视和控制电路卡及模块
多卡系统控制器必须识别已安装的卡,监视热插拔部件,并检测/纠正系统故障情况。而DS28E04-100具有外部地址输入和系统监视功能的1-Wire、它集成了4Kb EEPROM,并具有可外部配置的1-Wire 地址,可用来存储卡的信息和识别卡的位置。可编程I/O0功能使系统主控制器能够监视卡的状态或者输出一个250ms的复位脉冲(如有必要)。DS28E04-100可完全通过两条连线的1-Wire接口驱动并操纵,这样即使在故障状态或卡未加电的情况下也可进行系统诊断和监视。1-Wire线长很容易延伸到数十米,上面可连接数百个1-W1re器件,使该器件用于机架环境非常理想。图5为DS28E04-100内部组成与识别、定位、监视和控制电路卡示意图。
主要特点:4096位通用EEPROM;7位地址输入用于配置物理位置;可提供脉冲输出(最短250ms)的两个通用I/O引脚;高噪声容限的增强型1-Wire前端;设计允许直接插入热/活动系统;全部操作通过两条连线的1-Wire
(下转P60) 
本文为哔哥哔特资讯原创文章,未经允许和授权,不得转载,否则将严格追究法律责任;
Big-Bit 商务网

请使用微信扫码登陆

x
凌鸥学园天地 广告