Hardware Security and Cryptography Essentials

Intelligent things, medical devices, vehicles and factories, all part of cyberphysical systems will only be secure if we can build devices that can perform the mathematically demanding cryptographic operations in an efficient way. Unfortunately, many of devices operate under extremely limited power, energy and area constraints. Yet we expect that they can execute, often in real-time, the symmetric key, public key and/or hash functions needed for the application. At the same time, we request that the implementations are also secure against a wide range of physical attacks and that keys or other sensitive material can be stored securely.

In this tutorial we will present design methods and security building blocks to realize cryptographic operations on resource constrained devices. These concepts will be illustrated with the design of several cryptographic co-processors suitable for implementation in embedded context.

  • Security adds extra design dimension: we need to optimize for area, throughput, real-time, power, energy constraints
  • Attacker models for IoT devices
  • Introduction to side channel attacks: timing attacks, power attacks, EM attacks, [fault attacks]
  • Illustration on symmetric, and/or public key engines
  • Introduction to PUFs en TRNGs