Programs

# Software Engineering

## Cryptography

• Class 15
• Practice 30
• Independent work 75
Total 120

Cryptography

Obligatory

4

### The course aims

Acquiring knowledge to understand basic cryptographic algorithms and their application to the development of secure applications. Also, the student will understand the advantages and disadvantages of certain algorithms and base on that knowledge, he will be able to make the right decisions in developing applications that require some level of security and protection.

### Content

In this course, students will become familiar with basic cryptographic algorithms and cryptoanalytic methods. They will implement several simpler algorithms and get familiarized with the more complex implementations in the finished libraries (.NET and Crypto ++ libraries, the openSSL project, etc.), and will apply cryptoanalytic methods for decrypting messages.

### Literature

1. J.P. Aumasson, Serious Cryptography, No Starch Press, San Francisco, 2018.

### Supplementary literature

1. N. Ferguson, B. Schnier, Practical Cryptography, John Wiley, New York, 2003.
1. M. Welschnenbach, Cryptography in C and C++, Apress, 2005.

#### Minimum learning outcomes

• To explain the basic concepts of cryptography and cryptanalysis.
• To use basic cryptographic algorithms.
• To use block cryptosystems.
• To define the one-way function and describe public key cryptography.
• To use generators of random and pseudo-random sequences, and use a digital signature and identification schemes.
• To apply algorithms for key exchange.

#### Preferred learning outcomes

• To distinguish cryptographic algorithms by their characteristics and explain the quality of individual algorithms.
• To implement basic cryptographic algorithms.
• To explain the mode of block cryptosystems.
• To formulate a software solution using public key cryptography.
• To evaluate the usefulness of generator of random and pseudo-random sequences and create solutions based on digital signature and identification scheme.
• To choose the appropriate algorithm for key exchange when implementing software solutions.

### Why is Algebra a safe choice for your future?

#### A Strong Tailwind

Here you will learn all about information technologies and prepare for a career that is constantly in demand. We offer you a platform for personal growth that makes you a prime target for employers.

#### Modern Methodology

We refuse to stand still in a rapidly changing world. Our programs stay relevant and keep up with modern trends.

#### Matchless Quality

We take pride in numerous accolades and our title of The best professional study program in Croatia and constantly strive to justify that trust. We do not take our task lightly, knowing that your future depends on it.