System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及文件加解密領域,尤其涉及一種文件加解密私有工具建立方法。
技術介紹
1、隨著信息技術的飛速發展和廣泛應用,文件數據的處理、存儲和傳輸變得日益頻繁和重要。然而,這一過程中也伴隨著嚴重的安全隱患,如數據泄露、非法訪問和篡改等,這些威脅不僅可能導致個人隱私的泄露,還可能對企業的商業機密和國家的安全造成嚴重影響。傳統的文件加密方法存在加密強度不足、密鑰管理不便、解密效率低下等問題,難以滿足現代用戶對于文件安全保護的高要求。因此,開發一款高效、安全、易用的文件加解密工具顯得尤為重要。
2、文件加解密工具的技術方案主要包含加密技術的選擇、密鑰的管理、用戶界面設計、性能優化和文件類型支持幾個方向。現在市場上大部分的文件加解密工具大多都是支持相似的幾種格式文件加密,同時需要用戶自己記錄文件加密的密碼,進行解密時輸入對應密碼才可以進行解密操作,密碼記憶管理復雜,同時大部分高級加密工具或者軟件都是使用收費的加密策略,對于個人和企業用戶來說成本較高。
3、現有技術的缺點:
4、1.支持加密的文件格式較少:市場上大部分加解密工具只支持單種或幾種文件格式的文件加解密;
5、2.用戶記憶密碼比較麻煩容易忘記:密碼的管理是加密技術的重要組成部分,但是密碼的生成、存儲、管理等過程比較復雜容易出錯;
6、3.加密的文件容易被破解:由于本身加密算法的選擇,不同加密算法的漏洞和秘鑰的泄露都會造成加密文件被破解的風險;
7、4.市場上部分高級加解密工具或者軟件需要較高的購買和維護成本
技術實現思路
1、鑒于上述問題,提出了本專利技術以便提供克服上述問題或者至少部分地解決上述問題的一種文件加解密私有工具建立方法。
2、根據本專利技術的一個方面,提供了一種文件加解密私有工具建立方法,所述工具建立方法包括:
3、對用戶文件進行加密處理,獲得已加密文件;
4、對已加密文件進行解密處理,包括:有密碼解密和無密碼解密,用戶既使用自己記錄的密碼進行文件解密,同時支持配置無密碼解密功能。
5、可選的,所述對用戶文件進行加密處理具體包括:
6、用戶通過加密功能窗口選擇待加密的文件、輸入加密的密碼,然后提交;
7、后臺收到用戶的加密文件和密碼,將收到的待加密文件轉成字節流數組形式;
8、將密碼進行二進制數據轉換,使用md5加密算法獲取摘要密碼;
9、aes秘鑰擴展;
10、aes加密算法加密:先將文件字節流轉成二進制數據,然后分成若干個128位獨立的分組,若文件二進制數據長度不是128位整數倍,則需要進行0填充,然后進行11輪加密,每個分組都需要進行加密,首先進行字節代換將分組的每個字節進行字節替換換,接著將每一行的字節進行循環左移,然后通過矩陣乘法對每一列的字節進行混合,最后對每個分組的數據與該輪秘鑰進行異或運算完成輪加密,經過11輪加密將文件流加密成密文二進制數組,最后將密文二進制流轉成字節流;
11、接著將密文二進制流進行md5加密生成32位摘要簽名;
12、同時rsa非對稱加密算法:從公鑰中取出(e,n),同時將明文密碼轉字符數組,再循環遍歷字符數組加密每個字符,將字符通過asc碼表轉成數字m,再取數字m的e次指數運算結果對n進行模運算生成密文數,接著將密文數通過asc碼表轉成字符,最后將密文字符拼接生成對應的密文密碼;
13、同時使用rsa非對稱加密算法用公鑰將文件格式加密生成文件格式的密文;
14、從公鑰中取出(e,n),同時將文件格式轉字符數組,再循環遍歷字符數組加密每個字符,將字符通過asc碼表轉成數字m,再取數字m的e次指數運算結果對n進行模運算生成密文數,接著將密文數通過asc碼表轉成字符,最后將密文字符拼接生成對應文件格式的密文;
15、再將密文密碼12位、32位簽名摘要、8位文件格式密文和文件的密文字節流拼接到一起;
16、最后將整體的字節流生成成加密文件.enc。
17、可選的,所述將密碼進行二進制數據轉換,使用md5加密算法獲取摘要密碼具體包括:
18、先對密碼進行數據填充(結尾添加0和1),使其長度模512為448;
19、在填充后的數據尾部追加64位的數據長度字段,再定義4個32位的變量,同時將填充后的項目分成若干個512位的分組,并將每個塊分為16個32位的子分組,接著循環使用每個子分組對4個32位變量,進行f函數位運算操作,知道所有分組處理完成,最終拼接4個32位二進制結果成128二進制摘要,最后將二進制摘要轉成16進制生成32位摘要密碼。
20、可選的,所述aes秘鑰擴展具體包括:先將摘要密碼轉成128位二進制秘鑰,接著講秘鑰初始化到一個4*4的矩陣中,每列4個字節,然后對矩陣進行擴充生成44列的擴展密鑰數組,新秘鑰矩陣規則如下:如果列索引i不是4的倍數,新列有i-4列與第i-1列進行異或運算生成,若列索引i是4的倍數:那么先i-1列的字的4個字節循環左移1個字節,再對結果的每個字節進行字節替換,接著講替換結果與當前輪常量進行異或運算,再用結果與i-4列的字進行異或運算,生成i列字,這樣循環擴展最終生成44列擴展秘鑰數據。
21、可選的,所述接著將密文二進制流進行md5加密生成32位摘要簽名具體包括:
22、先對密文二進制流進行數據填充,使其長度模512為448,然后在填充后的數據尾部追加64位的數據長度字段,再定義4個32位的變量,同時將填充后的項目分成若干個512位的分組,并將每個塊分為16個32位的子分組,接著循環使用每個子分組對4個32位變量,進行f函數位運算操作,知道所有分組處理完成,最終拼接4個32位二進制結果成128二進制摘要,最后將二進制摘要轉成16進制生成32位摘要簽名。
23、可選的,所述對已加密文件進行解密處理中的有密碼解密包括:
24、用戶通過解密功能窗口選擇密碼解密、選擇待解密的文件、輸入加密的密碼,然后提交;
25、收到用戶的加密文件和密碼,先將收到的加密文件轉成字節流數組形式;
26、再從字節流中前12位中取出加密的密文,去掉結尾的空字符;
27、rsa算法解密,將明文字符拼接生成對應的明文密碼;
28、將解密出的明文密碼與用戶輸入的密碼進行對比,不一致則報密碼錯誤,解密失敗;
29、解析字節流取出13-44位的簽名,以及52位以后的密文字節流;
30、md5加密獲取摘要簽名;
31、將上步生成的摘要簽名與13-44位的簽名進行驗簽處理是否一致,不一致則說明加密文件被篡改,無法解密;
32、根據用戶輸入的明文密碼,使用md5加密算法獲取摘要密碼;
33、同時從字節流中45-52位中取出文件格式密文,去掉結尾的空字符,然本文檔來自技高網...
【技術保護點】
1.一種文件加解密私有工具建立方法,其特征在于,所述工具建立方法包括:
2.根據權利要求1所述的一種文件加解密私有工具建立方法,其特征在于,所述對用戶文件進行加密處理具體包括:
3.根據權利要求2所述的一種文件加解密私有工具建立方法,其特征在于,所述將密碼進行二進制數據轉換,使用MD5加密算法獲取摘要密碼具體包括:
4.根據權利要求2所述的一種文件加解密私有工具建立方法,其特征在于,所述AES秘鑰擴展具體包括:先將摘要密碼轉成128位二進制秘鑰,接著講秘鑰初始化到一個4*4的矩陣中,每列4個字節,然后對矩陣進行擴充生成44列的擴展密鑰數組,新秘鑰矩陣規則如下:如果列索引i不是4的倍數,新列有i-4列與第i-1列進行異或運算生成,若列索引i是4的倍數:那么先i-1列的字的4個字節循環左移1個字節,再對結果的每個字節進行字節替換,接著講替換結果與當前輪常量進行異或運算,再用結果與i-4列的字進行異或運算,生成i列字,這樣循環擴展最終生成44列擴展秘鑰數據。
5.根據權利要求2所述的一種文件加解密私有工具建立方法,其特征在于,所述接著將密
6.根據權利要求1所述的一種文件加解密私有工具建立方法,其特征在于,所述對已加密文件進行解密處理中的有密碼解密包括:
7.根據權利要求6所述的一種文件加解密私有工具建立方法,其特征在于,所述AES秘鑰擴展具體包括:先將得到的摘要密碼轉成128位二進制秘鑰,接著講秘鑰初始化到一個4*4的矩陣中,每列4個字節,然后對矩陣進行擴充生成44列的擴展密鑰數組,新秘鑰矩陣規則如下:如果列索引i不是4的倍數,新列有i-4列與第i-1列進行異或運算生成,若列索引i是4的倍數:那么先i-1列的字的4個字節循環左移1個字節,再對結果的每個字節進行字節替換,接著講替換結果與當前輪常量進行異或運算,再用結果與i-4列的字進行異或運算,生成i列字,這樣循環擴展最終生成44列擴展秘鑰數據。
8.根據權利要求6所述的一種文件加解密私有工具建立方法,其特征在于,所述RSA算法解密,將明文字符拼接生成對應的明文密碼具體包括:
9.根據權利要求1所述的一種文件加解密私有工具建立方法,其特征在于,所述對已加密文件進行解密處理中的無密碼解密包括:
10.根據權利要求9所述的一種文件加解密私有工具建立方法,其特征在于,所述AES秘鑰擴展具體包括:
...【技術特征摘要】
1.一種文件加解密私有工具建立方法,其特征在于,所述工具建立方法包括:
2.根據權利要求1所述的一種文件加解密私有工具建立方法,其特征在于,所述對用戶文件進行加密處理具體包括:
3.根據權利要求2所述的一種文件加解密私有工具建立方法,其特征在于,所述將密碼進行二進制數據轉換,使用md5加密算法獲取摘要密碼具體包括:
4.根據權利要求2所述的一種文件加解密私有工具建立方法,其特征在于,所述aes秘鑰擴展具體包括:先將摘要密碼轉成128位二進制秘鑰,接著講秘鑰初始化到一個4*4的矩陣中,每列4個字節,然后對矩陣進行擴充生成44列的擴展密鑰數組,新秘鑰矩陣規則如下:如果列索引i不是4的倍數,新列有i-4列與第i-1列進行異或運算生成,若列索引i是4的倍數:那么先i-1列的字的4個字節循環左移1個字節,再對結果的每個字節進行字節替換,接著講替換結果與當前輪常量進行異或運算,再用結果與i-4列的字進行異或運算,生成i列字,這樣循環擴展最終生成44列擴展秘鑰數據。
5.根據權利要求2所述的一種文件加解密私有工具建立方法,其特征在于,所述接著將密文二進制流進行md5加密生成32位摘要簽名具體包括:
6....
【專利技術屬性】
技術研發人員:司漢秋,于振華,
申請(專利權)人:北銀金融科技有限責任公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。