[發明專利]基于雙密鑰流密碼的雙向鏈表順序加密解密方法有效
| 申請號: | 201810449252.0 | 申請日: | 2018-05-11 |
| 公開(公告)號: | CN108777611B | 公開(公告)日: | 2021-06-18 |
| 發明(設計)人: | 司玉娟;郎六琪;陳家良 | 申請(專利權)人: | 吉林大學;吉林大學珠海學院 |
| 主分類號: | H04L9/06 | 分類號: | H04L9/06;H04L9/00 |
| 代理公司: | 廣州嘉權專利商標事務所有限公司 44205 | 代理人: | 俞梁清 |
| 地址: | 130012 吉林*** | 國省代碼: | 吉林;22 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 密鑰 密碼 雙向 順序 加密 解密 方法 | ||
1.基于雙密鑰流密碼的雙向鏈表順序加密解密方法,其特征在于,該方法包括:
根據明文文件創建明文集合M,其中明文是任意可解析文件,包括:讀取明文文件,得到明文文件字節數n;創建明文集合M為有序集,其中M={x0x1…x8n-1},xi={0,1},并且有i(0=i=8n-1),M作為雙向循環鏈表則有xn-1的后繼是x0;
將明文集合M作為初始集合并進行順序迭代加密得到密文集合C,其中迭代加密結合使用參照串、密鑰集合P及算法集合A,所述參照串為2m字節,其中m=0且m為正整數;其中,所述密鑰集合P包括第一密鑰子集和第二密鑰子集,所述第一密鑰子集P0={y00y01…y08n-1},y0j0={0,1},其中j0(0=j0=8n-1),且P0為有序集合,所述第二密鑰子集P1={y10y11…y18n-1},y1j1={0,1},其中j1(0=j1=8n-1),且P1為有序集合,第一密鑰子集P0和第二密鑰子集P1均為雙向循環鏈表,對于P0則有y08n-1的后繼是y00,對于P1則有y18n-1的后繼是y10;所述密文集合C包括第一密文子集和第二密文子集,所述第一密文子集C0={z00z01…z08n-1},z0k0={0,1},其中k0(0=k0=8n-1),且C0為有序集合,所述第二密文子集C1={z10z11…z18n-1},z1k1={0,1},其中k1(0=k1=8n-1),且C1為有序集合,第一密文子集C0和第二密文子集C1均為雙向循環鏈表,對于C0則有z08n-1的后繼是z00,對于C1則有z18n-1的后繼是z10;
取任意初值i0(0=i0=8n-1),作為M集合的初值,并保留該初值;取任意初值i1(0=i1=8n-1),作為C0集合的初值,并保留該初值;取任意初值j0(0=j0=8n-1),作為P0集合的初值,并保留該初值;取任意初值j1(0=j1=8n-1),作為P1集合的初值,并保留該初值;取任意初值k0(0=k0=8n-1),作為C0集合的初值,并保留該初值;取任意初值k1(0=k1=8n-1),作為C1集合的初值,并保留該初值;
所述迭代加密包括獲取明文集合M、密文集合C、密鑰集合P任意值作為初值以及初值對應的指針,通過指針、參照串及算法集合A的加密算法對明文集合M進行兩次迭代加密,得到密文集合C,其中明文集合M及密鑰集合P對應用于加密的指針不同時為雙數或單數,所述迭代加密的方法為第一加密方法,包括第一加密步驟和第二加密步驟,其中第一加密步驟包括:
建立指針p1指向明文集合M的xi0位,且當p1為0時,置p1為8n-1;
建立指針p2指向明文集合M的xi0+1位,且當p2為8n-1時,置p2為0;
建立指針q指向第一密鑰子集P0集合y0j0位;
建立指針r指向第一密文子集C0集合z0k0位;
順序執行加密,包括判斷*q或!(*q)為真,若為真則*r=*p2且p2、q及r遞增,若不為真則*r=*p1且q及r遞增,p1遞減,其中第一加密步驟p1和p2為雙數,其中r為單數;
其中第二加密步驟包括:
建立指針p1指向第一密文子集C0的z0i1位,且當p1為0時,置p1為8n-1;
建立指針p2指向第一密文子集C0的z0i1+1位,且當p2為8n-1時,置p2為0;
建立指針q指向第二密鑰子集P1的y1j1位;
建立指針r指向第二密文子集C1的z1k1位;
順序執行加密,包括判斷*q或!(*q)為真,若為真則*r=*p2且p2、q及r遞增,若不為真則*r=*p2且q及r遞增,p1遞減,其中第二加密步驟的p1和p2為雙數,其中r為單數;
對密文集合C調用密鑰集合P進行多次解密,其中加密使用密鑰集合P和算法集合A,其中加密和解密共享密鑰集合P和算法集合A,且集合M、C均為雙向循環鏈表,其中明文集合M及密鑰集合P對應用于加密的指針不同時為雙數或單數;
所述解密包括取回迭代加密的初值,創建初值對應的指針結合C參照串及算法集合A的加密算法對密文集合C進行兩次解密,得到明文集合M,并將明文集合M轉換為明文文件,包括:取回用于加密的初值i0、i1、j0、j1、k0及k1;所述解密方法為第一解密方法,包括第一解密步驟和第二解密步驟,其中第一解密步驟包括:
建立指針p1指向第一密文子集C0的z0i1位,且當p1為0時,置p1為8n-1;
建立指針p2指向第一密文子集C0的z0i1+1位,且當p2為8n-1時,置p2為0;
建立指針q指向P1集合y1j1位;
建立指針r指向C1集合z1k1位;
順序執行解密,包括判斷*q或!(*q)為真,若為真則*r=*p2且p2、q及r遞增,若不為真則*r=*p1且q及r遞增,p1遞減,其中第一解密步驟p1和p2為雙數,其中r為單數;
其中第二解密步驟包括:
建立指針p1指向明文集合M的xi0位,且當p1為0時,置p1為8n-1;
建立指針p2指向明文集合M的xi0+1位,且當p2為8n-1時,置p2為0;
建立指針q指向第一密鑰子集P0集合y0j0位;
建立指針r指向第一密文子集C0集合z0k0位;
順序執行加密,包括判斷*q或!(*q)為真,若為真則*r=*p2且p2、q及r遞增,若不為真則*r=*p1且q及r遞增,p1遞減,其中第一加密步驟p1和p2為雙數,其中r為單數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于吉林大學;吉林大學珠海學院,未經吉林大學;吉林大學珠海學院許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810449252.0/1.html,轉載請聲明來源鉆瓜專利網。





