Hardware Security

In this course, we will study security and trust from the hardware perspective. Upon completing the course, students will understand the vulnerabilities in current digital system design flow and the physical attacks to these systems. They will learn that security starts from hardware design and be familiar with the tools and skills to build secure and trusted hardware.

About The Course

Hardware is the root of computation and communication. It is the enabler of any software, algorithm, or communication protocols. All the computation will eventually be carried out by hardware, namely the processor or the circuits.

In this course, we will study security and trust from the hardware perspective. We will start with a short survey of the roles of hardware in security and trust. With all types of dedicated hardware/circuits, known as co-processors, being developed to speed up application specific computations, hardware’s role changes from the enabler to an enhancer. Nowadays, hardware becomes the enforcer for secure systems because it is used to ensure that only the authenticated user and software can access the processor. However, current hardware design flow does not have security as a key design objective. Consequently, we will conduct several case studies where hardware turns into the weakest link in secure systems.

Then we will review the fundamentals of digital logic design and use this as an example to analyze the source of security vulnerabilities and demonstrate how these vulnerabilities can become legitimate security threats. We conclude with the basic principles and practical methods of design for security and trust, as well as a study of the associated design cost.  

Next, we introduce physical attacks to popular digital systems such as smart cards and FPGA-based systems. We will focus on side-channel attacks, which have been demonstrated many times to be able to successfully reveal the secret cryptographic keys stored in the secure systems. These attacks include power analysis, timing attacks, and electromagnetic attacks. Standard countermeasures to these attacks will also be introduced.

Finally we will learn the new hardware security primitives that can help us to build secure systems. We will see how the trust platform module (TPM) works; what is a silicon physical unclonable function (PUF) and why it is useful for system security; what is a hardware Trojan horse and the security threats it brings to the system; why counterfeiting becomes a serious problem for hardware design intellectual property protection.

Upon completing the course, students will understand the vulnerabilities in current digital system design flow and the physical attacks to these systems. They will learn that security starts from hardware design and be familiar with the tools and skills to build secure and trusted hardware.


Recommended Background

  • Junior-level undergraduate students with computer science, computer engineering, or electrical engineering major.

  • Basic skills in programming, digital logic design, and computer organization are highly recommended.