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

    浏览量

    87085
  • 晶圆
    +关注

    关注

    52

    文章

    4835

    浏览量

    127760
  • 暂存器
    +关注

    关注

    0

    文章

    12

    浏览量

    8023
收藏 人收藏

    评论

    相关推荐

    iButton数据记录器和IP 等级

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

    DS1991中文资料pdf

    密钥iButton DS1991是进行读/写操作的数据载体,它有三个独立的电子密钥,提供1,152位安全、非易失存储器。每个
    发表于 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次下载

    SHA iButton API 概述

    应用笔记 157 SHA iButton API 概述 Dallas SHA iButton® (DS1963S) 是一个智能令牌具有很高的安全性并支持多种服务本文简要介绍了使用SHA
    发表于 04-12 08:39 4次下载

    基于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 662次阅读

    DS1971 256位EEPROM iButton

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

    DS1991L密钥iButton替代方案

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

    DS1994L 4Kb、带有时钟的存储器iButton&re

    DS1994L 4Kb、带有时钟的存储器iButton®的替代DS1994L由Maxim的6英寸晶圆厂生产,所采用的制造工艺已经过时并且已经废除。因此,为了避免旧器件
    发表于 01-11 17:44 1048次阅读

    DS1921G Thermochron iButton 一种

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

    DS1992/DS1993 iButton存储器

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

    DS1922L,DS1922T 温度记录仪iButton

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

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

    DS9490B是一种USB桥接器和手柄,用于单个F5规格的iButton®。iButton安全地装入一个带锁扣的小盒中。对于那些经常需要更换或检测iButton的应用场合,推荐采用
    发表于 06-14 11:50 3441次阅读
    <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 1407次阅读
    <b class='flag-5'>DS</b>9098P <b class='flag-5'>iButton</b>固定圈