Applied Cryptography

Undergraduate course

Course description

Objectives and Content


This course gives an introduction to cryptographic protocols and primitives, with focus on their applications.

The goal of cryptography is information protection by the use of cryptographic primitives including ciphers, digital signatures, and hash functions, as well as cryptographic protocols that incorporate these primitives. Roughly speaking, cryptography provides tools to keep information secret from unauthorised parties who do not possess a secret key. Some cryptographic primitives are standardized, and these are widely deployed and used in security protocols in retail trade, banking, payments over the Internet, access control, and generally in any kind of digital communication and storage that involves sensitive or valuable information.



The course presents a selection of commonly used protocols. The selection may vary from year to year. Commonly used protocols include protocols for key exchange (e.g., Diffie-Hellman) and key lifetime, the TLS (Transport Layer Security) protocol, IPSec, protocols for smart card payments, the TOR onion routing protocol, secure messaging protocols, Wifi security (WEP, WPAx), block chain security protocols, authenticated encryption protocols, and release of unverified plain text.

During the discussion of the protocols, we also present and describe the cryptographic primitives used, including symmetric-key and public-key ciphers in general as well as specific instances and operation modes of such ciphers, hash functions and message authentication codes, digital signature schemes and public key infrastructures.

Learning Outcomes

On completion of the course the student should have the following learning outcomes defined in terms of knowledge, skills and general competence.


The student should have knowledge of

  • cryptographic protocols; their function and their limitations, and the difficulty associated with designing them,
  • properties of modern symmetric ciphers like AES,
  • properties of modern asymmetric ciphers like RSA,
  • properties of hash functions, MACs and digital signatures,
  • the mathematical foundations of cryptography.


Skills. The student is able to

  • implement a simple cryptographic protocol and at the same time be aware of the difficulty and the danger of doing so,
  • explain the main cryptographic applications,
  • digest and explain properties of cryptography primitives,
  • locate issues in security protocols relevant to cryptography.


General competence. The student

  • is familiar with new ideas and innovation processes,
  • can exchange opinions with others with relevant background and participate in discussions concerning the development of good practice.



Semester of Instruction

Required Previous Knowledge
Recommended Previous Knowledge
INF100, MAT121, STAT110 (May be studied in parallel), MNF130, INF140, INF142 are highly recommended.
Credit Reduction due to Course Overlap
Access to the Course
Access to the course requires admission to a programme of study at The Faculty of Mathematics and Natural Sciences
Teaching and learning methods

The teaching comprises of lectures and group exercises:

Lectures: 4 hours pr. week for 13 weeks
Group exercises: 2 hours pr. week

Compulsory Assignments and Attendance
Compulsory assignments are valid for one subsequent semester .
Forms of Assessment
Written examination or Digital written examination (3 hours).
Compulsory exercises may count towards the final grade. 
Grading Scale
The grading scale used is A to F. Grade A is the highest passing grade in the grading scale, grade F is a fail.
Assessment Semester
Examination both spring semester and autumn semester. In semesters without teaching the examination will be arranged at the beginning of the semester.
Reading List
The reading list will be available within July 1st for the autumn semester and December 1st for the spring semester.
Course Evaluation
The course will be evaluated by the students in accordance with the quality assurance system at UiB and the department.
Examination Support Material
Non-programmable calculator, according to the faculty regulations
Programme Committee
The Programme Committee is responsible for the content, structure and quality of the study programme and courses.
Course Coordinator
Course coordinator and administrative contact person can be found on Mitt UiB, or contact Student adviser
Course Administrator
The Faculty of Mathematics and Natural Sciences represented by the Department of Informatics is the course administrator for the course and study programme.