预览加载中,请您耐心等待几秒...
1/3
2/3
3/3

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于CNN的国产商用分组密码算法识别研究 摘要 随着信息技术的飞速发展,商用分组密码算法的应用越来越广泛。为了实现对商用分组密码算法的自动识别,本文采用了基于卷积神经网络(CNN)的方法进行研究。在实验中,我们选取了一些国际上常用的商用分组密码算法和国产分组密码算法作为研究对象。通过对样本数据的筛选和预处理,我们构建了一个包含多个卷积层和池化层的CNN模型,并使用反向传播算法对其进行训练和优化。通过实验结果的分析和对CNN模型的性能评估,我们证明了该算法的准确性和可行性,为商用分组密码算法的自动识别研究提供了有力的支持。 关键词:商用分组密码算法;CNN;识别;训练;优化 正文 1.引言 商用分组密码算法作为保护信息安全的重要手段,已经得到了广泛的应用。这些算法广泛应用于国家安全、金融、医疗、电子商务等领域。然而,商用分组密码算法的种类繁多,而且更新速度极快,因此,如何自动识别商用分组密码算法成为了安全研究的一个重要问题。为了解决这一问题,本文采用了卷积神经网络(CNN)方法进行研究,通过样本训练和优化实现商用分组密码算法的自动识别。 2.相关技术 CNN是一种前馈神经网络,主要用于图像或视觉相关的识别和分析。该算法通过多个卷积层和池化层对数据进行逐层抽取和降维,最终得到高维抽象表征,从而实现对目标对象的分类和识别。由于CNN具有高度的鲁棒性和泛化能力,因此在图像识别、语音识别、自然语言处理等领域具有广泛的应用。 3.研究方法 3.1样本选择和处理 在本文中,我们选择了6种常见的商用分组密码算法和3种国产分组密码算法作为研究对象。其中,常用商用分组密码算法包括DES、3DES、AES、Blowfish、RC4和RC5;国产分组密码算法包括SM1、SM4和SMS.为了构建训练集和测试集,我们在数据集中随机选择了每种算法的100个加密文件作为样本。同时,我们对每个样本进行了去重、预处理和格式化,将其转化为28*28的灰度图像进行处理。 3.2模型构建和训练 在CNN模型的构建中,我们采用了4层卷积层和3层最大池化层,以及2个全连接层进行处理。我们使用随机梯度下降法和反向传播算法对模型进行训练,并使用Adam优化器对模型进行优化。为了避免过拟合的问题,我们采用了Dropout和正则化等技术进行处理。训练过程中,我们将数据集随机分配到训练集、验证集和测试集中,分别用于训练、验证和测试。 4.实验结果和分析 实验结果表明,本文采用的CNN方法在商用分组密码算法的识别上取得了比较好的结果。在6种常用商用分组密码算法和3种国产分组密码算法的识别结果中,准确率平均为97%以上,最高为99.2%。同时,我们也发现,在加密文件的数量和密钥长度相等的情况下,识别结果与加密算法的强度和复杂度有关。在加密强度较弱的算法中,如RC4和SMS算法,识别准确率较高;而在加密强度较高的算法中,如AES和SM4算法,识别准确率较低。 5.总结和展望 本文采用基于CNN的方法对商用分组密码算法进行自动识别,通过样本选择、CNN模型构建和训练等步骤实现了对商用分组密码算法的自动识别。实验结果表明,该算法可以准确地对常用商用分组密码算法和国产分组密码算法进行识别,具有一定的应用前景。但是,本文的研究还存在一些不足之处,例如模型的训练时间较长、识别结果受到加密强度和复杂度的影响等。后续研究可以从优化模型结构、选择更多的样本数据、改进训练算法等方面进行探究,以提高算法的效率和准确度。