没有合适的资源?快使用搜索试试~ 我知道了~
Grain家族和Espresso密码的随机性分析及其应用于资源受限设备的性能评估
⃝··⃝可在www.sciencedirect.com在线ScienceDirectICT Express 4(2018)19www.elsevier.com/locate/icteGrain家族和Espresso密码在资源受限设备Subhrajyoti Deb Bubu Bhuyan印度西隆东北希尔大学信息技术系接收日期:2017年12月1日;接收日期:2018年1月21日;接受日期:2018年1月22日2018年2月1日在线发布摘要安全流密码是一种有效的安全解决方案,用于在资源受限的设备上运行的应用程序。Grain系列流密码(Grain v1、Grain-128和Grain-128 a)是为低端设备设计的流密码系列。同样,Espresso是最近为5G无线移动通信开发的轻量级流密码由流密码产生的密钥流的随机性是其安全强度的一个很好的指标在这项研究中,我们已经分析了随机特性的密钥流产生的粮食家庭和咖啡密码使用统计软件包DieHarder和NIST STS。我们还分析了它们的性能在两个受约束的设备(ATmega328P和ESP8266)的基础上,三个可达到的参数,即计算时间,内存和功耗。c2018韩国通信信息科学研究所。出版社:Elsevier B.V.这是一篇开放获取的文章,CC BY-NC-ND许可证(http://creativecommons.org/licenses/by-nc-nd/4.0/)。关键词:流密码;随机性; Dieharder; NIST STS1. 介绍由于大量异构设备的互连,安全保证已成为一个重要问题,需要解决这个问题,以便使物联网的愿景成为现实。为了解决这个问题,引入了一种新的研究路线,称为轻量级密码学(LWC)。2017年3月,美国国家标准局(现在称为美国国家标准与技术研究所(NIST))启动了一个轻量级密码学项目,以检查限制并设计加密算法标准化的方案[1]。在过去的几年中,已经提出了许多LWC原语,包括分组密码、散列函数和流密码。在这个方向上,基于线性反馈移位寄存器(LFSR)的流密码具有很好的应用前景,因为它可以产生大量的伪随机二进制串*通讯作者。电子邮件地址:subhrajyotideb1@gmail.com(S.Deb),b. gmail.com(B. Bhuyan)。同行评审由韩国通信信息科学研究所负责https://doi.org/10.1016/j.icte.2018.01.005具有良好的密码学特性并且易于使用硬件实现。线性递归函数用于LFSR,而非线性递归函数用于非线性反馈移位寄存器(NFSR)。在流密码的上下文中,相同的密钥将总是产生相同的序列。为了解决这个问题,流密码使用了一个固定大小的,一次性的可公开的加密向量(IV)。基于LFSR的流密码的示例包括在GSM安全中使用的A5/1、在蓝牙中使用的E0等。 密码设计取决于其抵抗密码分析攻击的能力。这促使我们研究可以在受限设备上运行的流密码。本文的主要贡献如下:我们已经实现了粮食家庭和咖啡密码(C语言),并产生106密钥流位(100个独立的文件,使用不同的密钥和IV)为每个密码。使用DieHarder和NIST STS测试所生成的106我们已经优化了C代码,以实现更快的执行速度。此外,我们的优化代码被移植到两个约束2405-9595/c2018韩国通信信息科学研究所。Elsevier B. V.的出版服务。这是CC BY-NC-ND许可证下的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。20S.黛布湾Bhuyan / ICT Express 4(2018)19⎪⎪g239(x)=x240⊕x46x41⊕x117⎪⎪g205(x)=x206⊕x5x80⎪⎪⎪⎨⎧⎪⎪⎪⎩=Arduino Uno(ATmega328P)和ESP8266(NodeMcu)。流密码在上述受限设备中的性能是从时间、存储器和功耗方面来衡量的最后,我们的改进结果进行了比较与现有的几个工作。本文的其余部分组织如下。第2节介绍了Grain系列和Espresso的基本规格。第3节描述了不同的统计随机性测试,并提供了他们的性能分析和比较。最后,第四部分对本文进行了总结。2. 谷物家族和浓缩咖啡Grain家族:近几年来,Grain家族的流密码由于其轻量级特性而受到了相当大的关注。Grain v1是eStream项目[2]的硬件(Profile 2)候选者之一,它是eSTREAM产品组合中最轻的密码。Grain密码家族是由A.G.格伦、Hell、Johansson、 Maximov和Meier [3]提出在Grain中,过滤函数被认为是NFSR的一种类型,并且它将非线性引入密码。LFSR的输出被该NFSR的输入屏蔽以平衡其状态。Grain采用面向位的体系结构,适合于受限的硬件实现。表1给出了Grain系列的总体描述[3]。Espresso:2015年,随着Elena Dubrova和Martin Hell为第五代(5G)移动通信系统发布Espresso,出现了一种新型的流密码[4]。该密码的密钥大小为128位,其IV大小为96位。密码的确切结构由两个构建块组成,即256位伽罗瓦结构NLFSRG和20变量非线性输出函数。NLFSRG的反馈功能规定如下:g255(x)=x0x41x70g251(x)=x252x42x83x8g247(x)=x248x44x102x40g243(x)=x244x43x118x103g235(x)=x236x67x90x110x137g231(x)=x232x50x159x189g217(x)=x218x3x32g213(x)=x214x4x45g209(x)=x210x6x64g201(x)=x202x8x103g 197(x)=x 198 x29 x52 x72 x99g193(x)=x194x12 x21。然而,G的其余反馈函数是类型gi(x)=xi+1。输出密钥流z(x)由下式产生:z(x)=x80x99x137x227x222x187许多研究人员提出了一些密码,如S密码、Fruit密码和L密码,它们保持了Grain v1的基本结构。因此,对密码的主要期望是良好的统计特性和较大的周期。在这里,我们提出了一个简短的背景统计随机性测试。近年来,人们对轻量级密码的随机性检验进行了大量的研究。Marton等人强调了随机性在现代密码原语中的重要性[5]。Meltem Sonmez Turan等人表明,流密码可以用作随机数生成器,并且密钥流的质量取决于不同的统计随机性测试结果[6]。虽然不同的随机性测试机制有其各自的过程和优点,但不同的测试策略导致了测试过程的盲目性。同时,与计算机科学、数学、计算复杂性、通信等相关的随机性问题正在进行多项研究。3. 实验及结果分析3.1. 方法首先,我们实现了Grain家族和Espresso流密码与106密钥流位。在这项工作中,我们为Espresso固定了128位密钥长度,为Grain v1,Grain 128和Grain 128a流密码分别固定了80位,这些调查产生了几个有趣的假设;然而,这些密码的密钥流除了这些发现,我们研究了在DieHarder和NIST STS中使用的所有随机性测试属性。在这里,我们使用不同的密钥和IV测试了100个独立的密钥流文件在DieHarder和NIST测试套件中,所有测试用例随机性参数或函数都采用有限长度的输入位,并生成一个介于0和1之间的实数,称为p值。在我们的实验中,我们倾向于α的显著性水平,0。01,这是默认值和NIST的合作伙伴在 此 基 础 上 , 对 C 语 言 代 码 进 行 了 优 化 , 并 移 植 到ATmega328P和ESP8266上。用于实验的系统的配置如下:版本:Intel(R)Xeon(R)CPU E31230 3.20 GHz,插槽:XU1闪存,大小:1794 MHz,容量:3800 MHz,宽度:64位,以及时钟:100 MHz。3.2. 随机性检验分析从确定性系统中产生高质量的随机数是一个活生生的研究问题。伪随机数发生器(PRNG)的输出序列表现为(0 ,1)上 服从均匀 分布的独 立随机变 量。目 前,DieHarder和NIST STS是两个广泛的243x 217x 247x 231x 213x 235255x 251x 181x 239x 174x 44164 x 29 x 255 x 247 x 243 x 213 x 181 x 174。(一)普遍用于随机性检查的统计工具。DieHarder软件包由Robert G.布朗[7]。DieHarder测试套装由31个完全独立的统计测试组成。从统计随机性文献中可以看出,具有最小内部状态的流密码是低端设备的最佳选择。最近,许多轻量级流很少有详细的分析可用于实现良好的随机性结果。大多数发电机的性能是基于聪明的⎪⎪S.黛布湾Bhuyan / ICT Express 4(2018)1921±表1描述Grain家族。xj+28xj+21xj+14xj+9xjxj+63xj+60xj+37xj+33xj+15xj+9xj+60xj+52xj+45xj+33xj+28xj+21xj+63 x j +60xj+21xj+15xj+63xj+60xj+52xj+45xj+37xj+33xj+ 28xj+ 21xj+ 15xj+ 9x jxj+52xj+ 45xj+ 37xj+ 33xj+ 28xj+ 21h(.)yj +3 y j +25 y j +46 y j +3 y j +46 y j +64 y jyj+3yj+ 46yj+ 63yj+ 25yj+ 46yj+ 63yj+46yj+ 64yj+ 63yj+ 3yj+ 64yj+ 46yj+ 64yj+64yj+ 63yj+ 25yj+ 63密钥流xj+1xj+2xj+4xj+10xj+31xj+43xj+56小时xj+96xj+3xj+67xj+11xj+13xj+17xj+ 18xj+ 27xj+ 59xj+40xj+ 48xj+ 61xj+ 65xj+ 68xj+ 84xj+12xj+ 95yj+ 95xj+ 12yj+ 8yj+13yj+ 20xj+ 95yj+ 42yj+ 60yj+ 79xj+2xj+ 15xj+ 36xj+ 45xj+ 64xj+ 73xj+ 89yj+ 93hxj+3xj+67xj+11xj+13xj+17xj+18xj+27xj+59xj+40xj+48xj+61xj+65xj+68xj+84xj+88xj+92xj+93xj+95xj+22xj+24xj+25xj+70xj+78xj+82xj+12xj+ 95yj+ 94xj+ 12yj+ 8yj+13yj+ 20xj+ 95yj+ 42yj+ 60yj+ 79xj+2xj+ 15xj+ 36xj+ 45xj+ 64xj+ 73xj+ 89yj+ 93h表2Grain Family Espresso的DieHarder弱随机性结果。Dieharder版本3.31.1,版权所有-Robert G. 布朗化学。一般来说,随机性检验的p值是由统计解释的属性建立的.对于Dieharder的每个测试,它由样本数、元组、t样本和p样本[7]来公式化。这些密码密钥流没有通过基于Dieharder中的p值显著性范围的随机性测试,列于表2中。大多数密码密钥流都通过了DieHarder随机性测试,很难描述p值来解释结果。所有通过的随机性测试结果均以图形方式绘制。在这项工作中,每个测试元组值在一定间隔后相对于解释p值增加或减少。在DieHarder的少数检验中,有几个解释性p值可用.为了评估随机性,我们沿x轴绘制p值,沿y轴绘制元组值。我们考虑了几个p值,这些p值是为sts serial,rgb laged sum test,rgb bitdist,rgbminimum distance和rgb permutation test生成的。DieHarder测试结果以图形方式绘制如下:sts系列结果在子图1中,rgb滞后和测试结果在子图2中,rgb bitdist,rgb最小距离和rgb排列结果在子图3中,其余测试的评估(评估)结果为一个p值,绘制在每个密码的最后一个子图 图 1(a)谷物v1,(b)Grain 128、(c)Grain 128 a和(d)Espresso密码显示了与不同个体检验相关的p值的准确性。我们的原始数据集中共有100个样本文件。我们计算了每个测试的所有统计学显著性值,例如平均值(MV)、标准差(SD)和平均值的标准误差(SEM),并在相应的图表中提到它们。NIST STS由15种不同的统计检验组成。Grain family和Espresso的密钥流通过了大部分NIST STS测试。只有少数测试显示评估不佳。 NIST STS的所有随机性测试结果列于表3中。值得注意的是,没有测试给出失败或拒绝的评估结果。3.3. 性能在[11]中,作者提出了硬件实现,并为优化的HC 128密码实现了更高的吞吐量在我们的工作中,优化是在C语言水平。我们已经集中在密码C代码中的内存大小优化循环调度,变量和内存分区的方式。优化是一种程序转换系统,它试图用更少的时间来提高代码的性能。规范颗粒V1颗粒128颗粒128a(认证)关键80位128位128位IV64-用FFFF96-用FFFFFFFF96-用FFFFFFFFf(.)yj+62yj+ 51yj+ 38yj+ 23yj+ 13yjyj+96yj+ 81yj+ 70yj+ 38yj+ 7yjyj+96yj+ 81yj+ 70yj+ 38yj+ 7yjg(.)xj+62xj+ 60xj+ 52xj+ 45xj+ 37xj+ 33yjxjxj+26xj+ 56xj+ 91yjxjxj+26xj+ 56xj+ 91xj+ 96密码名检查名称n元组tsamplespsamplesp值评估颗粒V1顽固和01001000.00091363弱sts_单比特11 000 0001000.99569301弱RGB滞后和11 000 0001000.99527462弱颗粒128顽固分子跑步01 000 0001000.99748643弱sts系列31 000 0001000.99852251弱rgb_kstest_test01 000 0001000.99866240弱颗粒128aRGB滞后和171 000 0001000.99607233弱浓缩咖啡sts系列141 000 0001000.99539831弱RGB滞后和301 000 0001000.99759604弱22S.黛布湾Bhuyan / ICT Express 4(2018)19Fig. 1. DieHarder通过了(a)Grain v1、(b)Grain 128、(c)Grain 128a和(d)Espresso的随机性结果。表3Grain v1、Grain 128、Grain 128a和Espresso的NIST STS随机性测试结果测试名称颗粒V1p值评价颗粒128p值评价颗粒128ap值评价浓缩咖啡p值评价频率0.122325通过0.595549通过0.171867通过0.304126通过块频率0.455937通过0.153763通过0.145326通过0.739918通过累计金额0.122325通过0.739918通过0.275709通过0.162606通过运行0.834308通过0.816537通过0.779188通过0.834308通过最远行程0.883171通过0.181557通过0.955835通过0.739918通过秩0.011791通过0.000055弱0.000014弱0.010988通过FFT0.045675通过0.851383通过0.637119通过0.171867通过非重叠模板(平均值)0.616305通过0.699313通过0.534146通过0.455937通过重叠模板0.236810通过0.090936通过0.955835通过0.108791通过普遍0.007315弱0.004278弱0.004732弱0.002347弱近似熵0.439621通过0.524717通过0.512432通过0.426931通过Serial10.000474弱0.699313通过0.319084通过0.171867通过Serial20.162606通过0.108791通过0.249284通过0.759756通过线性复杂度0.040108通过0.534146通过0.011791通过0.045675通过随机偏移(x=−4的平均值)。. . +4)随机偏移变量(x= −9的平均值。. . + 9)0.5128530.513618合格合格0.5894510.427898合格合格0.4258960.613817合格合格0.5126390.547259合格合格表4使用ATmega328P和ESP8266对Grain family和Espresso进行性能评估。平台密码闪存程序大小动态RAM全局变量计算时间ATmega328P颗粒V132 KB9.02 kB2 KB0.269 kB76.7毫秒颗粒12832 KB8.668 kB2 KB0.303 kB139.476毫秒颗粒128a32 KB9.148 kB2 KB0.303 kB135.4毫秒浓缩咖啡32 KB4.282 kB2 KB0.214 kB67.9毫秒ESP8266颗粒V14 MB9.041 kB128 KB0.271 kB63.7毫秒颗粒1284 MB8.697 kB128 KB0.319 kB103.6毫秒颗粒128a4 MB9.196 kB128 KB0.319 kB97.3毫秒浓缩咖啡4 MB4.327 kB128 KB0.227 kB57.9毫秒编译时间 在这里,我们使用英特尔® VTune是一种密码的执行时间的不同参数这是一个非常有用的分析器,用于识别程序中最慢的部分。我们将优化的C代码移植到两个平台上,即Arduino[12](如ATmega328P的.ino文件)和ESP8266 [13],以适应上述资源受限设备中的优化代码。此外,我们计算表4中列出了诸如最大大小、程序大小、动态存储器大小、全局变量和计算时间之类的性能。电阻器S.黛布湾Bhuyan / ICT Express 4(2018)1923图二. (a)ATmega328P和(b)ESP8266上的功耗结果。表5与早期工作的比较。性能D Dinu et. al. [八]《中国日报》He等人[9]第一章Jiang等人[10个国家]我们适用于IoT设备是的没有没有是的不可追溯性是的没有是的是的匿名是的是的是的是的随机性测试–部分通过部分通过是的抵抗几次攻击是的是的是的是的(由我们控制)。我们根据数据集规范计算了总功耗[12]。ESP8266 [13]在3.3 V我们测量了电流量和电压的变化,并绘制了能量消耗值(焦耳)与电压的关系,如图所示。 二、3.4. 讨论表5总结了我们的工作与现有作品在安全性和一些功能特性方面的比较。这一比较显示了我们工作的优越性。4. 结论本研究使用DieHarder和NIST STS评估了Grain家族和Espresso密钥流的随机性。密码生成的密钥流通过了DieHarder和NIST STS中的几乎所有测试。此外,我们成功地将优化的密码移植到两个资源受限的设备(Arduino和NodeMCU),并评估其性能。利益冲突作者声明,本文中不存在利益冲突引用[1] K.A.麦凯湖,澳-地Bassham,M.S. Turan,N. Mouha,轻量级密码学报告,Tech。代表,NIST Draft NISTIR,Vol.8114(2016)。[2] M. 见 鬼 T Johansson , W. Meier , Grain : A Stream Cipher forConstrained Environments. eSTREAM 、ECRYPT流密码、Tech.代表,2005/010,ECRYPT(2005)。[3] S. 萨卡尔,S。Banik,S.Maitra,差分故障攻击对粮食家庭很少故障和最小假设,IEEE trans.comput。 64(6)(2015)1647[4] E. Dubrova , M. Hell , Espresso : A stream cipher for 5Gwirelesscommunication systems,Cryptogr. Commun. 9(2)(2017)273-289。[5] K. Marton,A. Suciu,关于NIST统计测试套件结果的解释,Sci. 18(1)(2015)18-32.[6] M.S. Turan,A.请给我一个机会,S。博兹塔的《论独立性和敏感性》统计随机性测试,在:序列及其应用国际会议,施普林格,2008年,pp. 18比29[7] R.G. Brown , Dieharder : A Random Number Test Suite ( version3.31),(2013).[8] D. Dinu , Y.L.Corre , D. 霍 夫 拉 托 维 奇 湖 Perrin , J.Groschdl ,A.Biryukov,物联网轻量级块密码的铁人三项,Cryptology ePrintArchive,报告2015/209(2015)。[9] D. He,N.库马尔,北Chilamkurti,一个安全的基于临时证书的无线传感器网络相互认证和密钥协商方案与伪身份,通知。Sci. 321( Supplement C ) ( 2015 ) 263-277 Security and privacy informationtechnologiesandapplicationsforwirelesspervasivecomputingenvironments.[10] Q. Jiang,J. Ma,F. Wei,Y. Tian,J. Shen,Y.杨,一种基于不可追踪临时凭证的无线传感器网络双因素认证方案,J. Netw. Comput.Appl. 76(Supplement C)(2016)37-48.[11] A. Khalid,P. Ravi,A.查托帕杰湾,巴西-地Paul,in:W.迈耶,D.Mukhopadhyay ( Eds. ) , One Word/Cycle HC-128 Accelerator viaState-Splitting Optimization , Springer International Publishing ,Cham , 2014 , pp. 283-303 Progress in Cryptology -INDOCHTPT2014 : 15th Interna- tional Conference on Cryptology in India , NewDelhi,India,December 14-17,2014,Proceedings.[12] ATmega 328/P接口完整,可在https://ww.我的朋友,我的朋友。com/.[13] ESP8266EX可在https://cdn-shop. 我也是。com/product-文件/2471/0A-ESP8266DatashetEN v4。3 .第三章。pdf.
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- BottleJS快速入门:演示JavaScript依赖注入优势
- vConsole插件使用教程:输出与复制日志文件
- Node.js v12.7.0版本发布 - 适合高性能Web服务器与网络应用
- Android中实现图片的双指和双击缩放功能
- Anum Pinki英语至乌尔都语开源词典:23000词汇会话
- 三菱电机SLIMDIP智能功率模块在变频洗衣机的应用分析
- 用JavaScript实现的剪刀石头布游戏指南
- Node.js v12.22.1版发布 - 跨平台JavaScript环境新选择
- Infix修复发布:探索新的中缀处理方式
- 罕见疾病酶替代疗法药物非临床研究指导原则报告
- Node.js v10.20.0 版本发布,性能卓越的服务器端JavaScript
- hap-java-client:Java实现的HAP客户端库解析
- Shreyas Satish的GitHub博客自动化静态站点技术解析
- vtomole个人博客网站建设与维护经验分享
- MEAN.JS全栈解决方案:打造MongoDB、Express、AngularJS和Node.js应用
- 东南大学网络空间安全学院复试代码解析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功