CN111695129B - 一种能够对抗线性攻击和差分攻击的对称加密方法 - Google Patents
一种能够对抗线性攻击和差分攻击的对称加密方法 Download PDFInfo
- Publication number
- CN111695129B CN111695129B CN202010551947.7A CN202010551947A CN111695129B CN 111695129 B CN111695129 B CN 111695129B CN 202010551947 A CN202010551947 A CN 202010551947A CN 111695129 B CN111695129 B CN 111695129B
- Authority
- CN
- China
- Prior art keywords
- steps
- packet
- method comprises
- carrying
- treatment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000009792 diffusion process Methods 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种能够对抗线性攻击和差分攻击的对称加密方法,包括以下步骤:密钥生成:任意随机生成一个二进制长度为2L的数;取前L位数并记为w0;直接取后L位数或最后一位取反后记为w1;确定密钥为K=(w0,w1);加密:将输入明文M按L位一组进行分组,分组后的数据记为M1,M2,…,MT;随机生成两个数分别作为初始状态S0和明文M的增长分组MT+1;每一个分组编码后的数据为C1,C2,…,CT+1;输出C1C2…CT+1ST+1作为密文。本发明加密过程中有两个随机数即初始状态S0和明文M的增长分组MT+1,这两个随机数的不确定性都扩散到密文中的每一位,所以本发明的加密方法能够抵抗一切形式的线性攻击和差分攻击,从而从本质上显著提高了保密性。
Description
技术领域
本发明涉及一种数据加密方法,尤其涉及一种能够对抗线性攻击和差分攻击的对称加密方法。
背景技术
数据加密是一门历史悠久的技术,指通过加密方法和加密密钥将明文转变为密文,而解密则是通过解密方法和解密密钥将密文恢复为明文,其核心是密码学。
对称加密方法是应用较早也是目前应用最为广泛的加密方法。在对称加密方法中,数据发送方将明文和密钥一起经过特殊的加密方法处理后使其变成复杂的密文发送给接收方;接收方在收到密文后,则根据相同的密钥采用逆方法对密文进行解密,使其恢复成明文。在对称加密方法中,加密方和解密方所使用的密钥是同一个。
在对称加密方法中,根据加密方式的不同,其密码分为分组密码和流密码。对于分组密码来说,线性攻击和差分攻击是两种常见且有效的攻击方式。线性攻击是通过寻找明文和密文之间的一个有效的线性逼近表达式,将分组密码与随机置换区分开,并基于此进行密钥的恢复攻击。差分攻击是通过比较分析有特定区别的明文在通过加密后的变化传播情况来做密钥的恢复攻击。
自香龙在《通讯理论中的保密原理》提出密码机制的安全性并提出混淆和扩散的密码机制设计原则后,现有几乎所有主流的对称加密方法都是在混淆和扩散的原则下进行设计。混淆和扩散的基本原则如下:
混淆:破坏明文和密文之间的线性对应关系和统计关系;
扩散:将非线性特征扩散到整个密文,明文或密钥的任何位的差异尽可能地影响到密文的更多的位,使得密文无章可循。
传统的分组对称加密方法,每一个分组的明文长度、密钥长度、密文长度都是相同的,且对于相同的明文和密钥,每次加密后的密文都是相同的。在已知明文和密文对的情况下,密钥是唯一的。所以,传统的分组对称加密方法不能对抗线性攻击和差分攻击,导致其保密性不足。
发明内容
本发明的目的就在于为了解决上述问题而提供一种能够对抗线性攻击和差分攻击的对称加密方法。
本发明通过以下技术方案来实现上述目的:
一种能够对抗线性攻击和差分攻击的对称加密方法,包括以下步骤:
步骤1、密钥生成,包括以下步骤:
步骤1.1、任意随机生成一个二进制长度为2L的数,即该数包括前L位数和后L位数;
步骤1.2、取前L位数并记为w0;当后L位数与w0有奇数个位数不同时,则直接取后L位数并记为w1;当后L位数与w0有偶数个位数不同时,则将后L位数的最后一位取反后记为w1;
步骤1.3、确定密钥为K=(w0,w1);
步骤2、加密,包括以下步骤:
步骤2.1、将输入明文M按L位一组进行分组,最后不足L位的分组随机填充成L位,总分组数假设为T,则分组后的数据记为M1,M2,...,MT;
步骤2.2、随机生成两个数分别作为初始状态S0和明文M的增长分组MT+1;
步骤2.3、从第1个分组开始到第T+1个分组依次计算每一个分组的输出,经过T+1个分组后,最终状态为ST+1,每一个分组编码后的数据为C1,C2,...,CT+1;
步骤2.4、输出C1C2...CT+1ST+1作为密文。
作为优选,所述步骤2.3包括以下步骤:
步骤2.3.1、对于第一个分组,初始状态为S0,经过M1的编码后,状态值变为S1,编码后的数据为C1,C1的每一位都取所有中间状态的末位构成;
步骤2.3.2、经过一个分组后,将状态值S1做一次重置即对于第二个分组,取状态值S1作为其初始状态,经过M2的编码后,状态值变为S2,编码后的数据为C2,将状态值S2做一次重置即/>依次类推,直到经过T+1个分组后,最终状态为ST+1,每一个分组编码后的数据为C1,C2,...,CT+1;其中的/>表示异或运算。
本发明的有益效果在于:
本发明加密过程中有两个随机数即初始状态S0和明文M的增长分组MT+1,在加密后的输出中,这两个随机数直接丢弃,并没有体现在密文中,同时这两个随机数的不确定性都扩散到密文中的每一位,从而对于相同的明文和密钥,每次加密后得到的密文都不同,而这种不同究竟是密钥的不确定性带来的还是这两个随机数的不确定性带来的,对于攻击者来说是没法做出判定的,对于任意分组在已知明文、密文对的条件下,密钥空间中的任何一个密钥都可以找到某种对应的加密方式,所以密钥和密文之间不存在着任何统计学意义上的关系,所以本发明的加密方法能够抵抗一切形式的线性攻击和差分攻击,从而从本质上显著提高了保密性。
具体实施方式
下面结合实施例对本发明作进一步说明:
实施例1:
一种能够对抗线性攻击和差分攻击的对称加密方法,包括以下步骤:
步骤1、密钥生成,包括以下步骤:
步骤1.1、任意随机生成一个二进制长度为2L的数,即该数包括前L位数和后L位数;
步骤1.2、取前L位数并记为w0;当后L位数与w0有奇数个位数不同时,则直接取后L位数并记为w1;当后L位数与w0有偶数个位数不同时,则将后L位数的最后一位取反后记为w1;
步骤1.3、确定密钥为K=(w0,w1);由于w0和w1必须满足奇数个不同的位,所以对于n=2L位的密钥空间来说,真正有效密钥有22L-1个;密钥的二进制长度为2L-1,密钥的选择是完全随机的,且密钥是需要在加密者和解密者之间共享;
步骤2、加密,包括以下步骤:
步骤2.1、将输入明文M按L位一组进行分组,最后不足L位的分组随机填充成L位,总分组数假设为T,则分组后的数据记为M1,M2,...,MT;
步骤2.2、随机生成两个数分别作为初始状态S0和明文M的增长分组MT+1;
步骤2.3、从第1个分组开始到第T+1个分组依次计算每一个分组的输出,经过T+1个分组后,最终状态为ST+1,每一个分组编码后的数据为C1,C2,...,CT+1;
本步骤具体包括以下步骤:
步骤2.3.1、对于第一个分组,初始状态为S0,经过M1的编码后,状态值变为S1,编码后的数据为C1,C1的每一位都取所有中间状态的末位构成;
步骤2.3.2、经过一个分组后,将状态值S1做一次重置即对于第二个分组,取状态值S1作为其初始状态,经过M2的编码后,状态值变为S2,编码后的数据为C2,将状态值S2做一次重置即/>依次类推,直到经过T+1个分组后,最终状态为ST+1,每一个分组编码后的数据为C1,C2,...,CT+1;其中的/>表示异或运算;
步骤2.4、输出C1C2...CT+1ST+1作为密文。
与上述加密过程对应的解密过程如下:
采用相同的密钥w0和w1,对于密文C1C2...CT+1ST+1,从最后一个分组T+1开始到第1个分组,依次执行解密,方法如下:对于第T+1个分组,重置使用最终状态ST+1和CT+1执行解码操作,得到状态ST和解码后的数据MT+1,对于第T个分组,重置使用状态ST和CT执行解码操作,得到状态ST-1和解码后的数据MT,以此类推直到执行到第1个分组后,每一个分组对应的解码数据分别为MT+1,MT,...,M1;输出M1M2...MT作为解密后的明文。
实施例2:
为了更利于理解本发明,下面换个角度和表达方式对本发明进行进一步描述。
首先引入两种常用位运算:异或运算,用表示;对D循环左移n位,用D+n表示,如(1001101)+2=(0110110)。
接着构造一种新的编码机制,将其命名为Eagle,整个方案由生成参数、编码、解码三个过程组成。
1、生成参数过程:
首先随意选取两个L位的参数w0和w1,满足奇数个二进制位不同,如
另外选取L位的初始状态S0。
2、编码过程:
对于输入的二进制数据M,记其第i位为M[i],其中,1≤i≤L,M[i]∈{0,1},其中L为M的长度;编码过程如下:
[E1]i从1到L依次执行E2至E4;
[E2]如果M[i]=0,执行
[E3]如果M[i]=1,执行
[E4]取Si的末位(最后一位也即第L位)作为C的第i位,即C[i]=Si[L];
[E5]将(C,SL)作为编码过程的输出。
3、解码过程:
相反的,将上述编码过程的输出(C,SL)作为解码过程的输入,其解码过程如下:
[D1]i从L到1依次执行D2至D4;
[D2]对或/>执行试错测试,找到唯一的wx(其中x=0或x=1)使得
[D3]在试错D2阶段中产生的测试结果x作为M的第i位,也即M[i]=x;
[D4]对于在试错D2阶段中产生的两个Sx满足取末位等于C[i]的那一个数作为Si-1;
[D5]将M作为解码过程的输出。
Eagle的加密算法核心来自于上述编码过程,如果将上述Eagle编码过程中使用的参数w0和w1作为加密密钥,对M编码的过程可以看成是对明文M加密的过程,上述编码过程的输出(C,SL)就可以作为加密后的密文。事实上,可以在初始状态S0中引入随机性而不影响解码过程的正确性,由上述实施例1可知,正是这种随机性的引入,才设计了更为安全的加密体系。
上述实施例只是本发明的较佳实施例,并不是对本发明技术方案的限制,只要是不经过创造性劳动即可在上述实施例的基础上实现的技术方案,均应视为落入本发明专利的权利保护范围内。
Claims (1)
1.一种能够对抗线性攻击和差分攻击的对称加密方法,其特征在于:包括以下步骤:
步骤1、密钥生成,包括以下步骤:
步骤1.1、任意随机生成一个二进制长度为2L的数,即该数包括前L位数和后L位数;
步骤1.2、取前L位数并记为w0;当后L位数与w0有奇数个位数不同时,则直接取后L位数并记为w1;当后L位数与w0有偶数个位数不同时,则将后L位数的最后一位取反后记为w1;
步骤1.3、确定密钥为K=(w0,w1);
步骤2、加密,包括以下步骤:
步骤2.1、将输入明文M按L位一组进行分组,最后不足L位的分组随机填充成L位,总分组数假设为T,则分组后的数据记为M1,M2,...,MT;
步骤2.2、随机生成两个数分别作为初始状态S0和明文M的增长分组MT+1;
步骤2.3、从第1个分组开始到第T+1个分组依次计算每一个分组的输出,经过T+1个分组后,最终状态为ST+1,每一个分组编码后的数据为C1,C2,...,CT+1;
步骤2.4、输出C1C2...CT+1ST+1作为密文;
所述步骤2.3包括以下步骤:
步骤2.3.1、对于第一个分组,初始状态为S0,经过M1的编码后,状态值变为S1,编码后的数据为C1,C1的每一位都取所有中间状态的末位构成;
步骤2.3.2、经过一个分组后,将状态值S1做一次重置即对于第二个分组,取状态值S1作为其初始状态,经过M2的编码后,状态值变为S2,编码后的数据为C2,将状态值S2做一次重置即/>依次类推,直到经过T+1个分组后,最终状态为ST+1,每一个分组编码后的数据为C1,C2,...,CT+1;其中的/>表示异或运算。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010551947.7A CN111695129B (zh) | 2020-06-17 | 2020-06-17 | 一种能够对抗线性攻击和差分攻击的对称加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010551947.7A CN111695129B (zh) | 2020-06-17 | 2020-06-17 | 一种能够对抗线性攻击和差分攻击的对称加密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111695129A CN111695129A (zh) | 2020-09-22 |
CN111695129B true CN111695129B (zh) | 2023-09-08 |
Family
ID=72481381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010551947.7A Active CN111695129B (zh) | 2020-06-17 | 2020-06-17 | 一种能够对抗线性攻击和差分攻击的对称加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111695129B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101013938A (zh) * | 2007-01-12 | 2007-08-08 | 广州市诚毅科技软件开发有限公司 | 一种分组密码加密方法 |
WO2012053882A1 (en) * | 2010-10-20 | 2012-04-26 | Mimos Bhd. | A method for encrypting and decrypting data and a system therefor |
CN103607276A (zh) * | 2013-12-05 | 2014-02-26 | 桂林电子科技大学 | 新型基于随机函数的抗已知明文密文对攻击的分组加密方法 |
CN107147487A (zh) * | 2017-05-23 | 2017-09-08 | 高胜法 | 对称密钥随机分组密码 |
CN107276744A (zh) * | 2017-05-27 | 2017-10-20 | 上海斐讯数据通信技术有限公司 | 一种文件存储加密方法及系统 |
CN109861809A (zh) * | 2019-02-20 | 2019-06-07 | 中国电子科技集团公司第三十研究所 | 一种实用化的分组随机加解密方法 |
-
2020
- 2020-06-17 CN CN202010551947.7A patent/CN111695129B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101013938A (zh) * | 2007-01-12 | 2007-08-08 | 广州市诚毅科技软件开发有限公司 | 一种分组密码加密方法 |
WO2012053882A1 (en) * | 2010-10-20 | 2012-04-26 | Mimos Bhd. | A method for encrypting and decrypting data and a system therefor |
CN103607276A (zh) * | 2013-12-05 | 2014-02-26 | 桂林电子科技大学 | 新型基于随机函数的抗已知明文密文对攻击的分组加密方法 |
CN107147487A (zh) * | 2017-05-23 | 2017-09-08 | 高胜法 | 对称密钥随机分组密码 |
CN107276744A (zh) * | 2017-05-27 | 2017-10-20 | 上海斐讯数据通信技术有限公司 | 一种文件存储加密方法及系统 |
CN109861809A (zh) * | 2019-02-20 | 2019-06-07 | 中国电子科技集团公司第三十研究所 | 一种实用化的分组随机加解密方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111695129A (zh) | 2020-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107147487B (zh) | 对称密钥随机分组密码 | |
KR101324351B1 (ko) | 암호 기반 메시지 인증 코드를 생성하는 방법 | |
CN110086600B (zh) | 一种基于超混沌系统和变步长约瑟夫问题的图像加密方法 | |
WO2016206504A1 (zh) | 一种数据加密的方法、解密的方法及装置 | |
CN101719908A (zh) | 基于混沌理论和dna剪接模型的图像加密方法 | |
CN109981249B (zh) | 基于拉链式动态散列和nlfsr的加密解密方法及装置 | |
CN112769545B (zh) | 基于相邻像素约瑟夫变换和Mealy状态机的图像加密方法 | |
Gupta et al. | A new image encryption algorithm based on DNA approach | |
CN107204841B (zh) | 一种抵御差分功耗攻击的分组密码多s盒实现的方法 | |
Achkoun et al. | SPF-CA: A new cellular automata based block cipher using key-dependent S-boxes | |
Ge et al. | Fast chaotic image encryption algorithm using a novel divide and conquer diffusion strategy | |
US20220382521A1 (en) | System and method for encryption and decryption using logic synthesis | |
CN117375836A (zh) | 基于rsa加密算法的长文本分段加解密方法及系统 | |
CN111695129B (zh) | 一种能够对抗线性攻击和差分攻击的对称加密方法 | |
Kareem et al. | New modification on feistel DES algorithm based on multi-level keys | |
CN107493164B (zh) | 一种基于混沌系统的des加密方法和系统 | |
Ghosh et al. | Isomorphic cipher reduction | |
CN114826558A (zh) | 一种海量数据快速加密方法及系统 | |
Goumidi et al. | Hybrid chaos-based image encryption approach using block and stream ciphers | |
Fu et al. | A fast chaos-based colour image encryption algorithm using a hash function | |
Petrescu | Applications of quasigroups in cryptography | |
Kumar et al. | Chaotic dynamical systems based image encryption model | |
Bale et al. | Modification of Vigenère Cipher to Overcome Kasiski and Friedman Attacks | |
Younes et al. | CeTrivium: A Stream Cipher Based on Cellular Automata for Securing Real-TimeMultimedia Transmission. | |
Sharma et al. | Comparative analysis of block key encryption algorithms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240708 Address after: No. 136-9, Ningxia street, Qingyang District, Chengdu, Sichuan 610000 Patentee after: Gao Ming Country or region after: China Address before: Room 7-10F, Block B, Building 4, No. 200 Tianfu Fifth Street, Chengdu High tech Zone, Chengdu (Sichuan) Pilot Free Trade Zone, 610000, Sichuan Province Patentee before: Chengdu Yingxiang Tianji Technology Co.,Ltd. Country or region before: China |