An SHA-3 Hardware Architecture against Failures Based on Hamming Codes and Triple Modular Redundancy

Cryptography has become one of the vital disciplines for information technology such as IoT (Internet Of Things), IIoT (Industrial Internet Of Things), I4.0 (Industry 4.0), and automotive applications. Some fundamental characteristics required for these applications are confidentiality, authenticati...

Full description

Bibliographic Details
Main Authors: Algredo-Badillo, I. (Author), Lobato-Báez, M. (Author), López-Huerta, F. (Author), López-Pimentel, J.C (Author), Morales-Rosales, L.A (Author), Torres-Alvarado, A. (Author)
Format: Article
Language:English
Published: MDPI 2022
Subjects:
Online Access:View Fulltext in Publisher
LEADER 03248nam a2200445Ia 4500
001 10.3390-s22082985
008 220425s2022 CNT 000 0 und d
020 |a 14248220 (ISSN) 
245 1 0 |a An SHA-3 Hardware Architecture against Failures Based on Hamming Codes and Triple Modular Redundancy 
260 0 |b MDPI  |c 2022 
856 |z View Fulltext in Publisher  |u https://doi.org/10.3390/s22082985 
520 3 |a Cryptography has become one of the vital disciplines for information technology such as IoT (Internet Of Things), IIoT (Industrial Internet Of Things), I4.0 (Industry 4.0), and automotive applications. Some fundamental characteristics required for these applications are confidentiality, authentication, integrity, and nonrepudiation, which can be achieved using hash functions. A cryptographic hash function that provides a higher level of security is SHA-3. However, in real and modern applications, hardware implementations based on FPGA for hash functions are prone to errors due to noise and radiation since a change in the state of a bit can trigger a completely different hash output than the expected one, due to the avalanche effect or diffusion, meaning that modifying a single bit changes most of the desired bits of the hash; thus, it is vital to detect and correct any error during the algorithm execution. Current hardware solutions mainly seek to detect errors but not correct them (e.g., using parity checking or scrambling). To the best of our knowledge, there are no solutions that detect and correct errors for SHA-3 hardware implementations. This article presents the design and a comparative analysis of four FPGA architectures: two without fault tolerance and two with fault tolerance, which employ Hamming Codes to detect and correct faults for SHA-3 using an Encoder and a Decoder at the step-mapping functions level. Results show that the two hardware architectures with fault tolerance can detect up to a maximum of 120 and 240 errors, respectively, for every run of KECCAK-p, which is considered the worst case. Additionally, the paper provides a comparative analysis of these architectures with other works in the literature in terms of experimental results such as frequency, resources, throughput, and efficiency. © 2022 by the authors. Licensee MDPI, Basel, Switzerland. 
650 0 4 |a Block codes 
650 0 4 |a Comparative analyzes 
650 0 4 |a Errors 
650 0 4 |a fault tolerance 
650 0 4 |a Fault tolerance 
650 0 4 |a Field programmable gate arrays (FPGA) 
650 0 4 |a FPGA architectures 
650 0 4 |a FPGA architectures 
650 0 4 |a Hamming code 
650 0 4 |a Hardware architecture 
650 0 4 |a Hardware implementations 
650 0 4 |a Hash functions 
650 0 4 |a Internet of things 
650 0 4 |a Internet of things industries 
650 0 4 |a security 
650 0 4 |a Security 
650 0 4 |a SHA-3 
650 0 4 |a SHA-3 
650 0 4 |a Triple modular redundancy 
650 0 4 |a VANET 
650 0 4 |a VANET 
700 1 |a Algredo-Badillo, I.  |e author 
700 1 |a Lobato-Báez, M.  |e author 
700 1 |a López-Huerta, F.  |e author 
700 1 |a López-Pimentel, J.C.  |e author 
700 1 |a Morales-Rosales, L.A.  |e author 
700 1 |a Torres-Alvarado, A.  |e author 
773 |t Sensors