Course detail

Selected Topics in Coding

FSI-VKKAcad. year: 2015/2016

Course is focused on deepening the knowledge in theory and application methods of coding. Provided is basic mathematics necessary for understanding of presented codes. Discussed are modern methods of coding from areas of data compression, self correcting codes and cryptography. In the end of course is presented basic knowledge from area of emerging quantum cryptography. In course the students will elaborate two individual works - program applications. Practical examples are demonstrated in Matlab environment.

Language of instruction

Czech

Number of ECTS credits

5

Mode of study

Not applicable.

Learning outcomes of the course unit

Student learns to understand discussed methods of coding and will be able to evaluate options of their usage.

Prerequisites

Fundamentals of of linear algebra, mathematical statistics and programming techniques (one of C/C++, Java, Python, Matlab etc.).

Co-requisites

Not applicable.

Planned learning activities and teaching methods

The course is taught through lectures explaining the basic principles and theory of the discipline. Exercises are focused on practical topics presented in lectures.

Assesment methods and criteria linked to learning outcomes

Written and oral exam from course's contents, assessment from projects and written tests.

Course curriculum

Not applicable.

Work placements

Not applicable.

Aims

The goal of subject is to acquire theoretical and practical skill of selected methods of coding.

Specification of controlled education, way of implementation and compensation for absences

Attendance at lectures is not inspected. Knowledge of students is verified by elaborated projects, midterm test and final exam.

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Adámek. J: Kódování. SNTL Praha. Edice Matematika pro vysoké školy technické, 1989.
Morelos-Zaragoza, R. The Art of Error Correcting Coding. 2002. John Wiley & Sons Ltd., ISBN: 0-470-44782-4
Schneier, B. Applied cryptography : protocols, algorithms, and source code in C New York: Wiley, 1996, 0-471-12845-7

Recommended reading

Not applicable.

Classification of course in study plans

  • Programme N2301-2 Master's

    branch M-AIŘ , 1 year of study, winter semester, compulsory

Type of course unit

 

Lecture

26 hod., optionally

Teacher / Lecturer

Syllabus

1. Data formats.
2. Codes for data compression I. (modern lossless methods).
3. Codes for data compression II. (modern lossy methods, fractal compression).
4. Theory of linear codes I. (modular arithmetic, generating and control matrices, syndrome).
5. Theory of linear codes II. (polynomials, polynomial ring, roots, irreducibility).
6. Cyclic redundant codes (principle, coding, decoding).
7. Reed-Solomon codes (principle, coding, decoding).
8. Finite fields, properties, fields Z_p, discrete logarithm, Fermat's little theorem.
9. Symmetric block ciphers (Feistel cipher and DES, IDEA, AES). Operation modes EBC, CBC, OFB, CFB, CTR.
10. Asymmetric ciphers RSA and Elliptic curves. Selected factorization algorithms.
11. Principle of quantum cryptography.
12. Criteria, methodology and standards for evaluation of security.
13. HW implementation of codes.

Computer-assisted exercise

26 hod., compulsory

Teacher / Lecturer

Syllabus

Computer exercises corresponds with contents of lectures. Goal of exercises is to introduce students to practical part of the course, mainly with usage of Matlab system. Thematically can be the exercises divided to blocks:
a) Data formats,
b) data compression,
c) self repairing codes,
d) cryptography.