Abstract
The Advanced Encryption Algorithm (AES) has been the most widely used symmetric block cipher technique for providing security to applications adopting Wireless Sensor Networks (WSN). In this paper, an efficient software implementation of the AES algorithm is described running on an application specific processor (ASIP) platform that has been developed for use in low-power wireless sensor node designs with low memory requirements. Experimental results show that up to 46.3% reduction in cycle count is achievable through extensive code optimization. Hardware customization are proposed to the ASIP template to further improve the code performance. The gains include cycle count reductions of 33.1% and 45.2% for encryption and decryption, respectively and 21.6% reduction in code memory.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Hof, H.J.: Applications of Sensor Networks. In: Wagner, D., Wattenhofer, R. (eds.) Algorithms for Sensor and Ad Hoc Networks. LNCS, vol. 4621, pp. 1–20. Springer, Heidelberg (2007)
National Institute of Standards and Technology: Report on the development of the Advanced Encryption Standard (AES) (October 2000)
Institute of Electrical, Electronics Engineers (IEEE): IEEE 802.15.4-2006, Revision of IEEE 802.15.4-2003 (2006)
ZigBee Alliance, http://www.zigbee.org/
Perrig, A., Stankovic, J., Wagner, D.: Security in wireless sensor networks. Commun. ACM 47(6), 53–57 (2004)
Law, Y.W., Doumen, J., Hartel, P.: Survey and benchmark of block ciphers for wireless sensor networks. ACM Trans. Sen. Netw. 2(1), 65–93 (2006)
Karlof, C., Sastry, N., Wagner, D.: Tinysec: A link layer security architecture for wireless sensor networks. In: SenSys 2004, Baltimore, November 2004, pp. 162–175 (2004)
Silicon Hive’s website, http://www.siliconhive.com/
International Organization for Standardization: ISO/IEC 10116, Information technology – Security techniques – Modes of operation for an n-bit block cipher (2006)
Dworkin, M.: Recommendation for block cipher modes of operation: Methods and techniques. NIST Special Publication 800-38A (2001)
Simunic, T., Benini, L., Micheli, G.D.: Energy-efficient design of battery-powered embedded systems. In: ISLPED 1999, pp. 212–217. ACM, New York (1999)
Bertoni, G., Breveglieri, L., Fragneto, P., Macchetti, M., Marchesin, S.: Efficient software implementation of AES on 32-bit platforms. In: Kaliski Jr., B.S., Koç, Ç.K., Paar, C. (eds.) CHES 2002. LNCS, vol. 2523, pp. 159–171. Springer, Heidelberg (2003)
Rijmen, V.: Efficient implementation of the rijndael S-Box
Lamberger, M., Oswald, E., Wolkerstorfer, J.: An ASIC Implementation of the AES SBoxes. In: Preneel, B. (ed.) CT-RSA 2002. LNCS, vol. 2271, p. 67. Springer, Heidelberg (2002)
Daemen, J., Rijmen, V.: Aes proposal: Rijndael
Bernstein, D.J., Schwabe, P.: New AES software speed records. In: Chowdhury, D.R., Rijmen, V., Das, A. (eds.) INDOCRYPT 2008. LNCS, vol. 5365, pp. 322–336. Springer, Heidelberg (2008)
Gladman, B.: Reference code, http://www.gladman.me.uk/
Schädl, J.G., Tillich, S., Rechberger, C., Hofmann, M., Medwed, M.: Energy evaluation of software implementations of block ciphers under memory constraints. In: DATE 2007, pp. 1110–1115 (2007)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Suárez, N., Callicó, G.M., Sarmiento, R., Santana, O., Abbo, A.A. (2010). Processor Customization for Software Implementation of the AES Algorithm for Wireless Sensor Networks. In: Monteiro, J., van Leuken, R. (eds) Integrated Circuit and System Design. Power and Timing Modeling, Optimization and Simulation. PATMOS 2009. Lecture Notes in Computer Science, vol 5953. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-11802-9_37
Download citation
DOI: https://doi.org/10.1007/978-3-642-11802-9_37
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-11801-2
Online ISBN: 978-3-642-11802-9
eBook Packages: Computer ScienceComputer Science (R0)