之於,安全晶片,CC標準明確了其安全驗證等級由低至高共分為 EAL1 至 EAL7。從EAL1到EAL7一共有7個等級。等級越高,表示透過認證需要滿足的安全保證要求越多,其安全特性越可靠。而每一個級別的安全認證,均需要從多個角度評估。
補充下,金融領域採用的普遍是EAL4+、EAL5+級別產品,而EAL 6 +已經達到的軍工級別。
最後,應用實踐的話,可以從以下兩個方面來評判:
一方面,是否已經商用,是否曾暴露出安全事件;
另一方面,攻擊的成本是否足夠高,包含時間、人力、資金投入等。
安全晶片可以抵禦哪些攻擊?
根據國際CC標準,安全晶片必須具備的抗攻擊要求,參見如下:
· 應保證安全晶片具備抵抗物理測定儲存器單元邏輯內容的保護能力;
· 應保證儲存單元邏輯或安全晶片內部佈線已暴露時,安全晶片具備抵抗根據儲存器單元邏輯恢復有用程式碼或者資訊裡的能力;
· 應保證安全晶片具備抵抗透過旁路分析導致儲存器敏感資訊暴露的保護能力,如分析執行安全晶片功耗圖,電磁場輻射或者主要處理功能的時序等;
· 應保證入侵安全晶片進行機械探測攻擊難以暴露儲存器程式碼和資訊;
· 應保證以電壓對比和電子束探測等攻擊方式難以暴露儲存器資訊;
· 應保證安全晶片應用不受操作環境變化干擾的影響。如果探測到內部變化或時鐘率、電壓、復位脈衝寬度以及溫度等規範外的賦值,使其無效;
· 應保證安全晶片應用的執行不受探測攻擊的影響;
· 應保證安全晶片能夠抵禦具備全面的安全晶片設計知識的人員使用高階專門工具透過FIB系統或者鐳射切割機對安全晶片修改的能力;
· 應保證安全晶片受到的光學錯誤攻擊、電磁場和放射線干擾,不會影響應用程式的正常執行或進入一個安全的狀態;
· 應保證安全晶片的設計具備一定的難度性,攻擊者必須透過大量的努力和使用高階的專業工具才能對邏輯建立模組進行反向工程提取。
講了這麼多專業拗口的術語,相信大家已經跟聽天書一樣了,總結來說,對於即使具備專業知識的技術人員來說,想攻擊安全晶片的難度也是相當之大的。
imKey的安全性如何?
imKey從軟硬多個角度對產品進行了苛刻的安全設計,此處重點介紹硬體層面,軟體層面會在今後的課堂中逐一講解。相信小夥伴們已經知道,imKey使用的是CC EAL6 + 安全晶片(下附一張EAL 6+ 安全晶片的圖片),這款晶片已經達到了軍工級別,具備以下安全特性:
· 內建真隨機數發生器;
· 雙核CPU,一個執行,一個安全檢測;
· 所有CPU暫存器具備掩碼保護功能;
· 所有NVM、RAM均被加密,且有專門的完整性驗證保護;
· 具備溫度、電壓、頻率、光感測器以及專用保護網;
· 具備DES、AES以及用於PKI運算的協處理器。
注:區塊鏈錢包的核心就是私鑰,而且私鑰其實質就是一串隨機數,隨機數的安全性直接影響著私鑰的安全強度。imKey使用的這款晶片就是採用真隨機數發生器生成的隨機數,真隨機數發生器通常採用來自熱噪聲方式生成隨機數,隨機性強,安全性高,很難被預測,這從源頭上保證了私鑰的機密性,也即確保了錢包的安全性。
安全晶片是否要應該開源?
對於安全晶片是否開源,如同你的部隊傾盡全力構建了一座軍事防禦堡壘,為了向世人證明你的堡壘安全性,你得把你的安全構建公之於眾,這樣無形中就會暴露給敵人,給予了可乘之機。安全晶片有其遵循的行業準則和國際標準,並且安全晶片已經被廣泛應用於軍事、金融、政務、民生等領域,開源將帶來不可估量的安全隱患,甚至威脅國土安全。因此不能將開源來作為評判安全晶片是否安全的標準,並且較之開源來說,黑盒性隱私更有利於保證其安全性。
最後,今天大量的安全晶片知識聽起來比較晦澀,總結來說建議大家在購買硬體錢包時,儘量選購採用了安全晶片且具備安全認證資質的產品。