物聯網安全(終於)實現投資報酬
在電子產業,「安全」一詞通常意指對抗惡意軟體或蠻力入侵的各種防護機制。此觀點其實稍微狹隘。安全也包含了防範反向工程、軟體授權的保護、在資料儲存及移動之間維持加密、遠端裝置安全查驗及其他許多功能。例如韌體和資料保護。韌體必須鎖定以防 IP 竊盜或執行不當程式碼。資料傳輸期間必須加以保護,以防偽造或中間人攻擊。這兩種功能均需要使用加密金鑰,和其他許多安全功能相同。為此,金鑰本身的安全亦變得無比重要。具體做法可分為軟體或硬體式的技術。若以純軟體實作,則金鑰均儲存於裝置記憶體。此法於低價值資產廣泛使用,因為能以最低限度的前置成本提供基本水準的安全防護。但是裝置記憶體內的金鑰仍無法保護系統其他區塊的安全缺陷。而針對這一點開發進階的保護機制也可能極端複雜。硬體式的保護使用獨立晶片,在受保護、無法存取的區域產生加密金鑰。雖然此架構引發額外的物料成本,但是安全硬體元件能夠降低開發複雜度,並同時排除主機處理器的加密工作負載負擔。硬體式加密裝置最廣為人知的一例已是業界標準:Trusted Computing Group (TCG) 的受信任平台模組 (Trusted Platform Module,TPM)。
TPM 的原理
簡而言之,TPM 是一顆安全的微控制器,儲存加密金鑰、密碼和憑證等成品,讓裝置能夠進行驗證(證明裝置確實為其宣稱之裝置)並證明未遭侵入(安全查驗)。如此即建立起其他遠端裝置驗證、安全查驗以及安全開機等功能所需的基礎平台(圖 1)。
遠端裝置驗證與安全查驗
遠端裝置驗證與安全查驗功能是物聯網裝置的關鍵功能,讓裝置能夠安全連線至網路而僅需極少或無需使用者設定。為實現此功能,裝置使用安全演算法依據裝置獨特的私密加密金鑰來簽署數位憑證。接著,此憑證送往憑證授權單位 (Certificate Authority,CA) 驗證該裝置簽章,同時 CA 亦於憑證簽章。雙方均簽章之後,其他的連線端點即知道該裝置為受信任的來源,開始接受該裝置的通訊。此過程稱為公開金鑰基礎架構 (Public Key Infrastructure,PKI)。在此過程當中,TPM 提供數項效益。首先,加密金鑰儲存於 TPM 硬體中無法存取的區域,由於金鑰無法竄改,因此即可長時間維護該裝置的認證。當裝置可能數週甚或是數月才驗證一次(例如裝置製造完出廠至送達終端使用者手上),此功能即特別有效。其次,TPM 也為數位憑證提供安全儲存空間,確保憑證不遭變造。如此,驗證與安全查驗才有意義。
安全開機
TPM 雖然並不控制或執行裝置軟體,但應用程式仍可使用 TPM 儲存機敏資訊。其中最常見的一種資料集,即是執行時期前的組態資料。而此狀況下,就能夠實現所謂的安全開機功能。在安全開機過程中,與系統開機程序有關的檔案使用順序及/或檔案類型等資訊均儲存於 TPM 保密。當裝置開機時發現這些參數遭侵入,TPM 即可告知其他程式,如作業系統。接著,作業系統就能夠強制執行規則限制資料或應用程式的存取,甚或直接取消開機程序。這在防範執行不當程式碼(如惡意軟體)當中特別實用,亦可用於鎖定遭竊的裝置。
打造全方位系統安全
TPM 的目的僅為保護系統最敏感的資產。攻擊者仍可利用應用程式或作業系統的弱點進行攻擊。另外,儲存於裝置上的資料也可能遭不應存取的使用者取得。物聯網開發人員若想將 TPM 的保護功能擴大應用至整個系統,可選用 WIBU-SYSTEMS AG 的 CodeMeter ASIC 解決方案。ASIC 以智慧卡晶片的形式提供,支援 SPI 及 USB 通訊,能夠輕易整合於多種嵌入式及消費者裝置(圖 2)。
CodeMeter ASIC 與 TPM 同樣是 EAL 5+ 的安全硬體元件,內建美國聯邦資訊處理標準 (Federal Information Processing Standard,FIPS) 140-1 亂數產生器 (Random Number Generator,RNG) 產生加密金鑰,並支援 128 位元 AES、256 位元 SHA 和 224 位元 ECC 加密演算法。ASIC 的不同之處,在於其隨附的軟體。CodeMeter Protection Suite 讓開發人員將系統軟體一部分或全部的執行檔加密,藉此防範偵錯軟體及反向工程。CodeMeter Protection Suite 適用於多種泛用型及即時作業系統,且視系統需求亦提供不同的版本。軟體本身的整合屬於一次性的手續,無論加密範圍大小,對系統效能的衝擊均有限。WIBU-SYSTEMS AG 還為此平台提供 API。此 API 以 ANSI C 原始碼形態提供,能夠用於開發特殊功能或與其他安全技術整合,如 Intel® vPro、Intel® Advanced Encryption Standard – New Instructions (Intel® AES-NI) 以及 Intel® Software Guard Extensions (Intel® SGX)。CodeMeter ASIC 無論以何種方式實作,均構成安全的硬體錨點。
安全功能(終於)實現投資報酬
另一個區分 CodeMeter ASIC 與傳統 TPM 的關鍵功能,即是能夠作為數位版權管理平台使用。在 ASIC 最少 128 KB 的容量當中,約 60 KB 為儲存授權資訊的保留空間。這讓物聯網 OEM 能夠向終端使用者提供功能並持續控管存取,也支援如下的各種授權模式:
- 單使用者授權
- 網路授權
- 功能項目授權
- 依次計費授權
- 依時間計費授權
- 記名使用者授權
物聯網裝置 OEM Kontron 的 APPROTECT 安全解決方案即已開始利用 CodeMeter ASIC 功能。Kontron APPROTECT 是一套統包式安全解決方案,防範 IP 竊盜、竄改、反向工程以及著作權/授權侵害。將 CodeMeter ASIC 直接整合至各種嵌入式運算模組的主機板後,就能夠利用加密金鑰判斷裝置是否已獲准執行特定軟體(圖 3)。當然,這同時也提供了系統安全功能的基礎。
自我回本的安全功能
物聯網安全迄今一直因為開發社群缺乏理解,以及有成本無報酬的誤解而無法進步。但是硬體安全模組的設計讓兩個問題都獲得解決。硬體安全模組讓物聯網裝置開發人員能夠卸下開發高複雜度加密技術的負擔,由功能完整的 IC 將保護功能擴大至涵蓋整個系統。而企業經營者則能透過軟體授權模式回收安全功能的成本,甚至進一步獲利,成功轉型業務。