CS Colloquium: Cryptographic primitives for hardware security
Hardware plays a critical role in today's security landscape. Every protocol with security or privacy guarantees inevitably includes some hardware in its trusted computing base. The increasing number of vulnerability disclosures calls for a more rigorous approach to secure hardware designs. In this talk, I will present several cryptographic primitives to enhance the security of hardware.
I will first discuss the use of Physically Obfuscated Keys (POK) to strengthen the security of private keys. In particular, I will present a computational fuzzy extractor based on the Learning Parity with Noise (LPN) problem. Our construction uses stability information as a trapdoor to correct a constant fraction of POK errors efficiently. Next, I will describe our work on Oblivious RAM (ORAM), a cryptographic primitive to prevent access pattern leakage. I will present both architectural and algorithmic improvements to ORAM.
While hardware is often trusted as a line of defense, it can also be utilized by attackers. The advent of ASIC hash units calls into question the security of hash functions and proof-of-work systems. I will describe bandwidth-hard functions to achieve ASIC resistance and briefly touch on my other projects in blockchains and consensus.