Secure hardware components are used in an increasing range of applications, from embedded wireless car-keys up to accelerator hardware in data-center servers. Secure hardware needs trustworthiness (the ability to operate as expected). This translates into unique design requirements which are unlike classical digital design requirements such as circuit performance and circuit area. This course explains the design principles of secure hardware and shows how cryptographic algorithms can be mapped into efficient as well as trustworthy implementations. The design problem of secure hardware is considered at various abstraction levels (digital circuits up to trusted platforms). The material is relevant to reserach as well as to design practice.

Department Syllabus Information:

Major Measurable Learning Objectives:

* Describe hardware primities for finite-field arithmetic.
* Explain the design concepts of cryptographic modules including block ciphers, stream ciphers, hash functions, and public-key ciphers.
* Design a hardware implementation for a given cryptographic function based on a high-level specification.
* Describe various methods for reverse engineering of secure hardware, and provide corresponding countermeasures for each of these techniques.
* Explain the principles of trusted computing.