• 学前教育
  • 小学学习
  • 初中学习
  • 高中学习
  • 语文学习
  • 数学学习
  • 英语学习
  • 作文范文
  • 文科资料
  • 理科资料
  • 文档大全
  • 当前位置: 雅意学习网 > 理科资料 > 正文

    [基于混沌的密码算法设计] 算法设计怎么写

    时间:2020-03-11 07:36:50 来源:雅意学习网 本文已影响 雅意学习网手机站

      摘要:混沌系统对初始条件极端敏感,由于系统内部存在随机性,经过多次迭代后,会产生大量的类似随机数且较宽频谱具有优良的密码学性能的序列。   本文的工作重点是用logistic公式产生的随机数来设计混沌加密算法,对混沌序列进行“折叠”处理,再根据哈夫曼树编码对其数值化,较大保留了混沌序列的伪随机性,作为原始的密钥。然后针对不同加密强度的需求设计“一组一密”加密算法。
      关键词:混沌;解密;数据加密;加密算法
      
       一、“一组一密”算法设计
      本文“一组一密”算法的思想是:通过一定的方法从logistic公式产生的混沌序列中提取出64位的密钥序列,将其折叠分割,用其组成分组密码算法的子密钥,使用分组密码算法对明文进行加密,每加密一组明文更换一组密钥,实现“一组一密”。
      对于传统的“一组一密”对明文的块的划分是固定的,而本文算法的思想是让64位的密钥多次折叠后成为分组密钥中的子密钥,同时明文的块的划分,随着密钥的多次折叠变化而变化。
      对十进制的十个元素进行哈夫曼编码。如表(1.1)得到十个数的不同字符编码。
      
      
      (2)明文以32位4字节为一组。需要折叠1次,折叠1次得到2个子密钥。
      
      
      这样根据密码折叠的次数越多,加密的强度也越大,要破译的难度也越大。由上面的四种分组加密的方法做分析。
      
      
      根据本文“一组一密”算法的设计,下面我们用下面的流程图来实现具体的整个加密和解密过程。
      一组一密加密过程。
      
      
      二、混沌序列数值化分析
      对一篇2000字符的文章进行十次不同密钥加密后的结果进行分析,明文ASII2码中0和1的个数,以及经过不同的混沌加密方式相同的密码进行加密后,0和1的个数。明文和密文ASII2码中0和1的个数
      
      
      对表1.3行分析,得到以下结果
      1、4种不同的混沌加密方法均可以减少明文中0与1的个数差距。
      2、密文中0与1的比例在减少即意味着该混沌加密算法防止统计分析攻击。
      通过上面的结论可得,该混东加密能够将文章中的内容“混淆”到密文中,而使统计学无法发挥作用,使其无法统计。
      三、字符分布分析
      对一篇2000字符的文章的字符加密前ASCII码分布进行分析,加密前字符分布情况。
      
      
      2000字符的文章的字符加密后ASCII码分布进行分析,加密后字符分布情况。
      
      
      对一篇长度约2000字符的英文文章的字符出现频率所作的统计图,图1.5给出相应加密文的字符出现频率图。明文字符主要为小写英文字符和空格符;而用本文算法加密后相应的密文字符却比较均匀地分布在ASCII码值0-127的整个字符空间,在ASCII码值128-255空间内几乎没有分布。可见本加密算法产生的密文均匀地扩散到这个空间中。因此,密文将具有较强的抗统计分析攻击的能力。
      
      参考文献:
      【1】 李海泉,李键.计算机网络安全与加密技术.科学出版社,2003.11.
      【2】管春阳,高飞.一种基于混沌序列的加密算法.北京理工大学学报,2003,23(3):363-366.

    推荐访问:混沌 算法 密码 基于混沌的密码算法设计 分组密码算法设计 分组密码算法有哪些

    • 文档大全
    • 故事大全
    • 优美句子
    • 范文
    • 美文
    • 散文
    • 小说文章