發布源:深圳維創信息技術發布時間:2020-11-23 瀏覽次數: 次
1、TrueCrypt隨機數產生RandomNuderGenerator(RNG)
Random Number Generator(RNG)是一個內存中的隨機數產生器。
它在TrueCrypt中發揮著重要作用。
RNG將產生各種密鑰,其中*主要的是加密卷首部分的卷首密鑰和以后實時加解密過程中的主次密鑰。
RNG還將產生卷首前512字節的 “鹽”和密鑰文件.用于基于PBKDF2的用戶 口令的實現中。
同時為了隱藏卷文件中重要內容的大小.卷文件通常在創建的過程中填充臨時加密過的隨機數.而這些隨機數也是RNG產生的。
在Win—dows平臺下RNG產生的隨機數是RNG實時收集 Windows操作系統的各種數據并通過一定方式的運算得到的。
2、TrueCrypt中實時加解密密鑰
對加密卷內的文件進行讀寫操作時都需要加解密,而密鑰存放的位置和受保護的程度決定了加密文件的安全性。
True—Crypt把主次密鑰(實時加解密時的密鑰)存放在加密卷的卷首(512字節)的第 256至511字節。
而卷首的512字節由不同于主次密鑰的卷首密鑰加密的。
卷首密鑰得到的理論基礎是PKCS#5(基于I=1令的密碼系統規范2.o)中的密鑰導出函數PBKDF2.得出的密鑰可以有效的防范字典攻擊。
PBKDF2主要公式是:DK=PBKDF2(P,S,C,dkLen),其中DK是*終導出的密鑰,參數P是口令(一個字節串)參數s是“鹽”(一個字節串)參數c是迭代的次數.參數dkLen是導出密鑰的任意長度。
一般來說P就是用戶輸入的口令,而TrueCrypt為保證用戶口令的安全對參數P做了修改。
用“用戶口令+口令密鑰文件”方式得到新的用戶口令。
口令密鑰文件是TrueCrypt的一大亮點.它即可以由Tme—Crypt自己隨機生成。
又可以是用戶提供的任意格式任意大小的文件,如圖片文件、Mp3文件等。
并不是文件的所有數據都起作用,只有文件的前 1048576字節f1MB1的數據才作為有用數據進行運算。
TrueCrypt對 口令密鑰文件的數量也沒有限制。
PBKDF2中對分組的操作是基于基本 的偽隨機 函數的,True—Crypt中提供 了三種這 樣的函數 HMAC—SHA-512、HMAC—RIPEMD-160、HMAC—Whirlpool。
3、TrueCrypt隱藏卷
隱藏卷形象的來說就是 “嵌套”在普通加密卷里邊的。
這樣設計考慮了用戶的安全需求。
當用戶被脅迫解密加密卷時用戶可以把隱藏加密卷的 “外套”普通加密卷解密,透露一些無關緊要的信息,而真正的受保護的信息則隱藏在隱藏卷中,得以保護。
由此可見隱藏卷的創建過程必須是:首先創建一個普通卷然后在普通卷里創建一個隱藏卷。
需要注意的是普通卷和普通卷里的隱藏卷的用戶口令必須是不同的。
在加載卷時TrueCrypt根據用戶 口令來判斷是加載普通卷還是普通卷里的隱藏卷。
所以用戶在脅迫的情況下可以告訴普通卷的口令。
來保護信息。
4、TrueCrypt加密卷的創建和加載
加密卷的創建過程如下:用戶選擇創建參數,包括加密算法 、哈希函數、文件系統、加密卷大小等;按照卷首格式在內存中創建卷首:根據用戶選擇的文件系統格式化加密卷,并向卷內填充隨機數:創建備份卷首。
加密卷的加載就是把加密卷虛擬成一個虛擬磁盤。
用戶通過向磁盤內讀寫文件.實現加解密.
Copyright © 2021 深圳市維創信息技術有限公司 版權所有