CN112311527A - 一种主密钥变换为多项式表格子密钥查表的加密方法 - Google Patents
一种主密钥变换为多项式表格子密钥查表的加密方法 Download PDFInfo
- Publication number
- CN112311527A CN112311527A CN202010980747.3A CN202010980747A CN112311527A CN 112311527 A CN112311527 A CN 112311527A CN 202010980747 A CN202010980747 A CN 202010980747A CN 112311527 A CN112311527 A CN 112311527A
- Authority
- CN
- China
- Prior art keywords
- polynomial
- key
- encryption
- crc8
- static
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0631—Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明的目的是提供一种主密钥变换为多项式表格子密钥查表的加密方法,其特点在于将主密钥生成多项式静态表格,子密钥动态查表,包括密钥单元数据储存模块,数据寄存模块,数据加密模块,其中密码每次加密或解密一个字节,需要从子密钥中两次得到查表需要的多项式表格排列序号。具体实施方式为,主密钥生成多项式表格,初始化子密钥,循环加密或解密一个字节,子密钥更新,直到加密或解密结束。
Description
技术领域
本发明涉及信息安全加密技术领域,尤其是涉及一种主密钥变换为多项式表格子密钥查表的加密方法。
背景技术
目前流行且经典的加解密技术是分组密码AES,AES分组字长是 16个字节(128位),密钥长度分为128位、192位和256位,对应的迭代分为10轮、12轮和14轮。
AES的缺点:
1).明文字长不是16的倍数时,需要填充至16的倍数,导致密文长度恒为16的倍数。当明文长度不是16的倍数时密文长度大于明文长度,在实际应用中不利于流文件的加密。
2).密钥长度长,迭代次数多,加密时间长;密钥长度短,短迭代次数少,加密时间短。
本发明的技术解决方案
密码密文长度恒等于明文长度,不需要填充,在实际应用中有利于流文件的加密。
本发明迭代次数恒为两次动态查表(等效为8次静态查表),因此加密时间的长短与密钥长度无关。
本发明主要解决了明文分组长度和密钥长度成正比的问题。
例如分组密码AES,分组字长是16个字节(128位),密钥长度分为128位、192位和256位,迭代分为10轮、12轮和14轮。
假若再增大密钥长度,那么分组长度和迭代次数都会随之增大,填充也会增大,加密速度会随着密钥长度的增加变得更慢。
本发明每次加密一个字节,即分组一个字节。如果按照分组密码设计,那么迭代次数会很大,速度会很慢,而且安全强度不够。如果按照流密码设计,会存在复杂的伪随机密钥流发生器等诸多技术问题。
另外,本发明效率高速度快的原因主要是:将类似AES密码的复杂的行列转换等复杂计算变换为查表计算,不但节省时间而且节省内存;单独算法的实质是流密码,并行组合可以得到分组密码,各单独算法都是互不相关的。
所以,本发明采用了创新的主密钥生成多项式静态表格,子密钥动态查表的设计,彻底解决了明文分组长度和密钥长度成正比的问题。
发明内容
本发明的目的是提供一种主密钥变换为多项式表格子密钥查表的加密方法,其特点在于将主密钥生成多项式静态表格,子密钥动态查表,包括密钥单元数据储存模块,数据寄存模块,数据加密模块,其中密码每次加密或解密一个字节,需要从子密钥中两次得到查表需要的多项式表格排列序号,具体方法步骤为:
进一步地,主密钥生成,配置信息包括j-1位CRC8初始值,其中并行迭代模块包括i*j个迭代单元;第i-1行第0列迭代单元用于接收所述信息字段中对应位的信息值;第0行第j-1列迭代单元用于响应时钟信号,根据所述CRC8初始值及生成多项式中对应次幂的系数,计算出第0行第j-1列迭代单元的输出值;第i行第j列迭代单元用于响应所述时钟信号,根据第i-1行第j-1迭代单元的输出值与生成多项式中对应次幂的系数,计算出第i行第j列迭代单元的输出值,i 与j皆为正整数,CRC8生成多项式表格密码采用CRC8可逆的多项式静态表格,即CRC8明文和密文都是一个字节,所以有192个多项式是可逆的,64个多项式是不可逆的;
进一步地,初始化子密钥;
进一步地,在数据寄存模块中循环加密或解密一个字节;
进一步地,子密钥在数据加密模块更新;
进一步地,密钥于储存模块运行直到加密或解密结束;
以上加密运算步骤均所用CRC8多项式可逆运算
进一步地,所述步骤S4,S5中子密钥两次加密过程中,数据储存模块内的子密钥由数据加密部件中获取。
进一步地,在步骤S1中,所述主密钥由使用者自行设定范围在 16-256字节,然后通过可逆的CRC运算生成多项式静态表格。其中,所述主密钥和多项式表格是等价的。如果在嵌入式领域应用,在直接提供多项式表格的情况下可省略多项式表格的生成过程。
进一步地,在数据寄存模块中所述多项式静态表格由16-256个字节组成,所述多项式静态表格是由主密钥连续的四个字节经过四次 CRC8运算的可逆运算得到。其中加密多项式静态表格和解密多项式静态表格互为逆表格,所述加密多项式多项式静态表格由CRC8运算的正运算得到,所述解密多项式静态表格由CRC8运算的逆运算得到。
进一步地,所述子密钥长度为32位四个字节,生成过程为输入,置换,输出,其中置换过程为查询多项式静态表格过程,每加密一个字节,需要两次置换过程。
进一步地,所述多项式静态表格可以压缩,压缩比为16:1,所述每个多项式静态表格占用16个字节。
进一步地,密码加密或解密一个字节时,采用子密钥二次查表,所述表格为四重多项式表格,并且在两次查表之间插入非线性盒计算,提高抗击差分攻击等各种攻击能力,加密或解密一个字节后,子密钥被更新并且环移。
附图说明
图1为本发明加密解密方法示意图。
具体实施方式
下面结合附图具体介绍本发明
根据附图1本发明加密或解密需要两轮置换,两轮之间插入非线性S盒以便提高应对各种差分攻击。
32位子密钥分为四个字节,分别为输入、置换1(查表1)、置换2(查表2)、输出。置换1(查表1)和置换2(查表2)同时又提供256 个四重多项式置换表格的查表索引。
所以,FSP每个字节的安全强度是232+256!(其中,!表示阶乘)。
每个四重多项式置换表格由四个字节密钥迭代产生,这在数学中是排列问题,即65536*65536=4294967296中取256,它的计算复杂度比256!要大很多,即FSP每字节的安全强度远远大于232+256!。
由于本发明一次加密一个字节,无法与主密钥进行充分异或运算。如果采用多轮迭代,会使加密速度变得很慢。因此,本发明采用了与众不同的主密钥多项式静态表格,而子密钥动态查表的方式,充分发挥了分组密码多轮迭代和流密码伪随机密钥流的优点。
本发明主密钥多项式静态表格分为加密表格和解密表格,两个表格互为逆表格,表格的生成过程是CRC8的可逆运算。
在数学上CRC是不可逆的。但是,经过软件测试证明,在一定条件下,CRC是可逆的,不满足条件的CRC是不可逆的。
软件测试结果如下:
当CRC多项式中包含“+1”时,CRC可逆。否则不可逆。
在左移CRC中,多项式数字表达式(权值)最低位为“1”时(奇数), CRC可逆。
在右移CRC中,多项式数字表达式(权值)最高位为“1”时(负数), CRC可逆。
所以,多项式数字表达式(权值)最高位和最低位同时为“1”时, CRC恒为不可逆。
那么,CRC多项式至少1/4是不可逆的,最多3/4是可逆的。本发明采用CRC8可逆的多项式静态表格,即CRC8明文和密文都是一个字节,故有192个多项式是可逆的。
优选的一个实例,主密钥生成,配置信息包括j-1位CRC8初始值,其中并行迭代模块包括i*j个迭代单元;第i-1行第0列迭代单元用于接收所述信息字段中对应位的信息值;第0行第j-1列迭代单元用于响应时钟信号,根据所述CRC8初始值及生成多项式中对应次幂的系数,计算出第0行第j-1列迭代单元的输出值;第i行第j列迭代单元用于响应于所述时钟信号,根据第i-1行第j-1迭代单元的输出值与生成多项式中对应次幂的系数,计算出第i行第j列迭代单元的输出值,i与j皆为正整数,CRC8生成多项式表格密码采用CRC8可逆的多项式静态表格,即CRC8明文和密文都是一个字节,故有192个多项式是可逆的,64个多项式是不可逆的;
优选的一个实例,初始化子密钥;
优选的一个实例,在数据寄存模块中循环加密或解密一个字节;
优选的一个实例,子密钥于数据加密模块更新;
优选的一个实例,密钥于储存模块运行直到加密或解密结束;
以上加密运算步骤均所用CRC8多项式可逆运算
优选的一个实例,所述步骤S4,S5中子密钥两次加密过程中,数据储存模块内的子密钥由数据加密部件中获取。
优选的一个实例,在步骤S1中,所述主密钥由使用者自行设定范围在16-256字节,然后通过可逆的CRC运算生成多项式静态表格,其中所述主密钥和多项式表格是等价的,如果在嵌入式领域应用,在直接提供多项式表格的情况下可省略多项式表格的生成过程。
优选的一个实例,在数据寄存模块中所述多项式静态表格由 16-256个字节组成,所述多项式静态表格是由主密钥连续的四个字节经过四次CRC8运算的可逆运算得到,其中加密多项式静态表格和解密多项式静态表格互为逆表格,所述加密多项式多项式静态表格由CRC8运算的正运算得到,所述解密多项式静态表格由CRC8运算的逆运算得到。
优选的一个实例,所述子密钥长度为32位四个字节,生成过程为输入,置换,输出,其中置换过程为查询多项式静态表格过程,每加密一个字节,需要两次置换过程。
优选的一个实例,所述多项式静态表格可以压缩,压缩比为16: 1,所述每个多项式静态表格占用16个字节。
优选的一个实例,密码加密或解密一个字节时,采用子密钥二次查表,所述表格为四重多项式表格,并且在两次查表之间插入非线性盒计算,提高抗击差分攻击等各种攻击能力,加密或解密一个字节后,子密钥被更新并且环移。
以上所揭露的仅为本发明的优选实例而已,当然不能以此来限定本发明之权利范围,因此依本发明申请专利范围所作的类似变换,仍属本发明所涵盖的范围。
Claims (7)
1.一种主密钥变换为多项式表格子密钥查表的加密方法,其特征在于将主密钥生成多项式静态表格,子密钥动态查表,包括密钥单元数据储存模块,数据寄存模块,数据加密模块,其中密码每次加密或解密一个字节,需要从子密钥中两次得到查表需要的多项式表格排列序号,具体方法步骤为:
S1:主密钥生成,配置信息包括j-1位CRC8初始值,其中并行迭代模块包括i*j个迭代单元;第i-1行第0列迭代单元用于接收所述信息字段中对应位的信息值;第0行第j-1列迭代单元用于响应时钟信号,根据所述CRC8初始值及生成多项式中对应次幂的系数,计算出第0行第j-1列迭代单元的输出值;第i行第j列迭代单元用于响应于所述时钟信号,根据第i-1行第j-1迭代单元的输出值与生成多项式中对应次幂的系数,计算出第i行第j列迭代单元的输出值,i与j皆为正整数,CRC8生成多项式表格密码采用CRC8可逆的多项式静态表格,即CRC8明文和密文都是一个字节,故有192个多项式是可逆的,64个多项式是不可逆的;
S2:初始化子密钥;
S3:在数据寄存模块中循环加密或解密一个字节;
S4:子密钥在数据加密模块更新;
S5:密钥在储存模块运行直到加密或解密结束;
以上加密运算步骤均采用CRC8多项式可逆运算。
2.根据权利要求1所述的一种主密钥变换为多项式表格子密钥查表的加密方法,其特征在于,所述步骤S4,S5中子密钥两次加密过程中,数据储存模块内的子密钥由数据加密模块中获取。
3.根据权利要求1所述的一种主密钥变换为多项式表格子密钥查表的加密方法,其特征在于:步骤S1中,所述主密钥由使用者自行设定范围在16~256字节,然后通过可逆的CRC运算生成多项式静态表格,其中所述主密钥和多项式表格是等价的,如果在嵌入式领域应用,在直接提供多项式表格的情况下可以省略多项式表格的生成过程。
4.根据权利要求1所述的一种主密钥变换为多项式表格子密钥查表的加密方法,其特征在于:在数据寄存模块中所述多项式静态表格由16~256个字节组成,所述多项式静态表格是由主密钥连续的四个字节经过四次CRC8运算的可逆运算得到,其中加密多项式静态表格和解密多项式静态表格互为逆表格,所述加密多项式静态表格由CRC8运算的正运算得到,所述解密多项式静态表格由CRC8运算的逆运算得到。
5.根据权利要求1所述的一种主密钥变多项式表格子密钥查表的加密方法,其特征在于:所述子密钥长度为32位四个字节,生成过程为输入,置换,输出,其中置换过程为查询多项式静态表格过程,每加密一个字节,需要两次置换过程。
6.根据权利要求3所述的一种主密钥变多项式表格子密钥查表的加密方法,其特征在于:所述多项式静态表格可以压缩,压缩比为16:1,所述每个多项式静态表格占用16个字节。
7.根据权利要求4所述的一种主密钥变换为多项式表格子密钥查表的加密方法,其特征在于:密码加密或解密一个字节时,采用子密钥二次查表,所述表格为四重多项式表格,并且在两次查表之间插入非线性盒计算,提高抗击差分攻击等各种攻击能力,加密或解密一个字节后,子密钥被更新并且环移。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010980747.3A CN112311527A (zh) | 2020-09-17 | 2020-09-17 | 一种主密钥变换为多项式表格子密钥查表的加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010980747.3A CN112311527A (zh) | 2020-09-17 | 2020-09-17 | 一种主密钥变换为多项式表格子密钥查表的加密方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112311527A true CN112311527A (zh) | 2021-02-02 |
Family
ID=74483470
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010980747.3A Pending CN112311527A (zh) | 2020-09-17 | 2020-09-17 | 一种主密钥变换为多项式表格子密钥查表的加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112311527A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115348018A (zh) * | 2022-07-26 | 2022-11-15 | 陕西洲盾软件科技有限公司 | 一种数据处理方法、装置及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1677921A (zh) * | 2004-03-31 | 2005-10-05 | 华为技术有限公司 | 通过可编程器件实现数据加密的方法 |
CN108476132A (zh) * | 2015-11-06 | 2018-08-31 | 纳格拉维森公司 | 用于加密操作的密钥序列生成 |
CN108880562A (zh) * | 2017-05-11 | 2018-11-23 | 珠海格力电器股份有限公司 | 循环冗余校验电路及其方法、装置以及芯片、电子设备 |
CN110677237A (zh) * | 2019-11-04 | 2020-01-10 | 郑州轻工业学院 | 一种具有似混沌特性的文件加密方法 |
CN111488575A (zh) * | 2020-04-15 | 2020-08-04 | 清华大学 | 一种存储路径上主动防御硬件木马的系统及方法 |
-
2020
- 2020-09-17 CN CN202010980747.3A patent/CN112311527A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1677921A (zh) * | 2004-03-31 | 2005-10-05 | 华为技术有限公司 | 通过可编程器件实现数据加密的方法 |
CN108476132A (zh) * | 2015-11-06 | 2018-08-31 | 纳格拉维森公司 | 用于加密操作的密钥序列生成 |
CN108880562A (zh) * | 2017-05-11 | 2018-11-23 | 珠海格力电器股份有限公司 | 循环冗余校验电路及其方法、装置以及芯片、电子设备 |
CN110677237A (zh) * | 2019-11-04 | 2020-01-10 | 郑州轻工业学院 | 一种具有似混沌特性的文件加密方法 |
CN111488575A (zh) * | 2020-04-15 | 2020-08-04 | 清华大学 | 一种存储路径上主动防御硬件木马的系统及方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115348018A (zh) * | 2022-07-26 | 2022-11-15 | 陕西洲盾软件科技有限公司 | 一种数据处理方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Massey | SAFER K-64: A byte-oriented block-ciphering algorithm | |
Adams et al. | The structured design of cryptographically good S-boxes | |
Lim | CRYPTON: A new 128-bit block cipher | |
Brown et al. | Improving resistance to differential cryptanalysis and the redesign of LOKI | |
CN106656475B (zh) | 一种用于高速加密的新型对称型密钥加密方法 | |
Gueron et al. | AES-GCM-SIV: Nonce misuse-resistant authenticated encryption | |
CN107147487B (zh) | 对称密钥随机分组密码 | |
JPH0863097A (ja) | データを暗号化するための対称暗号化方法およびシステム | |
Delfs et al. | Symmetric-key encryption | |
JP2008516296A (ja) | 擬群を用いる、暗号法の基本要素、エラーコーディング、及び擬似ランダム数改善方法 | |
Feng et al. | Loiss: A byte-oriented stream cipher | |
KR100800468B1 (ko) | 저전력 고속 동작을 위한 하드웨어 암호화/복호화 장치 및그 방법 | |
Gouvêa et al. | High speed implementation of authenticated encryption for the MSP430X microcontroller | |
Masoodi et al. | Symmetric Algorithms I | |
Noura et al. | Overview of efficient symmetric cryptography: dynamic vs static approaches | |
CN112311527A (zh) | 一种主密钥变换为多项式表格子密钥查表的加密方法 | |
JP4470135B2 (ja) | 擬似乱数生成システム | |
Mohan et al. | Revised aes and its modes of operation | |
Baigneres et al. | A classical introduction to cryptography exercise book | |
CN115811398A (zh) | 基于动态s盒的分组密码算法、装置、系统及存储介质 | |
Ragab et al. | Enhancements and implementation of RC6/sup TM/block cipher for data security | |
Landge et al. | VHDL based Blowfish implementation for secured embedded system design | |
KR20100115769A (ko) | 스트림 암호를 위한 키수열 발생 방법 및 장치. 블록 암호를 위한 S-box 및 상기 S-box에서의 치환 방법 | |
Pirzada et al. | The parallel CMAC synthetic initialization vector algorithm implementation on FPGA | |
RU2796629C1 (ru) | Способ блочного преобразования цифровых данных на основе регистра сдвига длины восемь с 32-битовыми ячейками и с тремя обратными связями |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210202 |
|
RJ01 | Rejection of invention patent application after publication |