This document discusses hardware security and side channel attacks. It introduces side channel analysis techniques like differential power analysis and fault injection attacks. It explains how an attacker can use power traces or faults to deduce secret keys by forming hypotheses about intermediate values. Countermeasures are discussed like random delays, double checking results, and protecting code flow integrity. Developers are advised to get their systems tested since side channel vulnerabilities can be subtle.