IN4191 Security and cryptography

Topics: Fundamentals of secure storage and transportation of information

Computers are now found in every layer of society, and information is being communicated and processed automatically on a large scale. Examples include medical and financial files, automatic banking, video-phones, pay-tv, teleshopping and global computer networks. In all these cases there is a growing need for the protection of information to safeguard economic interests, to prevent fraud and to ensure privacy. 

Security and cryptography are essential components of any digital system. In this course, the fundamentals of secure data storage and transportation of information are described. In particular, classical (e.g. Caesar, Vigenere) and modern encryption schemes (RSA, DES, AES, Elliptic curves) are described along with their mathematical background such as number theory. Methods for authentication, data integrity and digital signatures are discussed in detail, as these are the main components of many security architectures. The course also investigates more advanced topics such as zero-knowledge proofs and secret sharing schemes.

The goal is to make students familiar with the basic concepts applied cryptography, including classical cryptography and modern secret key and public key cryptography. In particular, the students will acquire

  • A sound understanding of the notion of security 
  • An understanding of the confidentiality, integrity and authenticity needs of the society
  • Understand the role of cryptographic primitives including the differences between symmetric and asymmetric cryptography, the role of hash functions, digital signatures and PKI
  • Understand the advanced topics in cryptography needed for the modern society with untrustworthy entities

Among others things, the following topics are covered:

  • Classical systems
  • Information theoretic security 
  • Definition of Security notions
  • Symmetric encryption (e.g. DES, AES)
  • Asymmetric encryption (RSA, Elliptic Curves) 
  • Hash functions
  • Random number generation
  • Key Management
  • Digital Signatures,
  • Secret Sharing. (if time permits)
  • Zero Knowledge proofs (if time permits)


Z. Erkin

Last modified: 2023-11-03


Credits: 5 EC
Period: 6/0/0/0