Skip to main content

Bitslice Implementation of AES

  • Conference paper
Cryptology and Network Security (CANS 2006)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 4301))

Included in the following conference series:

Abstract

Network applications need to be fast and at the same time provide security. In order to minimize the overhead of the security algorithm on the performance of the application, the speeds of encryption and decryption of the algorithm are critical. To obtain maximum performance from the algorithm, efficient techniques for its implementation must be used and the implementation must be tuned for the specific hardware on which it is running.

Bitslice is a non-conventional but efficient way to implement DES in software. It involves breaking down of DES into logical bit operations so that N parallel encryptions are possible on a single N-bit microprocessor. This results in tremendous throughput. AES is a symmetric block cipher introduced by NIST as a replacement for DES. It is rapidly becoming popular due to its good security features, efficiency, performance and simplicity. In this paper we present an implementation of AES using the bitslice technique. We analyze the impact of the architecture of the microprocessor on the performance of bitslice AES. We consider three processors; the Intel Pentium 4, the AMD Athlon 64 and the Intel Core 2. We optimize the implementation to best utilize the superscalar architecture and SIMD instruction set present in the processors.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Biham, E.: A Fast New DES Implementation in Software. In: Biham, E. (ed.) FSE 1997. LNCS, vol. 1267, pp. 260–272. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  2. National Institute of Standards and Technology (NIST), Information Technology Laboratory (ITL), Advanced Encryption Standard (AES), Federal Information Processing Standards (FIPS) Publication 197 (2001)

    Google Scholar 

  3. National Institute of Standards and Technology (NIST), Computer Security Division, Recommendation for Block Cipher Modes of Operation: Methods and Techniques, Special Publication 800-38A (2001)

    Google Scholar 

  4. Daemen, J., Rijmen, V.: AES Proposal: Rijndael, Version 2, AES submission (1999), http://csrc.nist.gov/encryption/aes/rijndael/Rijndael.pdf

  5. Kwan, M.: Bitslice implementation of DES, http://www.darkside.com.au/bitslice

  6. Rudra, A., Dubey, P.K., Jutla, C.S., Kumar, V., Rao, J.R., Rohatgi, P.: Efficient Implementation of Rijndael Encryption with Composite Field Arithmetic. In: Koç, Ç.K., Naccache, D., Paar, C. (eds.) CHES 2001. LNCS, vol. 2162, p. 319. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  7. Gaubatz, G., Sunar, B.: Leveraging the Multiprocessing Capabilities of Modern Network Processors for Cryptographic Acceleration. In: 4th IEEE International Symposium on Network Computing and Applications (NAC 2005), Cambridge, Massachusetts (July 2005)

    Google Scholar 

  8. Rijmen, V.: Efficient Implementation of the Rijndael SBox, http://seer.ist.psu.edu/rijmen00efficient.html

  9. Wolkerstorfer, J., Oswald, E., Lamberger, M.: An ASIC implementation of the AES Sboxes. In: Preneel, B. (ed.) CT-RSA 2002. LNCS, vol. 2271, pp. 67–78. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  10. Canright, D.: A Very Compact S-Box for AES. In: Rao, J.R., Sunar, B. (eds.) CHES 2005. LNCS, vol. 3659, pp. 441–455. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  11. Matsui, M., Fukuda, S.: How to Maximize Software Performance of Symmetric Primitives on Pentium III and 4 Processors. In: Gilbert, H., Handschuh, H. (eds.) FSE 2005. LNCS, vol. 3557, pp. 398–412. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  12. Osvik, D.A., Shamir, A., Tromer, E.: Cache Attacks and Countermeasures: the Case of AES (2005), http://eprint.iacr.org/2005/271.pdf

  13. Bernstein, D.J.: Cache-timing attacks on AES (2005), http://cr.yp.to/antiforgery/cachetiming-20050414.pdf

  14. Aoki, K., Lipmaa, H.: Fast Implementations of AES Candidates. In: Proceedings of the 3rd AES Candidate Conference (2000), available at: http://csrc.nist.gov/encryption/aes/round2/conf3/papers/20-kaoki.pdf

  15. AMD Manual: Software Optimization Guide for AMD Athlon 64 and AMD Opteron Processors, http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/25112.PDF

  16. Intel Manual, IA-32 Intel Architecture Optimization Reference Manual, http://download.intel.com/design/Pentium4/manuals/24896613.pdf

  17. Fog, A.: Instruction tables: Lists of instruction latencies, throughputs and micro-operation breakdowns for Intel and AMD CPU’s (2006), http://www.agner.org/optimize/instruction_tables.pdf

  18. The microarchitecture of Intel and AMD CPUs (2006), http://www.agner.org/optimize/microarchitecture.pdf

  19. Gladman, B.: AES Code, http://fp.gladman.plus.com/AES

  20. Lipmaa, H.: AES/Rijndael: Speed, http://www.adastral.ucl.ac.uk/~helger/research/aes/rijndael.html

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Rebeiro, C., Selvakumar, D., Devi, A.S.L. (2006). Bitslice Implementation of AES. In: Pointcheval, D., Mu, Y., Chen, K. (eds) Cryptology and Network Security. CANS 2006. Lecture Notes in Computer Science, vol 4301. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11935070_14

Download citation

  • DOI: https://doi.org/10.1007/11935070_14

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-49462-1

  • Online ISBN: 978-3-540-49463-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics