CS 292F: Topics in Applied Cryptography (Winter 2017)

Instructor: Stefano Tessaro, tessaro(at)cs(dot)ucsb(dot)edu

Class time and location: MW 11:00am-12:50pm (Phelps 3526)

Office hours: W1-2pm or by appointment (HFH 1117)

Class webpage: http://www.cs.ucsb.edu/~tessaro/cs292/

Piazza: http://piazza.com/ucsb/winter2017/cs292f


  • [Jan 7, 2017]: Webpage is up! Signup on Piazza here
  • [Jan 7, 2017]: Classes on January 16 and 18 are canceled due to travel.

Course Description

Cryptography provides the basic technology to protect information. This class will discuss a selection of current research topics in cryptography. There will be a self-contained introduction to necessary cryptographic tools. Therefore, for students with little background, this class provides a very hands-on introduction to cryptography.

The focus of this class will be on the foundations of applied cryptography: We will learn the theory behind cryptography used in the real world, and see how cryptography is used in more complex systems.

Target audience: One goal of this class is to bring together students from both theory and systems. Projects mixing the two types of students are highly encouraged. There will be room for discussing security proofs, but also for learning about which cryptographic tools are usable in the real world, and how.

Lecture format: With the exception of the first three weeks, where an introduction to basic tools used in cryptographic applications will be presented, the remaining classes will be organized as student presentations with ample time for classroom discussions.

Assessment: In order to successfully complete the class, students are required to:

  • Present a research paper (40% of grade), selected from a list of possible papers. Due to the number of students, each presentation class will have two students giving each a presentation. The presentation grade will consist of your understanding of the material (50%) and of the quality of the presentation (50%).
  • Complete a project (50% of grade) by the end of the class, with a written report and a short presentation. (Teams of two-three students are allowed and encouraged.) The final report should explain the problem you tackled, your methods, and what your findings are (if it solves a problem), or should give an overview of an area (if it is a literature survey). The project grade will measure the quality of the work done (60%) and the quality of the report (40%).
  • Provide assessments of other students' presentation (10% of grade). In order to encourage active participation, every student is required to submit three reviews of presentations by other students. Each review should be around 700-800 words, and explain your (high-level) understanding of what the students presented, and give some positive / negative feedback for the presentation. Reviews written by your classmates will not influence your grade as a presenter, but they will be available to you in anonymized form as additional feedback.

Required background: This class is open to all graduate students in Computer Science (and ECE), and does not require a pre-existing cryptography background. The class will be different from a standard introduction to cryptography. Some of the more theoretical papers to be presented require a solid understanding of basic probability and algebra. Other papers will be mathematically simpler and systems oriented. You will be able to pick the papers according to your background. If in doubt, contact the instructor!

A note for visiting students: This is a research-oriented class for graduate students. I am planning to allow a limited number of visiting students to attend the class, however you need to get in touch with me to discuss whether you fullfil the necessary requirements. Permission to attend the class will be granted on a per case basis.


Materials and more information are available on Piazza

2017-01-09Cryptographic Security IntroductionStefano Tessaro
2017-01-11Pseudorandom functions and block ciphersStefano Tessaro
2017-01-23Secret-key EncryptionStefano Tessaro
2017-01-25Public-key encryptionStefano Tessaro
2017-01-30Authentication: MACs and SignaturesStefano Tessaro