<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Secure Key Store安全密鑰儲存

jf_pJlTbmA9 ? 來源:jf_pJlTbmA9 ? 作者:jf_pJlTbmA9 ? 2023-08-10 11:11 ? 次閱讀

密鑰是系統安全的基礎

一個安全系統的基礎,在與其所擁有的密鑰,用以提供系統身分的真實性與確保系統數據的機密性,其最基本需要具備的密鑰,包括了:

Hardware Unique Key (HUK) 每個設備實體所擁有的專屬密鑰,具有唯一性與秘密性,用來生成不同應用所需的密鑰與鏈接裝置專屬的加密數據

Root of Trust Public Key (ROTPK) 用以驗證簽章的公鑰,在裝置安全開機流程中,確保只有通過認證的軟件能夠在裝置上執行

為了確保系統的安全,無論HUK或ROTPK,都必須不能被修改。

除此之外,因應各種應用,在系統中還可能存在各種不同功能的密鑰,包括加、解密用的AES Key,驗證簽章用的RSA Key或ECC Key等等。

這些密鑰架構在密碼學的基礎上,提供系統身分認證,數據保護,傳輸加密等等功能,是系統中,所有安全的基礎,因此對密鑰本身的儲存與保護,更是整個系統中,最重要的一環,這里我們將儲存密鑰的地方,稱之為Key Store。

Key Store的特點

為了確保密鑰的安全,Key Store密需要具備幾個特點

所儲存的秘鑰,必須是一個不可分割整體

在Key Store中的每一把密鑰,都必須被視為一個整體來建立、更改與刪除,因為,若一把密鑰有機會被以已知的值取代其部分內容,便很容易被使用分割與暴力破解的方法攻擊 (divide and conquer brute-force attack)。

根據密鑰的種類,提供不同的儲存類型,包括

靜態儲存

靜態儲存的密鑰,必須具有不可更改的特性,這通常會使用ROM或Fuse的特性來達成。然而,雖然靜態儲存的密鑰無法被更改,卻仍必須可以被撤銷,撤銷后的密鑰,將不再能夠存取或利用,以確保密鑰使用上的安全。

短期儲存

短期儲存的密鑰,有較短的壽命,這可以是只存在當次聯機期間,也可以只存在當次的上電周期,或是只存續在裝置當次的注冊期間內,這些特性,通??赏高^使用Flash或SRAM為儲存媒體來達成。

設定密鑰屬性,以限制密鑰的使用范圍

根據密鑰的用途與對應的密碼學算法,可限縮密鑰的使用范圍,包括限制只能用于AES加解密、只能用于ECC簽章、只能用于驗證等。這樣的限制理由,主要基于下面幾點

限制CPU對密鑰的讀取,可避免因軟件漏洞造成密鑰的暴露。

限制密鑰的使用范圍,可以降低當密鑰被破解時,損失波及的范圍。

一把密鑰使用于不同的算法,將增加被攻擊的危險。

一把密鑰使用于不同的用途,可能造成密鑰存續期間長短的沖突,因而需要延長其存續時間,造成密鑰存續時間超過實務上最佳的存續期限。

防止物理攻擊

Key Store內所儲存的密鑰,是整個系統安全的基礎,不只要防范來自軟件漏洞的暴露風險,也要防止來自物理性的攻擊,包括利用物理特性的旁道攻擊 (Side-Channel Attack)與打開封裝,直接量測芯片儲存內容的攻擊。

Key Store實例

以Nuvoton M2354 為例,其中包含 Key Store 硬件單元,提供密鑰儲存的功能,能夠儲存由128 bits 到 4096 bits長度的密鑰,以完整的key為單位,進行寫key、刪除與注銷(Revoke),并具備完整性檢測,只要密鑰有任意的位出錯,那么這把密鑰,就會失效,無法使用。

Key Store 提供OTP、Flash與SRAM三種儲存媒體,可因應不同密鑰存續時間的需求,其中OTP可用來儲存不可更改的密鑰,例如HUK、ROTPK,而Flash可用來儲存云端聯機認證用的密鑰等,而SRAM則可用來儲存云端聯機時,所使用的隨機加密密鑰。

此外,Key Store在建立密鑰時,可以指定相關屬性,限制秘鑰只能由CPU或特定的加密引擎使用,進一步限制密鑰的使用,以加強密鑰的安全性。

針對旁道攻擊, Key Store支持Silent Access功能,可以降低儲存操作時,因為物理特性造成的信息泄露。而針對打開芯片封裝,利用物理量測儲存內容的攻擊,則提供Data Scrambling來防護。更近一步,也可以設定Key Store在系統攻擊偵測(Tamper Detection)觸發時,直接硬件連動,清除、注銷所有Key Store中的密鑰,確保密鑰不被泄露。

總結

現代的安全系統,仰賴密碼學的保護,而再好密碼學算法,還是要依靠密鑰的安全儲存,才能真正達到效果,一旦密鑰暴露出來,所有架構于該密鑰的秘密將不再安全,因此具備一個足夠安全的Key Store來存放密鑰,對整個系統而言,是一件相當重要事。

審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • ROM
    ROM
    +關注

    關注

    4

    文章

    526

    瀏覽量

    84956
  • 安全系統
    +關注

    關注

    0

    文章

    405

    瀏覽量

    66702
  • 密鑰
    +關注

    關注

    1

    文章

    119

    瀏覽量

    19599
收藏 人收藏

    評論

    相關推薦

    LKT安全芯片密鑰管理與分散過程簡單描述

    密鑰管理是數據加密技術中的重要一環,密鑰管理的目的是確保密鑰安全性(真實性和有效性)。
    的頭像 發表于 02-23 13:43 ?154次閱讀

    CysecureTools如何直接訪問外部存儲設備內的密鑰呢?

    在 PSoC 64 Secure MCU 的 Secure_Boot 文檔示例中,CysecureTools 在配置過程中以預先準備好的文件形式使用密鑰。 但是,在實際操作場景中,公開文件格式的
    發表于 01-31 08:08

    詳解全志R128 RTOS安全方案功能

    簽名算法 key_type 后,在創建密鑰執行 createkeys 時會自動根據配置文件生成對應的密鑰,并在執行打包命令的時候會采用對應的簽名校驗算法進行固件打包簽名。 信任鏈R128 整個
    發表于 12-28 15:59

    你真的懂網絡安全嗎?密鑰的分配解析

    A 和 B 都是 KDC 的登記用戶,A 和 B 在 KDC 登記時就已經在 KDC 的服務器上安裝了各自和 KDC 進行通信的主密鑰(master key) 的 KA 和 KB,下面統稱主密鑰
    發表于 12-13 10:31 ?359次閱讀
    你真的懂網絡<b class='flag-5'>安全</b>嗎?<b class='flag-5'>密鑰</b>的分配解析

    【先楫HPM5361EVK開發板試用體驗】2手把手實戰密鑰管理器 KEYM

    可以選擇原始數據或者加擾。不同安全狀態下,密鑰管理器還支持單獨配置密鑰是否加擾,使用不同的加擾算法。就像給飲料加冰和不加冰的區別一樣。 SEC_KEY_SEL[SMK_SEL] 位置
    發表于 12-11 09:18

    簡單認識安全加密處理器

    安全加密處理器 (Secure Cryptoprocessor) 是一種本身不產生加密數據或程序指令,但產生密鑰Key)的處理器,其應用產品有智能卡、ATM、電視機機頂盒、軍事系統等
    的頭像 發表于 12-06 09:19 ?576次閱讀

    Linux內核安全eCryptfs密鑰管理

    密鑰管理 從上節中我們了解到eCryptfs中核心機制中主要有兩個KEY,即FEKEK和FEK,前者和用戶輸入passphrase_passwd有關,后者是每個文件唯一的隨機數。下面結合
    的頭像 發表于 11-29 11:46 ?337次閱讀
    Linux內核<b class='flag-5'>安全</b>eCryptfs<b class='flag-5'>密鑰</b>管理

    鴻蒙原生應用/元服務開發-AGC分發如何生成密鑰和和證書請求文件

    Existing”選擇已有的密鑰庫文件(存儲有密鑰的.p12文件),跳轉至步驟4繼續配置;如果沒有密鑰庫文件,點擊“New”,跳轉至步驟3進行創建。 3.在“Create Key
    發表于 11-28 15:23

    存儲密鑰與文件加密密鑰介紹

    數據。 文件加密密鑰 文件加密密鑰(File Encryption Key, FEK)是安全存儲功能用于對數據進行加密時使用的AES密鑰,該
    的頭像 發表于 11-21 11:43 ?584次閱讀
    存儲<b class='flag-5'>密鑰</b>與文件加密<b class='flag-5'>密鑰</b>介紹

    安全存儲密鑰是什么

    安全存儲密鑰 安全存儲密鑰Secure Storage Key, SSK)在每臺設備中的值都不
    的頭像 發表于 11-21 11:37 ?364次閱讀

    安全啟動Secure Boot流程

    安全啟動-Secure Boot 除了NSPE和SPE兩個環境的溝通流程之外,secure boot也是Trusted Firmware很重要的設計環節。 Secure boot最主要
    的頭像 發表于 11-02 16:45 ?678次閱讀
    <b class='flag-5'>安全</b>啟動<b class='flag-5'>Secure</b> Boot流程

    M2351常見的故障注入攻擊方式及原理

    正常的執行。也就是說,透過Fault Injection,可以讓特定指令的執行失效,例如讓加密硬件系統錯誤的執行讀取密鑰的任務,使其加載空白密鑰 (zero key)來加密數據,如此一來只要再使用空白
    發表于 08-25 08:23

    如何將AES的私人密鑰儲存在SPROM中

    應用程序:示例代碼是進行 AES 加密和解密,將 AES 的私人密鑰儲存在 SPROM 中 。 BSP 版本:M480系列BSP CMSIS V3.03.001 硬件
    發表于 08-22 06:58

    第一道防線-Secure Boot安全開機

    第一道防線-Secure Boot安全開機
    的頭像 發表于 08-11 14:46 ?419次閱讀
    第一道防線-<b class='flag-5'>Secure</b> Boot<b class='flag-5'>安全</b>開機

    Secure In-System-Programming保護固件的刻錄安全

    Secure In-System-Programming保護固件的刻錄安全
    的頭像 發表于 08-09 15:28 ?310次閱讀
    <b class='flag-5'>Secure</b> In-System-Programming保護固件的刻錄<b class='flag-5'>安全</b>
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>