0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

RPMB原理介紹

安芯教育科技 ? 來源:安芯教育科技 ? 2024-12-17 13:49 ? 次閱讀

可信平臺模塊(TPM)概念介紹

1

RPMB(Replay Protected Memory Block)Partition 是 eMMC 中的一個具有安全特性的分區(qū)。

eMMC 在寫入數(shù)據(jù)到 RPMB 時,會校驗數(shù)據(jù)的合法性,只有指定的 Host 才能夠?qū)懭耄瑫r在讀數(shù)據(jù)時,也提供了簽名機制,保證 Host 讀取到的數(shù)據(jù)是 RPMB 內(nèi)部數(shù)據(jù),而不是攻擊者偽造的數(shù)據(jù)。

RPMB 在實際應(yīng)用中,通常用于存儲一些有防止非法篡改需求的數(shù)據(jù),例如手機上指紋支付相關(guān)的公鑰、序列號等。RPMB 可以對寫入操作進行鑒權(quán),但是讀取并不需要鑒權(quán),任何人都可以進行讀取的操作,因此存儲到 RPMB 的數(shù)據(jù)通常會進行加密后再存儲。

容量大小

2

兩個RPMB Partition 的大小是由Extended CSD register 的 BOOT_SIZE_MULT Field 決定,大小的計算公式如下:

Size = 128Kbytes x BOOT_SIZE_MULT

一般情況下,Boot Area Partition 的大小是128KB的倍數(shù),EMMC中默認為 4 MB,即 RPMB_SIZE_MULT 為 32,部分芯片廠家會提供改寫 RPMB_SIZE_MULT 的功能來改變 RPMB Partition 的容量大小。RPMB_SIZE_MULT 最大可以為 128,即 Boot Area Partition 的最大容量大小可以為 128 x 128 KB = 16384 KB = 16 MB。

Replay Protect 原理

3

使用 eMMC 的產(chǎn)品,在產(chǎn)線生產(chǎn)時,會為每一個產(chǎn)品生產(chǎn)一個唯一的 256 bits 的 Secure Key,燒寫到 eMMC 的 OTP 區(qū)域(只能燒寫一次的區(qū)域),同時 Host 在安全區(qū)域中(例如:TEE)也會保留該 Secure Key。

在 eMMC 內(nèi)部,還有一個RPMB Write Counter。RPMB 每進行一次合法的寫入操作時,Write Counter 就會自動加一 。

通過 Secure Key 和 Write Counter 的應(yīng)用,RMPB 可以實現(xiàn)數(shù)據(jù)讀取和寫入的 Replay Protect。

RPMB 數(shù)據(jù)讀取

4

1、 Host 向 eMMC 發(fā)起讀 RPMB 的請求,同時生成一個 16 bytes 的隨機數(shù),發(fā)送給 eMMC。

2、 eMMC 將請求的數(shù)據(jù)從 RPMB 中讀出,并使用 Secure Key 通過 HMAC SHA-256 算法,計算讀取到的數(shù)據(jù)和接收到的隨機數(shù)拼接到一起后的簽名。然后,eMMC 將讀取到的數(shù)據(jù)、接收到的隨機數(shù)、計算得到的簽名一并發(fā)送給 Host。

3、 Host 接收到 RPMB 的數(shù)據(jù)、隨機數(shù)以及簽名后,首先比較隨機數(shù)是否與自己發(fā)送的一致,如果一致,再用同樣的 Secure Key 通過 HMAC SHA-256 算法對數(shù)據(jù)和隨機數(shù)組合到一起進行簽名,如果簽名與 eMMC 發(fā)送的簽名是一致的,那么就可以確定該數(shù)據(jù)是從 RPMB 中讀取到的正確數(shù)據(jù),而不是攻擊者偽造的數(shù)據(jù)。

通過上述的讀取流程,可以保證 Host 正確的讀取到 RPMB 的數(shù)據(jù)。

RPMB 數(shù)據(jù)寫入

5

1、Host 按照上面的讀數(shù)據(jù)流程,讀取 RPMB 的 Write Counter(通過Write Counter來識別數(shù)據(jù)的有效性)。

2、 Host 將需要寫入的數(shù)據(jù)和 Write Counter 拼接到一起并計算簽名,然后將數(shù)據(jù)、Write Counter 以及簽名一并發(fā)給 eMMC。

3、eMMC 接收到數(shù)據(jù)后,先對比 Write Counter 是否與當(dāng)前的值相同,如果相同那么再對數(shù)據(jù)和 Write Counter 的組合進行簽名,然后和 Host 發(fā)送過來的簽名進行比較,如果簽名相同則鑒權(quán)通過,將數(shù)據(jù)寫入到 RPMB 中。

通過上述的寫入流程,可以保證 RPMB 不會被非法篡改。

注意:UFS中RPMB也采用了和EMMC相同的原理。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Host
    +關(guān)注

    關(guān)注

    0

    文章

    32

    瀏覽量

    34626
  • emmc
    +關(guān)注

    關(guān)注

    7

    文章

    216

    瀏覽量

    52743
  • Partition
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    7788

原文標(biāo)題:RPMB原理介紹

文章出處:【微信號:Ithingedu,微信公眾號:安芯教育科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    2K0300先鋒派Openharmony開發(fā)介紹

    *附件:2K0300先鋒派Openharmony開發(fā)介紹-241114.pdf
    發(fā)表于 11-17 21:36

    GaN應(yīng)用介紹

    電子發(fā)燒友網(wǎng)站提供《GaN應(yīng)用介紹.pdf》資料免費下載
    發(fā)表于 09-12 09:55 ?0次下載
    GaN應(yīng)用<b class='flag-5'>介紹</b>

    技術(shù)分享 柵極驅(qū)動器及其應(yīng)用介紹

    一、柵極驅(qū)動器介紹 1)為什么需要柵極驅(qū)動器? 2)功率器件開關(guān)過程介紹 3)三種常見驅(qū)動芯片介紹 二、隔離方案介紹 1)為什么需要隔離驅(qū)動 2)主流隔離方案
    的頭像 發(fā)表于 09-10 09:26 ?459次閱讀
    技術(shù)分享 柵極驅(qū)動器及其應(yīng)用<b class='flag-5'>介紹</b>

    信號的反射與端接介紹

    電子發(fā)燒友網(wǎng)站提供《信號的反射與端接介紹.pdf》資料免費下載
    發(fā)表于 08-12 14:08 ?0次下載

    rk3568在.config中配置了CONFIG_OPTEE_ALWAYS_USE_SECURITY_PARTITION =y,parameter.txt卻沒有security分區(qū)

    security partition Authentication key not yet programmed E/TC:? 0 tee_rpmb_verify_key_sync_counter:1019
    發(fā)表于 07-29 12:14

    步進電機的簡單介紹

    步進電機的命名,參數(shù),轉(zhuǎn)速簡單介紹
    的頭像 發(fā)表于 04-17 21:40 ?1050次閱讀

    激光二極管基本原理介紹

    激光二極管基本原理介紹
    發(fā)表于 03-19 10:57

    PCB板材厚度和工藝介紹

    板材厚度和工藝介紹
    發(fā)表于 03-07 14:21 ?2次下載

    allegro教程介紹

    電子發(fā)燒友網(wǎng)站提供《allegro教程介紹.pdf》資料免費下載
    發(fā)表于 02-29 09:28 ?3次下載

    Cadence中文教程介紹

    電子發(fā)燒友網(wǎng)站提供《Cadence中文教程介紹.zip》資料免費下載
    發(fā)表于 02-29 09:26 ?15次下載

    舵機控制例程、原理介紹

    電子發(fā)燒友網(wǎng)站提供《舵機控制例程、原理介紹.zip》資料免費下載
    發(fā)表于 02-23 14:02 ?1次下載

    FPGA基礎(chǔ)知識介紹

    電子發(fā)燒友網(wǎng)站提供《FPGA基礎(chǔ)知識介紹.pdf》資料免費下載
    發(fā)表于 02-23 09:45 ?30次下載

    IN100產(chǎn)品介紹

    電子發(fā)燒友網(wǎng)站提供《IN100產(chǎn)品介紹.pdf》資料免費下載
    發(fā)表于 02-22 14:38 ?1次下載

    MES物料管理的介紹

    電子發(fā)燒友網(wǎng)站提供《MES物料管理的介紹.docx》資料免費下載
    發(fā)表于 01-29 14:12 ?1次下載

    電阻的封裝類型介紹

    電阻的封裝類型介紹
    的頭像 發(fā)表于 12-29 10:18 ?3628次閱讀