Abstract
In smart city construction, wireless sensor networks (WSNs) are normally deployed to collect and transmit real-time data. The nodes of the WSN are embedded facility that integrated sensors and data processing modules. For security and privacy concerns, cryptography methods are required for data protection. However, the Rivest-Shamir-Adleman (RSA) cryptosystem, known as the the most popular and deployed public key algorithm, is still hardly implemented on embedded devices because of the intense computation required from its inherent arithmetic operations. Even though, different methods have being proposed for more efficient RSA implementations such as utilizing the Chinese remainder theorem, various modular exponentiation methods, and optimized modular arithmetic methods. In this paper, we propose an efficient multiplication for long integers on the sensor nodes equipped with 16-bit microcontrollers. Combined with this efficient multiplication, we obtain a faster Montgomery multiplication. The combined optimized Montgomery multiplication, the Chinese remainder theorem, and the m-ary exponentiation method allowed for execution times of less than 44.6 × 106 clock cycles for RSA decryption, a new speed record for the RSA implementation on MSP430 microcontrollers.
Similar content being viewed by others
References
Hollands RG (2008) Will the real smart city please stand up? Intelligent, progressive or entrepreneurial?. City 12(3):303–320
Cocchia A (2014) Smart and digital city: a systematic literature review. Smart city. Springer International Publishing, 13–43
Lewis FL (2004) Wireless sensor networks. Smart environments: technologies, protocols, and applications, 11–46
Akyildiz IF, Su W, Sankarasubramaniam Y et al (2002) Wireless sensor networks: a survey. Comput Netw 38(4):393–422
Liu Z, Huang Z, Hu MK, Khan L, Seo H, Zhou L (2017) On emerging family of elliptic curves to secure internet of things: ECC comes of age. IEEE Trans Dependable Secure Comput 14(3):237–248
Liu Z, Seo H, Großschädl J, Kim H (2016) Efficient implementation of NIST-compliant elliptic curve cryptography for 8-bit AVR-based sensor nodes. IEEE Trans Inf Forensics Secur 11(7):1385–1397
Katz J, Lindell Y (2008) Introdution to modern cryptography: 298-299. Taylor & Francis Group, LLC
Gro β schadl J, Avanzi RM, Savas E, Tillich S (2005) Energy-efficient software implementation of long integer modular arithmetic. In: Cryptographic hardware and embedded systems CHES 2005, ser. lecture notes in computer science, vol 3659. Springer, Berlin, pp 75–90
Knuth DE (1998) Seminumerical algorithms, 3rd edn. ser. The art of computer programming, vol 2. Addison-Wesley
Koc CK (1994) High-speed RSA implementation, RSA Laboratories, RSA Data Security, Inc., Redwood City, CA, USA, Tech. Rep. TR 201 available for download at ftp: //ftp.rsasecurity.com/pub/pdfs/tr201.pdf
Wang H, Sheng B, Li Q (2006) Elliptic curve cryptography-based access control in sensor networks. Int J Secur Netw, 1 1(3-4):127–37
Liu A, Ning P (2008) A configurable library for elliptic curve cryptography in wireless sensor networks. TinyECC. In: Proceedings of the 7th international conference on information processing in sensor networks (IPSN 2008). IEEE Computer Society, pp 245–256
Bernstein DJ, Birkner P, Joye M, Lange T, Peters C (2008) Twisted Edwards curves. In: Progress in cryptology AFRICACRYPT 2008, vol 5023 of lecture notes in computer science. Springer, Berlin, pp 389–405
Montgomery PL (1987) Speeding the Pollard and elliptic curve methods of factorization. Math Comput 48 (177):243–264
Hinterwalder G, Moradi A, Hutter M, Schwabe P, Paar C (2015) Full-size high-security ECC implementation on MSP430 microcontrollers Progress in cryptology LATINCRYPT 2014, vol 8895 of lecture notes in computer science. Springer, pp 31–47
Quisquater J-J, Couvreur C (1982) Fast decipherment algorithm for RSA public-key cryptosystem. Electron Lett 18(21):905–907
Comba PG (1990) Exponentiation cryptosystems on the IBM PC. IBM Syst J 29(4):526–538
Karatsuba AA, Ofman YP (1963) Multiplication of multidigit numbers on automata. Soviet Phys - Doklady 7(7):595–596
Gura N, Patel A, Wander AS, Eberle H, Chang Shantz S (2004) Comparing elliptic curve cryptography and RSA on 8-bit CPUs. In: Cryptographic hardware and embedded systems CHES 2004, ser. Lecture notes in computer science, vol 3156. Springer, Berlin, pp 119–132
Montgomery PL (1985) Modular multiplication without trial division. Math Comput 44(170):519–521
Jones GA, Jones JM (1998) Elementary number theory, Springer undergraduate mathematics series. Springer, New York
Wang H, Li Q (2006) Efficient implementation of public key cryptosystems on mote sensors (short paper). In: International conference on information and communications security. Springer, Berlin
Wang H, Li Q (2006) Efficient implementation of public key cryptosystems on MicaZ and TelosB motes. Technical report WM-CS-2006, College of William and Mary
Liu Z, Großschädl J (2014) New speed records for Montgomery modular multiplication on 8-bit AVR microcontrollers. International conference on cryptology in Africa. Springer International Publishing
Liu Z, Großschädl J, Kizhvatov I (2010) Efficient and side-channel resistant RSA implementation for 8-bit AVR microcontrollers. In: Workshop on the security of the internet of things-SOCIOT 2010, vol 10
Scott M, Szczechowiak P (2007) Optimizing multiprecision multiplication for public key cryptography. IACR Cryptology ePrint Archive 2007:299
Acknowledgements
Lirong Qiu has been supported by the National Nature Science Foundation of China (No. 61672553, No. 51375504). Geovandro Pereira is partially supported by the NSERC CREATE Training Program in Building a Workforce for the Cryptographic Infrastructure of the 21st Century (CryptoWorks21) and Public Works and Government Services Canada. Hwajeong Seo is supported by the ICT R&D program of MSIP/IITP (B0717-16-0097, Development of V2X Service Integrated Security Technology for Autonomous Driving Vehicle).
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Qiu, L., Liu, Z., C. F. Pereira, G.C. et al. Implementing RSA for sensor nodes in smart cities. Pers Ubiquit Comput 21, 807–813 (2017). https://doi.org/10.1007/s00779-017-1044-y
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00779-017-1044-y