【技术实现步骤摘要】
基于深度学习的分组密码密钥扩展算法强度测试方法
[0001]本专利技术涉及分组密码
,尤其涉及一种基于深度学习的分组密码密钥扩展算法强度测试方法
。
技术介绍
[0002]密钥扩展算法用于生成迭代加密的轮子密钥,是分组密码算法的一个重要组成部分
。
通常,密钥扩展算法的输入是一个固定长度的主密钥,将该主密钥扩展为多条轮子密钥并输出,轮子密钥用于混淆每一轮状态
。
[0003]因此,密钥扩展算法的安全强度对分组密码的安全性分析有很大影响
。
轻量级分组密码受计算资源所限,密钥扩展算法设计得更为简化,这些安全性较低的密钥扩展算法使得分组密码更容易遭受到密钥相关攻击
。
因此,有必要对分组密码密钥扩展算法的安全强度进行测试
。
技术实现思路
[0004]为了对分组密码密钥扩展算法的安全强度进行测试,本专利技术提供一种基于深度学习的分组密码密钥扩展算法强度测试方法
。
[0005]本专利技术提供的基于深度学习的分组密码密钥扩展算法强度测试方法,包括:
[0006]步骤1:构建基于深度学习的强度测试网络模型,包括用于根据目标密钥扩展算法的最后一轮子密钥来恢复主密钥中非截断位的全连接网络模型和用于根据目标密钥扩展算法的最后一轮子密钥来恢复主密钥中截断位的残差网络模型;
[0007]步骤2:构建训练数据,对所述强度测试网络模型进行训练;
[0008]步骤3:将给定的待测试密钥扩展算法的最后一
【技术保护点】
【技术特征摘要】
1.
基于深度学习的分组密码密钥扩展算法强度测试方法,其特征在于,包括:步骤1:构建基于深度学习的强度测试网络模型,包括用于根据目标密钥扩展算法的最后一轮子密钥来恢复主密钥中非截断位的全连接网络模型和用于根据目标密钥扩展算法的最后一轮子密钥来恢复主密钥中截断位的残差网络模型;步骤2:构建训练数据,对所述强度测试网络模型进行训练;步骤3:将给定的待测试密钥扩展算法的最后一轮子密钥输入至训练好的强度测试网络模型,得到测试结果
。2.
根据权利要求1所述的基于深度学习的分组密码密钥扩展算法强度测试方法,其特征在于,步骤1中,采用全连接网络模型作为强度测试网络模型;所述全连接网络模型包括输入层
、
隐含层和输出层;其中,根据目标密钥扩展算法的轮子密钥比特数确定所述输入层的神经元个数;所述隐含层包括3层
Dense
层,且3层
Dense
层所包含的神经元个数由浅层至深层递减,分别为
32、16
和
8。3.
根据权利要求2所述的基于深度学习的分组密码密钥扩展算法强度测试方法,其特征在于,步骤1中,采用残差网络模型作为强度测试网络模型;所述残差网络模型包括输入层
、
迭代层和输入层;其中,所述输入层为一个一维卷积网络,且根据目标密钥扩展算...
【专利技术属性】
技术研发人员:段明,周睿,吴茜琼,杜宜宾,王伟,郭路路,郭圣,
申请(专利权)人:中国人民解放军战略支援部队信息工程大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。