- tous niveaux
- Lycée tous niveaux
- non précisé
- enseignant
- élève
cryptographie
La manipulation des chaînes de caractère avec Python. Pourquoi ne pas tout chiffrer ?
Le langage Python permet la manipulation de texte (type string ou str). On peut alors programmer de nombreuses applications de cryptographie, en voici quelques idées et 2 programmes en Python pour les mettre en oeuvre.
Ce programme va ainsi lire un texte en minuscule sans accents et donne les fréquences relevées :
- Codage par décalage dit de César : L’idée est que chaque lettre est décalée dans l’alphabet. Pour un décalage de 3 par exemple, les « A »deviennent des « D », les « B »des « E », ...,les « Z »des « C ». Le codage Rot13 ci-dessous correspond à un tel décalage par 13. Il a l’avantage d’être son propre programme de décodage.
- Codage de Vigenère : la clé de chiffrement est un mot, par exemple « ACB ». On décale alors la première lettre de 1 (la valeur numérique du A), la deuxième de 3 et la troisième de 2 puis on recommence 1,3,2,...
- Codage par permutation : chaque lettre de l’alphabet est remplacée par une autre lettre déterminée, cela forme la clé de chiffrement ;
- Décodage par attaque statistique : pour découvrir la permutation utilisée, on effectue un relevé statistique. En effet en français la répartition des lettres est la suivante :
Ce programme va ainsi lire un texte en minuscule sans accents et donne les fréquences relevées :
auteurs :
Hervé Diet
Mots clés :
Information(s) pédagogique(s)
Niveau :
tous niveaux, Lycée tous niveaux
Public visé :
non précisé, enseignant, élève
Document(s) complémentaire(s)
-
Documents complémentaires
lien de docs