Secure Elliptic Curve Crypto-Processor for Real-Time IoT Applications
Cybersecurity is a critical issue for Real-Time IoT applications since high performance and low latencies are required, along with security requirements to protect the large number of attack surfaces to which IoT devices are exposed. Elliptic Curve Cryptography (ECC) is largely adopted in an IoT con...
Main Authors: | , , , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2021-08-01
|
Series: | Energies |
Subjects: | |
Online Access: | https://www.mdpi.com/1996-1073/14/15/4676 |
_version_ | 1797525580220989440 |
---|---|
author | Stefano Di Matteo Luca Baldanzi Luca Crocetti Pietro Nannipieri Luca Fanucci Sergio Saponara |
author_facet | Stefano Di Matteo Luca Baldanzi Luca Crocetti Pietro Nannipieri Luca Fanucci Sergio Saponara |
author_sort | Stefano Di Matteo |
collection | DOAJ |
description | Cybersecurity is a critical issue for Real-Time IoT applications since high performance and low latencies are required, along with security requirements to protect the large number of attack surfaces to which IoT devices are exposed. Elliptic Curve Cryptography (ECC) is largely adopted in an IoT context to provide security services such as key-exchange and digital signature. For Real-Time IoT applications, hardware acceleration for ECC-based algorithms can be mandatory to meet low-latency and low-power/energy requirements. In this paper, we propose a fast and configurable hardware accelerator for NIST P-256/-521 elliptic curves, developed in the context of the European Processor Initiative. The proposed architecture supports the most used cryptography schemes based on ECC such as Elliptic Curve Digital Signature Algorithm (ECDSA), Elliptic Curve Integrated Encryption Scheme (ECIES), Elliptic Curve Diffie-Hellman (ECDH) and Elliptic Curve Menezes-Qu-Vanstone (ECMQV). A modified version of Double-And-Add-Always algorithm for Point Multiplication has been proposed, which allows the execution of Point Addition and Doubling operations concurrently and implements countermeasures against power and timing attacks. A simulated approach to extract power traces has been used to assess the effectiveness of the proposed algorithm compared to classical algorithms for Point Multiplication. A constant-time version of the Shamir’s Trick has been adopted to speed-up the Double-Point Multiplication and modular inversion is executed using Fermat’s Little Theorem, reusing the internal modular multipliers. The accelerator has been verified on a Xilinx ZCU106 development board and synthesized on both 45 nm and 7 nm Standard-Cell technologies. |
first_indexed | 2024-03-10T09:15:52Z |
format | Article |
id | doaj.art-639559f71df1480dbb2ea059e6eac39d |
institution | Directory Open Access Journal |
issn | 1996-1073 |
language | English |
last_indexed | 2024-03-10T09:15:52Z |
publishDate | 2021-08-01 |
publisher | MDPI AG |
record_format | Article |
series | Energies |
spelling | doaj.art-639559f71df1480dbb2ea059e6eac39d2023-11-22T05:36:30ZengMDPI AGEnergies1996-10732021-08-011415467610.3390/en14154676Secure Elliptic Curve Crypto-Processor for Real-Time IoT ApplicationsStefano Di Matteo0Luca Baldanzi1Luca Crocetti2Pietro Nannipieri3Luca Fanucci4Sergio Saponara5Department of Information Engineering, University of Pisa, Via G. Caruso 16, 56122 Pisa, ItalyDepartment of Information Engineering, University of Pisa, Via G. Caruso 16, 56122 Pisa, ItalyDepartment of Information Engineering, University of Pisa, Via G. Caruso 16, 56122 Pisa, ItalyDepartment of Information Engineering, University of Pisa, Via G. Caruso 16, 56122 Pisa, ItalyDepartment of Information Engineering, University of Pisa, Via G. Caruso 16, 56122 Pisa, ItalyDepartment of Information Engineering, University of Pisa, Via G. Caruso 16, 56122 Pisa, ItalyCybersecurity is a critical issue for Real-Time IoT applications since high performance and low latencies are required, along with security requirements to protect the large number of attack surfaces to which IoT devices are exposed. Elliptic Curve Cryptography (ECC) is largely adopted in an IoT context to provide security services such as key-exchange and digital signature. For Real-Time IoT applications, hardware acceleration for ECC-based algorithms can be mandatory to meet low-latency and low-power/energy requirements. In this paper, we propose a fast and configurable hardware accelerator for NIST P-256/-521 elliptic curves, developed in the context of the European Processor Initiative. The proposed architecture supports the most used cryptography schemes based on ECC such as Elliptic Curve Digital Signature Algorithm (ECDSA), Elliptic Curve Integrated Encryption Scheme (ECIES), Elliptic Curve Diffie-Hellman (ECDH) and Elliptic Curve Menezes-Qu-Vanstone (ECMQV). A modified version of Double-And-Add-Always algorithm for Point Multiplication has been proposed, which allows the execution of Point Addition and Doubling operations concurrently and implements countermeasures against power and timing attacks. A simulated approach to extract power traces has been used to assess the effectiveness of the proposed algorithm compared to classical algorithms for Point Multiplication. A constant-time version of the Shamir’s Trick has been adopted to speed-up the Double-Point Multiplication and modular inversion is executed using Fermat’s Little Theorem, reusing the internal modular multipliers. The accelerator has been verified on a Xilinx ZCU106 development board and synthesized on both 45 nm and 7 nm Standard-Cell technologies.https://www.mdpi.com/1996-1073/14/15/4676Elliptic Curve CryptographyEuropean Processor Initiative (EPI)cryptographyReal-TimeASIC7 nm |
spellingShingle | Stefano Di Matteo Luca Baldanzi Luca Crocetti Pietro Nannipieri Luca Fanucci Sergio Saponara Secure Elliptic Curve Crypto-Processor for Real-Time IoT Applications Energies Elliptic Curve Cryptography European Processor Initiative (EPI) cryptography Real-Time ASIC 7 nm |
title | Secure Elliptic Curve Crypto-Processor for Real-Time IoT Applications |
title_full | Secure Elliptic Curve Crypto-Processor for Real-Time IoT Applications |
title_fullStr | Secure Elliptic Curve Crypto-Processor for Real-Time IoT Applications |
title_full_unstemmed | Secure Elliptic Curve Crypto-Processor for Real-Time IoT Applications |
title_short | Secure Elliptic Curve Crypto-Processor for Real-Time IoT Applications |
title_sort | secure elliptic curve crypto processor for real time iot applications |
topic | Elliptic Curve Cryptography European Processor Initiative (EPI) cryptography Real-Time ASIC 7 nm |
url | https://www.mdpi.com/1996-1073/14/15/4676 |
work_keys_str_mv | AT stefanodimatteo secureellipticcurvecryptoprocessorforrealtimeiotapplications AT lucabaldanzi secureellipticcurvecryptoprocessorforrealtimeiotapplications AT lucacrocetti secureellipticcurvecryptoprocessorforrealtimeiotapplications AT pietronannipieri secureellipticcurvecryptoprocessorforrealtimeiotapplications AT lucafanucci secureellipticcurvecryptoprocessorforrealtimeiotapplications AT sergiosaponara secureellipticcurvecryptoprocessorforrealtimeiotapplications |