2011-09-25 153 views
0

我正在研究用於文件加密和解密的固有內核功能;具有某些預定義前綴的目錄名稱將被自動加密。現在我被安全地存儲文件的加密密鑰,我可以使用任何未使用的inode字段嗎?它會高效或請建議任何其他想法。使用inode字段存儲文件的加密密鑰

+0

你在使用什麼文件系統?並非所有的文件系統甚至都有inode。 – Gabe

+0

僅適用於Linux文件系統。 –

回答

1

將加密密鑰存儲在加密文件的索引節點中是自欺欺人的 - 您可以使用例如「磁盤編輯器並訪問文件內容,從而破壞加密。您需要爲此提供一個/ proc接口,以便用戶空間可以決定如何提供此密鑰(例如,系統會提示用戶輸入散列密碼以獲取加密密鑰)。

內核不應該在任何地方寫入加密密鑰,它只能在寫入特殊/ proc文件時接收。您可以使用另一個/ proc文件來告訴內核標記加密目錄的目錄前綴。

如果您需要在文件中存儲一些加密元數據(不是加密密鑰!),請將其放入eCryptfs的標頭中。

+0

擴展屬性(可信)呢?我們可以用它來存儲密鑰嗎? –

+0

編號。所有擴展屬性(可信,系統等)也可以使用磁盤編輯器讀取。將某些信息放在可信的屬性中可以防止正在運行的系統中的進程看到它,但不會阻止在另一臺計算機或使用Live CD中讀取此數據。換句話說,這完全不是根本不加密文件,而是依靠文件權限來限制對文件的訪問。 –