Encryption

Encryption

Block and Stream ciphers

Encryption modes

Electronic Codebook Mode

CBC - Cipher Block Chaining

CBC Encryption

CBC Decryption

Initialization vector

Stream ciphers

Stream cipher encryption

Stream cipher decryption

Keystream generator

Cipher-Feedback Mode

CFB Encryption

CFB Decryption

Output-Feedback Mode

OFB Encryption

OFB Decryption

Choosing a Cipher Mode

Choosing a Cipher Mode

Choosing a Cipher Mode

Choosing a Cipher Mode

Choosing a Cipher Mode

Block Cipher Design

Confusion and diffusion

Feistel networks

DES

DES

DES

DES Overview

DES Round

DES Expansion permutation

DES Key transformation

DES S-Box substitution

DES P-Box permutation

DES Security

Triple DES

Blowfish

Blowfish

Blowfish

Other algorithms

Key length

Cost 40 56 64 80 112 128
$100 K 2 s 35 h 1 y 70,000 y 1014 y 1019 y
$1 M .2 s 35 h 37 days 7000 y 1013 y 1018 y
$10 M 0.02 s 21 min 4 days 700 y 1012 y 1017 y
$100 M 2 ms 2 min 9 h 70 y 1011 y 1016 y
$1 G 0.2 ms 13 s 1 h 7 y 1010 y 1015 y

Stream ciphers and random number generators

Simple Random Number Generator

Linear Feedback Shift Registers

LFSR ciphers

RAND Tables

Using Random Noise

RC4

Cryptographic hash functions

Cryptographic hash functions

MD4

MD5

SHA

MAC

Problem with symmetric algorithms

Public key cryptography

Next time