安全存儲功能中使用的重要結構體
在整個安全存儲功能的操作過程中,存在一些很重要的結構體,這些結構體用于記錄或保存所有安全文件和dirf.db文件的操作信息,這些結構體的關系框圖如圖所示。
? tee_fs_htree_node_image:用于保存文件的節點信息,通過節點可找到對應文件的頭部或數據塊信息;
? tee_fs_htree_image:用于保存安全文件的頭部數據,從頭部數據中可獲取安全文件的加密密鑰和加密頭部時使用的IV值;
? tee_fs_fd:安全存儲操作時使用的重要結構體,存放對文件操作時使用的fd、dir、TA的UUID等信息。
安全存儲中的文件節點組成
在安全存儲中,dirf.db文件和安全文件都是使用二叉樹的方式來保存文件編號或數據塊。
dirf.db文件的數據塊區域保存的是dirfile_entry結構體變量(密文保存),
dirf.db文件中的節點區域保存的是與保存的數據塊相對應的節點信息。通過查找dirf.db文件中的tee_fs_htree_node_image就能找到對應的dirfile_entry數據塊的數據。
在安全文件中同樣也存在這樣的對應關系,只不過數據塊中保存的不再是dirfile_entry,而是實際需要被保存的數據。
二叉樹的保存方式如圖所示,第一個節點作為dirf.db文件或安全文件的根節點使用。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
相關推薦
經歷來說明有些情況是不允許對齊訪問的,好在強大的MDK早就意料到這些特殊應用,并有相應的對策。下面舉例說明結構以對齊方式和非對齊方式存儲的差別。下面以三種不同的方式定義了結構體foo,
發表于 08-02 10:17
DLL函數參數中,有結構體、聯合體,結構體中使用聯合體,這種方式的函數怎么使用LABVIEW導入DLL共享庫?
發表于 09-06 10:32
32位機為4字節,則要從4的整數倍地址開始存儲)。 原則2 結構體的總大小,也就是sizeof的結果,必須是其內部最大成員的整數倍,不足的要補齊。 *原則3 結構
發表于 11-15 15:59
結構體是只讀的(不能改變結構體變量的值),此時,結構體的所有成員也是只讀的不知道能不能用但是co
發表于 10-24 04:37
盡管現在固態硬盤大行其道,不少人甚至覺得固態硬盤取代機械硬盤的時候到來了,但是我們別忘了,硬盤最重要的還是存儲功能,存儲的關鍵除了容量以外還有安全
發表于 09-02 06:31
所謂linux驅動編程可以理解為linux內核的編程。既然在內核編程那就必須要符合內核的邏輯和各種規定好的框架。Linux中使用了大量的結構體方便我們在使用內核的時候調用。很多單片機開發者其實對于
發表于 01-19 08:26
單片機系統中結構體數據類型的存儲和讀取在單片機系統開發中,系統配置參數通常需要永久存儲在外部或者內部的flash / eeprom中。對于系統參數較多時,我們常常使用
發表于 01-26 07:42
FreeRTOS消息隊列 傳遞結構體指針和結構體異同1 消息隊列傳遞結構體指針和
發表于 02-11 07:02
在c++中,結構體(struct)和共用體(union)是兩種很相似的復合數據類型,都可以用來存儲多種數據類型,但是兩者還有很大的區別。 結構
發表于 11-19 17:46
?3.7w次閱讀
單片機系統中結構體數據類型的存儲和讀取在單片機系統開發中,系統配置參數通常需要永久存儲在外部或者內部的flash / eeprom中。對于系統參數較多時,我們常常使用
發表于 12-02 14:06
?10次下載
默認情況下,結構體會被非壓縮的。這意味著結構體的成員被視為獨立變量或常量,并以一個共同的名稱分組在一起。SystemVerilog沒有指定軟件工具應該如何存儲非壓縮
發表于 06-30 09:54
?1059次閱讀
以前我也沒覺得懂得這個結構體對齊或者內存對齊有多重要,直到已經從事了嵌入式開發經驗不斷積累,才慢慢體會到,這是一種很基礎的知識,就因為這個東西不常用,而出現相關的問題是非常致命的,排查起來成本非常高。
發表于 04-03 10:13
?1394次閱讀
C語言結構體對齊問題,是面試必備問題。我參與招聘技術面試的時候,也喜歡問這個技術點。
發表于 05-26 14:10
?1257次閱讀
電子發燒友網站提供《基于存儲體系結構的重要性.pdf》資料免費下載
發表于 08-30 17:20
?0次下載
增長到2029年的3763.7億美元。 在本文中,小編將告訴大家為什么云存儲安全如此重要?云存儲安全的好處: 1、數據加密 我們
發表于 12-04 17:07
?460次閱讀
評論