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