[發明專利]一種基于Zlib庫和AES算法的ZIP包解壓方法有效
| 申請號: | 201611071964.0 | 申請日: | 2016-11-29 |
| 公開(公告)號: | CN106817216B | 公開(公告)日: | 2022-02-22 |
| 發明(設計)人: | 孫永超 | 申請(專利權)人: | 北京銳安科技有限公司 |
| 主分類號: | H04L9/06 | 分類號: | H04L9/06;G06F16/215 |
| 代理公司: | 北京君尚知識產權代理有限公司 11200 | 代理人: | 邱曉鋒 |
| 地址: | 100192 北京市海*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 zlib aes 算法 zip 解壓 方法 | ||
1.一種基于Zlib庫和AES算法的ZIP包解壓方法,其特征在于,包括以下步驟:
1)獲取網站的ZIP包數據,從ZIP包中讀取文件并判斷其是否采用AES算法進行加密;
2)對于采用AES算法進行加密的ZIP包數據,在Zlib庫基礎上添加AES算法來對ZIP包進行解密和解壓,其中AES算法封裝在靜態庫文件中,Zlib庫封裝在libz.so動態庫文件中;
所述在Zlib庫基礎上添加AES算法來對ZIP包進行解密和解壓,包括:
修改unzip.c文件,增加以下內容:
uLong encry_mode,表示加密模式;
uLong comp_method,表示壓縮模式;
uLong aes_version,表示aes版本號;
aes_contex aes_cox,表示aes信息,包括密鑰,密鑰長度,明文,文件解密模式;
修改unzOpenCurrentFilePassword函數,此函數功能是獲得ZIP文件信息;判斷HEADID若是0x9901則ZIP包采用AES加密;讀取版本號;讀取兩字節判斷是否為‘A’和‘E’;讀取ZIP包加密模式;讀取ZIP包壓縮模式;
修改unzReadCurrentFile函數,此函數功能是讀取ZIP包中的文件內容,判斷之前讀取的ZIP加密模式;若是AES則調用libaes.a靜態庫進行解密,用已知的密鑰進行解密得到明文。
2.如權利要求1所述的方法,其特征在于,所述AES算法包括:
a)AES加密過程,其包括:字節替代、行移位、列混淆、輪密鑰加;
b)AES解密過程,其包括:逆字節替代、逆行移位、逆列混淆、輪密鑰加。
3.如權利要求2所述的方法,其特征在于,所述字節替代通過S盒完成一個字節到另外一個字節的映射,該映射是一個關于字節的非線性變換。
4.如權利要求2所述的方法,其特征在于,所述行移位實現一個4*4矩陣內部字節之間的置換,包括正向行移位和逆向行移位;正向行移位的操作即是:第一行保存不變,第二行循環左移1個字節,第三行循環左移2個字節,第四行循環左移3個字節。
5.如權利要求2所述的方法,其特征在于,所述列混淆對一個狀態逐列進行變換,即使用線性轉換來混合每列的四個字節。
6.如權利要求2所述的方法,其特征在于,所述輪密鑰加使用按位異或操作,通過密鑰調度過程對密鑰進行擴展而得到輪密鑰,然后明文與相應的子密鑰進行異或,即每輪的輸入與輪密鑰異或一次,在解密時再異或上該輪的密鑰即可恢復輸入。
7.如權利要求1所述的方法,其特征在于,在步驟2)解壓ZIP包文件后,掃描獲得的bcp文件和實體文件;將bcp文件進行格式轉換,取得有效的數據并對有效的數據進行校驗,再從有效的數據中提取特定的信息;將實體文件入全文數據庫。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京銳安科技有限公司,未經北京銳安科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201611071964.0/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種針對旁路攻擊的片上供電網絡驗證方法
- 下一篇:基于DNA技術的加密方法





