verifiable asics trustworthy hardware with untrusted
play

Verifiable ASICs: trustworthy hardware with untrusted components - PowerPoint PPT Presentation

Verifiable ASICs: trustworthy hardware with untrusted components Riad S. Wahby , Max Howald , Siddharth Garg , abhi shelat , and Michael Walfish Stanford University New York University The Cooper Union


  1. Verifiable ASICs: trustworthy hardware with untrusted components Riad S. Wahby ◦ ⋆ , Max Howald † ⋆ , Siddharth Garg ⋆ , abhi shelat ‡ , and Michael Walfish ⋆ ◦ Stanford University ⋆ New York University † The Cooper Union ‡ The University of Virginia April 8, 2016

  2. You (probably) shouldn’t trust your hardware. . .

  3. You (probably) shouldn’t trust your hardware. . .

  4. You (probably) shouldn’t trust your hardware. . .

  5. You (probably) shouldn’t trust your hardware. . . . . . because fabs sometimes make mistakes

  6. You (probably) shouldn’t trust your hardware. . . . . . because fabs sometimes make “mistakes” [Tehranipoor and Koushanfar. “A survey of hardware Trojan taxon- omy and detection.” IEEE DTC, 2010.]

  7. What’s a chip designer to do? ◮ Post-fab testing ◮ Hardware obfuscation ◮ Trusted manufacturer [Bhunia, Hsiao, Banga, and Narasimhan. “Hardware Trojan attacks: threat analysis and countermeasures.” Proc. IEEE, Aug. 2014.]

  8. What’s a chip designer to do? ◮ Post-fab testing ◮ Hardware obfuscation ◮ Trusted manufacturer [Bhunia, Hsiao, Banga, and Narasimhan. “Hardware Trojan attacks: threat analysis and countermeasures.” Proc. IEEE, Aug. 2014.]

  9. What’s a chip designer to do? ◮ Post-fab testing ◮ Hardware obfuscation ◮ Trusted manufacturer – but a fab is expensive and hard to build. . . [Bhunia, Hsiao, Banga, and Narasimhan. “Hardware Trojan attacks: threat analysis and countermeasures.” Proc. IEEE, Aug. 2014.]

  10. What’s a chip designer to do? ◮ Post-fab testing ◮ Hardware obfuscation ◮ Trusted manufacturer – but a fab is expensive and hard to build. . . – . . . so trusted fab might have 10 8 × worse performance! [Bhunia, Hsiao, Banga, and Narasimhan. “Hardware Trojan attacks: threat analysis and countermeasures.” Proc. IEEE, Aug. 2014.]

  11. Roadmap 1. Problem statement: verifiable ASICs 2. Probabilistic proof systems, briefly 3. Zebra: a system for verifiable ASICs 4. Implementation and evaluation

  12. Roadmap 1. Problem statement: verifiable ASICs 2. Probabilistic proof systems, briefly 3. Zebra: a system for verifiable ASICs 4. Implementation and evaluation

  13. Problem statement: verifiable ASICs Principal Ψ → specs for P , V

  14. Problem statement: verifiable ASICs Principal Ψ → specs Supplier for P , V (foundry, Foundry processor vendor, etc.)

  15. Problem statement: verifiable ASICs Principal Ψ → specs Supplier for P , V (foundry, Foundry processor vendor, etc.) Integrator V P

  16. Problem statement: verifiable ASICs Principal Ψ → specs Supplier for P , V (foundry, Foundry processor vendor, etc.) Integrator Operator V P

  17. Problem statement: verifiable ASICs Operator V P

  18. Problem statement: verifiable ASICs Operator x V P

  19. Problem statement: verifiable ASICs Operator x V y P

  20. Problem statement: verifiable ASICs Operator x V y P proof

  21. Problem statement: verifiable ASICs Operator x V y P proof ◮ P is efficient, but can deviate arbitrarily from the protocol

  22. Problem statement: verifiable ASICs Operator x V y P proof ◮ P is efficient, but can deviate arbitrarily from the protocol ◮ Honest P always convinces V that y = Ψ( x )

  23. Problem statement: verifiable ASICs Operator x V y P proof ◮ P is efficient, but can deviate arbitrarily from the protocol ◮ Honest P always convinces V that y = Ψ( x ) ◮ V must catch dishonest P except with negligible probability

  24. Problem statement: verifiable ASICs Operator x V y P proof ◮ P is efficient, but can deviate arbitrarily from the protocol ◮ Honest P always convinces V that y = Ψ( x ) ◮ V must catch dishonest P except with negligible probability ◮ P cannot attack or disable V , or communicate with outside world (see paper for more discussion)

  25. Problem statement: verifiable ASICs Operator x V y P proof ◮ P is efficient, but can deviate arbitrarily from the protocol ◮ Honest P always convinces V that y = Ψ( x ) ◮ V must catch dishonest P except with negligible probability ◮ P cannot attack or disable V , or communicate with outside world (see paper for more discussion) ◮ Goal: V and P together should outperform Ψ executed in trusted substrate

  26. Roadmap 1. Problem statement: verifiable ASICs 2. Probabilistic proof systems, briefly 3. Zebra: a system for verifiable ASICs 4. Implementation and evaluation

  27. Probabilistic proof systems, briefly A weak verifier checks the work of a powerful prover prover verifier program, inputs outputs [Walfish and Blumberg. “Verifying computations without reexecuting them: from theoretical possibility to near practicality.” CACM, Feb. 2015.]

  28. Probabilistic proof systems, briefly A weak verifier checks the work of a powerful prover prover verifier program, inputs outputs + proof Idea : checking proof should be easier for verifier than executing program [Walfish and Blumberg. “Verifying computations without reexecuting them: from theoretical possibility to near practicality.” CACM, Feb. 2015.]

  29. Probabilistic proof systems, briefly A weak verifier checks the work of a powerful prover Recent work is in three strands: ◮ Interactive arguments ◮ [Pepper12, Ginger12, Zaatar13] [Walfish and Blumberg. “Verifying computations without reexecuting them: from theoretical possibility to near practicality.” CACM, Feb. 2015.]

  30. Probabilistic proof systems, briefly A weak verifier checks the work of a powerful prover Recent work is in three strands: ◮ Interactive arguments ◮ [Pepper12, Ginger12, Zaatar13] ◮ Non-interactive arguments (SNARKs) ◮ [PGHR13, BCGTV13, BCTV14] [Walfish and Blumberg. “Verifying computations without reexecuting them: from theoretical possibility to near practicality.” CACM, Feb. 2015.]

  31. Probabilistic proof systems, briefly A weak verifier checks the work of a powerful prover Recent work is in three strands: ◮ Interactive arguments ◮ [Pepper12, Ginger12, Zaatar13] ◮ Non-interactive arguments (SNARKs) ◮ [PGHR13, BCGTV13, BCTV14] ◮ Interactive proofs ◮ [CMT12, TRMP12, Allspice13, Tha13] [Walfish and Blumberg. “Verifying computations without reexecuting them: from theoretical possibility to near practicality.” CACM, Feb. 2015.]

  32. Probabilistic proof systems, briefly A weak verifier checks the work of a powerful prover Recent work is in three strands: ◮ Interactive arguments ◮ [Pepper12, Ginger12, Zaatar13] + Low round complexity + Mild cryptograhic assumptions ◮ Non-interactive arguments (SNARKs) ◮ [PGHR13, BCGTV13, BCTV14] ◮ Interactive proofs ◮ [CMT12, TRMP12, Allspice13, Tha13] [Walfish and Blumberg. “Verifying computations without reexecuting them: from theoretical possibility to near practicality.” CACM, Feb. 2015.]

  33. Probabilistic proof systems, briefly A weak verifier checks the work of a powerful prover Recent work is in three strands: ◮ Interactive arguments ◮ [Pepper12, Ginger12, Zaatar13] + Low round complexity + Mild cryptograhic assumptions ◮ Non-interactive arguments (SNARKs) ◮ [PGHR13, BCGTV13, BCTV14] + Public verifiability, zero knowledge – Non-falsifiable cryptographic assumptions [GW10] ◮ Interactive proofs ◮ [CMT12, TRMP12, Allspice13, Tha13] [Walfish and Blumberg. “Verifying computations without reexecuting them: from theoretical possibility to near practicality.” CACM, Feb. 2015.]

  34. Probabilistic proof systems, briefly A weak verifier checks the work of a powerful prover Recent work is in three strands: ◮ Interactive arguments ◮ [Pepper12, Ginger12, Zaatar13] + Low round complexity + Mild cryptograhic assumptions ◮ Non-interactive arguments (SNARKs) ◮ [PGHR13, BCGTV13, BCTV14] + Public verifiability, zero knowledge – Non-falsifiable cryptographic assumptions [GW10] ◮ Interactive proofs ◮ [CMT12, TRMP12, Allspice13, Tha13] + Simple and efficient prover and verifier + Information theoretic guarantees (no crypto) [Walfish and Blumberg. “Verifying computations without reexecuting them: from theoretical possibility to near practicality.” CACM, Feb. 2015.]

  35. Probabilistic proof systems, briefly A weak verifier checks the work of a powerful prover For all systems, expressiveness is somewhat limited: ◮ Arguments (interactive & non-interactive) – Computation must be expressed as an arithmetic circuit ◮ Interactive proofs – Computation must be expressed as an arithmetic circuit [Walfish and Blumberg. “Verifying computations without reexecuting them: from theoretical possibility to near practicality.” CACM, Feb. 2015.]

  36. Probabilistic proof systems, briefly A weak verifier checks the work of a powerful prover For all systems, expressiveness is somewhat limited: ◮ Arguments (interactive & non-interactive) – Computation must be expressed as an arithmetic circuit generalized boolean circuit over F p ∨ → + ∧ → × ◮ Interactive proofs – Computation must be expressed as an arithmetic circuit [Walfish and Blumberg. “Verifying computations without reexecuting them: from theoretical possibility to near practicality.” CACM, Feb. 2015.]

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend