手机知网 App
24小时专家级知识服务
打 开
手机知网|搜索

对称密码算法簇设计及其仿真

杨宏志

  在密码算法设计中,需要综合考虑算法的安全性和实现效率两者的关系,在密码算法应用中,用户往往需要多样化的密码服务,对于同类别但又不完全相同的应用,希望使用相似但又不尽相同密码算法,以提高安全性。如何在保证算法安全性的前提下,满足密码服务高效化和多样化是密码算法设计者需要考虑的问题。 本文的主要工作是提出了一个在密钥控制下算法动态可变的对称密码算法模型,即对称密码算法簇模型,从流密码和分组密码两个方面给出相关的算法组件设计,并通过具体的算法簇及其硬件实现仿真验证,对算法簇设计的合理性和可行性进行验证。与传统的算法设计不同,本文将密钥分为算法密钥和数据密钥两部分,给出了对称密码算法簇模型的概念。相比较一次一密密码体制,该模型降低了密钥维护的成本,同时又能够提供算法的动态可变,提高了传统密码算法抵抗现有攻击方法的能力,体现了权衡考虑安全性和实现效率的算法设计原则;另一方面,对称密码算法簇模型能够为用户提供多种算法的选择,顺应了密码算法设计与应用紧密结合的发展趋势。 密码方面,本文针对最常用的驱动部件和非线性组合部件组合的模型,重点讨论了驱动部件部分的设计,利用一类基于字的LFSR,即-LFSR,讨论了其用于密码算法簇驱动部件的设计的合理性,及其软、硬件资源开销和实现效率,并结合Snow2.0算法分析了影响其性能的因素。本文还给出了一类适于硬件实现的钟控模型,有别于传统的钟控及层叠跳转模型,该模型不仅在性能方面,运算的节拍数少,寄存器开销小,而且在安全性方面,由于其状态转移矩阵运算不交换,增大了攻击者实施攻击的难度。 分组密码方面,本文从混乱层和扩散层两个层面讨论其组件设计。通过分析AES, Camellia, SMS4算法的S盒结构,给出了一类S盒,即H型S盒,针对硬件实现的资源开销的特点,对该类S盒进行条件约束,筛选出的S盒适于硬件实现,同时密码学性质优良;针对当前分组密码算法中,采用多个小S盒并行排列组成混乱层的设计特点,给出了一般的适用于该类分组密码算法的S盒重组算法,该算法软、硬件开销小,扩展性较好;同时,结合AES算法的列混合变换,寻找到了一批加、解密可以共用电路的列混合变换,在保证其扩散性能最优的情况下,资源开销与AES算法的列混合变换相同。 本文还给出了若干具体的密码算法簇。以Snow 3G算法为框架,使用-LFSR更换其驱动部件,给出了Snow 3G框架算法簇算法设计,并评估了驱动部件采用不同形式-LFSR的算法簇的FPGA实现,改进后的一类算法簇比Snow 3G流密码算法的FPGA实现资源开销更小,吞吐率更高;给出了基于AES框架的算法簇设计,在SubBytes, ShiftRows, MixColumns等模块参数变化情况下,利用FPGA仿真从工程实现的角度讨论了该算法簇的硬件资源开销;利用一类特殊的H型S盒,构造了多S盒的AES算法簇,该分组密码算法簇仅仅比AES算法增加一次异或运算,文中给出的FPGA实现结果表明,其硬件实现的各项指标与AES算法相仿;给出了AES和Camellia密码算法簇在组件共享情况下的算法设计,通过采取分割S盒运算的方法,综合运用并行实现技术,可重构实现了上述两种算法,FPGA实现的结果表明,该算法簇在硬件实现方面具有较佳的性能。……   
[关键词]:对称密码算法簇;流密码算法;分组密码算法;(?)-LFSR;S盒;硬件实现
[文献类型]:博士论文
[文献出处]:解放军信息工程大学2010年
App内打开