frequencies for the proposed implementations are
related to the corresponding post-synthesis results
As it can be easily seen, the increase observed
for SHA-256, is about 110% gain in throughput and
30% area penalty compared to a non-optimized
implementation with four pipeline stages
(implemented in the same technology).
This way the improvement that arises from our
optimization process is confirmed and evaluated
fairly, verifying the theoretical analysis in the
previous section. Furthermore, comparing the
implementations of other researchers to our
implementations, it can be observed that all of them
fall short in throughput, in a range that varies from
0.75 – 26.4 times less than the proposed
implementation.
4 CONCLUSIONS
In this paper a design for SHA-256 was proposed,
which achieves high throughput with a small area
penalty, thus enabling efficient software/hardware
co-design. The optimization process used is generic
and can be exploited to a wide range of existing hash
functions that are currently used or will be deployed
in the future and call for high throughputs.
This optimization process led to a design with
significant increase of throughput (about 110% for
SHA-256), compared to corresponding conventional
designs and implementations, with a small area
penalty. The results derived from their
implementation in FPGA technologies confirm the
theoretical results of the proposed design and
implementation.
ACKNOWLEDGEMENTS
This work was supported by action “Young
Researchers from Abroad” which is funded by the
Cypriot state-Research Promotion Foundation
(RPF/IPE).
REFERENCES
Chaves, R. and Kuzmanov, G.K. and Sousa, L. A. and
Vassiliadis, S. (2006) “Improving SHA-2 Hardware
Implementations”, Workshop on Cryptographic
Hardware and Embedded Systems (CHES 2006), pp.
298-310.
Cadence, “Hashing Algorithm Generator SHA-256:
Technical Data Sheet”, Web page available at
http://www.cadence.com/datasheets/SHA256_Datashe
et.pdf.
CAST Inc., Web page, available at http://www.cast-
inc.com/cores.
FIPS 180-2, (2002) “Secure Hash Standard”, FIPS
Publication 180-1, NIST, US Dept of Commerce.
FIPS 198-1, “The Keyed-Hash Message Authentication
Code (HMAC)”, FIPS Publication 180-1, NIST, US
Dept of Commerce, 2007.
Glabb, R. And Imbertb, L. and Julliena, G. and
Tisserandb, A. and Charvillon, N.V. (2007) “Multi-
mode operator for SHA-2 hash functions”, Journal of
Systems Architecture, Elsevier Publishing, vol. 53, is.
2-3B, pp. 127–138.
Helion Technology Ltd, Data Security Products, Web
page, available at
http://www.heliontech.com/auth.htm.
Lien, R. And Grembowski, T. And Gaj, K. (2004) “A 1
Gbit/s Partially Unrolled Architecture of Hash
Functions SHA-1 and SHA-512”, in LNCS, vol. 2964,
pp. 324-338, Springer.
McEvoy, R.P. and Crowe, F.M. and Murphy, C.C. and
William, P. (2006) “Optimisation of the SHA-2
Family of Hash Functions on FPGAs”, Emerging
VLSI Technologies and Architectures (ISVLSI’06),
pp.317-322.
Schneier, B. (1996). “Applied Cryptography – Protocols,
Algorithms and Source Code in C” , Second Edition,
John Wiley and Sons.
Selimis, G. and Sklavos, N. and Koufopavlou, O. (2003)
“VLSI Implementation of the Keyed-Hash Message
Authentication Code for the Wireless Application
Protocol”, in ICECS'03, pp.24-27.
Sklavos, N. and Koufopavlou, O. (2005) “Implementation
of the SHA-2 Hash Family Standard Using FPGAs”,
Journal of Supercomputing, Kluwer Academic
Publishers, vol. 31, pp. 227-248.
SP800-77, “Guide to IPSec VPN’s”, NIST, US Dept of
Commerce, 2005.
Ting, K. K. and Yuen, S. C. L. and Lee, K.-H. and Leong, P. H.
W. (2002)“An FPGA based SHA-256 processor”, Lecture
Notes in Computer Science (LNCS), vol. 2438, pp. 577–585.
Springer.
Zeghid, M. and Bouallegue, B. and Bagagne, A.
Machhoot, M. and Tourki, R. (2007) “A
Reconfigurable Implementation of the new Hash
Algorithm”, Availability, Reliavility and Security,
(ARES 2007), pp.281-285.
Zeghid, M. and Bouallegue, B. and Machhoot, M. and
Bagagne, A. and Tourki, R. (2008) “Architectural
Design Features of a Programmable Hgh Throughput
Reconfigurable SHA-256 Processor”, Journal of
Information Assurance and Security, pp.147-158.
ULTRA HIGH SPEED SHA-256 HASHING CRYPTOGRAPHIC MODULE FOR IPSEC HARDWARE/SOFTWARE
CODESIGN
313