Abstract
Data Encryption/Decryption has become an essential part of pervasive computing systems. However, executing these cryptographic algorithms often introduces a high overhead. In this paper, we select nine widely used cryptographic algorithms to improve their performance by providing hardware-assisted solutions. For each algorithm, we identify the software performance bottleneck, i.e., those “hotspot functions” or “hot-blocks” which consume a substantial portion of the overall execution time. Then, based on the percentage of execution time of a specific function and its relationship with the overall algorithm, we select candidates for our hardware acceleration. We design our hardware accelerators of the chosen candidates. The results show that our implementations achieve speedups as high as 60 folds for specific functions and 5.4 for the overall algorithm compared with the performance of the software-only implementation. Through the associated hardware cost analysis, we point to an opportunity to perform these functions in an SIMD fashion.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Luby, M., Rackoff, C.: How to Construct Pseudorandom Permutations from Pseudorandom Functions. SIAM Journal on Computing 17(2), 373–386 (1988)
Rijmen, V.: Cryptanalysis and design of iterated block ciphers. Doctoral Dissertation, K.U.Leuven (October 1997)
NIST (National Institute of Standards and Technology), “Advanced Encryption Standard (AES) – FIPS Pub. 197 (November 2001)
Rivest, R.L., Shamir, A., Adleman, L.: A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. Communications of ACM 21(2), 120–126 (1978)
Intel VTune, http://software.intel.com/en-us/intel-vtune/
Bielecki, W., Burak, D.: Parallelization Method of Encryption Algorithms. In: Advances in Information Processing and Protection, pp. 191–204 (2008)
The eMips project, http://research.microsoft.com/en-us/projects/emips/default.aspx
Davies, D.W., Price, W.L.: Security for Computer Networks. Security for Computer Networks. Wiley (1989)
Rivest, R.L.: The RC5 encryption algorithm. In: Proceedings of the 2nd Workshop on Fast Software Encryption, pp. 86–96. Springer (1995)
Rivest, R.L.: The MD5 message-digest algorithm, Request for Comments (RFC1320). Internet Activities Board, Internet Privacy Task Force (1992)
Lai, X.: On the Design and Security of Block Ciphers. Hartung-Gorre Verlag (1992)
FIPS 180-1. Secure hash standard, NIST, US Department of Commerce, Washington D.C. Springer (1996)
Counterpane Systems, http://www.counterpane.com
Koblitz, N.: Elliptic curve cryptosystems. Mathematics of Computation 48, 203–209 (1987)
IEEE 1363: Standard Specifications for Public-Key Cryptography, http://grouper.ieee.org/groups/1363/
Schneier, B.: Applied Cryptography. John Wiley & Sons (1996)
Hodjat, A.: Interfacing a high speed crypto accelerator to an embedded CPU. In: Proceedings of the 38th Asilomar Conference on Signals, Systems, and Computers, pp. 488–492 (2004)
Harrison, O., Waldron, J.: AES Encryption Implementation and Analysis on Commodity Graphics Processing Units. In: Paillier, P., Verbauwhede, I. (eds.) CHES 2007. LNCS, vol. 4727, pp. 209–226. Springer, Heidelberg (2007)
Mourad, O.-C., Lotfy, S.-M., Noureddine, M., Ahmed, B., Camel, T.: AES Embedded Hardware Implementation. In: Second NASA/ESA Conference on Adaptive Hardware and Systems (AHS 2007), pp. 103–109 (2002)
Bertoni, G.M., Breveglieri, L., Roberto, F., Regazzoni, F.: Speeding up AES by extending a 32 bit processor instruction set. In: Proceedings of the IEEE 17th International Conference on Application-Specific Systems, Architectures and Processors (ASAP 2006), pp. 275–282 (2006)
Tang, J., Liu, S., Gu, Z., Li, X.-F., Gaudiot, J.-L.: Hardware-Assisted Middleware: Acceleration of Garbage Collection Operations. In: Proceedings of the 21st IEEE International Conference on Application-Specific Systems, Architectures and Processors, ASAP 2010 (2010)
Tang, J., Liu, S., Gu, Z., Liu, C., Gaudiot, J.-L.: Prefetching in Embedded Mobile Systems Can Be Energy-Efficient. Computer Architecture Letters (February 2011), http://doi.ieeecomputersociety.org/10.1109/L-CA.2011.2
Tang, J., Thanarungroj, P., Liu, C., Liu, S., Gu, Z., Gaudiot, J.-L.: Pinned OS/Services: A Case Study of XML Parsing on Intel SCC. Journal of Computer Science and Technology (in press)
Tang, J., Liu, S., Liu, C., Gu, Z., Gaudiot, J.-L.: Acceleration of XML Parsing Through Prefetching. IEEE Transactions on Computers (in press)
Tang, J., Liu, S., Gu, Z., Li, X.-F., Gaudiot, J.-L.: Achieving Middleware Execution Efficiency: Hardware-Assisted Garbage Collection Operations. Journal of Supercomputing (November 2010), doi:10.1007/s11227-010-0493-0
Tang, J., Liu, S., Gu, Z., Liu, C., Gaudiot, J.-L.: Memory-Side Acceleration for XML Parsing. In: Altman, E., Shi, W. (eds.) NPC 2011. LNCS, vol. 6985, pp. 277–292. Springer, Heidelberg (2011)
Liu, S., Pittman, R.N., Forin, A., Gaudiot, J.-L.: Minimizing the Runtime Partial Reconfiguration Overheads in Reconfigurable Systems. Journal of Supercomputing (July 22, 2011), doi:10.1007/s11227-011-0657-6
Chang, J.K.-T., Liu, C., Liu, S., Gaudiot, J.-L.: Workload Characterization of Cryptography Algorithms for Hardware Acceleration. In: Proceedings of the 2nd ACM International Conference on Performance Engineering (ICPE 2011), Karlsruhe, Germany, March 14-16 (2011)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Chang, J.KT., Liu, C., Gaudiot, JL. (2013). Hardware Acceleration for Cryptography Algorithms by Hotspot Detection. In: Park, J.J.(.H., Arabnia, H.R., Kim, C., Shi, W., Gil, JM. (eds) Grid and Pervasive Computing. GPC 2013. Lecture Notes in Computer Science, vol 7861. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-38027-3_50
Download citation
DOI: https://doi.org/10.1007/978-3-642-38027-3_50
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-38026-6
Online ISBN: 978-3-642-38027-3
eBook Packages: Computer ScienceComputer Science (R0)