用于对称密码设计的布尔函数代数次数获取方法及装置制造方法及图纸

技术编号:22471152 阅读:45 留言:0更新日期:2019-11-06 12:57
本发明专利技术属于对称密码设计技术领域,特别涉及一种用于对称密码设计的布尔函数代数次数获取方法及装置,该方法包含:建立用于协同利用CPU和GPU进行求解的CUDA并行架构求解模型;利用求解模型获取布尔函数真值表,并计算代数正规型,获取布尔函数代数次数。本发明专利技术针对对称密码设计,建立基于CUDA的并行求解架构,协同利用CPU和GPU的计算资源,大大缩短了求解布尔函数代数次数的时间,优化求解过程,大大降低了复杂度,提高效率;并利用Cube理论对代数次数求解理论进行改进,在Cube理论的基础上,根据代数次数和超多项式取值之间的关系,实现代数次数估计,大大降低对称密码设计过程中的计算量,减轻软硬件资源运行负荷,具有较强的应用前景。

A method and device for obtaining algebraic number of Boolean functions for symmetric cipher design

【技术实现步骤摘要】
用于对称密码设计的布尔函数代数次数获取方法及装置
本专利技术属于对称密码设计
,特别涉及一种用于对称密码设计的布尔函数代数次数获取方法及装置。
技术介绍
布尔函数作为流密码和分组密码的重要组件,广泛应用于对称密码算法的设计中。一方面,可以作为流密码算法的非线性组合部分,产生性质好的密钥流序列;另一方面,可以作为描述分组密码非线性组件S盒的工具,实现算法的混淆作用。因此,布尔函数密码学性质的好坏直接关系到密码算法的安全性。随着诸多设计评估方法的相继提出,密码学中的布尔函数理论得到了一系列重要的结果。目前,布尔函数的密码学指标主要有非线性度、相关免疫度、平衡性、雪崩准和扩散准则、代数次数和代数免疫度等。在布尔函数所有的密码学指标中,代数次数是一个重要的指标。任何一个加密算法理论上均可写成关于输入的布尔函数,若一个加密算法的布尔函数表达式或其代数次数可知,实际的密码就不足够安全。布尔函数的代数次数和表达式是对称密码设计评估的重要指标之一。对布尔函数代数次数的研究在对称密码设计中具有非常重要的意义。最直接确定布尔函数代数次数的方法是通过真值表求解布尔函数的代数正规型,但通常情况下,得到本文档来自技高网...

【技术保护点】
1.一种用于对称密码设计的布尔函数代数次数获取方法,其特征在于,A)建立用于协同利用CPU和GPU进行求解的CUDA并行架构求解模型;B)利用求解模型获取布尔函数真值表,并计算代数正规型,获取布尔函数代数次数。

【技术特征摘要】
1.一种用于对称密码设计的布尔函数代数次数获取方法,其特征在于,A)建立用于协同利用CPU和GPU进行求解的CUDA并行架构求解模型;B)利用求解模型获取布尔函数真值表,并计算代数正规型,获取布尔函数代数次数。2.根据权利要求1所述的用于对称密码设计的布尔函数代数次数获取方法,其特征在于,A)中,基于CUDA的并行架构求解模型包含用于在计算机内存中处理任务和执行串行计算的主机端,及用于在计算机显卡内存中处理线程化核函数的设备端,利用主机端和设备端分工合作及并行运行进行模型求解,以获取布尔函数代数次数。3.根据权利要求1所述的用于对称密码设计的布尔函数代数次数获取方法,其特征在于,B)中,针对已知布尔函数真值表,基于莫比乌斯变换递归求解来计算布尔函数的代数正规型。4.根据权利要求3所述的用于对称密码设计的布尔函数代数次数获取方法,其特征在于,B)中,递归求解来计算布尔函数的代数正规型,包含如下内容:将n元布尔函数的真值表存储在数组中,设定分组规模并定义分组位置变量;根据真值表存储的数组,并通过分组规模和分组位置变量,计算用于代数正规型系数数组;遍历该系数数组来获取布尔函数代数次数。5.根据权利要求2所述的用于对称密码设计的布尔函数代数次数获取方法,其特征在于,B)中,在设备端并行化执行布尔函数真值表求解过程。6.根据权利要求2...

【专利技术属性】
技术研发人员:陈少真任炯炯李航薛平李曼曼杨行付志新
申请(专利权)人:中国人民解放军战略支援部队信息工程大学
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1