CN110011787A - 一种基于aes加密算法的数据块填充方法及装置 - Google Patents
一种基于aes加密算法的数据块填充方法及装置 Download PDFInfo
- Publication number
- CN110011787A CN110011787A CN201910234936.3A CN201910234936A CN110011787A CN 110011787 A CN110011787 A CN 110011787A CN 201910234936 A CN201910234936 A CN 201910234936A CN 110011787 A CN110011787 A CN 110011787A
- Authority
- CN
- China
- Prior art keywords
- data
- frame
- encryption
- decryption
- filling
- 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
- 238000000034 method Methods 0.000 title claims abstract description 19
- 230000006798 recombination Effects 0.000 claims description 4
- 238000005215 recombination Methods 0.000 claims description 4
- 230000002159 abnormal effect Effects 0.000 claims description 3
- 230000001105 regulatory effect Effects 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 abstract description 3
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000011218 segmentation Effects 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
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
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Communication Control (AREA)
Abstract
本发明研究并实现了一种基于AES加密算法的数据块填充方法及装置,在基于以太网帧结构的“全帧加解密”等应用场景中,提出了“数据自填充”的数据块填充方法,通过数据帧预处理,基于AES算法的一次加解密和二次加解密,数据填充,数据帧重组过程实现了数据帧的加解密功能,解决了PKCS7等数据块填充算法存在的不足之处,保证了传输的高效性和数据的准确性。
Description
(一)技术领域:
本发明涉及到的是AES加密算法的数据块填充领域,主要是基于以太网帧结构的“全帧加解密”等应用场景。
(二)背景技术:
高级加密标准(英语:Advanced Encryption Standard,缩写:AES)是对称密钥加密中最流行的算法之一,基本模式有AES128、AES192、AES256;以太网(英语:Ethernet)是目前应用最广泛的局域网通讯方式(帧长是64字节-1518字节),所以,基于以太网帧结构的AES加密算法有大量的应用场景,其中,“全帧加解密”是最简单的应用场景之一。AES作为块密码算法,需要把明文分割成固定大小的块,并以此对每块明文进行加解密。在加密侧,如果明文长度不是单位长度的整数倍,最后一个明文块的大小就会不足一块的长度,这时就要对最后一个明文块进行填充,在解密侧,按照算法解密之后的数据包能够按照约定的方式把填充数据去除,把明文数据恢复出来。
常见的AES加密算法的数据块填充方式有PKCS7,ANSIX923等,选取数据块填充算法PKCS7在AES128加解密应用中的功能做具体说明。AES128加密算法的块长度是“16”字节,PKCS7填充字符串由一个字节序列组成,每个字节填充该字节序列的长度。举例演示这种模式的工作原理,基于以太网帧结构的“全帧加解密”等应用场景,假定一个以太网帧的明文数据包长度是“69”字节,假定数据帧如图1所示,那么,在加密侧,数据包按顺序会分割成4个长度为“16”字节的数据块和1个长度为“5”字节的数据块,最后一个数据块长度小于AES128块长度,需要填充“11”字节,最后一个数据块的数据为“EE EE EE EE EE”,则填充之后的数据为“EE EE EE EE EE 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B 0B”;在解密侧,会接收到5个长度为“16”字节的加密数据块,按照AES128加密算法规则进行解密,前4个数据块能够正确恢复出明文数据,最后1个数据块则恢复出数据“EE EE EE EE EE 0B 0B 0B 0B 0B 0B0B 0B 0B 0B 0B”,然后按照PKCS7填充规则去掉填充数据,得到原始明文数据“EE EE EEEE EE”,上述的数据帧详细加解密过程如图2所示。显而易见,基于以太网帧结构的AES算法的加解密应用场景,PKCS7等数据块填充算法存在两个不足之处:一,明文数据块的填充操作增加了数据包的长度,降低了数据的传输效率,二,解密侧存在“误去除”填充数据的可能性。
因此,基于以太网帧结构的AES加密算法的“全帧加解密”等应用场景,发明一种新的数据块填充方法及相应的加解密装置有重要意义。
(三)发明内容:
本发明在基于以太网帧结构的“全帧加解密”应用场景,首次提出了一种针对AES加密算法的“数据自填充”的数据块填充方法,并设计了以此方法作为数据块填充基础的加解密装置,解决了PKCS7等数据块填充算法存在的上述两个不足之处。
本发明所示的方法包括:
数据帧预处理;
数据帧基于AES算法的加解密;
数据填充;
数据帧重组;
本发明所示的装置分成加密部分和解密部分,具体包括:
数据帧预处理单元,完成异常数据帧的剔除及数据分割功能;
数据帧加解密单元,完成数据帧基于AES算法的加解密功能;
数据填充单元,完成数据块的填充功能;
数据帧重组单元,完成帧中数据的位置调整功能。
(四)附图说明:
图1假定数据帧示意图;
图2基于PKCS7数据块填充方式的加解密方法示意图;
图3基于“数据自填充”数据块填充方式的加解密方法示意图;
图4基于“数据自填充”数据块填充方式的加解密装置示意图。
(五)具体实施方式:
为了使本发明的方法、技术方案及优点更加明晰,以下结合附图和实例对本发明作进一步的详细说明。相关领域的技术人员应当理解,此处描述的具体实例仅仅用于理解本发明,并不用于限定本发明。
如图3A、图3B所示,在一个基于以太网帧结构的“全帧加解密”应用场景且采用AES128加密算法的实例中,提供了“数据自填充”作为数据块填充方法,具体内容包括:
步骤101,数据帧预处理,包括剔除异常数据帧和分割正常数据帧。由于有效以太帧长度最小字节数是64字节,所以长度小于64字节的数据帧被剔除;符合有效以太帧长度的数据帧按照16字节(AES128加密算法的块长度为16字节)为单位长度顺序进行数据分割,最后一个数据块的长度可能小于16字节,实例中数据帧分割成了5个数据块,最后一个数据块的长度为5字节。
步骤102,数据帧一次加密,分割的块长度等于AES128加密算法块长度的数据块按照AES128加密算法进行加密,实例中前4个数据块进行加密。
步骤103,数据自填充,最后一个数据长度小于加密算法“单位长度”的数据块需要填充,填充数据的“填充长度”是“单位长度”与最后一个数据块长度的差值,填充数据来源的起始位置是上一步骤处理完的数据帧的第一个字节,实例中第5个数据块需要填充,填充数据的来源是上一步骤处理完的第1个数据块的第1字节至第11字节。
步骤104,数据帧二次加密,填充后的数据块按照AES128加密算法进行加密,实例中填充后的第5个数据块进行加密。
步骤105,数据帧重组,首先从上一步骤处理完的数据帧的尾部截取“填充长度”的数据,然后依次替换上一步骤处理完的数据帧的头部数据,实例中截取第5个数据块第6字节至第16字节的数据依次替换第1个数据块第1字节至第11字节。
步骤201,与步骤101相同。
步骤202,与步骤103相同。
步骤203,数据帧一次解密,填充后数据帧的最后一个数据块按照AES128加密算法进行解密,实例中填充后的第5个数据块进行解密。
步骤204,与步骤105相同。
步骤205,数据帧二次解密,重组后的数据帧除去最后一个数据块的其他数据块按照AES128加密算法进行解密,实例中重组后的前4个数据块进行解密。
本发明中的装置如图4所示,其中包括:
数据帧预处理单元,完成异常数据帧的剔除及数据分割功能;
数据帧加解密单元,完成数据帧基于AES算法的一次加密、二次加密、一次解密和二次解密功能;
数据填充单元,完成数据块的填充功能;
数据帧重组单元,完成明文侧、密文侧帧中数据的位置调整功能。
如上所述,采用AES加密算法,且基于以太网帧结构的“全帧加解密”应用场景,本发明能够解决PKCS7等数据块填充算法存在的不足之处,保证传输的高效性和数据的准确性。
Claims (4)
1.一种基于AES加密算法的数据块填充方法及装置,其特征在于,所述方法包括:
数据帧预处理;
数据帧基于AES算法的加解密;
数据填充;
数据帧重组。
2.根据权利要求1所述的数据填充,其特征在于:在加密侧是使用一次加密后的数据帧的头部数据进行数据块填充;在解密侧是使用接收的数据帧的头部数据进行数据块填充。
3.根据权利要求1所述的数据帧重组,其特征在于:在加密侧是截取二次加密后的数据帧的“填充长度”的尾部数据替换本数据帧的头部数据;在解密侧是截取一次解密后的数据帧的“填充长度”的尾部数据替换本数据帧的头部数据。
4.一种基于AES加密算法的数据块填充方法及装置,其特征在于,所述装置包括:
数据帧预处理单元,完成异常数据帧的剔除及数据分割功能;
数据帧加解密单元,完成数据帧基于AES算法的加解密功能;
数据填充单元,完成数据块的填充功能;
数据帧重组单元,完成帧中数据的位置调整功能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910234936.3A CN110011787A (zh) | 2019-03-27 | 2019-03-27 | 一种基于aes加密算法的数据块填充方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910234936.3A CN110011787A (zh) | 2019-03-27 | 2019-03-27 | 一种基于aes加密算法的数据块填充方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110011787A true CN110011787A (zh) | 2019-07-12 |
Family
ID=67168282
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910234936.3A Pending CN110011787A (zh) | 2019-03-27 | 2019-03-27 | 一种基于aes加密算法的数据块填充方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110011787A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113242118A (zh) * | 2021-04-29 | 2021-08-10 | 中国电子科技集团公司第五十四研究所 | 一种基于aes高级加密标准的数据链加密通信方法 |
WO2022268105A1 (zh) * | 2021-06-25 | 2022-12-29 | 华为技术有限公司 | 一种通信方法及相关设备 |
CN116095186A (zh) * | 2023-04-11 | 2023-05-09 | 中勍科技股份有限公司 | 一种基于aes128的数据加解密方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060126835A1 (en) * | 2004-12-13 | 2006-06-15 | Kim Kwang O | High-speed GCM-AES block cipher apparatus and method |
CN103001766A (zh) * | 2012-11-26 | 2013-03-27 | 北京视博数字电视科技有限公司 | 一种支持非对齐数据的对称加解密方法及其系统 |
CN108155985A (zh) * | 2017-06-29 | 2018-06-12 | 广东网金云计算有限公司 | 一种加解密方法、装置及用户终端 |
-
2019
- 2019-03-27 CN CN201910234936.3A patent/CN110011787A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060126835A1 (en) * | 2004-12-13 | 2006-06-15 | Kim Kwang O | High-speed GCM-AES block cipher apparatus and method |
CN103001766A (zh) * | 2012-11-26 | 2013-03-27 | 北京视博数字电视科技有限公司 | 一种支持非对齐数据的对称加解密方法及其系统 |
CN108155985A (zh) * | 2017-06-29 | 2018-06-12 | 广东网金云计算有限公司 | 一种加解密方法、装置及用户终端 |
Non-Patent Citations (1)
Title |
---|
吴琼;刘建国;黄庆超;刘冬梅;陈伟;祝宁华;: "基于以太网帧结构的AES加解密算法的实现", 光通信技术, no. 11 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113242118A (zh) * | 2021-04-29 | 2021-08-10 | 中国电子科技集团公司第五十四研究所 | 一种基于aes高级加密标准的数据链加密通信方法 |
CN113242118B (zh) * | 2021-04-29 | 2022-05-27 | 中国电子科技集团公司第五十四研究所 | 一种基于aes高级加密标准的数据链加密通信方法 |
WO2022268105A1 (zh) * | 2021-06-25 | 2022-12-29 | 华为技术有限公司 | 一种通信方法及相关设备 |
CN116095186A (zh) * | 2023-04-11 | 2023-05-09 | 中勍科技股份有限公司 | 一种基于aes128的数据加解密方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110011787A (zh) | 一种基于aes加密算法的数据块填充方法及装置 | |
CN104579646B (zh) | 乱码本有限单向变换及其加解密应用的方法、装置和电路 | |
CN101202624B (zh) | 一种文件传输的方法及系统 | |
CN103139222A (zh) | 一种ipsec隧道数据传输方法及装置 | |
CN113452688B (zh) | 一种基于sm4与sm2算法的图像加密与解密方法及装置 | |
CN106161416A (zh) | 一种实现数据传输的方法及光通道传输设备 | |
CN108173640A (zh) | 一种高安全性的字符串对称加密和解密方法 | |
WO2021244489A1 (zh) | 光传送网中加密控制开销传输方法及装置 | |
CN102196321A (zh) | 100ge数据在光传送网中的传送方法和数据发送装置 | |
US20140044262A1 (en) | Low Latency Encryption and Authentication in Optical Transport Networks | |
CN102761418A (zh) | 一种字符压缩加密方法 | |
CN109660328A (zh) | 对称块加密方法、装置、设备及介质 | |
Nazarkevych et al. | Data protection based on encryption using Ateb-functions | |
CN104486756B (zh) | 一种密笺短信的加解密方法及系统 | |
CN116743505B (zh) | 一种基于国密的安全传输加密方法 | |
CN102348203A (zh) | 加密同步实现方法 | |
CN114598488A (zh) | 数据传输方法、通信装置及通信系统 | |
CN104158788A (zh) | 一种端到端传输数据的方法 | |
CN108881124A (zh) | 在模块间实现高性能通信的方法、系统、存储介质及设备 | |
CN114710287B (zh) | 一种加密方法、系统、存储介质及加密文件访问方法 | |
CN101848055A (zh) | 一种数据修正方法和装置 | |
CN110213292A (zh) | 数据发送方法及装置、数据接收方法及装置 | |
CN109714151A (zh) | 基于aes-gcm的芯片数据处理方法及系统 | |
CN106604275B (zh) | 一种基于移动互联网的信息传输加解密方法及系统 | |
CN112714120B (zh) | 一种链式数据加密、解密方法、加密数据的分离式存储方法 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190712 |