Practical Applications of Cryptography (FSS 2016)

Lecturer: Zhi Guan


  • Tuesdays: 15:30 - 18:45, Room B6, A302
  • First lecture: Tuesday, February 23, 2016  (date corrected!)
  • Final exam: takes place in the week of June 13-17, 2016


  • 4 homework assignments (50%)
  • Final written exam (50%)


As a fundamental building block for security applications and protocols, cryptography is increasingly used in practice. From the everyday Web surfing, online shopping, personal data managing and processing in the cloud, to the decentralised payment with Bitcoin and anonymous online voting, cryptography has been used in a wide range of applications not limited to security. A number of advanced cryptographic primitives and innovative ideas have been proposed to increase the usability, security, and trustworthiness of these applications in practice. While the correct use and secure implementation of cryptographic primitives is nontrivial, some minor errors can render the system completely insecure. During this course, both theory and practice of related cryptography techniques will be covered.


  • Cryptographic primitives (hash algorithms, block ciphers, and public key cryptography)
  • Cryptographic protocols widely used in practice (SSL/TLS, SSH, IPSec, etc.)
  • Bitcoin and cryptocurrencies
  • Advanced cryptoraphic technologies (identity-based cryptography, attribute-based, functional and homomorphic encryption, and zero-knowledge proofs)
  • Data security and privacy in cloud environments
  • Side channel attacks and countermeasures
  • Fast and secure implementation of cryptographic primitives


Students are expected to have information technology background and some programming experience.

Lecture Slides

Study Material