Publication | Closed Access
Formal Security Verification of Concurrent Firmware in SoCs using Instruction-Level Abstraction for Hardware
16
Citations
14
References
2018
Year
EngineeringHardware Verification LanguageInstruction-level AbstractionVerificationComputer ArchitectureMultiple FirmwareSoftware AnalysisFormal VerificationHardware Verification LanguagesHardware SecurityFirmware DetectionSystems EngineeringHardware Security SolutionHardware VerificationSoc Security VerificationRuntime VerificationComputer EngineeringComputer ScienceFormal Security VerificationHardware EmulationConcurrent FirmwareProgram AnalysisFormal MethodsFunctional VerificationSystem Software
Formal security verification of firmware interacting with hardware in modern Systems-on-Chip (SoCs) is a critical research problem. This faces the following challenges: (1) design complexity and heterogeneity, (2) semantics gaps between software and hardware, (3) concurrency between firmware/hardware and between Intellectual Property Blocks (IPs), and (4) expensive bit-precise reasoning. In this paper, we present a co-verification methodology to address these challenges. We model hardware using the Instruction-Level Abstraction (ILA), capturing firmware-visible behavior at the architecture level. This enables integrating hardware behavior with firmware in each IP into a single thread. The co-verification with multiple firmware across IPs is formulated as a multi-threaded program verification problem, for which we leverage software verification techniques. We also propose an optimization using abstraction to prevent expensive bit-precise reasoning. The evaluation of our methodology on an industry SoC Secure Boot design demonstrates its applicability in SoC security verification.
| Year | Citations | |
|---|---|---|
Page 1
Page 1