CN110247754B - 一种分组密码fbc的实现方法及装置 - Google Patents

一种分组密码fbc的实现方法及装置 Download PDF

Info

Publication number
CN110247754B
CN110247754B CN201910523926.1A CN201910523926A CN110247754B CN 110247754 B CN110247754 B CN 110247754B CN 201910523926 A CN201910523926 A CN 201910523926A CN 110247754 B CN110247754 B CN 110247754B
Authority
CN
China
Prior art keywords
round
xor
bit
key
bits
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
Application number
CN201910523926.1A
Other languages
English (en)
Other versions
CN110247754A (zh
Inventor
冯秀涛
曾祥勇
张凡
曾光
唐灯
甘国华
王永兴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Academy of Mathematics and Systems Science of CAS
Original Assignee
Academy of Mathematics and Systems Science of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Academy of Mathematics and Systems Science of CAS filed Critical Academy of Mathematics and Systems Science of CAS
Priority to CN201910523926.1A priority Critical patent/CN110247754B/zh
Publication of CN110247754A publication Critical patent/CN110247754A/zh
Application granted granted Critical
Publication of CN110247754B publication Critical patent/CN110247754B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation 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)

Abstract

本发明公开了一种分组密码FBC的实现方法及装置。本发明加密方法为:1)将明文数据分成多个明文数据组,其中每一明文数据组为n比特明文数据;2)设置主密钥k,其长度为m比特,根据主密钥k生成分组密码FBC的轮密钥;其中,m=Nn,N为自然数;设置循环左移位的比特位数s和t;设置一轮函数F以及轮数r;3)对每一明文数据组P,将其分成4个w比特的字,利用轮密钥和轮函数F按四路两重Feistel结构对明文数据组P进行r轮加密,得到密文C。本发明在保证行之间混淆程度的情况下,使得密码实现开销达到最优。

Description

一种分组密码FBC的实现方法及装置
技术领域
本发明属于信息安全技术领域,具体涉及一种分组密码FBC的实现方法以及相应的装置。
背景技术
分组密码是一种主流的密码体制之一。由于其明文信息有良好的扩展性,对***的敏感性,不需要密钥同步及较强的适用性,分组密码适合作为加密标准。
目前分组密码所采用的整体结构可分为Feistel结构(例如CAST—256、DEAL、DFC、E2等)、SP网络(例如Safer+、Serpent等)及其他密码结构(例如Frog和HPC)。加解密相似是Feistel型密码的一个实现优点,但它在密码的扩散似乎有些慢,例如需要两轮才能改变输入的每一个比特。SP的网络结构非常清晰,S一般被称为混淆层,主要起混淆作用。P一般被称为扩散层,主要起扩散作用。在明确S和P的某些密码指标后,设计者能估计SP型密码抵抗差分密码分析和线性密码分析的能力。SP网络和Feistel网络相比,可以得到更快速的扩散,但是SP密码的加/解密通常不相似。
目前Bit-Slice技术是实现分组密码的一种有效手段,具有良好的安全性。但是对明文分组的行之间的混淆程度不够,通常的做法是对明文分组进行列变换之后再进行一个线性行变换,从而保证行之间的混淆程度,相应地也增加了密码实现的代价。针对这一问题,本发明通过选取合适的S盒以及循环移位的位数,只需要进行S盒变换以及循环移位相加,就能达到之前需要进行行变换的效果,在保证行之间混淆程度的情况下,使得密码实现的开销达到最优。
发明内容
针对现有技术中存在的技术问题,本发明的目的在于提供一种快速、高效分组密码FBC实现方法以及相应的装置。
本发明分组密码实现方法的具体方案如下:
一种分组密码FBC的实现方法,其特征在于包括以下步骤:
1.一种分组密码FBC的实现方法,其特征在于包括以下步骤:
步骤1.1:将明文数据按每组n比特分成明文数据组,n可取128和256;
步骤1.2:设置主密钥k,其长度为m比特,由主密钥k产生分组密码FBC的轮密钥;其中,m=Nn,N为自然数;
步骤1.3:设置循环左移位的比特位数s和t(对明文数据分组进行S盒变换后通过循环移位相加实现行之间的混淆);
步骤1.4:设置分组密码算法FBC的轮函数F,并设置该密码算法的轮数r;
步骤1.5:对n比特明文P,将其分成4个w比特的字,利用轮密钥和轮函数F按四路两重Feistel结构对明文P进行r轮加密,得到密文C。
本发明在对明文数据组P进行S盒变换后,添加了一个行变换
Figure BDA0002096472070000021
Figure BDA0002096472070000022
v是S盒变换后的中间变量,s,t为步骤1.3中选取的参数,s,t参数的选取使得在同样的混淆程度下,实现代价达到最优。
所述正整数n可取128或256;m可取128或256;s和t为正整数;加密轮数r可取48、64或80。
步骤1.2具体操作为:若n=128,m=128;或者n=256,m=256,则将主密钥k分为4个w比特的字k0,k1,k2,k3作为前4个轮密钥,第i+4个轮密钥ki+4由其前面四个子密钥ki,ki+1,ki+2,ki+3决定,取q为w比特全1字符块,将子密钥ki和ki+1分别与q异或,得到的两个字再进行异或,然后再与ki+2进行按位与操作,得到的结果再与ki+3进行按位与操作,最后再与i进行异或操作,得到中间变量hi+4;将hi+4分别循环左移两个选定的a比特、b比特(比如a=7、b=25),得到两个字,将这两个字进行异或操作,得到的结果再与hi+4进行异或操作就得到第i+4个子密钥ki+4。i从0取到2r-5。若n=128,m=256,则将主密钥k分为8个32比特的字k0,k1,…,k7,第i+8个子密钥ki+8由其前面四个子密钥ki,ki+1,ki+2,ki+3决定,取q为32比特全1字符块,将子密钥ki和ki+1分别与q异或,得到的两个字再进行异或,然后再与ki+2进行按位与操作,得到的结果再与ki+3进行按位与操作,最后再与i进行异或操作,得到中间变量hi+8;将hi+8分别循环左移两个选定的a、b比特(比如a=7、b=25),得到两个字,将这两个字进行异或操作,得到的结果再与hi+8进行异或操作就得到第i+8个子密钥ki+8。i从0取到2r-9。
步骤1.5中轮函数F的具体实现如下:F的输出为一个w比特的字,输入为两个w比特的字。首先将输入的两个字进行异或得到中间变量u;对u进行列变换得到中间变量v,具体过程为取一个4进4出的S盒变换,则v[j,j+w/4,j+w/2,j+3w/4]的值为S(u[j,j+w/4,j+w/2,j+3w/4]),这里v[j,j+w/4,j+w/2,j+3w/4]代表v的第j,j+w/4,j+w/2,j+3w/4比特组成的一个4比特的字,u[j,j+w/4,j+w/2,j+3w/4]代表u的第j,j+w/4,j+w/2,j+3w/4比特组成的一个4比特的字;对中间变量v进行行变换得到F的输出值z,具体过程为对v分别循环左移s,t比特,将得到的两个结果进行异或,再与v异或得到F的输出值z。j取遍0,1,…,w/4-1。
步骤1.5中加密过程为:将n比特明文P分成4个长度为w比特的字a0,b0,c0,d0,并记第i轮的中间状态为ai,bi,ci,di,则将ai,k2i作为F的输入,得到F的输出值,再与bi异或得到ai+1;将ai+1与di异或得到ci+1;将di,k2i+1作为F的输入,得到F的输出值,再与ci异或得到di+1;将di+1与ai异或得到bi+1,如此进行r-1轮基于四路两重Feistel结构轮函数更新,得到中间状态ar-1,br-1,cr-1,dr-1;然后将ar-1,k2r-2作为F的输入,得到F的输出值,再与br-1异或得到密文的第2个w比特,将br与dr-1异或得到密文的第4个w比特,将dr-1,k2r-2作为F的输入,得到F的输出值,再与cr-1异或得到密文的第3个w比特,将cr与ar-1异或得到密文的第1个w比特,最后输出密文。此处基于四路两重Feistel结构,为公知方法。
与现有技术相比,本发明的积极效果为:
本发明使用了Bit-Slice技术,该技术是实现分组密码的一种有效手段。通常做法是进行S盒变换后再进行行变换,这种做法已经被证明了具有良好的安全性。
本发明通过选取合适的S盒进行变化并进行循环移位s、t比特,只需要进行S盒变换以及循环移位相加,就能达到之前需要进行行变换的效果(从而与通常做法有相同的安全性),在保证行之间混淆程度的情况下,使得密码实现的开销达到最优。
附图说明
图1为本发明的FBC算法结构图。
具体实施方式
下面结合附图对本发明的分组密码算法进行进一步描述。
本发明的分组加密算法FBC,其以英文Feistel-based Block Cipher的首字母命名。如图1所示,该算法基于两重Feistel结构设计,支持128比特和256比特明文分组,以及128比特和256比特的主密钥,主要包含三个版本:FBC128-128,FBC128-256,FBC256-256。
本规范主要使用下面的一些符号:
P n比特明文
C n比特密文
k m比特主密钥
ki 第i个轮密钥字,i=0,1,…,2r+1
ai,bi,ci,di 第i轮迭代的状态字,每个字的长度为w比特,i=0,1,2,…,r+1
u,v 长度为w比特的字
ui,vi 字u和v的第i个长度为w/4比特的子块,i=1,2,3,4
ui[j],vi[j] 子块ui和vi的第j比特,j=0,1,2,…,w/4-1
q 长度为w比特的全1字符块
和运算符:
Figure BDA0002096472070000041
面向比特的异或运算
& 面向比特的与运算
<<< w比特的字左循环移位运算
‖ 字符串连接符
算法不同版本以格式FBCn-m统一进行命名,其中n为明文分组比特长度,m为主密钥比特长度。不同版本的状态均由4个w比特的字组成。字长w与明文分组长度n的关系满足w=n/4。设r为迭代轮数。后续给出了对于步骤1.1,步骤1.2,步骤1.3FBC算法主要参数。
表1为算法主要参数取值
版本 分组长度n 主密钥长度m 字宽度w 迭代轮数r
FBC128-128 128 128 32 48
FBC128-256 128 256 32 64
FBC256-256 256 256 64 80
表2为L线性变换中循环参数s,t取值
w 32 64
s 11 19
t 17 33
对于步骤1.2,FBC的密钥扩展算法如下:
针对FBC128-128和FBC256-256,将m比特主密钥k分成4个w比特的字k0,k1,k2,k3,对i=0,1,…,2r-5,计算
Figure BDA0002096472070000042
Figure BDA0002096472070000043
针对FBC128-256,将256比特主密钥k分成8个32比特的字k0,k1,k2,…,k7,对i=0,1,…,2r-9,计算
Figure BDA0002096472070000051
Figure BDA0002096472070000052
对于步骤1.4,该密码算法的轮函数F定义如下:
轮函数F的输入包含2个w比特的字x和y,输出一个w比特的字z,记z=F(x,y)。具体运算过程如下:
1)子密钥加:
Figure BDA0002096472070000053
2)列变换:将u二进制表示分解成4个等宽的字符串,每个字符串包含w/4个比特,即u=u1‖u2‖u3‖u4,令:
v1[j]‖v2[j]‖v3[j]‖v4[j]=S(u1[j]‖u2[j]‖u3[j]‖u4[j]),j=0,1,…,w/4-1
这里S为4进4出的S盒变换,见表3。记v=v1‖v2‖v3‖v4
表3为S盒真值表
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
5 10 15 4 9 14 11 8 2 7 12 13 3 6 1 0
3)行变换:
Figure BDA0002096472070000054
在行变换Ls,t中参数s,t取值与w有关,见上表2。
对于步骤1.5,加密过程如下:
1)首先根据步骤1.2密钥扩展算法将主密钥k扩展成子密钥序列ki,i=0,1,…,2r-1。
2)将输入明文块P分成4个长度为w比特的子块,即P=a0‖b0‖c0‖d0。重复执行下列操作r-1次(RoundFunc):
a)
Figure BDA0002096472070000055
b)
Figure BDA0002096472070000056
c)
Figure BDA0002096472070000057
d)
Figure BDA0002096472070000058
3)然后执行下列操作1次(FinalRoundFunc)(不交换顺序):
a)
Figure BDA0002096472070000059
b)
Figure BDA00020964720700000510
c)
Figure BDA00020964720700000511
d)
Figure BDA00020964720700000512
最后令输出密文块C=ar+1‖br+1‖cr+1‖dr+1
解密过程如下:
1)首先根据密钥扩展算法将主密钥k扩展成子密钥序列ki,i=0,1,…,2r-1。
2)将输入密文块C分成4个长度为w比特的子块,即C=a0‖b0‖c0‖d0。首先执行下列操作1次:
a)
Figure BDA0002096472070000061
b)
Figure BDA0002096472070000062
c)
Figure BDA0002096472070000063
d)
Figure BDA0002096472070000064
3)然后对i=1,2,…,r,重复执行下列操作r-1次:
a)
Figure BDA0002096472070000065
b)
Figure BDA0002096472070000066
c)
Figure BDA0002096472070000067
d)
Figure BDA0002096472070000068
最后令输出明文块P=ar+1‖br+1‖cr+1‖dr+1
以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求所述为准。

Claims (9)

1.一种分组密码FBC的加密方法,其步骤包括:
1)将明文数据分成多个明文数据组,其中每一明文数据组为n比特明文数据;
2)设置主密钥k,其长度为m比特,根据主密钥k生成分组密码FBC的轮密钥;其中,m=Nn,N为自然数;设置循环左移位的比特位数s和t;设置一轮函数F以及轮数r;
3)对每一明文数据组P,首先将明文数据组P分成4个长度为w比特的字a0,b0,c0,d0,对a0,b0,c0,d0进行第i轮加密后的中间状态记为ai,bi,ci,di;然后进行r-1轮基于四路两重Feistel结构轮函数更新,得到中间状态ar-1,br-1,cr-1,dr-1;其中,每一轮更新方法为:将ai,k2i作为轮函数F的输入,将得到的轮函数F的输出值与bi异或得到ai+1,将ai+1与di异或得到ci+1;将di,k2i+1作为F的输入,将得到的轮函数F的输出值与ci异或得到di+1,将di+1与ai异或得到bi+1;k2i为第2i个轮密钥;然后将ar-1,k2r-2作为F的输入,将F的输出值与br-1异或得到密文的第2个w比特,将br与dr-1异或得到密文的第4个w比特,将dr-1,k2r-2作为F的输入,将得到的F的输出值与cr-1异或得到密文的第3个w比特,将cr与ar-1异或得到密文的第1个w比特,最后输出密文C。
2.如权利要求1所述的方法,其特征在于,步骤2)中,若m=n,生成所述轮密钥的方法为:则将主密钥k分为4个w比特的字k0,k1,k2,k3作为前4个轮密钥,i从0取到2r-5,生成后续轮密钥ki+4的方法为:
211)取q为w比特全1字符块,将轮密钥ki和ki+1分别与q异或操作,并将得到的两个字再进行异或操作;
212)将步骤211)最终得到的异或结果与ki+2进行按位与操作,并将得到的结果再与ki+3进行按位与操作,最后再与i进行异或操作,得到中间变量hi+4
213)将hi+4循环左移a比特、将hi+4循环左移b比特,得到两个字,将这两个字进行异或操作结果与hi+4进行异或操作,得到第i+4个轮密钥ki+4
3.如权利要求1所述的方法,其特征在于,步骤2)中,若m=2n,生成所述轮密钥的方法为:则将主密钥k分为8个32比特的字k0,k1,…,k7,i从0取到2r-9,生成后续轮密钥ki+8的方法为:
221)取q为32比特全1字符块,将轮密钥ki和ki+1分别与q异或操作,并将得到的两个字再进行异或操作;
222)将步骤221)最终得到的异或结果与ki+2进行按位与操作,并将得到的结果再与ki+3进行按位与操作,最后再与i进行异或操作,得到中间变量hi+8
223)将hi+8循环左移a比特、将hi+8循环左移b比特,得到两个字,将这两个字进行异或操作结果与hi+8进行异或操作,得到第i+8个轮密钥ki+8
4.如权利要求1所述的方法,其特征在于,所述轮函数F的输入为两个w比特的字、输出为一个w比特的字;所述轮函数F首先将输入的两个w比特的字进行异或得到中间变量u;然后对u进行列变换得到中间变量v,对中间变量v进行行变换得到轮函数F的输出值z。
5.如权利要求4所述的方法,其特征在于,利用一个4进4出的S盒变换对u进行列变换得到中间变量v,v[j,j+w/4,j+w/2,j+3w/4]的值为S(u[j,j+w/4,j+w/2,j+3w/4]);其中,v[j,j+w/4,j+w/2,j+3w/4]代表v的第j,j+w/4,j+w/2,j+3w/4比特组成的一个4比特的字,u[j,j+w/4,j+w/2,j+3w/4]代表u的第j,j+w/4,j+w/2,j+3w/4比特组成的一个4比特的字;j取遍0,1,…,w/4-1。
6.如权利要求4所述的方法,其特征在于,对v分别循环左移s比特、t比特,将得到的两个结果进行异或,再与v异或得到轮函数F的输出值z。
7.如权利要求1所述的方法,其特征在于,所述正整数n取值为128或256;m取值为128或256;s和t为正整数;加密轮数r取值为48、64或80。
8.一种对权利要求1所述加密方法所得密文C的解密方法,其步骤包括:
1)将主密钥k扩展成轮密钥序列;ki为轮密钥序列中第i个轮密钥,i=0,1,…,2r-1;
2)将密文C分成4个长度为w比特的子块,即C=a0‖b0‖c0‖d0;然后执行下列操作1次:
Figure FDA0002620945870000021
3)对i=1,2,…,r,重复执行a)~d)r-1次:a)
Figure FDA0002620945870000022
b)
Figure FDA0002620945870000023
c)
Figure FDA0002620945870000024
然后输出明文P=ar+1‖br+1‖cr+1‖dr+1
9.一种分组密码FBC的实现装置,其特征在于,包括两轮函数计算单元;明文数据组P分成4个长度为w比特的字a0,b0,c0,d0,对a0,b0,c0,d0进行第i轮加密后的中间状态记为ai,bi,ci,si,第i+1轮的中间状态为ai+1,bi+1,ci+1,di+1;其中,
第一轮函数计算单元的两输入端分别与ai输入端、k2i输入端连接,第一轮函数计算单元的输出端、bi输入端分别与第一异或单元的两输入端连接;第一异或单元的输出值作为ai+1;k2i为根据主密钥k生成分组密码FBC的第2i个轮密钥;
第二轮函数计算单元的两输入端分别与di输入端、k2i+1输入端连接,第二轮函数计算单元的输出端、ci输入端分别与第二异或单元的两输入端连接;第二异或单元的输出值作为di+1
第二异或单元的输出端、ai输入端分别与第三异或单元的两输入端连接,第三异或单元的输出值作为bi+1
第一异或单元的输出端、di输入端分别与第四异或单元的两输入端连接,第四异或单元的输出值作为ci+1
CN201910523926.1A 2019-06-17 2019-06-17 一种分组密码fbc的实现方法及装置 Active CN110247754B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910523926.1A CN110247754B (zh) 2019-06-17 2019-06-17 一种分组密码fbc的实现方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910523926.1A CN110247754B (zh) 2019-06-17 2019-06-17 一种分组密码fbc的实现方法及装置

Publications (2)

Publication Number Publication Date
CN110247754A CN110247754A (zh) 2019-09-17
CN110247754B true CN110247754B (zh) 2020-12-01

Family

ID=67887626

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910523926.1A Active CN110247754B (zh) 2019-06-17 2019-06-17 一种分组密码fbc的实现方法及装置

Country Status (1)

Country Link
CN (1) CN110247754B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112487410A (zh) * 2020-12-02 2021-03-12 中国电子科技集团公司第三十研究所 基于循环移位和异或运算构造密码结构模型的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106027226A (zh) * 2016-05-13 2016-10-12 西安电子科技大学 一种分组密码相关密钥不可能差分路径的搜索方法
CN109981256A (zh) * 2019-04-03 2019-07-05 华南师范大学 基于FeisitelBox结构的白盒分组密码构造方法及***

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108449171A (zh) * 2018-02-09 2018-08-24 中国科学院软件研究所 一种轻量级杂凑密码摘要生成方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106027226A (zh) * 2016-05-13 2016-10-12 西安电子科技大学 一种分组密码相关密钥不可能差分路径的搜索方法
CN109981256A (zh) * 2019-04-03 2019-07-05 华南师范大学 基于FeisitelBox结构的白盒分组密码构造方法及***

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
孙兵.分组密码的分析方法及应用研究.《CNKI中国博士学位论文全文数据库信息科技辑》.2011, *
宗瑞.分组密码算法的不可能差分分析.《CNKI中国博士学位论文全文数据库信息科技辑》.2018, *

Also Published As

Publication number Publication date
CN110247754A (zh) 2019-09-17

Similar Documents

Publication Publication Date Title
US6314186B1 (en) Block cipher algorithm having a robust security against differential cryptanalysis, linear cryptanalysis and higher-order differential cryptanalysis
US7079651B2 (en) Cryptographic method and apparatus for non-linearly merging a data block and a key
US5745577A (en) Symmetric cryptographic system for data encryption
US8787563B2 (en) Data converter, data conversion method and program
US20110228928A1 (en) Selection of a lookup table with data masked with a combination of an additive and multiplicative mask
JPH0863097A (ja) データを暗号化するための対称暗号化方法およびシステム
KR20090094086A (ko) 암호 처리 장치, 암호 처리 방법과 컴퓨터 프로그램
US20070064933A1 (en) Method of symmetric key data encryption
KR20020006475A (ko) 암호화장치, 복호장치 및 확대키 생성장치, 확대키생성방법 및 기록매체
CN110572255B (zh) 基于轻量级分组密码算法Shadow的加密方法、装置及计算机可读介质
US20170366339A1 (en) Method of encryption with dynamic diffusion and confusion layers
US7499542B2 (en) Device and method for encrypting and decrypting a block of data
EP2316189A2 (en) Method for generating a cipher-based message authentication code
CA2414261A1 (en) Method of encryption using multi-key process to create a variable-length key
CN111431697A (zh) 一种新型轻量级分组密码corl的实现方法
Masoodi et al. Symmetric algorithms I
CN110247754B (zh) 一种分组密码fbc的实现方法及装置
CN107493164B (zh) 一种基于混沌***的des加密方法和***
US7103180B1 (en) Method of implementing the data encryption standard with reduced computation
CN116405194A (zh) 一种基于北斗短报文的数据加密传输方法
CN113691364B (zh) 一种基于位片技术的动态s盒分组密码的加密及解密方法
US20240097880A1 (en) High-speed circuit combining aes and sm4 encryption and decryption
Singh et al. Study & analysis of cryptography algorithms: RSA, AES, DES, T-DES, blowfish
CN114598444A (zh) 基于sm4和动态s盒的音频加密方法
Islam et al. Data encryption standard

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