论文部分内容阅读
轻量级密码算法是适宜物联网等资源受限环境的密码算法.随着物联网等应用的推广普及,物联网设备采集的数据经轻量级密码算法处理后大量汇集到云端,在云端高性能计算机需要对加密数据进行快速解密,因此,轻量级密码算法的快速软件实现技术成为一个重要的研究内容.LHash是一个低功耗的轻量级杂凑函数,具有灵活可调的参数,设计者给出了4种建议规模.本文探讨LHash算法的软件优化实现方法.利用SSE指令和nibble-slice技术,我们给出了轻量杂凑函数LHash的软件优化实现,和目前基于查表的软件实现相比有明显优势.对于LHash的4种建议规模,在Intel Core i7-2600处理器上,相比于查表方法,采用SSE指令的软件实现性能分别提高了;采用nibble-slice技术的软件实现性能分别提高了倍.采用SSE指令和nibble-slice技术的LHash软件实现不存在内存或高速缓存查表21.85%,21.85%,32.03%,33.33%;采用nibble-slice技术的软件实现性能分别提高了2.74,2.74,3.02,3.16倍.采用SSE指令和nibble-slice技术的LHash软件实现不存在内存或高速缓存查表,因此,该软件实现方法可抵抗缓存计时攻击等侧信道攻击.此外,本文中所使用的方法同样适用于轻量分组密码算法LED.
Lightweight password algorithm is a cipher algorithm that is suitable for environments with limited resources such as Internet of Things (IOTs), etc. With the popularization of applications such as Internet of Things (IoT), the data collected by IoT devices are massively aggregated into the cloud after being processed by the lightweight cryptographic algorithms, Therefore, the fast software implementation of lightweight cryptographic algorithm becomes an important research content.LHash is a low-power lightweight hash function with flexible and adjustable parameters, the designer We give four kinds of suggestion scale.This paper discusses the optimization of LHash algorithm software implementation.Using SSE instruction and nibble-slice technology, we give the software optimization of LHash software lightweight implementation, and the current table-based software implementation phase Compared to the obvious advantages.For LHash’s four proposed sizes, the performance of the software using SSE instructions was improved over the Intel Core i7-2600 processor compared to the look-up table approach respectively; software implementation using nibble-slice technology Respectively, increased by a factor of 2. Using LHash software with SSE instructions and nibble-slice technology does not exist memory or cache lookup table 21.85%, 21.85%, 32.03%, 33.33% The performance of the software using nibble-slice technology increased by 2.74, 2.74, 3.02 and 3.16 times respectively.The LHash software using SSE instruction and nibble-slice technology did not exist memory or cache look-up table, therefore, the software implementation method can resist Cache timing attack side channel attacks.In addition, the method used in this article also applies to lightweight packet encryption algorithm LED.