[發明專利]BitLocker加密卷的口令恢復方法、設備及介質有效
| 申請號: | 202110535552.2 | 申請日: | 2021-05-17 |
| 公開(公告)號: | CN113239378B | 公開(公告)日: | 2022-03-18 |
| 發明(設計)人: | 談程;吉慶兵;張李軍;于飛;尹浩 | 申請(專利權)人: | 中國電子科技集團公司第三十研究所 |
| 主分類號: | G06F21/60 | 分類號: | G06F21/60;G06F21/44 |
| 代理公司: | 成都九鼎天元知識產權代理有限公司 51214 | 代理人: | 徐靜 |
| 地址: | 610000 *** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | bitlocker 加密 口令 恢復 方法 設備 介質 | ||
1.一種BitLocker加密卷的口令恢復方法,其特征在于,包括以下步驟:
S1. 對需要分析的加密卷進行鏡像,得到該加密卷的鏡像文件;
S2. 判斷當前加密卷是否為BitLocker加密卷,若是,則執行下一步驟;
S3. 解析并提取BitLocker加密卷的加密參數:對基于口令保護的BitLocker加密卷進行加密參數提取,用于BitLocker加密卷的口令恢復,其中加密參數包括加密算法類型、卷主密鑰VMK加密數據及MAC校驗值;
S4. 基于提取的加密參數進行口令恢復:首先準備進行口令恢復的口令集,使用口令集中的第一條口令生成解密密鑰,然后使用解密密鑰對卷主密鑰VMK加密數據進行解密;最后計算MAC校驗值,并與提取的MAC校驗值比對即進行MAC校驗,如果一致,則口令恢復正確,否則讀取口令集的下一條口令,重新生成解密密鑰并進行解密和校驗;
步驟S2包括以下子步驟:
S21. 以二進制形式讀取加密卷的鏡像文件,搜索是否存在連續的8字節數據為0X2D4656452D46532D,若不存在,則該加密卷不是BitLocker加密卷;若存在,則進入步驟S22;
S22.再搜索是否存在連續的8字節數據為0X2D4656452D46532D,若不存在,則該加密卷為無效的BitLocker加密卷;若存在,則進入步驟S23;
S23. 在當前位置跳過2字節,讀取2字節數據,若為0x0200,則表示加密卷對應的操作系統為Windows 7以及之后的版本,進入步驟S24;若為0x0100,則表示加密卷對應的操作系統為Windows Vista ,進入步驟S24;否則為無效版本;
S24. 搜索是否存在連續的4字節數據為0X02000800,若不存在,則該加密卷為無效的BitLocker加密卷,否則進入步驟S25;
S25. 在當前位置跳過28字節,讀取2字節數據,若為0x0000,則表示該BitLocker加密卷的卷主密鑰VMK以明文形式存儲,能夠通過卷主密鑰VMK解密得到全卷加密密鑰FVEK后直接對該加密卷進行解密;若為0x0001,則表示該BitLocker加密卷的卷主密鑰VMK通過TPM加密,屬于系統分區加密情形;若為0x0002,則表示該BitLocker加密卷的卷主密鑰VMK通過存儲在外設的啟動密鑰加密,屬于系統分區加密情形;若為0x0008,則表示該BitLocker加密卷的卷主密鑰VMK通過恢復密鑰加密;若為0x0020,則表示該BitLocker加密卷的卷主密鑰VMK通過用戶設置的口令加密;否則進入步驟S21繼續搜索;
步驟S3包括以下子步驟:
S31. 在步驟S25中若讀取的2字節為0x0020,則在此位置之后跳過12字節,讀取連續的16字節,為salt參數,進入步驟S32;
S32. 在當前位置跳過83字節,若連續兩字節為0x0050,則表示加密算法為AES-CCM,進入步驟S33;否則表示卷主密鑰VMK加密算法參數有誤,停止;
S33. 在當前位置跳過3字節,讀取連續的12字節,為AES-CCM加密算法使用的nonce參數,進入步驟S34;
S34. 在當前位置讀取連續的16字節,為卷主密鑰VMK加密數據的MAC校驗值,進入步驟S35;
S35. 在當前位置讀取連續的44字節,為卷主密鑰VMK加密數據;
使用口令集中的口令生成解密密鑰的方法包括以下步驟:
S411. 將原始口令的編碼轉換為utf-16格式,然后對轉換后的口令計算兩次sha256;
S412. 建立一個長度為88字節的數組BITLOCKER_HASH,1-32字節置空,33-64字節填入口令哈希值,65-80字節填入步驟S31提取的salt參數,81-88字節表示迭代計數器,初始值為0;
S413. 對數組BITLOCKER_HASH的數據進行sha256計算,將32字節的結果值存入數組BITLOCKER_HASH的1-32字節位置,同時數組BITLOCKER_HASH的81-88字節存儲的計數器值加1,重復此計算過程0x100000次;
S414. 輸出計算得到的32字節sha256哈希值,即為卷主密鑰VMK的解密密鑰;
使用解密密鑰對卷主密鑰VMK加密數據進行解密的方法包括:
通過AES-CTR算法對卷主密鑰VMK和MAC解密,解密密鑰為步驟S414計算得到的卷主密鑰VMK的解密密鑰,參數為步驟S33提取的12字節nonce參數;
MAC校驗的方法包括:
對解密后的卷主密鑰VMK基于AES-CBC算法計算出MAC校驗值,與步驟S35得到的MAC校驗值進行比較,如果一致,則口令恢復正確,否則從口令集中讀取下一條口令,重新生成解密密鑰并進行解密和校驗;
在MAC校驗之前,采用快速校驗法來減少密鑰正確性驗證時間,該快速校驗法包括以下步驟:
S421. 對解密后的卷主密鑰VMK,查看其第1-2字節是否為0x2c00,如果不是,則從口令集中讀取下一條口令,重新生成解密密鑰并進行解密和校驗;
S422. 繼續查看第5-6字節是否為0x0100,如果不是,則從口令集中讀取下一條口令,重新生成解密密鑰并進行解密和校驗;
S423. 繼續查看第9字節是否處于0x00~0x05之間,如果不是,則從口令集中讀取下一條口令,重新生成解密密鑰并進行解密和校驗;
S424. 繼續查看第10字節是否為0x20,如果不是,則從口令集中讀取下一條口令,重新生成解密密鑰并進行解密和校驗;至此,快速校驗過程結束。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國電子科技集團公司第三十研究所,未經中國電子科技集團公司第三十研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110535552.2/1.html,轉載請聲明來源鉆瓜專利網。





