Characteristics of cryptographic systems Flashcards
1
Q
What are the three characteristics of cryptographic systems?
A
- Type of operations used to transform plaintext into ciphertext.
- Number of keys used.
- Way in which plaintext is processed.
2
Q
Explain characteristic 1 (Type of operations used to transform plaintext into ciphertext)
A
Two general principles for encryption algorithms:
- Substitution - each element in the plaintext (bit, letter…) is mapped into another element.
- Transposition - elements in the plaintext are rearranged.
All operations MUST BE REVERSIBLE and most systems (product systems) have multiple stages of substitution and transposition
3
Q
Explain characteristic 2 (Number of keys used)
A
- Symmetric, single-key, secret-key, or conventional
encryption: both sender and receiver use “same” key. - Asymmetric, two-key, or public-key encryption: sender and receiver use different keys.
4
Q
Explain characteristic 3 (way in which plaintext is processed)
A
- Block cipher: processes input one block of elements at a time, producing an output block for each input block.
- Stream cipher: processes input elements continuously, producing in output one element at a time, as it goes along.
5
Q
What is a block cipher? (DETAILED VERSION)
A
- A block cipher is an encryption scheme that breaks up the plaintext message into strings (blocks) of a fixed length n and encrypts one block at a time.
- It takes in input one block of n bits of plaintext and a key of k bits, producing in output one block of ciphertext of n bits.
- For decryption, it takes in input a block of n bits of ciphertext and a key of k bits, producing in output a plaintext block of n bits.
6
Q
What is a stream cipher? (DETAILED VERSION)
A
- A stream cipher is (typically) an XOR operation that encrypts and decrypts one bit or one byte at a time (input block and key) to obtain the ciphertext/ plaintext.
- In other words, blocks of plaintext, key and ciphertext are one-bit long.
7
Q
What are codes?
A
- They work on words of varying length.
- The translation is given by a code-book.
- Problems:
a. if there’s no entry for a word in the code book, then you can’t say it or use it.
b. Security is “pushed” to the code-book, which needs to be protected.