基于双伪随机变换的轻量级分组密码VH和的VHF.docx

基于双伪随机变换的轻量级分组密码VH和的VHF.docx

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于双伪随机变换的轻量级分组密码VH和的VHF

基于双伪随机变换的轻量级分组密码VH和VHF代学俊1,黄玉划1(南京航空航天大学 计算机科学与技术学院,南京 210016) 摘要:本文提出了基于双伪随机变换的轻量级分组密码VH和VHF算法,分别采用SP结构与Feistel结构。通过产生由256个字节随机排列组成的加密变换表S[256]和解密变换表,简化S盒的设计,并用于算法的密钥扩展和数据加解密。加密时,先对64bit分组数据的每个字节进行伪随机变换,从而实现混乱;再对数据的每个斜对角线进行伪随机变换,同时实现扩散和混乱。对VH和VHF采用差分和线性分析、不可能差分分析的分析方法进行安全分析。在安全基础上测试软、硬件实现效率,与现有的轻量级分组密码进行对比,VH和VHF的软硬件效率都高于同为面向8位平台的国际标准CLEFIA算法。关键词:轻量级分组密码;伪随机变换;差分分析;线性分析;不可能差分分析中图分类号:****    文献标志码: A 文章编号:1介绍近年来,大量安全和高性能的分组密码设计推动了密码学的发展。例如,AES、Camellia和SHACAL等。然而,随着无线网络技术的发展,普通的分组密码算法难以满足资源受限的移动终端,需要轻量级密码算法,以满足软硬件、计算能力和能耗等资源受限终端的需求。CLEFIA[3]和PRESENT[4]作为轻量级分组密码的杰出代表,为我们基于当前最先进的技术设计适用于资源受限的移动终端提供了良好的时机。分组密码[1]是这样一个数学变换:它首先将明文消息用二进制数字序列编码表示并划分成长为m的分组,然后在密钥的作用下,将各分组信息分别变换成等长的数字序列后输出,这个过程可以用如图1所示为数学模型表示。本文提出了一种新的轻量级分组密码VH和VHF,即Vertical Horizontal (纵横)和Vertical Horizontal Feistel,分别采用SP和Feistel结构。VH是指将64 bits明文排列成8字节*8 bits 的矩阵,对其每一行每一列分别进行伪随机变换,支持长度为64、80、96、112 and 128 bits的密钥。VHF是将128 bits明文分为长度为64 bits的左右两个分支,轮函数采用VH算法。VH和VHF新颖的设计方法之一是采用伪随机变换构造256个字节的加密变换表和解密变换表,简化了S盒的设计,充分体现了轻量级分组密码实现占用空间小的特点。此外,VH和VHF经过P置换后,对已置换过的对角线数据进行伪随机变换,提高了它的安全性。VH和VHF对当前已知的攻击方法达到足够的免疫力并且在硬件实现和软件消耗上呈现高效性。VH的硬件实现需要3182个GE(等效门电路)数,软件效率为44.47Mb/s。而CLEFIA的硬件实现达到5979个GE数,软件效率为33.90Mb/s。我们认为VH和VHF算法的软硬件效率都高于同为面向8位平台的国际标准CLEFIA算法,VH和VHF在安全和性能上取得了优越的平衡性,在满足安全性的基础上,提高了软件效率并兼顾了硬件效率,从而更加实用。图1分组密码的数学模型2VH和VHF算法2.1符号及术语说明本文采用的符号及说明如表1所示表1 VH算法采用的符号说明符号说明P明文Key扩展密钥子密钥C密文初始密文S[256]加密变换表[256]解密变换表加密算法解密算法连接运算异或运算与运算DSLS差分活动S盒线性活动S盒2.2 VH算法描述本文所述的轻量级分组密码算法VH采用SP[1]结构,分组长度为64bit,支持长度为64、80、96、112、128bit的密钥,相应的迭代轮数分别为r = 10、11、12、13、14轮。VH算法有3个参数:64bit明文P,密钥K,64bit密文C。加密算法用表示,解密算法用表示。VH算法的加解密过程包括以下步骤。2.2.1加密变换表S[256]和解密变换表 [256]加解密S盒采用伪随机变换的方法产生。先计算,其中表示向下取整运算;为了产生不重复的256个字节,i的取值由1到30000,遇到重复的排除,直到产生全部不重复的256个字节为止。加密变换表S[256]和解密变换表 [256]是256个字节的一个伪随机排列,由T中字节轮换得到:,;,;其中0≤j≤254。伪随机变换的256个字节对应的散点图如图2所示,通过点的分布可以看出S盒的分散性和随机性。图2 伪随机变换的散点图2.2.2密钥扩展通过递推进行密钥扩展,将L字节的密钥K扩展成8(r+1)字节:扩展密钥,每个为8字节,0≤i≤r;每个为单元字节,0≤i≤8r+7。对于8、10、12、14、16字节的密钥K,相应的迭代轮数分别为r =10、11、12、13、14轮。扩展密钥Key的前L字节就是密钥K:, L≤i≤8r+7

文档评论(0)

liwenhua00 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档