journal article·2022Open access

An AOP-Based Security Verification Environment for KECCAK Hash燗lgorithm

Hassen Mestiri, Imen Barraj, Mohsen Machhout

Computers, Materials & Continua· Volume 73· Issue 2

Abstract

Robustness of the electronic cryptographic devices against fault injection attacks is a great concern to ensure security. Due to significant resource constraints, these devices are limited in their capabilities. The increasing complexity of cryptographic devices necessitates the development of a fast simulation environment capable of performing security tests against fault injection attacks. SystemC is a good choice for Electronic System Level (ESL) modeling since it enables models to run at a faster rate. To enable fault injection and detection inside a SystemC cryptographic model, however, the model’s source code must be updated. Without altering the source code, Aspect-Oriented Programming (AOP) may be used to evaluate the robustness of cryptographic models. This might replace conventional cryptanalysis methods in the real world. At the ESL, we discuss a unique technique for simulating security fault attacks on cryptographic systems. The current study presents a fault injection/detection environment for assessing the KECCAK SystemC model’s resistance against fault injection attacks. The approach of injecting faults into KECCAK SystemC model is accomplished via the use of weaving faults in AspectC++ based on AOP programming language. We confirm our technique by applying it to two scenarios using a SystemC KECCAK hash algorithm case study: The first concerns discuss the effect of the AOP on fault detection capabilities, while the second concerns discuss the effect of the AOP on simulation time and executable file size. The simulation results demonstrate that this technique is fully capable of evaluating the fault injection resistance of a KECCAK design. They demonstrate that AOP has a negligible effect on simulation time and executable file size.
Source: openalex_inverted_index · Quality: baseline

Research context

OpenAlex topics: Physical Unclonable Functions (PUFs) and Hardware Security · Embedded Systems Design Techniques · Security and Verification in Computing

SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.

References (30)

Show source-provided references
1. Verifying SystemC using intermediate verification language and stateful symbolic simulation10.1109/TCAD.2018.2846638 ↗
2. Dynamic fault injection into digital twins of safety-critical systems
3. High level fault injection method for evaluating critical system parameter ranges
4. An ISA-level accurate fault simulator for system-level fault analysis
5. A Domain-specific language for automated fault injection in SystemC models
6. An AOP-based fault injection environment for cryptographic systemc designs10.1142/S0218126615500085 ↗
7. AES high-level SystemC modeling using aspect oriented programming approach10.48084/etasr.3971 ↗
8. Analysis and detection of errors in keccak hardware implementation
9. Algebraic fault analysis of SHA-3 under relaxed fault models10.1109/TIFS.2018.2790938 ↗
10. A high-speed KECCAK architecture resistant to fault attacks
11. An efficient AES 32-bit architecture resistant to fault attacks10.32604/cmc.2022.020716 ↗
12. Dynamic slicing of concurrent AspectJ programs: An explicit context-sensitive approach
13. An empirical study on the impact of AspectJ on software evolvability10.1007/s10664-017-9580-7 ↗
14. Lewarski · Developments in Information & Knowledge Management for Business Applications · 2021 · 330 · 487
15. Dynamic weaving of aspects in C/C++ using PIN
16. Expressing and applying C++ code transformations for the HDF5 API through a DSL
17. A comprehensive detection of memory corruption vulnerabilities for C/C++ programs
18. EffectiveSan: Type and memory error detection using dynamically typed C/C++
19. Annotations in operating systems with custom AspectC++ attributes
20. Souza · Computational Science and its Applications · 2017 · 10409 · 95
21. Extension and adaptation of an aspect oriented programming language for real-time systems10.1504/IJBSR.2020.106274 ↗
22. Muñoz · Artificial Intelligence and Security Challenges in Emerging Networks · 2019 · 162
23. Interface injection with AspectC++ in embedded systems
24. An aspect and transaction oriented programming, design and verification language (PDVL)
25. The next generation of virtual prototyping: Ultra-fast yet accurate simulation of HW/SW systems
26. LARA: An aspect-oriented programming language for embedded systems
27. System-level design based on UML/MARTE for FPGA-based embedded real-time systems10.1007/s10617-016-9172-6 ↗
28. A distributed multicore real-time operating system family based on aspect-oriented programming
29. Multiversion parallel synthesis of digital structures based on SystemC specification
30. S3CBench: Synthesizable security SystemC benchmarks for high-level synthesis10.1007/s41635-017-0014-1 ↗