Optimising the SHA-512 cryptographic hash function on FPGAs

In this study, novel pipelined architectures, optimised in terms of throughput and throughput/area factors, for the SHA-512 cryptographic hash function, are proposed. To achieve this, algorithmic- and circuit-level optimisation techniques such as loop unrolling, re-timing, temporal pre-computation, resource re-ordering and pipeline are applied. All the techniques, except pipeline are applied in the function's transformation round. The pipeline was applied through the development of all the alternative pipelined architectures and implementation in several Xilinx FPGA families and they are evaluated in terms of frequency, area, throughput and throughput/area factors. Compared to the initial un-optimised implementation of SHA-512 function, the introduced five-stage pipelined architecture improves the both the throughput and throughput/area factors by 123 and 61.5%, respectively. Furthermore, the proposed five-stage pipelined architecture outperforms the existing ones both in throughput (3.4× up to 16.9×) and throughput/area (19.5% up to 6.9×) factors.

[1]  Luigi Dadda,et al.  An ASIC design for a high speed implementation of the hash function SHA-256 (384, 512) , 2004, GLSVLSI '04.

[2]  Xiaoyun Wang,et al.  Finding Collisions in the Full SHA-1 , 2005, CRYPTO.

[3]  H. Michail,et al.  A novel high-throughput implementation of a partially unrolled SHA-512 , 2006, MELECON 2006 - 2006 IEEE Mediterranean Electrotechnical Conference.

[4]  Odysseas G. Koufopavlou,et al.  Implementation of the SHA-2 Hash Family Standard Using FPGAs , 2005, The Journal of Supercomputing.

[5]  Taewhan Kim,et al.  Arithmetic optimization using carry-save-adders , 1998, DAC.

[6]  Rached Tourki,et al.  A Reconfigurable Implementation of the New Secure Hash Algorithm , 2007, The Second International Conference on Availability, Reliability and Security (ARES'07).

[7]  Stamatis Vassiliadis,et al.  Improving SHA-2 Hardware Implementations , 2006, CHES.

[8]  Javier Hormigo,et al.  Efficient Implementation of Carry-Save Adders in FPGAs , 2009, 2009 20th IEEE International Conference on Application-specific Systems, Architectures and Processors.

[9]  Máire O'Neill,et al.  Efficient single-chip implementation of SHA-384 and SHA-512 , 2002, 2002 IEEE International Conference on Field-Programmable Technology, 2002. (FPT). Proceedings..

[10]  Francis M. Crowe,et al.  Optimisation of the SHA-2 family of hash functions on FPGAs , 2006, IEEE Computer Society Annual Symposium on Emerging VLSI Technologies and Architectures (ISVLSI'06).