文献标识码:A
DOI:10.20044/j.csdg.2097-1788.2022.03.006
引用格式: 刘节威,王钢,颜培志,等. 基于CNN的国产商用分组密码算法识别研究[J].网络安全与数据治理,2022,41(3):33-39.
0 引言
在商用密码应用安全性评估工作中,要求对采用商用密码技术、产品和服务集成建设的网络和信息系统密码应用的合规性与正确性进行评估[1]。分析与识别安全系统所采用的密码算法,对于评估信息系统安全性、密码使用合规性与正确性、中间人攻击等方面有着重要的现实意义。同时,密码算法识别是开展密码分析的前提条件,也是密码分析的一个重要组成部分。无论是对信息系统或网络设备中商用密码算法的应用合规性进行评估还是开展密码分析工作,对密文进行密码算法识别都是至关重要的前提。目前对密码算法的识别方向主要有两个:(1)逆向分析技术[2-4];(b)唯密文特征识别技术。在密评工作中,由于密码算法应用合规性检测多采用逆向分析技术,存在耗时和安全性等问题,利用唯密文特征识别密码算法可以缓解上述问题的存在。同时,唯密文方法是目前主流的研究方向,也是本文所采用的方法。
由于密码轮函数、密钥长度和加密结构等加密条件的不同,明文经过不同密码算法加密而来的密文在空间分布上也会存在差异,且加密后的密文数据也并未达到真正的随机性,彼此之间尚存微小差异。因此可通过提取密文数据隐藏的特征关系作为密码算法识别的依据。虽然利用统计学的方法对古典密码算法进行识别取得了不错的成绩,但对现代密码算法识别工作却收效甚微[5]。随着机器学习在其他领域的成熟应用发展,其逐渐被研究者引入密码算法识别任务中。利用机器学习算法对唯密文开展密码算法识别可以将其视为模式识别问题,通过某种方式对密文提取特征,并对提取到的密文特征进行选择和机器学习模型训练,最终识别出其所属的密码算法。当前常见的密文特征提取方式有:(1)NIST随机性测试返回p_value特征值[6-7];(2)特定字符、字节或比特的熵;(3)特定字符、字节或比特的概率;(4)将密文看成可变长的文档向量[8];(5)以上几种特征提取方式组合[9-10]。本文采用NIST随机性测试方法提取密文特征,通过分析特征分布情况选择合适的随机性测试方法。
本文详细内容请下载:http://www.chinaaet.com/resource/share/2000004903
作者信息:
刘节威1,王 钢2,颜培志2,方一格1,荆 浩3
(1.内蒙古工业大学 数据科学与应用学院,内蒙古 呼和浩特010051;
2.内蒙古工业大学 信息化建设与管理中心,内蒙古 呼和浩特010051;
3.内蒙古工业大学 信息工程学院,内蒙古 呼和浩特010051)