1
\$\begingroup\$

I am newbie to Hardware Security. While studying Side Channel Attack, I realized that power consumption profile of electronic control unit is a key to encrypt what algorithm runs on it. I thought implementing same algorithm with different approach may change power consumption profile.

For example:

Task is to blink a led every 1 second. First approach is to configure GPIO and make it happen with delay. Second approach is configuring a TIMER that gives logic 1 per second.

But I don't have tools to test this phenomenon. So I would like to take some ideas if it may work or don't.

\$\endgroup\$
4
  • 2
    \$\begingroup\$ What's your question? "Will my solutions work as protection against side channel attacks?": no. "Will my solutions have slightly varying power consumptions?": yes. \$\endgroup\$
    – DonFusili
    Dec 3, 2019 at 8:58
  • \$\begingroup\$ Why cant it be a way to be a protection agains side channel attack? \$\endgroup\$
    – emre iris
    Dec 3, 2019 at 9:32
  • 1
    \$\begingroup\$ Because you're entering the circuit design equivalent of cryptography: Just use the existing solutions because Schneier's Law is in full effect. \$\endgroup\$
    – DonFusili
    Dec 3, 2019 at 9:38
  • \$\begingroup\$ Dont really understand what are you trying to do with LED \$\endgroup\$
    – Mitu Raj
    Dec 3, 2019 at 9:42

1 Answer 1

2
\$\begingroup\$

Clarification

First of, your understanding of a Side Channel Attack is wrong: Generally attackers already know what algorithms are running on hardware, it's mentioned in the datasheet of the chip or product. SCAs are meant to extract pre-encoding data by exploiting an implementation specific data-dependency feature.

Existing solutions

There's quite a lot of literature regarding SCA protection and more specifically protection against power profiling. The most effective accepted solution generally comes down to making sure that each bitflip is compensated by a closely positioned bitflip in the opposite direction.

It's not 100% foolproof, but it's as close as we get today (unless some company somewhere solved it better and didn't publish yet, although I'd be skeptical of unpublished cryptographic insurance).

Issues with your solution

Why your solution won't work: You're basically inserting predictable and even known noise. Since you should assume that the attacker knows your exact implementation, it'd be trivial to filter out your inserted power frequency and just continue on as if you'd never put in the protection.

Issues with any self-designed solution

Schneier's Law, let me repeat that, with feeling: Schneier's Law

Conclusion

If this is for an actual product, drop this idea and consult an expert.

If this is for a hobby project or school assignment, do go on, have some fun daydreaming, but keep the problems in mind.

\$\endgroup\$
3
  • \$\begingroup\$ I once attended a presentation on secure MCUs where an expert stated that they read the whole code by putting an antena on top of the MCU package. \$\endgroup\$
    – jaskij
    Dec 3, 2019 at 20:22
  • \$\begingroup\$ @JanDorniak Yeah, you'll need different SCA protection against that. At first glance I'd say it's not fully solvable on FPGAs except by artisanal place and route. \$\endgroup\$
    – DonFusili
    Dec 4, 2019 at 8:16
  • 1
    \$\begingroup\$ no, they just put an active EMI screen between the silicon and package. Which does double duty as decapping detector or some such, I forgot some details. \$\endgroup\$
    – jaskij
    Dec 4, 2019 at 8:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.