Implementation of High Speed Hash Function Keccak Using CUDA on GTX 1080
Implementation of High Speed Hash Function Keccak Using CUDA on GTX 1080
复制标题
在 GTX 1080 上使用 CUDA 实现高速哈希函数 Keccak
DOI:
10.1109/candar.2017.47
复制
发表时间:
2017
期刊:
影响因子:
--
通讯作者:
Takakazu Kurokawa
中科院分区:
文献类型:
--
作者:
Thuong Nguyen Dat;Keisuke Iwai;Takakazu Kurokawa
Nowadays, a hash function is used for password management. The hash function is desired to possess the following three characteristics: Pre-Image Resistance, Second Pre-Image Resistance, and Collision Resistance. They are set on the assumption that it is computationally difficult to find the original message from a given hash value. However, the security level of the password management will be further reduced by implementing a high speed hash function. In this paper, the implementation of high speed hash function Keccak (SHA3-512) using the integrated development environment CUDA for GPU is proposed. The following three techniques are proposed in order to speed up its implementation. The first is improvement of constant values at step ρ and π of the algorithm. The second is using constant memory and shared memory for constant values. And the last one is the finding out the optimal configuration of blocks-threads. As the result, the implemented Keccak on GTX 1080 achieved up to maximum 20.5 GB/s for its throughput. It is about 4.4 times faster than the previous research result. In addition, the safety level of Keccak is also discussed at the point of Pre-Image Resistance especially. In order to implement a high speed hash function for password cracking, the special program is also developed for passwords up to 71 characters. Moreover, the throughput of 2-time hash is also evaluated. It is proved that there is no effect when using multiple hashes to increase the security level of Keccak with password management.