TTM4135: Information Security
# Definitions
These are definitions found in course material (mostly exercises) which may prove useful for the exam
##Chapter 1
Confidentiality
: preventing unauthorised disclosure of information
Integrity
: preventing unauthorised (accidental or deliberate) modification or destruction of information
Availability
: ensuring resources are accessible when required by an authorised user
Entity authentication
: provides confirmation of the claimed identity of an entity
Data origin authentication
: provides confirmation of the claimed source (origin) of a data unit (message)
Non-repudiation
: Placeholder
Cipher
: See own section
Kerckhoffs’ principle
: the cryptanalyst has complete knowledge of the cipher, i.e. only unknown thing is the decryption key
Transposition
: the characters in the plaintext are mixed up with each other (permuted)
Substitution
: each character (or set of characters) is replaced by a different character (or set of characters)
## Chapter 2
Confusion
: This involves substitution to make the relationship between the key and ciphertext as complex as possible.
Diffusion
: This involves transformations that dissipate the statistical properties of the plaintext across the ciphertext.
Product cipher
: A product cipher is a cryptosystem in which the encryption function is formed by applying (or composing) several sub-encryption functions.
Iterated cipher
: Most modern ciphers in this category, read more below.
Feistel cipher
: An iterated cipher in which the round function swaps the two halves of the block and forms a new right hand half
Substitution-permutation network
: An iterated cipher. Takes a block of the plaintext and the key as inputs, and applies several rounds of permutations, known as substitution boxes(S-box) and permutation boxes (P-box). A __S-box__ substitutes sub-blocks of size l bits (its input) by another block of bits (its output). It can be thought of as a substitution cipher. A __P-box__ takes the output from the S-boxes of one round, permutes the bits and feed them into the S-boxes in the next round. It can be thought of as a transposition cipher. At each round, the __round key__ is combined with some operation such as XOR.
Group generator
: placeholder
Finite field
: placeholder
TODO: Scrape definitions from all exercises (currently they are just from exercise 1)
# Ciphers
## Symmetric cipher
(secret key cipher) encryption and decryption keys known only to sender and receiver. (DES)
## Asymmetric cipher
(public key cipher) each participant has a public key and a private key, may allow both encryption and signatures. (RSA)
## Attacks
### Ciphertext only attack
the cryptanalyst has available only the intercepted cipher text.
### Known plaintext attack
the cryptanalyst knows a small amount of plaintext and its cipher text equivalent
### Chosen plaintext attack
The cryptanalyst can obtain the cipher text equivalent of some plaintext which can be selected by the attacker, i.e the attacker has an "inside encryptor” available
### Chosen cipher text attack
The cryptanalyst can obtain the plaintext equivalent of some cipher text which can be selected by the attacker, i.e. the attacker has an “inside decryptor” available.
## Block ciphers
### Block cipher modes
## Stream ciphers
## Historical ciphers
- Caesar
- Substitution
- Vigenère. Caesar, but also uses a key in order to choose how many steps to shift the alphabet for each letter
### DES
### RSA
# Iterated ciphers
- Encryption process divided into _r_ similar rounds
- the sub encryption functions _g_ are the same for all rounds
- Each key $K_i$ is derived from the overall master key K. The keys $K_i$ are called round keys or subkeys and are derived from K using a process called the key schedule.
## Encryption
Given a plaintext block, P, a round function g and round keys $K_1, K_2, . . . ,K_r$
, the ciphertext block, C, is derived through r rounds as follows.
$$W_{0} = P$$
$$W_{1} = g(W_{0}, K_{1})$$
$$W_{2} = g(W_{1}, K_{2})$$
$$.$$
$$.$$
$$.$$
$$.$$
$$.$$
$$W_{r} = g(W_{r−1}, K_{r})$$
$$C = W_{r}$$