CN101938349A - 一种适用于硬件实现的s盒及其电路实现方法 - Google Patents
一种适用于硬件实现的s盒及其电路实现方法 Download PDFInfo
- Publication number
- CN101938349A CN101938349A CN 201010298413 CN201010298413A CN101938349A CN 101938349 A CN101938349 A CN 101938349A CN 201010298413 CN201010298413 CN 201010298413 CN 201010298413 A CN201010298413 A CN 201010298413A CN 101938349 A CN101938349 A CN 101938349A
- Authority
- CN
- China
- Prior art keywords
- box
- realization
- circuit
- function
- multiplication
- 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
Landscapes
- Complex Calculations (AREA)
Abstract
本发明提供了一种适用于硬件实现的8×8的S盒及其电路实现方法,该S盒使用有限域GF(((22)2)2)上的求逆运算和GF(2)8的仿射变换复合而成,具备较强的非线性度,差分传播概率,雪崩性能和代数复杂度等密码学性质。相比于其它含28个元素的伽罗华域,本发明所选取的域GF(((22)2)2)可降低求逆运算的复杂性,各级域扩张生成多项式的选取进一步减少了子域运算的开销。本发明还给出了该S盒的一种硬件实现方式,整个S盒的计算过程完全可以转化为比特的异或、与和取反操作,使用简单的逻辑门电路即可实现。整个过程无需查表,减少了硬件总体实现的开销。
Description
技术领域
本发明属于信息安全领域,具体涉及到分组密码算法中一种适用于硬件实现的非线性变换——S盒的构造,及其高效的硬件实现方法,该方法不涉及任何查表操作。
背景技术
一般地,分组密码包含混淆层与扩散层,混淆层可用若干并置且独立的代换函数——S盒构成。S盒本质上都可以看作一个多输出的向量值布尔函数:
并称为的S盒,它将一个比特的数据映射为一个比特的数据。作为提供混淆作用的核心部件,S盒多数使用随机置换或有限域上的非线性函数。目前,S盒已经成为了许多分组密码算法唯一的非线性模块,它的密码强度也将直接影响整个分组密码算法的安全强度。
作为分组密码的典型代表,高级加密标准(AES)使用了8×8的S盒,它是用有限域GF(28)上的求乘法逆和GF(2)上的仿射变换复合而成。此外,中国自主研发了一套无线局域网数据密码算法SMS4,其8×8的S盒同样由有限域上的逆函数与仿射变换的复合而成。从密码学的角度来看,这两个S盒都具备比较理想的非线性度、差分均匀度和代数复杂性等密码学性能。
S盒的设计,除了要考虑其密码学性质,更要注重实现性能。硬件实现因为具备更高的速度和更强的物理安全性,其实用价值更强。然而,除了实现的速度与内存消耗,硬件实现的总体代价也是必须考虑的。AES的S盒的软件实现一般采用查表的方式,8×8的S盒的存储量为28×8比特,但查表操作不适用于硬件实现,如果表的规模太大,查表操作的效率偏低,而表的存储量对于芯片面积有着严格要求的嵌入式系统是难以接受的。
针对S盒的硬件实现,目前比较流行的技术是引入元素的同构表示,其基本思想是通过一个可逆的线性变换T将域GF(28)上的元素映射到复合域GF(24)2)或塔域GF(((22)2)2)上同构的元素,并在相应的域中求乘法逆。这种转化方法选取了实现代价相对较小的域,无需借助查表操作,对于硬件实现来说即减少开销,又避免了内存读写数据产生的延迟。不过原域与复合域之间的两次转化,以及复合域求逆引入的一系列GF(24)或GF((22)2)上的运算,也在一定程度上提高了S盒运算的复杂度。为此,对于S盒的设计,有必要应当在满足安全性需求的前提下对运算做适当的改进,使其硬件实现具备更高的效率。
发明内容
本发明的目的在于提供一种适用于硬件实现的8×8的S盒,在满足安全性需求的前提下,适当改变S盒传统的运算方式,使其硬件实现无需查表,使用复合域方法将具备更高的效率。
本发明给出的S盒将采用有限域上的逆函数与仿射变换的复合,其中的有限域的选取将使其逆函数的复合域硬件实现的代价相对较小。
本发明的技术方案概述如下:
一种应用于分组密码的S盒,其特征在于,
- 所述S盒为8×8的S盒;
本发明同时提供了所述S盒的电路实现方法,技术方案如下:
由上式可见,电路中必须嵌入实现的加法、乘法、常量乘法和平方等运算的子模块。
这一步操作可直接用一个子模块实现。
函数的结构相对简单,只包含一个仿射变换模块,实现(3)式中所示的输入8比特和输出8比特数据之间的关系,只需比特的异或与取反操作就能实现这一模块。
函数的结构比较复杂,为了借助复合域的运算,结合(2)式,必须将8比特数据分成两部分(高4位和低4位),然后按(2)所示分两路并联,一路按顺序计算、,另一路按顺序计算、,接着两路汇合相加,得到,并在中求逆,再分别与和相乘,就得到了函数的高4位和低4位的计算结果。
本发明的有益效果:本发明提供的S盒具备较强的非线性度,差分传播概率,雪崩性能和代数复杂度等密码学性质。相比于其它含28个元素的伽罗华域,本发明所选取的伽罗华域GF(((22)2)2)可降低求逆运算的复杂性,各级域扩张生成多项式的选取进一步减少了子域运算的开销。本发明还给出了该S盒的一种硬件实现方式(见具体实施方式),整个S盒的计算过程可以转化为比特的异或、与和取反操作,使用简单的逻辑门电路即可实现。整个过程无需查表,减少了硬件总体实现的开销。
附图说明
图1是模块电路的总体设计图。
具体实施方式
下面结合具体的实例对本发明进行进一步说明。
本发明的S盒对8比特数据的处理过程如下:
以上操作涉及了域的乘法、常量乘法、平方与求逆的运算,这些运算都可通过比特的异或、与和取反等简单的操作实现,以下是具体实现步骤:
乘法:
平方:
求逆:
利用逆函数的代数正规型,可得到求逆的计算公式
图3到图6分别给出了实现上述域的乘法、常量乘法、平方与求逆运算的一种门级电路图,此外图2还给出了实现函数操作的仿射变换模块的一种门级电路图。这些电路都只用到了与门、异或门与非门,按照运算公式中的顺序与比特之间组合的关系,通过相应的门的布局即可实现。
假定S盒输入的8比特数据为10010011,则按发明内容中S盒的运算步骤进行计算,每一步的结果如下:
2. ;
4. ;
8. 计算;
即8比特数据10010011经过本S盒作用的结果是10001001。
本发明的有益效果表现在以下三个方面:
1. 本发明构造的S盒相对简单,具备较强的非线性度,差分传播概率,雪崩性能和代数复杂度等常见的密码学性质,可以作为一个分组密码算法的混淆层部件。
2. 一般8×8的S盒,如果要硬件实现普通的伽罗华域的逆函数,往往需要先做一步线性变换,将元素从转化为域或域上同构的元素,而后在或里求逆,接着再转换到。本发明直接在里求逆,可以忽略求逆前后的两次线性变换,降低硬件实现的步骤。
1) 不可约多项式选取为本原多项式;
2) 所有多项式的一次项系数均固定为1;
需要注意的是,公布实施例的目的在于帮助进一步理解本发明,但是本领域的技术人员可以理解:在不脱离本发明及所附权利要求的精神和范围内,各种替换和修改都是可能的。因此,本发明不应局限于实施例所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010298413 CN101938349A (zh) | 2010-10-01 | 2010-10-01 | 一种适用于硬件实现的s盒及其电路实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010298413 CN101938349A (zh) | 2010-10-01 | 2010-10-01 | 一种适用于硬件实现的s盒及其电路实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101938349A true CN101938349A (zh) | 2011-01-05 |
Family
ID=43391499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010298413 Pending CN101938349A (zh) | 2010-10-01 | 2010-10-01 | 一种适用于硬件实现的s盒及其电路实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101938349A (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102904716A (zh) * | 2011-07-26 | 2013-01-30 | 克罗科斯科技公司 | 一种抗侧信道攻击的对策方法 |
CN103368725A (zh) * | 2012-04-06 | 2013-10-23 | 中国科学院软件研究所 | 一种g0类s盒构造方法及其电路 |
CN103378968A (zh) * | 2012-04-16 | 2013-10-30 | 中国科学院软件研究所 | 一种g1类s盒构造方法及其电路 |
CN104065473A (zh) * | 2014-06-25 | 2014-09-24 | 成都信息工程学院 | Sm4分组密码算法s盒的紧凑实现方法 |
CN104639314A (zh) * | 2014-12-31 | 2015-05-20 | 深圳先进技术研究院 | 基于aes加密/解密算法的装置和流水控制方法 |
CN105721135A (zh) * | 2014-12-19 | 2016-06-29 | 恩智浦有限公司 | 在加密实施中的替换盒 |
CN106788978A (zh) * | 2016-12-30 | 2017-05-31 | 桂林电子科技大学 | 变元分解限门掩码新方法 |
CN109150496A (zh) * | 2018-06-11 | 2019-01-04 | 安徽工程大学 | Aes加密运算单元、aes加密电路及加密方法 |
CN105577362B (zh) * | 2015-12-28 | 2019-04-26 | 中山大学花都产业科技研究院 | 一种应用于aes算法的字节替换方法及系统 |
CN109921899A (zh) * | 2019-04-18 | 2019-06-21 | 衡阳师范学院 | 一种完全雪崩4×4的s盒实现方法 |
CN110022202A (zh) * | 2019-03-12 | 2019-07-16 | 中国科学院软件研究所 | 一种搜索s盒的最少硬件实现门数的方法和s盒电路结构 |
WO2020212016A1 (en) * | 2019-04-15 | 2020-10-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Low depth aes sbox architecture for area-constraint hardware |
CN114239839A (zh) * | 2022-02-25 | 2022-03-25 | 南京明博互联网安全创新研究院有限公司 | 一种实现AES S-box量子电路的方法 |
CN114710285A (zh) * | 2022-05-19 | 2022-07-05 | 北京大学 | 一种面向异构并行架构的高性能sm4比特切片优化方法 |
CN117560152A (zh) * | 2024-01-10 | 2024-02-13 | 湖北大学 | 基于sat求解器搜索s盒的nct电路最优实现方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090220071A1 (en) * | 2008-02-29 | 2009-09-03 | Shay Gueron | Combining instructions including an instruction that performs a sequence of transformations to isolate one transformation |
-
2010
- 2010-10-01 CN CN 201010298413 patent/CN101938349A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090220071A1 (en) * | 2008-02-29 | 2009-09-03 | Shay Gueron | Combining instructions including an instruction that performs a sequence of transformations to isolate one transformation |
Non-Patent Citations (2)
Title |
---|
《LNCS》 20031231 Akashi Satoh,Sumio Morioka Hardware-Focused Performance Comparison for the Standard Block Ciphers AES,Camellia,and Triple-DES , 2 * |
《电子学报》 20100430 王沁,梁静,齐悦 一种有效缩减AES算法S盒面积的组合逻辑优化设计 第38卷, 第4期 2 * |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102904716A (zh) * | 2011-07-26 | 2013-01-30 | 克罗科斯科技公司 | 一种抗侧信道攻击的对策方法 |
CN103368725A (zh) * | 2012-04-06 | 2013-10-23 | 中国科学院软件研究所 | 一种g0类s盒构造方法及其电路 |
CN103368725B (zh) * | 2012-04-06 | 2016-08-31 | 中国科学院软件研究所 | 一种g0类s盒构造方法及其电路 |
CN103378968B (zh) * | 2012-04-16 | 2016-08-03 | 中国科学院软件研究所 | 一种g1类s盒构造方法及其电路 |
CN103378968A (zh) * | 2012-04-16 | 2013-10-30 | 中国科学院软件研究所 | 一种g1类s盒构造方法及其电路 |
CN104065473A (zh) * | 2014-06-25 | 2014-09-24 | 成都信息工程学院 | Sm4分组密码算法s盒的紧凑实现方法 |
CN105721135A (zh) * | 2014-12-19 | 2016-06-29 | 恩智浦有限公司 | 在加密实施中的替换盒 |
CN105721135B (zh) * | 2014-12-19 | 2019-11-29 | 恩智浦有限公司 | 使用替换盒实施加密操作的方法 |
CN104639314A (zh) * | 2014-12-31 | 2015-05-20 | 深圳先进技术研究院 | 基于aes加密/解密算法的装置和流水控制方法 |
CN105577362B (zh) * | 2015-12-28 | 2019-04-26 | 中山大学花都产业科技研究院 | 一种应用于aes算法的字节替换方法及系统 |
CN106788978A (zh) * | 2016-12-30 | 2017-05-31 | 桂林电子科技大学 | 变元分解限门掩码新方法 |
CN106788978B (zh) * | 2016-12-30 | 2020-04-21 | 桂林电子科技大学 | 变元分解限门掩码方法 |
CN109150496A (zh) * | 2018-06-11 | 2019-01-04 | 安徽工程大学 | Aes加密运算单元、aes加密电路及加密方法 |
CN109150496B (zh) * | 2018-06-11 | 2021-05-04 | 安徽工程大学 | Aes加密运算单元、aes加密电路及加密方法 |
CN110022202A (zh) * | 2019-03-12 | 2019-07-16 | 中国科学院软件研究所 | 一种搜索s盒的最少硬件实现门数的方法和s盒电路结构 |
WO2020212016A1 (en) * | 2019-04-15 | 2020-10-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Low depth aes sbox architecture for area-constraint hardware |
CN113711533A (zh) * | 2019-04-15 | 2021-11-26 | 瑞典爱立信有限公司 | 用于面积受限硬件的低深度AES SBox架构 |
US11943332B2 (en) | 2019-04-15 | 2024-03-26 | Telefonaktiebolaget Lm Ericsson (Publ) | Low depth AES SBox architecture for area-constraint hardware |
CN109921899B (zh) * | 2019-04-18 | 2019-11-19 | 衡阳师范学院 | 一种完全雪崩4×4的s盒实现方法 |
CN109921899A (zh) * | 2019-04-18 | 2019-06-21 | 衡阳师范学院 | 一种完全雪崩4×4的s盒实现方法 |
CN114239839A (zh) * | 2022-02-25 | 2022-03-25 | 南京明博互联网安全创新研究院有限公司 | 一种实现AES S-box量子电路的方法 |
CN114710285A (zh) * | 2022-05-19 | 2022-07-05 | 北京大学 | 一种面向异构并行架构的高性能sm4比特切片优化方法 |
CN117560152A (zh) * | 2024-01-10 | 2024-02-13 | 湖北大学 | 基于sat求解器搜索s盒的nct电路最优实现方法 |
CN117560152B (zh) * | 2024-01-10 | 2024-03-15 | 湖北大学 | 基于sat求解器搜索s盒的nct电路最优实现方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101938349A (zh) | 一种适用于硬件实现的s盒及其电路实现方法 | |
CN110348231A (zh) | 实现隐私保护的数据同态加解密方法及装置 | |
CN102006161B (zh) | 一种对称密钥加密的非线性变换方法及其实现装置 | |
CN106100844B (zh) | 基于点盲化方法的优化自动双线性对加密方法及装置 | |
CN101540673B (zh) | 公钥加解密方法及其数字签名方法 | |
CN106850221A (zh) | 信息加密、解密方法及装置 | |
CN104639314A (zh) | 基于aes加密/解密算法的装置和流水控制方法 | |
CN107579813A (zh) | 信息加密、解密方法及装置 | |
CN103916236B (zh) | 面向aes算法的抗功耗攻击方法及电路实现 | |
US20070211894A1 (en) | Encryption processing apparatus, encryption processing method, and computer program | |
CN106685663A (zh) | 一种环域上误差学习问题的加密方法及电路 | |
CN104065473A (zh) | Sm4分组密码算法s盒的紧凑实现方法 | |
CN112202568A (zh) | 软硬件协同设计sm9数字签名通信方法和系统 | |
CN101848081A (zh) | 一种s盒构造方法及s盒 | |
CN108650076A (zh) | 基于量子可逆逻辑的aes加密系统硬件模块的实现方法 | |
CN103905182A (zh) | 基于动态改变中间数据存储位置的抗攻击方法及电路实现 | |
CN103888247A (zh) | 抵抗差分功耗分析攻击的数据处理系统及其数据处理方法 | |
CN102393812A (zh) | 椭圆曲线密码体制中的快速点乘算法的实现方法 | |
CN103812658B (zh) | 一种基于流密码的安全通信协议 | |
CN107992283A (zh) | 一种基于降维实现有限域乘法的方法和装置 | |
Ueno et al. | Highly efficient GF (2^ 8) GF (2 8) inversion circuit based on hybrid GF representations | |
CN101969374A (zh) | 分组密码算法中混淆层的实现方法 | |
CN101567783B (zh) | 一种基于ⅱ型高斯基域的椭圆曲线加解密方法和装置 | |
CN107171782A (zh) | 一种基于可逆逻辑电路的aes私密日志加密方法 | |
CN103501223A (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 | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110105 |