Professional Documents
Culture Documents
Identification of sm4 Block Cipher System Based On Randomness Characteristics - 2021
Identification of sm4 Block Cipher System Based On Randomness Characteristics - 2021
Identification of sm4 Block Cipher System Based On Randomness Characteristics - 2021
l.38No.
9
2
021年 9月 Ap
pli
cat
io
nRe
sea
rcho
fCo
mpu
ter
s Sep.20
21
基于随机性特征的 SM4分组密码体制识别
纪文桃 a,李媛媛 a,秦宝东 a,b
(西安邮电大学 a
.网络空间安全学院;b.无线网络安全技术国家工程实验室,西安 7
101
21)
摘 要:对加密算法的识别是进行密码分析的首要工作。目前的识别方案涵盖了分组密码的识别、流密码的识
别以及对称密码和公钥密码混合算法的识别。随着国密算法的应用普及,其安全性也备受关注。针对国密算法
提出了基于随机性特征的 S M4分组密码体制识别,将国密 S M4算法与国际主要标准分组密码算法进行识别。
利用随机性测试方法对密文进行特征提取,从而得到特征向量,由这些特征向量构成特征空间,最后借助机器学
习算法对特征空间进行训练和测试。实验结果表明,S M4与其他分组密码算法的识别率高达 9 0%以上。后续工
作可以对分类算法和特征选取两个方向进行突破,来验证密码识别方案的有效性和可行性。
关键词:随机性测试;密码体制识别;机器学习;S M4算法;特征提取
中图分类号:TP3 93 文献标志码:A 文章编号:100
13
695(2
021)0
90
48
282
10
4
d
oi:
10.
197
34/
j.i
ssn.
100
13
695.
202
1.0
1.0
019
I
den
tif
ic
ati
ono
fSM4b
loc
kci
phe
rsy
ste
mba
sedo
nra
ndo
mfe
atu
res
a
J
iWe
nta
o ,LiYu
any
uana,Qi
nBa
odo
nga
,b
(a.Sc
hoo
lofCy
ber
spa
ceSe
cur
it
y,b
.Nat
io
nalEngi
nee
ri
ngLab
ora
tor
yfo
rWi
re
les
sSe
cur
it
y,Xi
’anUn
ive
rsi
tyo
fPo
sts& Te
lec
ommu
nic
ati
ons
,
Xi
’an7
1012
1,Ch
ina)
Abstr
act:Th eidenti
fi
c at
iono fencry
ptio
na lg
ori
thmsi sthep r
imarytas
ko fcrypta
n a
lysi
s.Th ec ur
renti
denti
fic
ati
ons chemes
cov
erthei dentif
icat
iono fblockcipher,t
s heidenti
fi
c a
tionofstr
eamc i
phers,andt heident
if
icat
ionofhybri
da l
gori
thmso fsym
metr
icciphe rsandpub l
i cke ycipher
s.Wi t
ht hepopular
izat
ionofCh i
nesenati
onalcrypt
ographicalgo
rit
hms,theirsecur
ityhas
al
soatt
rac te
dmuc ha t
tenti
o n.Forthen at
iona
lsecre
ta l
gorit
hm,t hi
spaperp r
oposedtheS M4b loc
kc i
phersyst
emi dent
if
icat
ion
bas
edo nr andomc har
acterist
ic,a
s ndidenti
fi
edthena ti
onalsecretSM4a lgor
it
h m wit
hth ema i
ni nt
ernat
io
nalstandardb l
ock
ci
pheralgo r
ithm.I tusedt her a
nd o
mne s
stestmethodtope rf
ormfeatur
ee xt
ract
iono nthec i
phert
exttoobtai
nf e
atur
ev ecto
rs.
Thes
ef e
a tureve c
torsf
or medt hefeat
urespace.Final
ly,itusedma chi
nelearni
nga l
g o
rit
hmst otr
ainandtestthefea
turespace.
Exper
iment alresul
tssho wt hattherec
ognit
ionrat
eo fSM4a ndo t
herblockcipheral
g o
rit
hmsa reover90%.Th i
swo r
kp rovi
des
newpossibili
tiesforcrypta
n alys
isanda tthesametimei ncr
easesthediver
sit
yo fpasswor
di dent
ifi
cat
ionschemes.
Keywor ds :r andomnes ste s
t;cognit
ionofciphe
rs yst
em;ma chi
nelear
n i
ng;SM4a lgor
ithm;featur
ee xt
rac
tion
信息安全是大数据时代以来最常见的或者说谈论最多的 序列是否随机有一定的关系。以上所提到的随机性测试指的
关键词之一。无论是对个人乃至国家而言,重要信息的安全都 就是密文序列的随机性问题。密文序列的随机性表现在其统
是第一位的。从密码分析的角度出发,众多研究者的关注点是 计方面,从而实现了保密的作用。对于不同的密码算法,其密
对各种攻击方法的探究,意在能够得到已获取密文对应的明文 文数据的统计特性也会存在相当程度的差异,借助这些统计特
或者其加密算法。而对于不同的密码体制,攻击者也会选择不 性的差异来完成对密码体制的识别。随机性是一种概率性质,
同的攻击方法进行攻击。无论是要提高密码算法的安全性还 而随机性测试可以理解为一种基于概率的测试方法,概率论中
是更好地进行密码分析的工作,对密码算法的识别都是必要 假设检验是其数学基础。近年来,信息安全、计算机软件等领
的。密码体制的识别都是利用机器学习算法把其视为模式识 域都有随机性测试的身影,而且产生了很多的随机性测试方
别的问题,与密码算法本身的安全性没有关系,也不是对密文 法,如用于密码应用程序的随机和伪随机数生成器的统计测试
信息的识别,而是基于密文的某些特征在机器学习算法的辅助 套件 [4],美国商务部国家标准技术协会(NI S
T)公布的 2
001版
[5]
下识别出密文使用了何种密码体制。目前对密码体制的识别 FI
PS I
402标准 和 2 0
10版 SP80
022标准。本文所选择的是
有两个方面:a)逆向分析技术 [1~3],即对软硬件中所用加密算 NIST公布的 2 010版中应用最为广泛的组内频率检测(b lo
ck
法的分析;b)针对唯密文特征的密码体制识别。本文所用到 f
requenc
ytest)、串行测试(s er
ialt
est
)和最长 1游程测试(l on
的识别方法是基于第二个方面的。 ge
strunof
on
e stes )的随机分布特征 [6]。
t
在对已获取的密文进行识别之前,需要对密文数据进行特
1 相关研究
征提取。常见的方法有统计学方法、熵检测和频域计算等,本
文特征提取使用的方法是随机性测试。从密码算法安全性的 Ma
nju
la等人 [7]对 1
1种密码算法所对应的密文进行了特
角度出发,其包括三个方面:a)支撑密码算法所需的数学基 征处理,得到了大小写等相关的熵特性、文件大小以及大写字
础;b)密码算法的抗攻击能力;c )密码算法加密后的密文是否 母的相关系数八种密文特征。将这八种特征作为 1 1种密码算
[8]
随机。对于判断密码算法的设计是否存在问题,与其对应密文 法的划分属性对其进行识别。2 0
12年,Ch
ou等人 得到了在
收稿日期:202
101
08;修回日期:202
103
04 基金项目:国家自然科学基金项目(6
187
229
2);
青海省基础研究计划项目(2
020
ZJ
701)
作者简介:纪文桃(19
94),男,陕西榆林人,硕士研究生,主要研究方向为基于机器学习的密码体制识别(1
0432
3826
7@q
q.c
om);李媛媛
(199
4),女,陕西宝鸡人,硕士研究生,主要研究方向为基于机器学习的数据隐私保护;秦宝东(1
982),男,江苏徐州人,教授,硕导,博士,主要研
究方向为公钥密码学的基础理论与应用.
·2822· 计 算 机 应 用 研 究 第3
8卷
不同分块长度下的熵特性和符号在密文中出现的数量、基于 文本的数量至少要达到上万条。吴杨等人在其结论中也指出
16位直方图的四种属性以及可变长度字等 1 2种密文特征,分 该方案的密文样本量对识别率的影响还有待进一步研究。结
别在密码分组链接(c i
pher
blockchaini
ng,CBC)和电码本(e l
ec 合不同的机器学习算法和密文特征提取方法,在不同的场景下
tr
on icc o deb ook,ECB)两种工作模式下基于以上特征对高级加 进行密码体制识别方案的设计。无论是用什么样的方式或者
密标准(a dv a
ncee ncr
ypt
ionstandar
d,AES)和数据加密标准(d a 是设计什么样的识别场景,都离不开使用机器学习算法的本
tae nc rypti
ons tandar
d,DES)进行识别。文献[9]提出一种新的 质,即将密码体制识别看做是分类的问题。不再从理论层面出
区分类型攻击,该攻击利用多学科方法,包括语言学和信息检 发去证明这些算法在不同的场景中是否可分,而是依附于人工
索方法来 解 决 此 问 题。从 拓 扑 的 角 度 出 发,对 MARS、RC6、 智能带来的便捷。
Rijnd ae l
、S erpent和 Twofi
sh加密的密文进行先聚类后分类,从 本文提出了基于随机性特征的 S M4分组密码体制识别,侧
而得 到 以 上 五 种 加 密 算 法 的 分 类 结 果。2 0 1
5年,吴 杨 等 重于将国密 S M4算法与部分国际标准分组密码算法进行识别。
人 [10,11]利用游程检测块内频数检测和码元频数检测的方法对 国密算法近年来的应用与发展是显而易见的,对其进行研究的
五种分组密码(AES、Ca mell
ia、DES、 3DES、SMS4)算法加密的密 方案也是层出不穷。为了对国密算法的安全性分析提供帮助,
文关于随机性度量值的个数进行统计,然后用 K me
ans聚类算 本文结合 NI ST标准中应用最为广泛的组内频率检测、 连续块测
法对五组分组密码进行初始聚类,在此基础上进一步对相同类 试和最长 1游程测试方法作为密文特征提取的方法,设计了基
中的密码算法进行识别。2 016年,Ta n等人 [12]关于密钥是否 于密文特征的密码体制识别方案。实验结果表明,S M4与 AES、
一致设计了四种不同的场景对五种常见分组密码加以识别,其 DES、
3DES、
Blowf
is
h、Ca
st五种算法之间的识别率不低于 9 0%。
采用的机器学习算法是主流的 S VM。分析结果表明,在训练 表 1从识别方案是否包含 S M4算法、是否对样本量有限
阶段 和 测 试 阶 段 选 择 相 同 的 密 钥 时,识 别 的 准 确 率 会 高 达 制等方面将本文方案与已有相关工作进行对比。从表 1可以
90%。2 0
1 7年,黄良韬等人 [13]提出了三种簇分方式,即 CM 簇 看出,除了本文方案和文献[1 0]方案包含 S
M4算法的识别,其
分、CS N 簇分和 CS BP簇分,并给出了三种簇分方式的定义及 余方案都未曾涉及 S M4算法。尽管文献[1 0]方案包含对 SM4
其原理。其不再是以往单层的密码体制识别方案,引入了分层 算法的识别研究,但该方案依赖特定样本量下进行聚类识别,
的概念。对所包含的全部密码算法进行初始簇分,可簇分为古 而本文方案利用随机性测试方法对密文进行处理,将每一个随
典密码体制、公钥密码体制、序列密码体制和分组密码体制,在 机性测试方法得到的值构成一个特征向量,由此再构成特征空
此基础上,再进行单分,将同一簇中的密码算法进一步加以识 间。最后再结合有监督学习算法生成分类模型,在该模型上对
别。大多数的密码体制识别方案中,其密码算法都是基于 ECB 测试样本集进行测试。训练样本量越大其训练模型越好,但是
工作模式的。2 018年,Ta n等人 [14]提出了针对 CBC工作模式 在测试阶段,对样本量并没有任何要求的。
的密码体制识别方案。该方案就密钥是否一致和初始向量是 表 1 方案对比
否一致组合了四种情景,对五种分组密码算法进行了多类识别 Ta
b.1 Sc
hemec
ompa
ris
on
和一对一识别。2 018年,李洪超 [15]提出了基于密文特征的密 识别方案
是否包含 是否生成 对样本量 识别率
S
M4算法 分类模型 是否有要求 /
%
码算法识别研究,利用傅里叶变换、随机性测试以及熵值计算
文献[7] 否 是 否 7
0~7
5
等方法,对 1 1种密码算法所生成的密文进行密文特征分布分
文献[8] 否 是 否 4
8~8
0
析,结合集成学习对密码体制进行识别,对比了 S VM分类算法
文献[1
0] 是 否 是 9
0左右
和决策树单分类器。2 09年,赵志诚等人 [16]提出了基于随机
1 文献[1
2] 否 是 否 4
8~9
4
森林分类算法的密码体制识别方案,利用 NI ST标准中所提供 文献[1
4] 否 是 否 8
3~9
6
的1 5种随机性测试方法对六种常用加密算法加密的密文文件 本文方案 是 是 否 9
0~9
4
进行特征提取。该方案中不单单基于这些特征对 AES、DES、
3DES、I DEA、Bl owf
is
h以及 Ca me l
li
a六种算法进行了一对一的 2 识别方案
识别,而且还选择了在 ECB工作模式下,对 AES加密的密文和
图 1为基于随机性特征的 S M4分组密码体制识别方案的
明文之间进行了识别。除此之外,对 AES加密的密文进行了
工作模式的识别,即 ECB和 CBC工作模式的识别。2 0
20年, 流程。整个密码体制识别模型分为两个部分:第一部分是训练
[1
7]
谈程等人 提出了基于唯密文数据的序列密码识别方案,对 阶段的操作流程,第二部分是测试阶段的操作流程。在整个流
RC4、A5/ 1和 Tr i
vi
um三种流密码进行识别。结果表明,在训 程中共用 k种分组密码算法生成了 n个密文文件,然后对这 n
练阶段和测试阶段即使选择的密钥不同,也具有较高的识别准 个密文文件进行特征提取,得到每个密文文件对应的特征向
确率。2 020年,王旭等人 [18]提出了一种基于集成学习的动态 量,记做 F_Vi,其中 i=1,2,…,n。
特征密码体制识别方案,同时也研究了不同方法下所提取的密 在训练阶段,从 n个密文文件中选取 m个作为训练样本
文特征对识别方案的影响。2 020年,纪文桃等人 [19]提出了基 集,将这 m个文件经过 NI ST密文特征提取器进行特征采集,
于决策树的 S M4分组密码工作模式识别,对国密算法的四种 得到对应的特征向量,由这些向量构成 m维特征空间。然后
工作模式进行了识别,其识别率达到 9 0%以上。 将这些特征空间投入到机器学习分类器中训练,得到测试阶段
上述相关的密码体制识别方案中,涵盖了对分组密码、流 所需的训练模型。在测试阶段, 将剩余的 n-m+1个密文文件
密码以及包含公钥密码的混合密码算法的识别和密码工作模 经过同训练阶段相同的步骤, 得到 n-m+1维特征空间。然后
式的识别。作为国内第一个公开的商用密码分组算法标准, 将其作为训练模型的输入进行测试,最终实现加密算法(AES、
SM4算法在信息安全领域得到了广泛的应用。尽管有大量工 DES、
3DES、
Blowf
is
h、Ca
st和 SM4)的识别。无论是训练阶段还
作分 析 S M4算 法 的 安 全 性,特 别 是 基 于 侧 信 道 的 分 析 技 是测试阶段, 都需要对密文文件进行特征提取。而这一工作主
术 [20,21],但是缺少对国密 S M4算法与其他国际主要标准分组 要借助于 NI ST标准所提供的测试方法, 本文中主要使用了应用
密码算法的密码体制识别研究。尽管吴杨等人基于密文随机 最为广泛的组内频率检测、 串行测试和最长 1游程测试[22,23]。
性度量值提出了一种国密 S M4算法与 AES、DES等国际标准 1)组内频率检测(f re
quenc
ytes
twi
thi
nab
loc
k) 该测试试
分组密码算法的识别方案,但是该方案在识别密码体制时,需 图通过将测试序列分解为多个不重叠的子序列,并应用卡方检
要对相同密码算法生成的密文进行初始化聚类且聚类中密文 验来将经验频率与理想值 1/ 2均匀匹配,以检测与 1的理想频
第 9期 纪文桃,等:基于随机性特征的 S
M4分组密码体制识别 ·2823·
率 1/
2的局部偏差。P值表示在至少一个子串中与 1和 0相等 e
)计算
比例的较大偏差。字符串 0和 1(或等效的 -1和 1)被分成许 p
_va
lue
1=i
ga (2m-2,ψ2
mc m) (7)
多不相交的子字符串。对于每个子字符串,计算一个相对应的 p
_va
lue
2=i
gamc
(2 m-3
,2ψ2
m) (8)
比例。卡方统计将这些子字符串比例与理想值 1/ 2进行比较。 3)最 长 1游 程 测 试 (testf
orth
el o
nge
str
uno
fonesi
na
该统计信息称为卡方分布,其自由度等于子字符串的数量。 b
lok) 最长连续子序列(游程)为 1的长度是可用于测试随
c
机性的另一个特征。长度为 n的字符串(如 n=MN)必须划分
为 N个子字符串,每个子字符串的长度为 M。根据大小为 M
的第 j个子串中最长的 Vj游程的长度,选择 K+1个类别(取
决于 M),对于这些子串中的每一个,都会评估其 v 0,v
1,…,vk
对应的频率(v 0 +v
1 +… +vk =N,属于 K+1个选定类中的任
何子串,它的每个子串中最长 1游程的计算值)。
该检测方法的流程如下:
a)将序列划分为 M b i
t长的子块。
b)将每块中最长 1游程的频率 v i划分为类, 其中每个单
元格包含给定长度 1游程的次数,如表 2所示。
该检测方法的步骤如下: 表 2 游程的分布
Ta
b.2 Dis
tr
ibu
tio
nofr
uns
a)将 nb
it长的原始序列按 M b i
t长分割成 N个子块,即
v
i M=8 M=1
28 04
M=1 v
i M=8 M=1
28 04
M=1
N=?n/M」。如果有剩余位,直接忽略。
v
0 ≤1 ≤4 0
≤1 v
4 8 1
4
b)使用 公 式 确 定 每 个 M 位 块 中 1的 比 例 πi。 πi = v 2 5 1
1 v 1
5
1 5 ≥9
M
(∑ε(i-1)M+j
)/M(1≤i
≤M);ε为被测试的随机序列。 v
2 3 6 1
2 v
6 6
≥1
=1
j
v
3 ≥4 7 1
3
N
2 2 1 2
c
)计算 χ 统计。χ(o
bs)=4M∑ (πi- ),其表示序列 K
i=1 2 c 2
)计算 χ(o
bs)=∑ (v
i-N
2
πi) /(Nπi),K和 N的取值如
i=1
中 1的占比与 1/
2的接近程度。
2
表 3所示。
N χ (ob
s)
d)计算 p_v
alu
e值。p_v
alu
e=i
ga
2
,
mc
2
,当考 ( ) Ta
b.
表 3 K和 N的取值
3 Thev
alu
eofKa
ndN
虑零假设时,所选检验统计量将采用等于或小于观察到的检验 M K N
统计量值的概率(在随机性零假设下)。p_v al
ue值通常称为 8 3 1
6
“尾部概率”,i
gamc是 Q(a,x
)的不完全伽马函数。 1
28 5 4
9
Γ(a,x
) 1 ∞ 04
1 6 7
5
Q(a,x
)≡ ≡
Γ(a) Γ(a) ∫e t
x
-ta-1
dt
d)计算
∞
Γ(a)= ∫t
0
a-1 -t
e dt (1)
p
_va
lue=i
gamc ( ,
2
K χ(obs
)
) (9)
2 2
2)串行测试(s
eri
alt
est
) (通用)串行测试代表了一系列
基于测试给定长度的模式分布的均匀性程序。该方法重在测 3 实验结果与分析
试 m位重叠的序列模式在整个序列中发生的频率,所有 m位
重叠的情况达到 2m 种。需要确定随机序列预期发生的次数是 本实 验 所 要 用 到 的 工 具 有 GmS
SL、Open
SSL、VsCo
de和
否同所有重叠序列发生的次数相同,而这是具有一致性的,即 NI
ST随机性测试包。通过 GmS S
L得到 S M4算法加密的密文
其发生的机会是一样的。 文件,用 OpenSSL获得 AES、DES、3DES、Blo
wfi
sh、Ca
st五种分
该检测方法的过程如下: 组密码算法加密的密文文件。所有分组密码算法都选择 CBC
a)形成增强序列 ε′。通过将前 m-1位附加到序列的末 工作模式,而且训练阶段和测试阶段对同一密码算法加密的密
尾以扩展成 n长的序列。 文文件使用相同的密钥。在此基础上,利用 NI ST随机性测试
b)确定所有可能的重叠 m位块,所有可能的重叠(m-1) 包对这些密文文件进行特征提取,将得到的特征构成特征向
位块和所有可能的重叠(m-2)位块的频率。设 Vi1…im表示 m 量。最后由 Vs Cod
e实现的机器学习分类算法进行分类,实现
本文方案的基本诉求。在进行密文特征处理时,需要设置相应
位模式 i
1…i
m 的频率,令 Vi1…im表示(m-1)位模式 i
1…i
m-1的
的参数。不同的测试方法所对应的取值范围如表 4所示,其中
频率,令 Vi1…im-2表示(m-2)位模式 i
1…i
m-2的频率。
非重叠测试和重叠测试为了有更好的实验效果,有特定的常规
c
)计算
取值,其他方法则根据具体情况选择即可。根据在这些范围中
2m n 2m
ψ2
m= ∑ (v - )2 = ∑ v 2
-n (2) 选择不同的值,可以得到不同的特征标量,从而丰富特征向量。
ni1…im i1…im 2m ni1…im i1…im
表 4 参数的取值范围
2m-1 n 2 2m-1
ψ2
m-1 = ∑ (v - )= ∑ v 2
-n Ta
b.4 Pa
rame
terv
alu
era
nge
n i1…im-1 i1…im-1 2m-1 n i1…im-1 i1…im-1
测试方法 分组长度取值 常规取值
(3)
组内频率检测 M≥2
0 —
m-2 m-2
2 n 2 2
ψ2
m-2 = ∑ (v - )= 2
∑ v -n 非重叠块测试 2≤m≤10 m=9或 m=1
0
n i1…im-2 i1…im-2 2m-2 n i
1…i
i1…i
m-2
m-2
重叠块测试 m≈lo
g2M m=9或 m=1
0
(4) m<?l
og
近似熵检测 2n」-5 —
d)计算 串行测试 m<?l
og2n」-2 —
ψ2
m =ψ
2
m -ψ
2
m-1 (5) 线性复杂度测试 5
00≤M≤5
000 —
2ψ2
m =ψ
2
m -2ψ2
m-1 +ψ
2
m-2 (6) 特征向量是由组内频率测试、串行测试和最长 1游程测试
·2824· 计 算 机 应 用 研 究 第3
8卷
的p _val
ue值构成的,其中组内频率测试分别取其 1 28位分组 类算法加以改进。
长度和 6 4位分组长度对应的 p _val
ue值。 参考文献:
本文分别对 S M4、AES、DES、
3DES、Bl
owfi
sh和 Ca
st的密文 [1] 李继中,尹青.基于 Ba
yes决策的密码算法识别技术[J
].计算机
文件进行随机性测试分析,得到这些分组算法密文文件在四种 工程,
2008,
34(2
0):
159
160,
163.(LiJ
izh
ong
,Yi
nQi
ng.Cr
ypt
o
测试情况下的 p _v
alue值。这些值由随机性测试实验得到,为 g
rama
lgo
rit
hmr
eco
gni
ti
ont
echn
olo
gyba
sedo
nBa
yesde
cis
ion
maki
ng
介于 0~1的随机值。密码算法在不同 p _val
ue值下的分布如 [J
].Comput
erEngi
neer
ing,
200
8,34(20):
159
160,
163.)
图 2所示。其中,BF表示分组长度为 1 28位的组内频率测试 [2] 张经纬,舒辉,蒋烈辉,等.公钥密码算法识别技术研究[J
].计算
下的 p _val
ue值,Bf1表示分组长度为 6 4位的组内频率测试所 机工程 与 设 计,2
011,32(1
0):3
2433
246.(Zh
angJ
ing
wei
,Sh
u
对应的 p _val
ue值,S表示串行测试的 p _val
ue值,以及 LR表示 Hui
,Ji
angLi
ehu
i,e
tal
.Re
sea
rcho
npu
bli
cke
y’sc
rypt
ogr
aph
yal
go
最长 1游程测试的 p _val
ue值。 r
it
hmr
eco
gni
ti
ont
ech
nol
ogy[J
].Comput
erEngi
neer
ingandDe
si
gn,
2011,
32(10):
324
33
246.)
[3] 李继中,蒋烈辉,舒辉,等.基于动态循环信息熵的密码函数筛选
技术 [J].计 算 机 应 用,2
014,34(4):1
0251
028,1
033.(Li
J
izho
ng,J
iangLi
ehu
i,ShuHu
i,e
tal
.Te
chn
iqu
eofc
rypt
ogr
aph
ic
f
unc
ti
onf
il
tr
ati
onb
ase
dondy
nami
clo
opi
nfo
rma
ti
one
ntr
opy[J
].
Jour
nalofComput
erAppl
i
cat
i
ons,2
014,34(4):1
025102
8,
10
33.)
[4] Rukh
inA,So
toJ
,Ne
chv
ata
lJ.As
tat
is
ti
calt
ests
uit
efo
rra
ndo
mand
ps
eud
ora
ndo
mnu
mbe
rge
ner
ato
rsf
orc
ryp
tog
rap
hica
ppl
ic
ati
ons
,SP
800
22[R].
200
1.
[5] FI
PSPUB1
40
22
001,S
ecu
rit
yre
qui
reme
ntsf
orc
rypt
ogr
aphi
cmo
dul
es[S].Wa
shi
ngt
onDC:Na
ti
ona
lIn
sti
tut
eofS
tan
dar
dsa
ndTe
ch
no
log
y,2001.
[6] Spe
cia
lpu
bli
cat
io
n800
22r
evi
si
on1a
[S].Wa
shi
ngt
onDC:Na
ti
ona
l
I
nst
it
uteo
fSt
and
ardsa
ndTe
chn
olo
gy,
201
0.
完成以上工作,需要对得到的特征空间在 Vs Code提供的 [7] Ma
njul
aR,An
ith
aR.I
den
tif
ic
ati
ono
fen
cry
pti
ona
lgo
rit
hmu
singde
C4.5算法下进行分类。如表 5所示,首先进行了 S M4与 AES、 c
isi
ont
ree[J
].Advanc
edComput
i
ngCommuni
cat
i
onsi
nCom
DES、3DES、Bl
owf
is
h、Ca
st五种算法之间的识别,其识别的准确 put
erandI
nfor
mat
i
onSc
ienc
e,2
011,
133(3):
237
246.
分析攻击下的安全性。首先选择了一条 1 3轮截断不可能差分 2 9:
01 50
66.
区分器,在此基础上,在顶部增加 3轮,在底部增加 5轮,构成 [7] Ahma
diS,Ar
efMR.Ge
ner
ali
zedme
eti
nth
emi
ddl
ecr
ypt
ana
lys
iso
f
了2 1轮 CRAFT的不可能差分分析攻击路径,该路径运用了 b
loc
kci
phe
rswi
tha
nau
toma
teds
ear
cha
lgo
rit
hm[J
].I
EEEAc
cess,
201
9,8:
228
42
301.
52bi
t的轮密钥的线性关系,是所给的 1 2条不可能差分链中
[8] Mo
gha
dda
m AH E,Ah
mad
ianZ.Ne
wau
toma
ti
cse
arc
hme
tho
dfo
r
攻击效果最好的一条路径;再结合预计算表技术进行时间 / 存
t
run
cat
ed
dif
fe
ren
tia
lch
ara
cte
ris
ti
csa
ppl
ic
ati
ont
oMi
dor
i,S
KINNY
储/数据权衡,提出了对 2 1轮 CRAFT的不可能差分分析,攻击
a
ndCRAFT[J
].TheComput
erJ
our
nal
,20
20,
63(1
2):
181
31
825.
需要的数据复杂度为 253.6个选择明文,时间复杂度为 296.74次
[9] Dunk
elma
nO,Ke
ll
erN,S
hami
rA.I
mpr
ove
dsi
ngl
ek
eya
tt
ackso
n
加密,存储复杂度为 256.6 6
4比特块。此攻击是在单密钥和单 8
roundAES
192a
ndAES
256[C]//
Adv
anc
esi
nCr
ypt
ol
ogy
ASI
A
调柄值情形下对缩减轮 CRAFT的时间复杂度最低的分析结 CRYPT.Be
rli
n:S
pri
nge
r,2
010:
158
176.
果,该方法依赖于调柄值调度算法的线性相关,表明了其对 [1
0]LiLe
ibo
,Ji
aK,Wa
ngXi
aoy
un.I
mpr
ove
dsi
ngl
ek
eya
tt
ack
son9
CRAFT整体安全性的影响,有助于更进一步理解 CRAFT的设 r
oun
dAES1
92/
256[C]//
Pro
cofI
nte
rna
ti
ona
lWo
rks
hopo
nSo
ft
计,为日后在实际环境中的安全使用提供理论依据。通过研究 wa
reEn
cry
pti
on.Be
rli
n:Sp
ring
er,
201
5:1
27
146.
本文的攻击过程发现改变区分器输入 / 输出活动半字节的个数 [1
1]Bi
hamE,Bi
ryuk
ovA,S
hami
rA.Cr
ypt
ana
lys
iso
fsk
ipj
ackr
educ
ed
限制,会产生不同的截断差分模式,调柄值的加入也会影响中 t
o31r
oun
dsus
ingi
mpo
ssi
bled
iff
ere
nti
al
s[C]//
Adv
anc
esi
nCr
ypt
o
间状态的扩散速度。因此,未来可以通过加入适当的调柄值, l
ogy
—EUROCRYPT.Be
rli
n:S
pri
nge
r,1
999:
12
23.
[1
2] LiRo
ngj
ia,J
inCh
enh
ui.Me
et
in
the
mi
ddl
eat
ta
ckso
n10
roun
d
改变区分器的活动字节数获得更优截断差分路径,进而尝试改
AES
256[J
].Des
igns,CodesandCr
ypt
ogr
aphy,2
016,80(3):
进本文分析方法以便攻击更多轮的 CRAFT并获得更好的安全
459
471.
边界。
[1
3]刘亚,刁倩倩,李玮,等.
10轮 Mi
dor
i12
8的中间相遇攻击[J
].计
参考文献: 算机应用研究,2
019,36(1):23
023
4,2
38.(Li
uYa
,Di
aoQi
an
[1] Bo
gda
novA,Knuds
enLR,Le
ande
rG,e
tal
.PRES
ENT:a
nul
tr
a q
ian,LiWe
i,e
tal
.Me
et
in
the
mi
ddl
eat
ta
ckso
n10
rou
ndMi
dor
i
l
ig
htwe
ightbl
ockc
iphe
r[C]//
Pro
cofI
nte
rna
ti
ona
lWo
rks
hopo
n 128[J
].Appl
i
cat
i
onRes
ear
chofComput
ers,20
19,36(1):2
30
Cr
ypt
ogr
aph
icHa
rdwa
rea
nd Emb
edd
edS
yst
ems
.Be
rli
n:Spr
ing
er, 23
4,238.)
200
7:450
466. [1
4]To
lbaM, Ab
del
kha
lek A, Yo
uss
efA M. I
mpo
ssi
bled
iff
ere
nti
al
[2] GuoJ
ian,Pe
yri
nT,Po
sch
mannA,e
tal
.TheLED bl
ockc
iph
er c
ryp
tan
aly
siso
fre
duc
ed
rou
ndS
KINNY[C]//
Pro
cofI
nte
rna
ti
ona
l
[C]//
Pro
cofI
nte
rna
ti
ona
lWo
rks
hopo
nCr
ypt
ogr
aph
icHa
rdwa
rea
nd Co
nfe
renc
eonCr
ypt
ol
ogyi
nAf
ri
ca.Ch
am:S
pri
nge
r,2
017:
117
134.
Embe
dde
dSy
ste
ms.Be
rli
n:Sp
ring
er,
2011:
326
341. [1
5]李明明,郭建胜,崔竞一,等.Mi
dor
i64算法的截断不可能差分分
[3] S
hib
uta
niK,I
sobeT,Hi
wat
ariH,e
tal
.Pi
cco
lo:a
nul
tr
al
ig
ht 析[J
].软 件 学 报,20
19,30(8):2
3372
348.(LiMi
ngmi
ng,Gu
o
we
igh
tbl
ockc
iphe
r[C]//
Pro
cofI
nte
rna
ti
ona
lWo
rks
hopo
nCr
ypt
o J
ian
she
ng,CuiJ
ing
yi,e
tal
.Tr
unc
ate
dimpo
ssi
bled
iff
ere
nti
alc
ryp
ta
g
raph
icHa
rdwa
rea
ndEmbe
dde
dSy
ste
ms.Be
rli
n:Spr
ing
er,20
11: n
aly
siso
fMi
dor
i64[J
].J
our
nalofSof
twar
e,20
19,30(8):2
337
342
357. 234
8.)
[4] Be
ier
leC,Le
ande
rG,Mo
radiA,e
tal
.CRAFT:l
ig
htwe
igh
ttwe
ak [16]欧海文,王湘南,李艳俊,等.ARI
A算法的一个新不可能差分路径
a
bleb
loc
kci
phe
rwi
the
ff
ic
ientp
rot
ect
io
nag
ains
tDFA a
tt
ack[J
s ]. 及相应攻击 [J
].密码 学 报,2
020,7(4):4
654
72.(OuHa
iwe
n,
I
ACRTr
ansonSymmet
ri
cCr
ypt
ology,
2019(1):
54
5. Wa
ngXi
ang
nan,LiYa
njun,e
tal
.An
ewi
mpo
ssi
bled
iff
ere
ncep
ath
[5] Ha
dipo
urH,S
ade
ghiS,Ni
kna
mMM,e
tal
.Co
mpr
ehe
nsi
ves
ecu
rit
y a
ndc
orr
esp
ond
inga
tt
ackf
orARI
Aal
gor
it
hm[J
].J
our
nalofCr
ypt
o
a
nal
ysi
sofCRAFT[J
].I
ACR Tr
ansonSymmet
ri
cCr
ypt
ology, l
ogi
cRes
ear
ch,
202
0,7(4):
465
472.)
201
9(4):
290
317. [1
7]洪豆,陈少真.改进的 SKI
NNY算法的不可能差分分析[J
].密码
[6] El
She
ikhM,Yo
uss
efAM.Re
lat
ed
keydi
ff
ere
nti
alc
rypt
ana
lys
iso
f 学报,
2018,
5(2):
126
139.(Ho
ngDo
u,Ch
enS
hao
zhe
n.I
mpr
ove
d
f
ullr
oundCRAFT[C]//
Pro
cofI
nte
rna
ti
ona
lCo
nfe
ren
ceo
nSe
cur
it
y, i
mpo
ssi
ble
di
ff
ere
nti
alc
ryp
tana
lys
iso
fre
duc
ed
rou
ndSKI
NNY[J
].
Pr
iva
cy,a
nd Ap
pli
ed Cr
ypt
ogr
aphyEng
ine
eri
ng.Cha
m:Spr
ing
er, J
our
nalofCr
ypt
ologi
cRes
ear
ch,
201
8,5(2):
126
139.)
(上接第 2
824页) 识别[J/
OL].计算机工程.[2
020
12
18].DOI
:10.
19678/
j.i
ssn.
[15]李洪超.基于密文特征的密码算法识别研究[D].西安:西安电子 1
000
342
8.00
586
08.(J
iWe
nta
o,LiYua
nyu
an,Qi
nBa
odo
ng.SM4
科技大学,
201
8.(LiHo
ngc
hao
.Ci
phe
rt
extf
eat
ure
sba
sec
iphe
rsy
s bl
ockc
iphe
rwo
rkp
att
ernr
eco
gni
ti
onb
ase
dond
eci
si
ont
ree
[J/
OL].
t
emr
eco
gni
ti
on[D].Xi
’an:Xi
dia
nUni
ver
si
ty,
2018.) Comput
erEngi
neer
ing.[2
0201
21
8].DOI
:10.1
9678/
j.i
ssn.
[16]赵志诚,赵亚群,刘凤梅.基于随机性测试的分组密码体制识别方 1
000
3428.
005
860
8.)
案[J
].密 码 学 报,201
9,6(2):1
771
90.(Zha
oZhi
che
ng,Zha
o [2
0]陈颖,陈长松,胡红钢.SM4硬件电路的功耗分析研究[J
].信息
Ya
qun,Li
uFe
ngme
i.Re
cog
nit
io
nsc
hemeo
fbl
ockc
iph
ers
yst
em 网络安全,
201
8,18(5):
52
58.(Ch
enYi
ng,Ch
enCh
ang
song
,Hu
ba
sedo
nra
ndo
mne
sst
es[J
t ].J
our
nalofCr
ypt
ogr
aphy,2
019,6 Ho
ngg
ang
.Re
sea
rcho
npo
wera
nal
ysi
sofS
M4ha
rdwa
rei
mpl
eme
nta
(2):
177
190.) t
in[J
o ].Net
i
nfoSec
uri
t
y,2
018,
18(5):
52
58.)
[17]谈程,陈曼,吉庆兵.基于唯密文数据的序列密码识别[J
].通信 [2
1]王敏,饶金涛,吴震,等.S
M4密码算法的频域能量分析攻击[J
].
技术,
202
0,53(1):
156
160.(Ta
nCh
eng
,Che
nMa
n,J
iQi
ngbi
ng, 信息网络安全,
201
5,15(8):1
41
9.(Wa
ngMi
n,Ra
oJi
nta
o,Wu
e
tal
.Id
ent
if
ic
ati
ono
fst
rea
mci
phe
rba
sedo
npur
eci
phe
rte
xtda
ta n,e
Zhe tal
.Po
wera
nal
ysi
sat
ta
cka
gai
nstS
M4i
nfr
eque
ncyd
oma
in
[J
].Communi
cat
i
onsTec
hnol
ogy,
202
0,53(1):
156
160.) [J
].Net
i
nfoSec
uri
t
y,2
015,
15(8):
14
19.)
[18]王旭,陈永乐,王庆生,等.结合特征选择与集成学习的密码体制 [2
2]徐沛帆.随机性测试方法实现与应用[D].西安:西安电子科技大
识别方案[J
].计算机工程,2021,47(1):1
391
45,153).(Wa
ng 学,
2019.(XuPe
if
an.I
mpl
eme
nta
ti
ona
nda
ppl
ic
ati
ono
fra
ndo
mne
ss
Xu,Che
nYo
ngl
e,Wa
ngQi
ngs
heng
,etal
.Cr
ypt
osy
ste
mide
nti
fi
ca t
estme
tho
d[D].Xi
’an:Xi
dia
nUni
ver
si
ty,
201
9.)
t
io
nsc
hemec
ombi
nin
gfe
atu
res
ele
cti
ona
nde
nse
mbl
ele
arn
ing[J
]. [2
3]刘志巍.密码算法的随机性测试研究[D].西安:西安电子科技大
Comput
erEngi
neer
ing,
2021,
47(1):
139
145,
153.) 2
学,011.(Li
uZh
iwe
i.Thes
tudyo
fst
at
is
ti
calt
est
sofc
ryp
tog
rap
hic
[19]纪文桃,李媛媛,秦宝东.基于决策树的 SM4分组密码工作模式 a
lgo
rit
hm[D].Xi
’an:Xi
dia
nUni
ver
si
ty,
201
1.)