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...

Full description

Bibliographic Details
Main Authors: Stefano Di Matteo, Luca Baldanzi, Luca Crocetti, Pietro Nannipieri, Luca Fanucci, Sergio Saponara
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