CN104702404B - 一种基于纠错码与低轮aes的加密方法及*** - Google Patents
一种基于纠错码与低轮aes的加密方法及*** Download PDFInfo
- Publication number
- CN104702404B CN104702404B CN201510166284.6A CN201510166284A CN104702404B CN 104702404 B CN104702404 B CN 104702404B CN 201510166284 A CN201510166284 A CN 201510166284A CN 104702404 B CN104702404 B CN 104702404B
- Authority
- CN
- China
- Prior art keywords
- aes
- encryption
- correcting code
- error correcting
- data
- 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
Landscapes
- Detection And Correction Of Errors (AREA)
- Storage Device Security (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本发明公开了一种基于纠错码与低轮AES的加密方法及***,相关***包括:低轮AES加密模块,用于利用获取到的AES高级加密标准密钥对输入的数据进行低轮AES加密,获得AES密文数据;纠错码编码模块,用于根据AES密文数据长度与纠错码长度的差值,生成一个该差值长度的纠错码编码密钥,并将该纠错码编码密钥与AES密文数据拼接后进行纠错编码,获得纠错码编码结果;舍弃该纠错码编码结果中的纠错码编码密钥,获得经过加密及纠错后的数据。本发明公开的方法及***,可以在具有误码、需要纠错的应用中以较小的计算资源消耗(包括软件计算时的CPU时间消耗,硬件计算时的面积、功耗消耗)实现较好的AES加密性能。
Description
技术领域
本发明涉及数据加密技术领域,尤其涉及一种基于纠错码与低轮AES的加密方法及***。
背景技术
AES(高级加密标准)编码提出于2000年,是一种主流的分组密码加密标准。其每次固定加密128比特数据;针对不同的加密强度,可以选择长度为128、192、256比特的密钥,分别对应了10、12、14轮加密计算。其每一轮加密计算包含了轮密钥加、S-box变换、行移位、列混合操作,最后一轮没有列混合操作。
以最简单的10轮AES为例,为了满足日益增长的数据带宽需求,10轮的AES编码通常采用若干个轮加密模块串行或并行来提高性能,由此需要较多的计算资源,在某些资源受限场合下会产生较大的设计困难。
另外,在很多应用场合下(包括但不限于通信、存储领域),数据会有一定概率出现随机错误。此时,纠错码生成模块是必须的模块之一。纠错码技术作为一种线性编码,但其本身不具备好的加密性能。
发明内容
本发明的目的是提供一种基于纠错码与低轮AES的加密方法及***,可以在具有误码、需要纠错的应用中以较小的计算资源消耗(包括软件计算时的CPU时间消耗,硬件计算时的面积、功耗消耗)实现较好的AES加密性能。
本发明的目的是通过以下技术方案实现的:
一种基于纠错码与低轮AES的加密***,该***包括:
低轮AES加密模块,用于利用获取到的AES高级加密标准密钥对输入的数据进行低轮AES加密,获得AES密文数据;
纠错码编码模块,用于根据AES密文数据长度与纠错码长度的差值,生成一个该差值长度的纠错码编码密钥,并将该纠错码编码密钥与AES密文数据拼接后进行纠错编码,获得纠错码编码结果;舍弃该纠错码编码结果中的纠错码编码密钥,获得经过加密及纠错后的数据。
进一步的,所述低轮AES加密模块采用7轮加密器流水化编码加密,或者最少至1轮并循环利用的加密器进行流水化编码加密。
进一步的,该***中设有若干组低轮AES加密模块与纠错码编码模块,组与组之间并行执行加密与纠错码编码任务。
一种基于纠错码与低轮AES的加密方法,该方法基于前述的***实现,其包括:
利用获取到的AES高级加密标准密钥对输入的数据进行低轮AES加密,获得AES密文数据;
根据AES密文数据长度与纠错码长度的差值,生成一个该差值长度的纠错码编码密钥,并将该纠错码编码密钥与AES密文数据拼接后进行纠错编码,获得纠错码编码结果;舍弃该纠错码编码结果中的纠错码编码密钥,获得经过加密及纠错后的数据。
进一步的,低轮AES加密时,采用7轮加密器流水化编码加密,或者最少至1轮并循环利用的加密器进行流水化编码加密。
进一步的,该方法还包括:并行执行若干组数据的加密与纠错码编码任务。
由上述本发明提供的技术方案可以看出,将纠错码编码与低轮AES加密结合到一起的加密方法,为同时具有纠错与加密需求的应用提供了一种低计算资源消耗、高安全性的加密方法。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例一提供的一种基于纠错码与低轮AES的加密***的示意图;
图2为本发明实施例一提供的用于具有纠错、加密需求的硬盘时的示意图;
图3为本发明实施例一提供的具有纠错、加密需求的网络数据传输时的示意图;
图4为本发明实施例二提供的一种基于纠错码与低轮AES的加密方法的流程图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
实施例一
本发明实施例一提供的一种基于纠错码与低轮AES的加密***,该***主要包括:
低轮AES加密模块,用于利用获取到的AES高级加密标准密钥对输入的数据进行低轮AES加密,获得AES密文数据;
纠错码编码模块,用于根据AES密文数据长度与纠错码长度的差值,生成一个该差值长度的纠错码编码密钥,并将该纠错码编码密钥与AES密文数据拼接后进行纠错编码,获得纠错码编码结果;舍弃该纠错码编码结果中的纠错码编码密钥,获得经过加密及纠错后的数据。
如图1所示,数据输入后依次经过低轮AES加密模块11与纠错码编码模块12进行上述处理后,获得并输出经过加密及纠错后的数据。
本发明实施例的方案适用于数据会有一定概率出现随机错误的场合。本方案中包含一个或若干个纠错码模块(可采用不同的纠错码算法),以及一个或若干个低轮AES加密模块,在提供纠错功能的同时提供加密功能。
本发明实施例中,AES加密模块为缩减轮数之后的AES加密模块(加密算法可采用通用AES轮加密算法),以较小的计算资源消耗实现较好的AES加密性能。示例性的,为了满足不同情况下的性能需求,低轮AES加密模块可以7轮加密器流水化编码加密,也可以采用最少至1轮加密器(但要循环利用)进行流水化编码加密。同时,也可以多个低轮AES加密模块并行,以达到更高的性能要求。
本发明实施例中,纠错码模块可以采用通用的纠错码编码算法。为了让纠错码具有相应的保密能力,对纠错码需要采用添加一组纠错码密钥,并设计相应的机制。
示例性的,以(10230,9790)的RS码为例说明,标准的(10230,9790)的RS码,其输入数据为9790比特,编码后输出数据长度为10230比特,其输出格式为在原9790比特数据之后添加了440比特冗余校验数据。本发明所述的RS码编码模块输入数据长度需要小于9790比特,不足部分由一组RS加密密钥所填充。同时,输出数据中,填充的RS加密密钥将会被舍弃。例如,输入数据长度为8192比特时,RS加密密钥为1598比特。此时,RS编码模块输入数据长度为8192比特,输出数据长度为8192加440比特也就是8632比特。
另外,根据性能需求,纠错码编码模块同样可以部署若干个以提高性能。
当***中设有若干组低轮AES加密模块与纠错码编码模块时,组与组之间可并行执行加密与纠错码编码任务,来提高性能。
进一步的,本发明实施例所提供的***还可用于具有纠错、加密需求的硬盘,以及用于具有纠错、加密需求的网络数据传输。
如图2所示,用于具有纠错、加密需求的硬盘时,基于本发明的上述***的方案,将数据纠错与加密后的数据被写入硬盘,从硬盘读出数据时,先由纠错码模块纠错,之后再经过AES解密模块解密。
如图3所示,用于具有纠错、加密需求的网络数据传输时,发送方基于本发明的上述***的方案,将数据纠错与加密之后经过网络传输给接收方,接收方可以利用对应的纠错码模块对接收数据纠错,之后再由AES解密模块解密。
本发明实施例的方案应用在既有纠错需求,又有加密需求的场景下时,可以在降低加密的计算资源开销的同时,保持较高的加密性能。在被攻击时,由于攻击者没有被隐去纠错码密钥,其无法恢复出正确的低轮AES加密结果,从而提高了低轮AES加密模块的抗攻击能力。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将***的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
实施例二
本发明实施例提供的一种基于纠错码与低轮AES的加密方法,该方法可基于上述实施例一所述的***来实现,其步骤如图4所示,主要包括:
步骤41、利用获取到的AES高级加密标准密钥对输入的数据进行低轮AES加密,获得AES密文数据;
步骤42、根据AES密文数据长度与纠错码长度的差值,生成一个该差值长度的纠错码编码密钥,并将该纠错码编码密钥与AES密文数据拼接后进行纠错编码,获得纠错码编码结果;舍弃该纠错码编码结果中的纠错码编码密钥,获得经过加密及纠错后的数据。
进一步的,低轮AES加密时,采用7轮加密器流水化编码加密,或者最少至1轮加密器进行流水化编码加密。
进一步的,该方法还包括:并行执行若干组数据的加密与纠错码编码任务。
需要说明的时,该方法可基于前述***来实现,因此,相应功能可参见前述***的描述,本实施例不在赘述。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (6)
1.一种基于纠错码与低轮AES的加密***,其特征在于,该***包括:
低轮AES加密模块,用于利用获取到的AES高级加密标准密钥对输入的数据进行低轮AES加密,获得AES密文数据;
纠错码编码模块,用于根据AES密文数据长度与纠错码长度的差值,生成一个该差值长度的纠错码编码密钥,并将该纠错码编码密钥与AES密文数据拼接后进行纠错编码,获得纠错码编码结果;舍弃该纠错码编码结果中的纠错码编码密钥,获得经过加密及纠错后的数据。
2.根据权利要求1所述的***,其特征在于,所述低轮AES加密模块采用7轮加密器流水化编码加密,或者最少至1轮并循环利用的加密器进行流水化编码加密。
3.根据权利要求1所述的***,其特征在于,该***中设有若干组低轮AES加密模块与纠错码编码模块,组与组之间并行执行加密与纠错码编码任务。
4.一种基于纠错码与低轮AES的加密方法,其特征在于,该方法基于权利要求1-3任一项所述的***实现,其包括:
利用获取到的AES高级加密标准密钥对输入的数据进行低轮AES加密,获得AES密文数据;
根据AES密文数据长度与纠错码长度的差值,生成一个该差值长度的纠错码编码密钥,并将该纠错码编码密钥与AES密文数据拼接后进行纠错编码,获得纠错码编码结果;舍弃该纠错码编码结果中的纠错码编码密钥,获得经过加密及纠错后的数据。
5.根据权利要求4所述的方法,其特征在于,低轮AES加密时,采用7轮加密器流水化编码加密,或者最少至1轮并循环利用的加密器进行流水化编码加密。
6.根据权利要求4所述的方法,其特征在于,该方法还包括:并行执行若干组数据的加密与纠错码编码任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510166284.6A CN104702404B (zh) | 2015-04-09 | 2015-04-09 | 一种基于纠错码与低轮aes的加密方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510166284.6A CN104702404B (zh) | 2015-04-09 | 2015-04-09 | 一种基于纠错码与低轮aes的加密方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104702404A CN104702404A (zh) | 2015-06-10 |
CN104702404B true CN104702404B (zh) | 2017-12-22 |
Family
ID=53349198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510166284.6A Active CN104702404B (zh) | 2015-04-09 | 2015-04-09 | 一种基于纠错码与低轮aes的加密方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104702404B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107358284A (zh) * | 2017-07-11 | 2017-11-17 | 北京捷润科技有限公司 | 二维码的生成方法、读取方法、生成装置和读取装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101594227A (zh) * | 2008-05-30 | 2009-12-02 | 华为技术有限公司 | 数据加密和解密的方法、装置及通信*** |
CN102437910A (zh) * | 2011-10-18 | 2012-05-02 | 国家超级计算深圳中心(深圳云计算中心) | 数据加/解密校验方法及其*** |
-
2015
- 2015-04-09 CN CN201510166284.6A patent/CN104702404B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101594227A (zh) * | 2008-05-30 | 2009-12-02 | 华为技术有限公司 | 数据加密和解密的方法、装置及通信*** |
CN102437910A (zh) * | 2011-10-18 | 2012-05-02 | 国家超级计算深圳中心(深圳云计算中心) | 数据加/解密校验方法及其*** |
Non-Patent Citations (3)
Title |
---|
"基于Turbo码的纠错加密联合编码方案";张吾进等;《无线通信技术》;20120515;第38卷(第5期);第29-32页 * |
"基于LDPC的纠错密码研究与设计";苏庆;《中国优秀硕士学位论文全文数据库信息科技辑》;20080815(第8期);第I136-107页 * |
"认知***AES_LDPC纠错加密器的设计与性能分析";鲁凌云等;《***工程与电子技术》;20100131;第32卷(第1期);第195-199页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104702404A (zh) | 2015-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109672518B (zh) | 抗量子攻击的区块链的节点数据处理 | |
CN101984574B (zh) | 一种数据加解密方法及装置 | |
US8689087B2 (en) | Method and entity for probabilistic symmetrical encryption | |
CN108197484B (zh) | 一种分布式存储环境下实现节点数据安全的方法 | |
CN101779190B (zh) | 信息传输和综合保护的方法 | |
CN107911354B (zh) | 一种复合并行数据加密方法 | |
CN104737495A (zh) | 校正量子密钥分配协议中的比特误差的排列方法 | |
CN104580236B (zh) | 流媒体加密及解密方法、加密及解密装置 | |
CN105024801A (zh) | 一种量子加密通信方法 | |
CN106341208A (zh) | 基于平衡索引和极化码的联合信道安全编码方法 | |
CN102082662B (zh) | 基于同步随机数信息库信息检索的量子安全通信方法 | |
CN102594566A (zh) | 一种面向无线传感器网络的混沌消息认证码实现方法 | |
CN104394144A (zh) | 一种云存储医疗数据的安全传输方法 | |
CN104769881A (zh) | 具有错误校正的aes实现方式 | |
CN116150795A (zh) | 基于同态加密的数据处理方法、***及相关设备 | |
Han et al. | Efficient exact regenerating codes for byzantine fault tolerance in distributed networked storage | |
CN104702404B (zh) | 一种基于纠错码与低轮aes的加密方法及*** | |
CN102185897B (zh) | 安全分散式虚拟存储池*** | |
CN107172429B (zh) | 基于网络编码的可分级视频流加密方法 | |
CN106059748B (zh) | 一种基于块安全再生码的轻量级数据安全存储方法 | |
CN202121594U (zh) | 基于同步随机数信息库信息检索的量子安全通信*** | |
CN103457704A (zh) | 一种度分布随机数序列的同步重现控制方法及*** | |
CN103634113B (zh) | 一种带用户/设备身份认证的加解密方法及装置 | |
CN112613054A (zh) | 一种基于grs码的电子档案验证方法、装置、电子设备 | |
CN112486412A (zh) | 一种基于分布式对象存储***安全的信息分散方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |