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

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

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

安全存儲功能中使用的重要結(jié)構(gòu)體

麥辣雞腿堡 ? 來源:TrustZone ? 作者:Hcoco ? 2023-11-21 14:36 ? 次閱讀

安全存儲功能中使用的重要結(jié)構(gòu)體

在整個安全存儲功能的操作過程中,存在一些很重要的結(jié)構(gòu)體,這些結(jié)構(gòu)體用于記錄或保存所有安全文件和dirf.db文件的操作信息,這些結(jié)構(gòu)體的關(guān)系框圖如圖所示。

圖片

? tee_fs_htree_node_image:用于保存文件的節(jié)點信息,通過節(jié)點可找到對應(yīng)文件的頭部或數(shù)據(jù)塊信息;

? tee_fs_htree_image:用于保存安全文件的頭部數(shù)據(jù),從頭部數(shù)據(jù)中可獲取安全文件的加密密鑰和加密頭部時使用的IV值;

? tee_fs_fd:安全存儲操作時使用的重要結(jié)構(gòu)體,存放對文件操作時使用的fd、dir、TA的UUID等信息。

安全存儲中的文件節(jié)點組成

在安全存儲中,dirf.db文件和安全文件都是使用二叉樹的方式來保存文件編號或數(shù)據(jù)塊。

dirf.db文件的數(shù)據(jù)塊區(qū)域保存的是dirfile_entry結(jié)構(gòu)體變量(密文保存),
dirf.db文件中的節(jié)點區(qū)域保存的是與保存的數(shù)據(jù)塊相對應(yīng)的節(jié)點信息。通過查找dirf.db文件中的tee_fs_htree_node_image就能找到對應(yīng)的dirfile_entry數(shù)據(jù)塊的數(shù)據(jù)。

在安全文件中同樣也存在這樣的對應(yīng)關(guān)系,只不過數(shù)據(jù)塊中保存的不再是dirfile_entry,而是實際需要被保存的數(shù)據(jù)。

二叉樹的保存方式如圖所示,第一個節(jié)點作為dirf.db文件或安全文件的根節(jié)點使用。

圖片

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

    關(guān)注

    7

    文章

    3752

    瀏覽量

    64233
  • 文件
    +關(guān)注

    關(guān)注

    1

    文章

    561

    瀏覽量

    24671
  • 結(jié)構(gòu)體
    +關(guān)注

    關(guān)注

    1

    文章

    129

    瀏覽量

    10823
收藏 人收藏

    評論

    相關(guān)推薦

    RealView MDK中結(jié)構(gòu)存儲方式

    經(jīng)歷來說明有些情況是不允許對齊訪問的,好在強大的MDK早就意料到這些特殊應(yīng)用,并有相應(yīng)的對策。下面舉例說明結(jié)構(gòu)以對齊方式和非對齊方式存儲的差別。下面以三種不同的方式定義了結(jié)構(gòu)foo,
    發(fā)表于 08-02 10:17

    DLL導(dǎo)入結(jié)構(gòu) 聯(lián)合體

    DLL函數(shù)參數(shù)中,有結(jié)構(gòu)、聯(lián)合體,結(jié)構(gòu)中使用聯(lián)合體,這種方式的函數(shù)怎么使用LABVIEW導(dǎo)入DLL共享庫?
    發(fā)表于 09-06 10:32

    漫談C語言結(jié)構(gòu)

    32位機為4字節(jié),則要從4的整數(shù)倍地址開始存儲)?! ≡瓌t2 結(jié)構(gòu)的總大小,也就是sizeof的結(jié)果,必須是其內(nèi)部最大成員的整數(shù)倍,不足的要補齊?! ?原則3 結(jié)構(gòu)
    發(fā)表于 11-15 15:59

    如何在C語言中把結(jié)構(gòu)定義為常量?

    結(jié)構(gòu)是只讀的(不能改變結(jié)構(gòu)變量的值),此時,結(jié)構(gòu)的所有成員也是只讀的不知道能不能用但是co
    發(fā)表于 10-24 04:37

    硬盤的存儲功能

    盡管現(xiàn)在固態(tài)硬盤大行其道,不少人甚至覺得固態(tài)硬盤取代機械硬盤的時候到來了,但是我們別忘了,硬盤最重要的還是存儲功能,存儲的關(guān)鍵除了容量以外還有安全
    發(fā)表于 09-02 06:31

    簡單分析linux內(nèi)核中的結(jié)構(gòu)使用方法

    所謂linux驅(qū)動編程可以理解為linux內(nèi)核的編程。既然在內(nèi)核編程那就必須要符合內(nèi)核的邏輯和各種規(guī)定好的框架。Linux中使用了大量的結(jié)構(gòu)方便我們在使用內(nèi)核的時候調(diào)用。很多單片機開發(fā)者其實對于
    發(fā)表于 01-19 08:26

    如何去實現(xiàn)單片機系統(tǒng)中結(jié)構(gòu)數(shù)據(jù)類型的存儲和讀取呢

    單片機系統(tǒng)中結(jié)構(gòu)數(shù)據(jù)類型的存儲和讀取在單片機系統(tǒng)開發(fā)中,系統(tǒng)配置參數(shù)通常需要永久存儲在外部或者內(nèi)部的flash / eeprom中。對于系統(tǒng)參數(shù)較多時,我們常常使用
    發(fā)表于 01-26 07:42

    消息隊列傳遞結(jié)構(gòu)指針和結(jié)構(gòu)異同

    FreeRTOS消息隊列 傳遞結(jié)構(gòu)指針和結(jié)構(gòu)異同1 消息隊列傳遞結(jié)構(gòu)指針和
    發(fā)表于 02-11 07:02

    共用結(jié)構(gòu)的區(qū)別

    在c++中,結(jié)構(gòu)(struct)和共用(union)是兩種很相似的復(fù)合數(shù)據(jù)類型,都可以用來存儲多種數(shù)據(jù)類型,但是兩者還有很大的區(qū)別。 結(jié)構(gòu)
    發(fā)表于 11-19 17:46 ?3.7w次閱讀

    嵌入式系統(tǒng)中結(jié)構(gòu)數(shù)據(jù)類型的存儲和讀取

    單片機系統(tǒng)中結(jié)構(gòu)數(shù)據(jù)類型的存儲和讀取在單片機系統(tǒng)開發(fā)中,系統(tǒng)配置參數(shù)通常需要永久存儲在外部或者內(nèi)部的flash / eeprom中。對于系統(tǒng)參數(shù)較多時,我們常常使用
    發(fā)表于 12-02 14:06 ?10次下載
    嵌入式系統(tǒng)中<b class='flag-5'>結(jié)構(gòu)</b><b class='flag-5'>體</b>數(shù)據(jù)類型的<b class='flag-5'>存儲</b>和讀取

    數(shù)字硬件建模SystemVerilog-結(jié)構(gòu)

    默認(rèn)情況下,結(jié)構(gòu)體會被非壓縮的。這意味著結(jié)構(gòu)的成員被視為獨立變量或常量,并以一個共同的名稱分組在一起。SystemVerilog沒有指定軟件工具應(yīng)該如何存儲非壓縮
    的頭像 發(fā)表于 06-30 09:54 ?985次閱讀

    結(jié)構(gòu)對齊為什么那么重要

    以前我也沒覺得懂得這個結(jié)構(gòu)對齊或者內(nèi)存對齊有多重要,直到已經(jīng)從事了嵌入式開發(fā)經(jīng)驗不斷積累,才慢慢體會到,這是一種很基礎(chǔ)的知識,就因為這個東西不常用,而出現(xiàn)相關(guān)的問題是非常致命的,排查起來成本非常高。
    的頭像 發(fā)表于 04-03 10:13 ?1344次閱讀

    為什么要結(jié)構(gòu)對齊?為什么結(jié)構(gòu)對齊那么重要?

    C語言結(jié)構(gòu)對齊問題,是面試必備問題。我參與招聘技術(shù)面試的時候,也喜歡問這個技術(shù)點。
    的頭像 發(fā)表于 05-26 14:10 ?1169次閱讀
    為什么要<b class='flag-5'>結(jié)構(gòu)</b><b class='flag-5'>體</b>對齊?為什么<b class='flag-5'>結(jié)構(gòu)</b><b class='flag-5'>體</b>對齊那么<b class='flag-5'>重要</b>?

    基于存儲體系結(jié)構(gòu)重要

    電子發(fā)燒友網(wǎng)站提供《基于存儲體系結(jié)構(gòu)重要性.pdf》資料免費下載
    發(fā)表于 08-30 17:20 ?0次下載
    基于<b class='flag-5'>存儲</b>體系<b class='flag-5'>結(jié)構(gòu)</b>的<b class='flag-5'>重要</b>性

    為什么云存儲安全如此重要

    增長到2029年的3763.7億美元。 在本文中,小編將告訴大家為什么云存儲安全如此重要?云存儲安全的好處: 1、數(shù)據(jù)加密 我們
    的頭像 發(fā)表于 12-04 17:07 ?421次閱讀