Cryptographie
Description
On écrira un programme qui code et décode à l'aide d'un codage de César (on étudiera le principe de ce codage). Puis on écrira un programme de décryptage d'un chiffrement de César. On écrira un programme qui code et décode à l'aide d'un codage de Vigenère. On utilisera Python comme langage de programmation.
I – Le chiffre de César
Principe
En cryptographie, le chiffrement par décalage, aussi connu comme le chiffre de César, est une méthode de chiffrement très simple utilisée par Jules César dans ses correspondances secrètes (ce qui explique le nom « chiffre de César »).
Le texte chiffré s'obtient en remplaçant chaque lettre du texte clair original par une lettre à distance fixe, toujours du même côté, dans l'ordre de l'alphabet. Pour les dernières lettres (dans le cas d'un décalage à droite), on reprend au début. Par exemple avec un décalage de 3 vers la droite, A est remplacé par D, B devient E, et ainsi jusqu'à W qui devient Z, puis X devient A etc. Il s'agit d'une permutation circulaire de l'alphabet.
La longueur du décalage, 3 dans l'exemple évoqué, constitue la clé du chiffrement qu'il suffit de transmettre au destinataire (s'il sait déjà qu'il s'agit d'un chiffrement de César) pour que celui-ci puisse déchiffrer le message. Dans le cas de l'alphabet latin, le chiffre de César n'a que 26 clés possibles (y compris la clé nulle, qui ne modifie pas le texte).
Démarche Codage et décodage
Tout d'abord, j'ai cherché sur divers sites internet ce qu'est le chiffre de César. Mon premier objectif était évidemment de comprendre le principe et le fonctionnement de chiffrement. Cela s'est fait très rapidement puisque ce chiffrement est relativement simple.
Puis est venu le moment d'élaborer le programme de codage. Pour cela, j'ai décomposé au brouillon l'algorithme en trois parties. Une première partie « demande d'informations », une deuxième partie «