0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

DS1991L多密钥iButton替代方案

星星科技指导员 来源:ADI 作者:ADI 2023-02-14 10:20 次阅读

DS1991L多密钥iButton是由Maxim的6英寸晶圆厂生产,该晶圆厂的生产工艺已过时,且不再使用。DS1991L所提供的密码保护已不再是数据安全领域的新技术。Maxim已开发出安全级别高于DS1991L而且成本更低的替代方案。因此,为了降低旧设备升级到新的生产工艺时的开发成本,Maxim启动了最后一次采购DS1991L的流程,并鼓励所有DS1991L用户在现有库存用完之前,将产品移植到更新、更安全的iButton器件。本应用笔记讨论了替代现有DS1991L应用的三种选择。每种替代方案都具有更好的性能。

DS1991L概述及背景资料

密码保护不再属于先进技术。基于密码保护的系统其最大缺陷是通过窃听通信可以最终破译密码。

由于DS1991L不提供任何写保护功能,恶意攻击者可以很容易篡改密钥信息(标识、密码、数据),从而造成器件在应用中失效。具有质询-响应认证功能以及对应用数据加密的器件成为更安全、性价比更高的替代方案。

在DS1991L应用中,1-Wire®主机必须知道如何识别相关密钥,必须知道对应的密码。使用DS1991L之前,必须安装识别码、密码和密钥数据。在此之后,器件可以进行现场操作,经常需要读取密钥数据、更换密钥。该器件优势之一是内置电池的NV SRAM技术,即便主机(读写头)掉电,也能保证从暂存器到加密数据区域的复制过程不受影响。

DS1991L替代方案

三款iButton可用来替代DS1991L。这三款器件是DS1977、DS1961S和DS1963S。表1列出了这三款器件与DS1991L以及各自特性比较。

DS1977与DS1991L类似,采用密码保护功能,两者特性非常接近。DS1961S和DS1963S采用基于SHA-1的认证方案,即采用加密措施。没有加密时,应用数据是公开的,并可读取。DS1961S和DS1977采用EEPROM工艺,DS1963S采用NV SRAM工艺。

表1. 器件比较

器件型号
特性 DS1991L DS1977 DS1961S DS1963S
用户存储器 3 x 48字节,称为密钥 32K字节 128字节 8 x 2页,每页32字节(共512字节)
安全性 三个独立的8字节密码(每个密码对应一个密钥),读、写操作采用同一密码 两个8字节密码(一个用于读操作、一个用于完全访问) 一个8字节密钥,用于安全写操作 八个8字节密钥
数据管理 三个8字节密钥标示区域(每个区域对应一个密钥) 推荐1-Wire文件系统 推荐1-Wire文件系统 推荐1-Wire文件系统
用于中间存储和数据验证的数据缓存器 64字节暂存器 64字节暂存器 8字节暂存器 32字节暂存器
认证 3字节质询码;20字节MAC码响应 3字节质询码;20字节MAC码响应
写操作计数器 0 0 0 16个(8个用于存储器页、8个用于密钥)
工艺 NV SRAM EEPROM EEPROM NV SRAM
电源 内置电池 主机寄生供电 主机寄生供电 内置电池
1-Wire速率 标准速率 标准速率和高速模式 标准速率和高速模式 标准速率和高速模式
相对成本¹ 高于DS1991L 远低于DS1991L 略高于DS1991L
温度范围 -40°C至+70°C -40°C至+85°C -40°C至+85°C -40°C至+85°C
其它功能 密码不匹配时,伪随机数发生器产生虚假数据 可工作在无密码保护状态 存储器和密钥带有写保护;EPROM仿真模式 伪随机数发生器;可用作SHA-1协处理器

DS1977密码保护的32KB EEPROM iButton

与DS1991L相比,DS1977存储器容量更大(32KB)、支持1-Wire高速模式并使用两个密码,一个用于读操作,另一个用于完全访问操作。可禁止DS1977的密码保护功能,使其用于无需安全保护的设备。尽管成本高于DS1991L,但从单字节成本看,DS1977在所有替代型号和DS1991L中成本最低。

由于采用EEPROM,DS1977应用中的1-Wire主机必须能够实现强上拉,以便为读、写操作提供电源。在接触式操作环境下,可能导致读操作错误,在写操作时需要额外的防护措施。如果使能密码保护,则1-Wire主机必须知道至少一个密码(读操作或完全访问)。对于任何基于密码保护的系统,可通过窃听通信最终破译密码。

将DS1977用于密码保护之前,必须安装密码并使能了密码保护功能。为了优化大容量存储器的使用,建议按照1-Wire文件系统(参考应用笔记114:“1-Wire File Structure”)格式化并使用存储器。然后将应用文件(或数据)写入DS1977。写操作完成后,该器件准备就绪,可用于存储区域操作,即可以访问存储器数据并更改数据。

为将当前的DS1991L应用升级到DS1977,需要更改相应的应用程序,以识别新器件、器件命令,并在正确的时间置于强上拉状态,为器件供电。通常,建议在更改密码前先禁止密码保护功能。安装密码时,须确保已定义密码的所有8个字节。发送Copy Scratchpad命令之前,需要验证暂存器内容。在新密码从暂存器成功复制到对应的存储区域后,应采用不同数据覆盖暂存器内容,以便擦除“开放空间”保留的密码。为在接触式操作环境下可靠运行,强烈建议按照应用笔记159:“在iButton应用中通过软件方法实现可靠的1-Wire通信”中有关保证数据完整性的措施进行设计。

DS1961S带有SHA-1引擎的1K位保护EEPROM iButton

DS1961S的安全性比DS1991L高得多。DS1961S采用EEPROM,并支持1-Wire高速通信模式。与基于密码的系统不同,该器件的安全功能基于所安装的密钥,而且永远不会在存储区之间传输(暴露信息)。密钥可以是器件特定信息,如:利用主机密钥、存储器数据、注册码以及常数按照SHA-1算法计算得到密钥。除密钥外,所有保存在DS1961S的数据开放读取权限。但是,进行写操作时需要知道密钥。需要进行数据加密,以防止公众得到器件存储的数据。这三款替代型号,包括DS1991L在内,DS1961S的成本最低。由于采用EEPROM,DS1961S可从1-Wire主机获得供电电源。在接触式操作环境下,器件的写操作与NV SRAM器件相比,数据遭到破坏的风险略高一些。

在5V电源、采用2.2kΩ或更低上拉电阻的环境中,DS1961S 应用中的1-Wire主机无需采取任何特殊的供电措施。如果上拉电压低于5V,应减小上拉电阻(最方便的方法,见应用笔记4255:“为1-Wire器件的扩展功能供电”),或采用强上拉以便提供写操作和器件运行SHA-1引擎所需的额外功率。DS1961S主机必须知道或能够计算所需的密钥,以便验证DS1961S是系统合法用户,从而可以更改EEPROM数据。与计算自身SHA-1 MAC码(信息认证码)不同,主机可使用带EEPROM的DS2460 SHA-1协处理器。

使用DS1961S之前,必须先定义、安装器件密钥。经过计算的密钥其安全性要高于类似于加载密码的固定密钥(常数)。其次,应用所需的数据必须写入器件。对于容量相对较小的存储器,可选择使用1-Wire文件系统。如果适用,可对单页或所有存储器页以及密钥进行写保护,以防止使用过程中发生变化。也可以将其中一个存储器页置于EPROM仿真模式,该模式下对应位只能从1变为0;该项功能在一些应用中非常有用。初始设置完成后,DS1961S准备就绪可以进行现场操作,即访问存储器数据、改写数据。

为将现有的DS1991L应用升级到DS1961S,需要以下两个改动:

修改应用软件,使其识别新器件并知道如何使用。

如果工作在低压环境,必须通过软件激活强上拉功能,以便为计算和安装新密钥、计算页MAC和更新EEPROM提供所需的功率。

发送Copy Scratchpad命令之前,始终验证暂存器。为保证在接触式操作环境下可靠运行,强烈建议按照应用笔记159中有关保证数据完整性的措施进行设计(参见上文)。有关SHA-1安全性的其它信息,请参考本文档最后给出的应用笔记列表。需要强调的是应用笔记1820:“

White Paper 1: SHA Devices Used in Small Cash Systems

”中说明了DS1961S在电子支付应用中作为令牌的使用情况。

DS1963S SHA iButton

DS1963S的安全性远远高于DS1991L。DS1963S采用NV SRAM,对存储器页和密钥执行写操作计数,并支持1-Wire高速通信模式。DS1963S和DS1961S类似,均采用密钥进行认证;密钥已安装但永远不会在存储区之间传输(暴露信息)。器件支持8个密钥,每个密钥对应两个存储器页。这些密钥可以是器件特定信息,如:利用主机密钥、存储器数据、注册码、存储器页号以及常数按照SHA-1算法计算得到的密钥。除密钥外,保存在DS1963S的数据可以开放读取权限。为了防止公众得到器件存储的数据,需要进行数据加密。DS1963S与DS1961S的不同之处在于:在不知道密钥的情况下也可以更改DS1963S的数据;器件的存储器页或密钥不带写保护功能。DS1963S成本低于DS1977;如果四个或多个应用共用一片DS1963S,每个应用的成本低于其它几款替代型号。由于采用NV SRAM,读操作、写操作以及SHA-1计算所需电源均由内部电池提供。这一功能对写操作非常有利。一旦接受Copy Scratchpad命令,即使器件断开与主机的连接也不会影响数据传送到存储器页或密钥。

DS1963S的存储器数据在无需知道密钥的前提下即可进行修改。因此,必须保留部分器件提供的应用数据空间,用于存储“签名”,以便验证应用数据的有效性。器件通过质询-响应进行认证后,还要进行其它认证操作,利用存储器页的内部密钥进行验证。签名可以是20字节的SHA-1 MAC码。密钥用来计算签名数据,通常不存储在DS1963S内;除器件认证密钥外,主机必须知道签名密钥,以便验证数据并产生将要写入器件的验证数据。与计算自身SHA-1 MAC不同,主机应使用带EEPROM的DS2460 SHA-1协处理器。在存储旧数据的地址(例如,电子支付应用中完成一次支付后),为防止回复攻击,嵌入签名的计算必须包含页的写操作计数值。

使用DS1963S之前,必须先定义、安装器件认证密钥。经过计算的密钥其安全性要高于类似于加载密码的固定密钥(常数)。其次,应将所需的数据,包括用于数据认证的有效嵌入签名,写入器件。为允许多个应用共用一个DS1963S,推荐使用1-Wire文件系统。初始化设置完成后,DS1963S就绪可以进行现场操作,即可访问存储器并更改数据。

为将现有的DS1991L应用升级到DS1963S,需要对应用软件进行修改,以识别新型号、了解命令、识别相应的数据页(多页)并可验证器件及其存储数据的有效性。典型情况下,应用改变存储区的数据,需要计算并在新的数据页嵌入有效签名。发送Copy Scratchpad命令之前总是需要验证暂存器。为保证在接触式操作环境下可靠运行,建议按照应用笔记159有关保证数据完整性的措施进行设计。有关SHA-1安全性的详细信息,请参考本文档最后给出的应用笔记列表。需要强调的是应用笔记1820中说明了DS1963S在电子支付应用中作为令牌使用以及SHA-1协处理器的情况。

方案选择

上述每款替代器件需要对现有软件进行改动(如DS1977)或需要开发新软件。DS1977需要(DS1961S可能需要)将1-Wire主机升级到支持强上拉,以便提供足够的功率。表2列出了每种替代方案的优、缺点。

表2. 替代方案

DS1977 DS1961S DS1963S
所需主机硬件改动 增加强上拉 增加强上拉(必要时)
应用软件改动 修改现有软件 需要开发新软件 需要开发新软件
优点 •存储器容量远大于DS1991L、DS1961S以及DS1963S

poYBAGPq7_OAWCwhAAABudunrMQ979.gif?imgver=1

•独立密码,分别用于读操作和完全访问
•成本最低

poYBAGPq7_OAWCwhAAABudunrMQ979.gif?imgver=1

•无法捕获密码

poYBAGPq7_OAWCwhAAABudunrMQ979.gif?imgver=1

•写操作需要知道器件密钥

poYBAGPq7_OAWCwhAAABudunrMQ979.gif?imgver=1

•基于质询-响应认证和安全写操作,支持更高的安全等级
•无法捕获密码

poYBAGPq7_OAWCwhAAABudunrMQ979.gif?imgver=1

•基于质询-响应认证、数据内嵌签名和写操作计数值,支持更高的安全等级

poYBAGPq7_OAWCwhAAABudunrMQ979.gif?imgver=1

•多达8个程序可以共用同一器件
缺点 •安全性与DS1991L相似

poYBAGPq7_OAWCwhAAABudunrMQ979.gif?imgver=1

•单个程序或多个程序共用同一密钥
•单个程序或多个程序共用同一密钥 •没有密钥的情况下可以更改数据或使其无效

如果不能修改硬件(强上拉),则DS1977无法用作替代产品。

如果硬件接口无法提供足够的电流支持DS1961S通信,DS1963S则是唯一选择。由于该器件的安全性基于密钥(而不是密码),DS1963S的安全性更高,如果4个应用或更多应用共用同一器件,性价比也更高。DS1963S的应用软件比较复杂,但速度不会低于DS1991L,因为该器件支持1-Wire高速通信模式。DS1963S的缺点是每个程序由于嵌入签名,数据容量较低。但是,单个程序可利用多个数据存储器页和密钥补偿这一缺陷。

如果系统能够选择强上拉或不需要强上拉,DS1961S则是一个性价比较高的选择。由于DS1977与DS1991L的原理最接近,使用该器件对软件的改动最少。

总结

本应用笔记讨论了替代现有DS1991L应用的三款器件以及采用新技术的优势。每个器件都需要对应用软件进行修改(有些情况下改动较大)以及对1-Wire主机硬件进行修改(DS1963S除外,DS1961S在某些情况下不需要)。尽管软件改动较大,但采用基于SHA-1认证的应用具有更高的安全性,并且性价比高于DS1991L。利用DS2460 SHA-1协处理器有助于简化实现SHA-1安全算法所需的软件改动。

审核编辑:郭婷

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

    关注

    8

    文章

    859

    浏览量

    86646
  • 晶圆
    +关注

    关注

    52

    文章

    4527

    浏览量

    126445
  • 暂存器
    +关注

    关注

    0

    文章

    12

    浏览量

    7851
收藏 人收藏

    评论

    相关推荐

    iButton数据记录器和IP 等级

    `摘要:Thermochron® (DS1922LDS1922T、DS1921G)和Hygrochron™ (DS1923) iButton
    发表于 09-22 14:25

    DS1991中文资料pdf

    密钥iButton DS1991是进行读/写操作的数据载体,它有三个独立的电子密钥,提供1,152位安全、非易失存储器。每个密钥分区包括3
    发表于 04-15 10:30 85次下载

    DS9092R,pdf,datasheet (iButton

    The DS9092R iButton® port provides the electrical contact necessary for mating remotely located
    发表于 10-03 08:33 13次下载

    DS9107,pdf datasheet (iButton

    The iButton® Capsule is a mechanical enclosure to protect Temperature Logger iButtons (DS
    发表于 11-26 09:45 32次下载

    基于DS1991和PIC单片机的智能水卡设计

    DS1991是一种多密钥信息纽扣,文章介绍了DS1991的主要特点、工作原理及读写方法。给出了一种基于DS1991和PIC单片机的智能水卡设计方案
    发表于 12-01 15:47 53次下载
    基于<b class='flag-5'>DS1991</b>和PIC单片机的智能水卡设计

    Alternatives to the DS1991L Mu

    Alternatives to the DS1991L MultiKey iButton Abstract: The DS1991L multikey iButton
    发表于 06-09 21:16 577次阅读

    DS1971 256位EEPROM iButton

    DS1971 256位EEPROM iButton 概述 The DS1971 256-bit EEPROM iButton is a rugged read/write data
    发表于 07-30 23:01 1005次阅读

    DS1991L密钥iButton替代方案

    DS1991L密钥iButton替代方案 摘要:DS1991L
    发表于 09-18 09:00 1376次阅读

    DS1994 4K位、带有时钟的存储器iButton

    DS1994 4K位、带有时钟的存储器iButton   DS1994存储器iButton是一款坚固耐用的读/写数据载体,可用作本地数据库,仅需极少的硬件即可访问
    发表于 01-11 17:47 1116次阅读

    DS1921G Thermochron iButton 一种

    DS1921G Thermochron iButton 一种坚固的自主系统   iButton®是一种坚固的自主系统,它测量温度并将结果记录在受保护的存储器单元
    发表于 04-10 21:17 1261次阅读

    DS1992/DS1993 iButton存储器

    DS1992/DS1993 iButton存储器(以下简称DS199_)是坚固耐用的读/写数据,作为一个本地化的数据库,很容易以最小的硬件访问。非易失性内存和可选的计时功能提供了一个简
    发表于 04-28 10:24 1608次阅读

    DS1922L,DS1922T 温度记录仪iButton

    DS1922L/T温度记录iButton®是坚固耐用的自供电系统,能够测量温度并将测量结果记录在受保护的存储器内
    发表于 04-29 09:38 2802次阅读

    DS9490,DS9490B,DS9490R USB至1-Wire/iButton适配器

    DS9490B是一种USB桥接器和手柄,用于单个F5规格的iButton®。iButton安全地装入一个带锁扣的小盒中。对于那些经常需要更换或检测iButton的应用场合,推荐采用
    发表于 06-14 11:50 3245次阅读
    <b class='flag-5'>DS</b>9490,<b class='flag-5'>DS</b>9490B,<b class='flag-5'>DS</b>9490R USB至1-Wire/<b class='flag-5'>iButton</b>适配器

    DS9098P iButton固定圈

    DS9098P iButton的固定是一种低成本,表面贴装设备,以确保在PCB上的F5的iButton
    发表于 02-29 10:39 1279次阅读
    <b class='flag-5'>DS</b>9098P <b class='flag-5'>iButton</b>固定圈

    基于DS1991加密存储型信息纽扣的智能水卡的设计

    DS1991是一种加密存储型信息纽扣,它有三个独立的电子密钥分区(提供1152位的可读写非易失安全存储器)和512位暂存器。每个密钥分区包括384位,具有独立的64位密码和64位ID码。对密钥
    的头像 发表于 11-08 07:06 3272次阅读
    基于<b class='flag-5'>DS1991</b>加密存储型信息纽扣的智能水卡的设计