Définition d’un système cryptographique

[figure: Alice; chiffrement; générateur de clés; x; y; k; Oscar; canal sur; déchiffrement; Bob]

Le tuple (P, C, K, E, D) est un système cryptographique si :

P: Ensemble des textes clairs ;
K: Ensemble des clés ;
C: Ensemble des textes chiffrés ;
E: Ensemble des règles de chiffrement pour

les clés de K;

D: Ensemble des règles de déchiffrement

pour les clés de K;

Et : ∀k ∈ K, ∃e_{k} ∈ E, ∃d_{k} ∈ D, ∀x ∈ P,

d_{k}(e_{k}(x)) = x.

La cryptanalyse

principe de Kerckhoff : Oscar connait le système cryptographique utilisé.

but : Déterminer la clé utilisée.

Les attaques :

- Texte chiffré connu : Oscar ne connait que la chaine du message chiffré.

- Texte clair connu : Oscar dispose d’un texte clair et du texte chiffré correspondant.

- Texte clair choisi : Oscar a accès à une machine chiffrante.

- Texte chiffré choisi : Oscar a temporairement accès à une machine déchiffante.

Typologie des systèmes

Clé privée/clé publique :

- clé privée : la totalité de la clé est communiqué en secret (Chiffrement par substitution, de Hill, de Vigénère, le DES,...) ;

- clé publique : une partie de la clé est communiquée en secret tandis que l’autre est communiquée en publique (RSA, chiffrement de Rabin,...).

Chiffrement par bloc/en chaine :

- par bloc : la clé ne varie pas au cours du chiffrement ;

- en chaine : la clé varie au cours du chiffrement.

Monoalphabétique/polyalphabétique :

- monoalphabétique : pour un caractère clair, un caractère chiffré ;

- polyalphabétique : pour un caractère clair, plusieurs caractères chiffrés ;

Système idempotent ou non

Chiffrement en chaine

Le tuple (P, C, K, L, F, E, D) est un système cryptographique en chaine si :

P: Ensemble des textes clairs ;
K: Ensemble des clés ;
C: Ensemble des textes chiffrés ;
L: Alphabet de séquence de clés ;
F : (f_{1}, f_{2}, …) générateur de séquence :

∀i ≤ 1, f_{i} : K ∗ P^{i−1} → L;

E: Ensemble des règles de chiffrement pour

les clés de L;

D: Ensemble des règles de déchiffrement

pour les clés de L;

Et : ∀z ∈ L, ∃e_{z} ∈ E, ∃d_{z} ∈ D, ∀x ∈ P,

d_{z}(e_{z}(x)) = x. Si la séquence ne dépend que de la clé : système synchrone. Si ∀i ≥ 1, z_{i} = z_{i+d} : système périodique. rem.: Si ∀i ≥ 1, z_{i} = K: chiffrement par bloc.

Système cryptographique produit

Principe : combiner les systèmes cryptographiques. but : augmenté la sécurité des systèmes. Soient S_{1} = (P, P, K_{1}, E_{1}, D_{1}) et S_{2} = (P, P, K_{2}, E_{2}, D_{2}) deux systèmes cryptographiques. Le système S = (P, P, K_{1}∗ K_{2}, E, D) défini par

∀k = (k_{1}, k_{2}) ∈ K_{1} ∗ K_{2}, ∀x, y ∈ P

e_{(k_{1},k_{2})}(x) = e_{k_{2}}(e_{k_{1}}(x)),
d_{(k_{1},k_{2})}(y) = d_{k_{1}}(d_{k_{2}}(y))

est le système produit (noté S_{1} ∗ S_{2}). S^{n} est le système cryptographique itéré. Un système S est idempotent si S^{2} = S.