A light-weight hardware/software co-design for pairing-based cryptography with low power and energy consumption

Embedded electronic devices and sensors such as smartphones, smart watches, medical implants, and Wireless Sensor Nodes (WSN) are making the “Internet of Things” (IoT) a reality. Such devices often require cryptographic services such as authentication, integrity and non-repudiation, which are provided by Public-Key Cryptography (PKC). As these devices are severely resource-constrained, choosing a suitable cryptographic system is challenging. Pairing Based Cryptography (PBC) is among the best candidates to implement PKC in lightweight devices. In this research, we present a fast and energy efficient implementation of PBC based on Barreto-Naehrig (BN) curves and optimal Ate pairing using hardware/software co-design. Our solution consists of a hardware-based Montgomery multiplier, and pairing software running on an ARM Cortex A9 processor in a Zynq-7020 System-on-Chip (SoC). The multiplier is protected against simple power analysis (SPA) and differential power analysis (DPA), and can be instantiated with a variable number of processing elements (PE). Our solution improves performance (in terms of latency) over an open-source software PBC implementation by factors of 2.34 and 2.02, for 256- and 160-bit field sizes, respectively, as measured in the Zynq-7020 SoC.

[1]  Tanja Lange,et al.  Faster Computation of the Tate Pairing , 2009, IACR Cryptol. ePrint Arch..

[2]  Adi Shamir,et al.  Identity-Based Cryptosystems and Signature Schemes , 1984, CRYPTO.

[3]  William P. Marnane,et al.  Identity- Based Cryptography , 2008 .

[4]  Jens-Peter Kaps,et al.  Towards a Flexible , Opensource BOard for Side-channel analysis ( FOBOS ) , 2013 .

[5]  Helena Rif Computational and Energy Costs of Cryptographic Algorithms on Handheld Devices , 2011 .

[6]  Kris Gaj,et al.  A Zynq-based testbed for the experimental benchmarking of algorithms competing in cryptographic contests , 2016, 2016 International Conference on ReConFigurable Computing and FPGAs (ReConFig).

[7]  Debdeep Mukhopadhyay,et al.  Secure Dual-Core Cryptoprocessor for Pairings Over Barreto-Naehrig Curves on FPGA Platform , 2013, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[8]  Kris Gaj,et al.  A scalable ECC processor implementation for high-speed and lightweight with side-channel countermeasures , 2017, 2017 International Conference on ReConFigurable Computing and FPGAs (ReConFig).

[9]  Paulo S. L. M. Barreto,et al.  Pairing-Friendly Elliptic Curves of Prime Order , 2005, Selected Areas in Cryptography.

[10]  Frederik Vercauteren,et al.  Efficient Hardware Implementation of Fp-Arithmetic for Pairing-Friendly Curves , 2012, IEEE Transactions on Computers.

[11]  Matthew K. Franklin,et al.  Identity-Based Encryption from the Weil Pairing , 2001, CRYPTO.

[12]  P. L. Montgomery Modular multiplication without trial division , 1985 .

[13]  Tarek A. El-Ghazawi,et al.  New Hardware Architectures for Montgomery Modular Multiplication Algorithm , 2011, IEEE Transactions on Computers.

[14]  Thomas Unterluggauer,et al.  Efficient Pairings and ECC for Embedded Systems , 2014, IACR Cryptol. ePrint Arch..

[15]  Çetin Kaya Koç,et al.  A Scalable Architecture for Montgomery Multiplication , 1999, CHES.

[16]  Sanjit Chatterjee,et al.  Identity-based encryption , 2014 .

[17]  Leonardo B. Oliveira,et al.  Efficient software implementation of public-key cryptography on sensor networks using the MSP430X microcontroller , 2012, Journal of Cryptographic Engineering.