數字安全是電子設計領域最熱門的話題之一。對于許多工程師,當提到安全性時,腦海中閃現(xiàn)出的第一個詞可能就是加密??赡苤挥袠O少數人會想到安全認證。然而,安全認證是安全器件或交易的基礎功能。
我們以家庭銀行為例,顯然,您希望余額和賬號等保密信息能夠加密,此時,您的網絡瀏覽器上會顯示一個小鎖標識以及“https://”。也就是說,網絡瀏覽器在建立安全連接時,第一件事情就是檢查銀行站點的真實性;換句話說,就是要對銀行站點進行安全認證。實際上,如果將登錄和密碼信息發(fā)送到釣魚網站,危害性非常大,因為這些憑據可被進一步重用,以銀行賬戶持有人的名義執(zhí)行未經授權的交易,而實際持有人卻毫不知情。通過TLS/SSL協(xié)議,一般能夠實現(xiàn)安全的互聯(lián)網瀏覽,確保真實性和保密性。
安全認證對于物聯(lián)網(IoT)應用也非常重要:不可信的終端可能會將整個基礎設施置于危險之中。我們以連接到配電系統(tǒng)的智能電表為例。對于要破壞電網的攻擊者,一種簡單方法是將病毒或惡意軟件加載到智能電表。然后被干擾的電表會向基礎設施發(fā)送假消息,反應出的功耗與實際功耗相差非常大。電網將會出現(xiàn)不平衡;更壞情況下,攻擊可能觸發(fā)全網斷電。為了避免這種情況,必須檢驗電表硬件和固件的真實性。對固件進行安全認證的過程稱為安全引導。
實施有效的安全認證方法
現(xiàn)在我們已經理解了安全認證的重要性,接下來我們討論如何實施。最簡單的安全認證方法是使用密碼。在智能電表的例子中,設備可向電網控制系統(tǒng)發(fā)送密碼。服務器驗證密碼,然后再授權執(zhí)行下一步。雖然這種方法非常容易理解,但并不是最好的方法。攻擊者很容易監(jiān)聽通信、記錄密碼,然后用其來對非真實的設備進行安全認證。所以,我們認為基于密碼的安全認證方法比較薄弱。
數字領域執(zhí)行安全認證的更好方法是質詢-應答方法。我們來看看兩種方式的質詢-應答方法:一種基于對稱加密,另一種基于非對稱加密。
對稱加密安全認證依賴于共享密鑰。主機和被認證設備持有相同的密鑰。主機向設備發(fā)送一個隨機數,即質詢。設備計算一個數字簽名,該簽名是密鑰和質詢的函數,并發(fā)送回主機。主機執(zhí)行相同的運算并對結果進行比較。如果兩項計算結果一致,則設備通過安全認證(圖1)。為了確保結果不被模仿,必須使用數學屬性足夠的函數;例如必須保證不可能通過計算結果獲得密鑰。SHA-256等安全散列函數滿足這些要求。對于質詢-應答方法,設備在不泄露密鑰的情況下證明自己知道密鑰。即使攻擊者攔截通信,也無法接觸到密鑰。
圖1. 基于對稱加密的安全認證依賴于主機和設備之間的共享密鑰。
基于非對稱加密的安全認證依賴于兩個密鑰:私鑰和公鑰。只有被認證的設備知道私鑰,而公鑰可透露給希望對設備進行安全認證的任何一方。與上文中討論的方法一樣,主機向設備發(fā)送質詢。設備根據質詢和私鑰計算數字簽名,并將其發(fā)送給主機(圖2)。但此時,主機使用公鑰對數字簽名進行驗證。用于計算數字簽名的函數擁有特定數學屬性至關重要。非對稱方法中最常用的函數是RSA和ECDSA。同樣,設備也在不泄露密鑰情況下提交了自己知道密鑰的證明,即私鑰。
圖2. 非對稱密鑰安全認證依賴于公鑰和私鑰。
為什么安全IC有益于安全認證
質詢-應答安全認證始終要求被認證的對象持有密鑰。對稱加密方法中,該密鑰為主機和設備之間的共享密鑰;對于非對稱加密方法,該密鑰為私鑰。無論哪種情況,一旦密碼泄露,質詢-應答式安全認證就失效了。安全IC有助于防范這種情況。安全IC的一項基本特性是為密鑰和密碼提供強保護。
Maxim提供三種支持安全認證的解決方案。
安全認證IC:IC是可配置但固定功能的器件,為實施質詢-應答安全認證提供最經濟的途徑,并且具有基本的加密操作。
安全微控制器:在支持質詢-應答安全認證的基礎上,提供全面的密碼學功能,包括加密。
低功耗微處理器:盡管這些產品并非專用于加密,但擁有支持強安全認證所需的電路模塊。
安全認證IC中,基于SHA-256的產品支持基于共享密鑰的安全認證(圖3),而基于ECDSA的IC使用私鑰/公鑰對(圖4)。除加密引擎外,這些產品擁有板載EEPROM存儲器。該存儲器是可配置的,可用于儲存經過安全認證的用戶數據,例如傳感器的校準信息。
基于SHA-256的產品是最經濟的方案。盡管支持相互認證,但共享密鑰的分發(fā)要求采取一定的防范措施,保證設備制造和配置期間不會泄露密鑰。為克服該缺點,可在Maxim工廠對密鑰進行編程。
圖3. SHA-256密鑰安全認證基于共享密鑰。
Maxim的DS28E15/22/25 IC基于SHA-256技術,擁有不同的內部存儲器容量。由于主機和設備側儲存有相同的密鑰,我們建議主機側使用協(xié)處理器,例如DS2465。
DS28C36和DS28E35等基于非對稱加密的產品提供更靈活的方法,因為主機側不需要防止密鑰被泄露。然而,為降低公鑰算法負荷并且提供附加安全操作,可利用DS2476 (DS28C36的配套IC)等主機側協(xié)處理器簡化系統(tǒng)方案的開發(fā)。
圖4. 基于ECDSA的安全認證算法依賴于私鑰/公鑰對。
支持對稱和非對稱加密的安全微控制器
Maxim提供各種各樣的安全微控制器,包括從MAX32590 (ARM9,工作頻率384MHz)應用級處理器(支持Linux等高級操作系統(tǒng))到MAX32555或MAXQ1061等小尺寸協(xié)處理器。
這些微控制器支持對稱和非對稱加密,適用于數字簽名和安全認證,以及加密算法。器件擁有支持SHA、RSA、ECDSA和AES的硬件加速器,以及完整的加密算法庫,提供符合標準的整體API方案。器件內置安全引導,所以能夠保證固件可靠性。得益于齊全的加密功能,器件能夠支持多種安全認證方法。
MAXQ1061協(xié)處理器不僅支持安全認證,而且也支持使用IP的TLS/SSL標準安全通信協(xié)議的大多數關鍵步驟。在芯片內實現(xiàn)TLS協(xié)議可提高安全水平并減輕主處理器執(zhí)行計算密集型任務的負荷。這對于資源受限的嵌入式系統(tǒng)非常寶貴。
MAX32626等低功耗微控制器的目標應用為可穿戴設備,所以不是“安全為中心”的IC。然而,隨著攻擊現(xiàn)象日益頻繁,產品的設計也充分考慮了未來的安全挑戰(zhàn)。所以,MAX32626具有支持安全認證的硬件信賴保護單元,以及用于加密的硬件AES和內置安全引導。
總結
本文中,我們探討了什么是安全認證及其重要性。同時我們也看到,得益于已有基于硅的方案,不需要是加密專家,也完全能夠實現(xiàn)安全認證。
推薦閱讀:
物聯(lián)網浪傳感器技術的研究方向有哪些?
這十大傳感器 是當之無愧的“黑科技”之王
電池管理系統(tǒng)BMS,靜電防護不到位咋補救?