DS1991L多密鑰iButton替代方案
摘要:DS1991L多密鑰iButton是由Maxim的6英寸晶圓廠生產(chǎn),該晶圓廠的生產(chǎn)工藝已過(guò)時(shí),且不再使用。DS1991L所提供的密碼保護(hù)已不再是數(shù)據(jù)安全領(lǐng)域的新技術(shù)。Maxim已開(kāi)發(fā)出安全級(jí)別高于DS1991L而且成本更低的替代方案。因此,為了降低舊設(shè)備升級(jí)到新的生產(chǎn)工藝時(shí)的開(kāi)發(fā)成本,Maxim啟動(dòng)了最后一次采購(gòu)DS1991L的流程,并鼓勵(lì)所有DS1991L用戶在現(xiàn)有庫(kù)存用完之前,將產(chǎn)品移植到更新、更安全的iButton器件。本應(yīng)用筆記討論了替代現(xiàn)有DS1991L應(yīng)用的三種選擇。每種替代方案都具有更好的性能。
本文引用地址:http://2s4d.com/article/156514.htmDS1991L概述及背景資料
密碼保護(hù)不再屬于先進(jìn)技術(shù)?;诿艽a保護(hù)的系統(tǒng)其最大缺陷是通過(guò)竊聽(tīng)通信可以最終破譯密碼。
由于DS1991L不提供任何寫(xiě)保護(hù)功能,惡意攻擊者可以很容易篡改密鑰信息(標(biāo)識(shí)、密碼、數(shù)據(jù)),從而造成器件在應(yīng)用中失效。具有質(zhì)詢-響應(yīng)認(rèn)證功能以及對(duì)應(yīng)用數(shù)據(jù)加密的器件成為更安全、性價(jià)比更高的替代方案。
在DS1991L應(yīng)用中,1-Wire®主機(jī)必須知道如何識(shí)別相關(guān)密鑰,必須知道對(duì)應(yīng)的密碼。使用DS1991L之前,必須安裝識(shí)別碼、密碼和密鑰數(shù)據(jù)。在此之后,器件可以進(jìn)行現(xiàn)場(chǎng)操作,經(jīng)常需要讀取密鑰數(shù)據(jù)、更換密鑰。該器件優(yōu)勢(shì)之一是內(nèi)置電池的NV SRAM技術(shù),即便主機(jī)(讀寫(xiě)頭)掉電,也能保證從暫存器到加密數(shù)據(jù)區(qū)域的復(fù)制過(guò)程不受影響。
DS1991L替代方案
三款iButton可用來(lái)替代DS1991L。這三款器件是DS1977、DS1961S和DS1963S。表1列出了這三款器件與DS1991L以及各自特性比較。
DS1977與DS1991L類似,采用密碼保護(hù)功能,兩者特性非常接近。DS1961S和DS1963S采用基于SHA-1的認(rèn)證方案,即采用加密措施。沒(méi)有加密時(shí),應(yīng)用數(shù)據(jù)是公開(kāi)的,并可讀取。DS1961S和DS1977采用EEPROM工藝,DS1963S采用NV SRAM工藝。
表1. 器件比較
器件型號(hào) | ||||
特性 | DS1991L | DS1977 | DS1961S | DS1963S |
用戶存儲(chǔ)器 | 3 x 48字節(jié),稱為密鑰 | 32K字節(jié) | 128字節(jié) | 8 x 2頁(yè),每頁(yè)32字節(jié)(共512字節(jié)) |
安全性 | 三個(gè)獨(dú)立的8字節(jié)密碼(每個(gè)密碼對(duì)應(yīng)一個(gè)密鑰),讀、寫(xiě)操作采用同一密碼 | 兩個(gè)8字節(jié)密碼(一個(gè)用于讀操作、一個(gè)用于完全訪問(wèn)) | 一個(gè)8字節(jié)密鑰,用于安全寫(xiě)操作 | 八個(gè)8字節(jié)密鑰 |
數(shù)據(jù)管理 | 三個(gè)8字節(jié)密鑰標(biāo)示區(qū)域(每個(gè)區(qū)域?qū)?yīng)一個(gè)密鑰) | 推薦1-Wire文件系統(tǒng) | 推薦1-Wire文件系統(tǒng) | 推薦1-Wire文件系統(tǒng) |
用于中間存儲(chǔ)和數(shù)據(jù)驗(yàn)證的數(shù)據(jù)緩存器 | 64字節(jié)暫存器 | 64字節(jié)暫存器 | 8字節(jié)暫存器 | 32字節(jié)暫存器 |
認(rèn)證 | — | — | 3字節(jié)質(zhì)詢碼;20字節(jié)MAC碼響應(yīng) | 3字節(jié)質(zhì)詢碼;20字節(jié)MAC碼響應(yīng) |
寫(xiě)操作計(jì)數(shù)器 | 0 | 0 | 0 | 16個(gè)(8個(gè)用于存儲(chǔ)器頁(yè)、8個(gè)用于密鑰) |
工藝 | NV SRAM | EEPROM | EEPROM | NV SRAM |
電源 | 內(nèi)置電池 | 主機(jī)寄生供電 | 主機(jī)寄生供電 | 內(nèi)置電池 |
1-Wire速率 | 標(biāo)準(zhǔn)速率 | 標(biāo)準(zhǔn)速率和高速模式 | 標(biāo)準(zhǔn)速率和高速模式 | 標(biāo)準(zhǔn)速率和高速模式 |
相對(duì)成本¹ | — | 高于DS1991L | 遠(yuǎn)低于DS1991L | 略高于DS1991L |
溫度范圍 | -40°C至+70°C | -40°C至+85°C | -40°C至+85°C | -40°C至+85°C |
其它功能 | 密碼不匹配時(shí),偽隨機(jī)數(shù)發(fā)生器產(chǎn)生虛假數(shù)據(jù) | 可工作在無(wú)密碼保護(hù)狀態(tài) | 存儲(chǔ)器和密鑰帶有寫(xiě)保護(hù);EPROM仿真模式 | 偽隨機(jī)數(shù)發(fā)生器;可用作SHA-1協(xié)處理器 |
DS1977密碼保護(hù)的32KB EEPROM iButton
與DS1991L相比,DS1977存儲(chǔ)器容量更大(32KB)、支持1-Wire高速模式并使用兩個(gè)密碼,一個(gè)用于讀操作,另一個(gè)用于完全訪問(wèn)操作。可禁止DS1977的密碼保護(hù)功能,使其用于無(wú)需安全保護(hù)的設(shè)備。盡管成本高于DS1991L,但從單字節(jié)成本看,DS1977在所有替代型號(hào)和DS1991L中成本最低。
由于采用EEPROM,DS1977應(yīng)用中的1-Wire主機(jī)必須能夠?qū)崿F(xiàn)強(qiáng)上拉,以便為讀、寫(xiě)操作提供電源。在接觸式操作環(huán)境下,可能導(dǎo)致讀操作錯(cuò)誤,在寫(xiě)操作時(shí)需要額外的防護(hù)措施。如果使能密碼保護(hù),則1-Wire主機(jī)必須知道至少一個(gè)密碼(讀操作或完全訪問(wèn))。對(duì)于任何基于密碼保護(hù)的系統(tǒng),可通過(guò)竊聽(tīng)通信最終破譯密碼。
將DS1977用于密碼保護(hù)之前,必須安裝密碼并使能了密碼保護(hù)功能。為了優(yōu)化大容量存儲(chǔ)器的使用,建議按照1-Wire文件系統(tǒng)(參考應(yīng)用筆記114:“1-Wire File Structure”)格式化并使用存儲(chǔ)器。然后將應(yīng)用文件(或數(shù)據(jù))寫(xiě)入DS1977。寫(xiě)操作完成后,該器件準(zhǔn)備就緒,可用于存儲(chǔ)區(qū)域操作,即可以訪問(wèn)存儲(chǔ)器數(shù)據(jù)并更改數(shù)據(jù)。
為將當(dāng)前的DS1991L應(yīng)用升級(jí)到DS1977,需要更改相應(yīng)的應(yīng)用程序,以識(shí)別新器件、器件命令,并在正確的時(shí)間置于強(qiáng)上拉狀態(tài),為器件供電。通常,建議在更改密碼前先禁止密碼保護(hù)功能。安裝密碼時(shí),須確保已定義密碼的所有8個(gè)字節(jié)。發(fā)送Copy Scratchpad命令之前,需要驗(yàn)證暫存器內(nèi)容。在新密碼從暫存器成功復(fù)制到對(duì)應(yīng)的存儲(chǔ)區(qū)域后,應(yīng)采用不同數(shù)據(jù)覆蓋暫存器內(nèi)容,以便擦除“開(kāi)放空間”保留的密碼。為在接觸式操作環(huán)境下可靠運(yùn)行,強(qiáng)烈建議按照應(yīng)用筆記159:“在iButton應(yīng)用中通過(guò)軟件方法實(shí)現(xiàn)可靠的1-Wire通信”中有關(guān)保證數(shù)據(jù)完整性的措施進(jìn)行設(shè)計(jì)。
評(píng)論