Implementation of High-Throughput SHA-1 Hash Algorithm using Multiple Unfolding Technique

다중 언폴딩 기법을 이용한 SHA-1 해쉬 알고리즘 고속 구현

  • Lee, Eun-Hee (Dept. of Information and Communication Engineering, Chungbuk National University) ;
  • Lee, Je-Hoon (Dept. of Electronics Engineering, Kangwon National University) ;
  • Jang, Young-Jo (School of Information Technology Engineering, Korea University of Technology and Education) ;
  • Cho, Kyoung-Rok (Dept. of Information and Communication Engineering, Chungbuk National University)
  • 이은희 (충북대학교 정보통신공학과) ;
  • 이제훈 (강원대학교 삼척캠퍼스 전자공학과) ;
  • 장영조 (한국기술교육대학교 정보기술공학부) ;
  • 조경록 (충북대학교 전자정보대학)
  • Received : 2010.01.22
  • Accepted : 2010.03.19
  • Published : 2010.04.25

Abstract

This paper proposes a new high speed SHA-1 architecture using multiple unfolding and pre-computation techniques. We unfolds iterative hash operations to 2 continuos hash stage and reschedules computation timing. Then, the part of critical path is computed at the previous hash operation round and the rest is performed in the present round. These techniques reduce 3 additions to 2 additions on the critical path. It makes the maximum clock frequency of 118 MHz which provides throughput rate of 5.9 Gbps. The proposed architecture shows 26% higher throughput with a 32% smaller hardware size compared to other counterparts. This paper also introduces a analytical model of multiple SHA-1 architecture at the system level that maps a large input data on SHA-1 block in parallel. The model gives us the required number of SHA-1 blocks for a large multimedia data processing that it helps to make decision hardware configuration. The hs fospeed SHA-1 is useful to generate a condensed message and may strengthen the security of mobile communication and internet service.

본 논문은 다중 언폴딩 기법을 이용한 고속 SHA-1 해쉬 알고리즘 구현 방법을 제시하였다. 제안된 SHA-1 해쉬 구조는 알고리즘의 반복적인 단계 연산을 언폴딩한 후 연산의 순서를 재 배열하고, 임계경로에 포함된 연산의 일부를 이전 단계에서 선행연산하여 임계경로의 길이를 줄였다. 제안된 SHA-1 해쉬 구조는 최대 118 MHz의 동작주파수에서 5.9 Gbps 처리량을 나타낸다. 이는 기존의 SHA-1 보다 전송량이 26% 증가하였고, 회로 크기가 32% 감소하는 결과를 얻었다. 또한 이 논문에서는 여러 개의 SHA-1 모듈을 시스템 레벨에서 병렬로 연결하여 여러 개의 SHA-1을 다중 처리하여 고속화를 할 수 있는 모델을 제안했다. 이 모델은 하나의 SHA-1을 사용하는 것보다 빠르게 데이터를 처리할 수 있고 입력되는 데이터의 최소한의 지연으로 처리 가능하다. 제안된 모델은 입력되는 데이터가 지연 없이 처리 되도록 하기 위해 필요로 하는 SHA-1의 FPGA 수를 구할 수도 있다. 고속화된 SHA-1은 압축된 메시지에 유용하게 사용될 수 있고 모바일 통신이나 인터넷 서비스 등의 강한 보안에 널리 이용가능하다.

Keywords

References

  1. FIPS PUB 180-2, Secure Hash Standard (SHA-1), National Institute of Standards and Technology (NIST), 1996.
  2. H. Michail, A. Kakarountas, G. Selimis, and C. Goutis, "Optimizing SHA-1 hash funtion for high throughput with a partial unrolling study," PATMOS, pp. 591-600, 2005.
  3. H. Michail, A. Kakarountas, O. Koufopavlou and C. Goutis, "A low power and high throughput implementation of the SHA-1 hash function," ISCAS, pp. 23-26, 2005.
  4. A. Kakarountas, G. Theodoridis, T. Laopoulos, and C. Goutis, "High speed FPGA impliementation of the SHA-1 hash function," IDAACS, pp. 211-215, 2005.
  5. I. Yiakoumis, E. Papadonikolakis, E. Michail, P. kakarountas, and E. Goutis, "Maximizing the Hash function of authentication code," IEEE, pp.9-12, 2006
  6. J. Diez, S. Bojanic, Lj. Stanimirovic, C. Carreras, and O. Nieto-Taladriz, "Hash algorithms for cryptographic protocols: FPGA implementations," TELFOR, pp. 26-28, 2002.
  7. N. Skavos, et al., "An ultra high speed architecture for VLSI implementation of Hash function," ICECS, pp. 900-993, 2003.
  8. Y. K. Lee, H. Chan and I. Verbauwhede, "Throughput optimized SHA-1 architecture using unfolding transformation," ASAP, pp. 354-359, 2006.
  9. H. Michail, and C. Goutis, "Holistic methodology for designing ultra high-speed SHA-1 hashing cryptographic module in hardware," EDSSC. pp. 1-4, 2008.