Norsk
Course INF240

# Basic Codes

## Course offered:

### Course offered by

 Number of credits 10 Course offered (semester) Autumn Subject overlap I145: 10 ECTS Schedule Schedule Reading list Reading list

English

### Pre-requirements

At least 60 ECTS in computer science, preferably including some mathematics

### Learning Outcomes

After completing the course the student should be able to

• Explain the mathematical foundation for information theory, coding theory and cryptography.
• Explain block ciphers such as AES and public key cryptography(RSA).
• Explain the construction of hash functions and digital signatures.
• Digest and explain basic cryptographic algorithms.
• Explain and implement basic linear and cyclic codes.

### Contact Information

studieveileder@ii.uib.no

Autumn

English

### Aim and Content

The course gives an introduction to cryptology and coding theory. Cryptology deals with how information can be kept secret from unauthorized listeners who do not possess a secret key. The course gives basic methods for construction of symmetric and asymmetric cryptosystem (public-key) and an introduction to simple cryptographic protocols and methods for digital signatures which is the electronic variant of handwritten signatures. Digital signatures are used for payments over the Internet. Coding theory gives methods to represent (code) data such that errors that occur during transfer or storage of data can be automatically corrected. These systems are fundamental in all modern digital communication (Internet and mobile phones) and storage of data (magnetic disks, CD records and other media for storage of text, sound and images).

The course is divided into three parts: 1) Tools, 2) Introduction to cryptology and 3) Introduction to coding theory.

1) Tools: Information theory, introduction to finite fields and number theory.

2) Introduction to block-ciphers (AES), public key cryptography(RSA) and principles for cryptographic hash functions and digital signatures.

3) Examples of codes (ID-number), linear codes, cyclic codes, Hamming codes, 2-error correcting BCH codes with decoding algorithms.

### Learning Outcomes

After completing the course the student should be able to

• Explain the mathematical foundation for information theory, coding theory and cryptography.
• Explain block ciphers such as AES and public key cryptography(RSA).
• Explain the construction of hash functions and digital signatures.
• Digest and explain basic cryptographic algorithms.
• Explain and implement basic linear and cyclic codes.

### Pre-requirements

At least 60 ECTS in computer science, preferably including some mathematics

### Recommended previous knowledge

INF100 (Introduction to programming methodology), MNF130 (Discrete structures), INF142 (Computer Networks), beneficial to have M102 (Linear Algebra)

I145: 10 ECTS

### Compulsory Requirements

Exercises.

Compulsory assignments are valid two semesters, the semester of the approval and the following semester.

### Assessment methods

Written exam. It is opportunity for grades on exercises, which can be included in the final grade. If less than 20 students are taking the course, it can be oral exam.

No aid allowed.