最近十年,SHA-1安全認證一直作為防偽及防止非法竊取知識產權的有效武器。隨著計算機技術的進步,用戶亟待獲取更高級別的安全方案。 基于這一需求,Maxim Integrated推出了一組新的SHA-256安全認證器和配套的安全協處理器。該系列產品提供高級物理安全,可實現無與倫比的低成本IP保護、防克隆及外設安全認證技術。本文介紹了基于SHA-256安全認證的工作原理,以及安全認證系統采用的雙向認證功能。 安全認證系統 實現安全認證系統需要用傳感器/外設模塊連接主機系統,圖1所示的系統由1-Wire SHA-256安全認證器和具有1-Wire主機功能的SHA-256協處理器組成。主機和外設之間的工作通過1-Wire接口單個引腳實現,降低互聯的復雜度,簡化設計,并降低成本。 SHA-256安全認證 該系統的SHA-256安全認證支持256位質詢,采用256位密鑰。圖1所示安全認證器為1-Wire從機,具有唯一的64位ROMID,作為安全認證計算的基本數據單元。系統設計者可將認證器的EEPROM分為可公開訪問(無保護)的區域和主機必須對自身進行安全認證才能訪問的區域。表1所示為可用的保護模式及保護措施組合。 內置1-Wire主機的SHA-256協處理器 圖1中的SHA-256協處理器為I2C從機,由主機處理器控制。從主機的I2C 端口看,SHA-256協處理器為256字節讀/寫存儲器,特定區域(數據源)分配給特殊目的。 安全邏輯 基于SHA的安全性依賴于由公開數據及密鑰計算得到的信息驗證碼(MAC ) 。為確保安全驗證,兩側(即主機或協處理器和1-Wire安全認證器)必須知道“永不泄露”的密鑰。此外,為實現最大程度的安全性,每個1-Wire安全認證器中的密鑰必須唯一。按照這種方式,一旦某個安全認證器的密鑰受到威脅,整個系統的安全性不受影響。 乍一看, 似乎沒有辦法達到這些目標。但我們采用了一個簡單的解決途徑,即利用一些“數據源”計算密鑰,然后在受信任/受控制的生產環境下將其安裝到器件內部。用于計算安全認證密鑰的數據源包括:主密鑰、綁定數據、分密鑰、安全認證器的ROM ID,以及填充符/格式化符號(“其它數據”),過程如圖2所示。盡管數據源在某個時間點是公開的,例如在受信任的生產環境,但計算得到的密鑰永遠不會暴露,始終是隱蔽的。 出于安全性和存儲空間的考慮,系統中所有安全認證器的唯一密鑰不能儲存在協處理器或主機中;協處理器僅在受保護的存儲器部分儲存主密鑰和綁定數據。分密鑰是系統常數,可在主處理器的固件中編碼并公開交換。讀取安全認證器的ROMID后,協處理器即可計算安全認證器的唯一密鑰,如圖2所示。然后安全認證器和協處理器共用唯一的安全認證密鑰,系統即可進行工作。 質詢-應答安全認證 安全認證的主要目的是驗證所連接的對象真實有效。基于對稱密鑰的認證方法將密鑰和被驗證數據(即“信息”)作為輸入以計算MAC。主機利用預先制定的密鑰和相同信息數據執行相同的計算,然后將計算得到的MAC與從安全認證器接收到的MAC進行比較。如果兩個MAC完全相同,則說明安全認證器是系統的一部分。 在這種SHA-256安全認證系統中,信息是主機質詢和安全認證器中儲存的數據單元組合。質詢基于隨機數據,這一點至關重要,如果質詢從不變化,就為資源竊取打開了方便之門,即攻擊者記錄并恢復有效的靜態MAC,而非即時計算MAC。 安全認證器利用質詢、密鑰、存儲器數據及附加數據計算一個MAC (圖3)。如果安全認證器能夠計算任何質詢碼的有效MAC,則可以認為其已知密鑰并被視為可靠。 數據保護(安全認證寫操作) 除有效性驗證以外,多數系統還需要確保安全認證器中儲存的數據可信。出于這一考慮,可對安全認證器中的部分或全部EEPROM進行“安全保護”。如果激活安全保護,在執行存儲器寫操作時,要求主機向安全認證器提供主機安全認證MAC,證明自身的有效性。 主機安全認證MAC是利用新的存儲器數據、已有存儲器數據、安全認證器的唯一密鑰以及ROM ID、附加數據計算得到的。安全認證器使用自身的密鑰按照相同方式計算一個MAC。 合法主機重建安全認證器的密鑰,能夠生成有效的寫保護MAC。接收到來自主機的MAC時,安全認證器將其與自身的計算結果進行比較。只有兩個MAC相匹配時,才允許將數據寫入EEPROM。即使MAC正確,也不能更改受寫保護的用戶存儲區域(圖4)。 密鑰保護 安全認證器的密鑰和協處理器的主密鑰通過硬件設計進行讀保護。如果需要,密鑰可采取寫保護,防止利用已知密鑰代替未知密鑰來篡改安全認證器的存儲數據。綁定數據一般儲存在協處理器的存儲器內,應在安裝之后進行讀保護。只要在受信任的生產環境下針對應用設置協處理器和安全認證器,這種級別的保護就非常有效。 DeepCover DeepCover技術提供強大、經濟的保護方案,可防止試圖偵測密鑰的芯片級攻擊。DeepCover技術包括多種監測芯片級篡改事件的有源電路,采用先進的芯片級布線、布局技術,以及專利技術,有效抵御各種攻擊性操作。 雙向安全認證 上述系統的密鑰認證支持質詢-應答安全認證和寫保護操作(主機安全認證)。整個用戶存儲器可用于質詢-應答安全認證,雙向安全認證適用于儲存安全數據(安全認證寫操作)的存儲器區域。 總結 SHA-256的密鑰、質詢和MAC均為256位,相對于原來的SHA-1安全認證方案有了顯著改進。本文介紹了最新的安全認證系統,該系統對主機系統(具有1-Wire主機的SHA-256協處理器)與傳感器/外設模塊(1-Wire SHA-256安全認證器)的匹配性進行驗證。協處理器內部的1-Wire主機代替主機執行實時1-Wire通信。提供三種存儲器配置的DeepCover 1-WireSHA-256安全認證器,采用3.3V和1.8V供電,也可選擇采用3.3V和1.8V供電的協處理器/ 主機, 支持三種安全認證器件。SHA-256安全認證的實施方案比以往任何時候都簡單。 |