Controller Datapath Aware Verification of Masked Hardware Generated via High Level Synthesis
This paper presents MaskedHLSVerif, a state-wise formal verification toolflow designed to accurately validate the power side-channel security of masked hardware generated by High-Level Synthesis, effectively eliminating false positives caused by resource-shared controller datapath architectures that plague existing verification tools.
Original paper licensed under CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer
The Big Picture: Building a Secret Vault
Imagine you are building a high-security vault to store a secret recipe (the cryptographic algorithm). You want to make sure no one can steal the recipe by watching how much electricity the vault uses while it's working. This is called a Power Side-Channel Attack.
To stop this, you use a technique called Masking.
- The Analogy: Instead of keeping the whole recipe in one place, you chop it into three random pieces (shares). You give one piece to Person A, one to Person B, and one to Person C.
- The Rule: As long as no one sees more than one piece at a time, the secret remains safe. Even if a spy watches Person A's hands, they only see a random piece of paper, not the recipe.
The Problem: The "Fast-Forward" Builder
Traditionally, building these masked vaults is done by hand by expert engineers. It's slow, tedious, and easy to make a mistake.
To speed things up, engineers started using High-Level Synthesis (HLS).
- The Analogy: Think of HLS as a super-fast, automated construction robot. You give it a blueprint (software code), and it instantly builds the physical vault (hardware) for you. It's great because it saves time and lets you try out different designs quickly.
But here's the catch: This robot was built to build fast and cheap, not secure.
To save space and time, the robot often reuses the same tools (like a single hammer) for different jobs at different times. It creates a design where the "secret pieces" are shuffled around on a conveyor belt that only moves in specific patterns.
The False Alarm: The Over-Paranoid Inspector
After the robot builds the vault, you need an inspector to check if the masking is still working.
- The Old Inspector (Tools like REBECCA): This inspector is very thorough but a bit naive. They look at the blueprints and say, "Hey, this hammer could theoretically hit any piece of wood at any time."
- The Mistake: Because the robot (HLS) reuses the hammer, the inspector checks every possible combination of hammer hits, even the ones that are physically impossible in the actual machine.
- The Result: The inspector screams, "DANGER! The secret is leaking!" when, in reality, the machine is perfectly safe. These are called False Positives. It's like a smoke detector going off because you burned toast, not because the house is on fire.
The Solution: The "State-Aware" Detective
The authors of this paper created a new tool called MaskedHLSVerif.
- The Analogy: Instead of a paranoid inspector who imagines every impossible scenario, this new tool is a smart detective who understands the machine's schedule.
- How it works:
- The detective knows the machine works in States (like steps in a dance routine).
- In Step 1, the hammer only hits Piece A.
- In Step 2, the hammer only hits Piece B.
- The detective checks the security only for the specific pieces being hit in that specific step. They ignore the impossible combinations (like the hammer hitting Piece A and Piece B at the exact same time, which the machine physically cannot do).
Why This Matters
- It Stops the False Alarms: By understanding the machine's schedule (the Finite State Machine), the tool stops crying wolf. It correctly verifies that the vault is secure, even though the robot reused tools to build it.
- It Catches Real Bugs: The robot isn't perfect. Sometimes, in its rush to be efficient, it accidentally rearranges the secret pieces in a way that breaks the security (like re-associating math operations). The old tools missed these because they were too busy looking at impossible scenarios. The new tool, by looking at the actual steps, can spot these real mistakes.
Summary in a Nutshell
- The Goal: Securely build crypto hardware automatically.
- The Problem: Automated builders (HLS) reuse parts to save space, confusing old security checkers who think everything is possible, leading to false alarms.
- The Fix: A new checker that understands the "schedule" of the machine. It only checks the parts that are actually active at any given moment.
- The Outcome: We can now trust that hardware built by automated robots is actually secure, saving time and money while keeping secrets safe.
Drowning in papers in your field?
Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.