pythonTxtActivité de chiffrement d'un texte

Présentation

Le but de cette activité est de vous familiariser avec le Codage, puis le Chiffrement/Déchiffrement de caractères à l'aide de la méthode dîte de César.

cesar

Création de l’interface

Tout d’abord il vous faut créer une page HTML permettant de saisir du texte puis de lancer un traitement sur ce texte à l’aide d’un bouton EXE. Le résultat du traitement étant afficher dans la zone "résultat". (reprendre ce programme OpenProcessing (txtParser) )
codage1>

Changement de casse

La casse d'un caractère correspond à son écriture en majuscule ou minuscule.La méthode .toUpperCase()  de la classe String permet de convertir une chaîne de caratctères en majuscule. Modifiez votre programme pour que le résultat de votre traitement soit la chaîne saisie en MAJUSCULE (penser à trouver des exemples d'utilisation de cette méthode sur Internet !).

Représentation des chaînes de caractères (Rappel)

On peut voir une chaîne de caractères comme un tableau dans lequel les différents caractères de la chaîne sont stockés les uns à la suite des autres. Le premier caractère du tableau se trouve à l’indice 0.
codage2>

Accéder aux caractères de la chaîne (rappel)

Soit str le nom de la variable chaîne sur laquelle vous travaillez, vous pouvez accéder au caractère de votre choix grâce à l’instruction suivante :

str[5];

Attention, ici vous accédez au caractère d’indice 5, soit le 6ème caractère !

Longueur de la chaîne (Rappel)

La longueur d’une chaîne (nombre de caractères qui la compose) est obtenue via l’instruction str.length ici length (sans parenthèse) n’est pas le nom d’une méthode mais d’un attribut associé à la chaîne. Un attribut est une variable permettant de mémoriser une valeur caractéristique de l’objet correspondant.

Accès au code ASCII des caractères (Rappel)

Pour accéder au code ASCII du caractère d’indice 2 de la chaîne str il suffit d’utiliser la fonction unchar(str[2])

Pour générer le caractère correspondant au code ASCII 65 il suffit d’utiliser la fonction char(65)

Cryptage de texte

Modifier votre programme afin que la zone résultat affiche la chaîne saisie avec un cryptage de césar (décalage d’un seul caractère).

Petit conseil : Vous pourrez travaillerez directement sur le code ASCII des caractères.

Ajouter également à votre programme la gestion du décodage votre texte !

Votre programme devrait ressembler à ceci :

cryptage1>

Cryptage de césar avec décalage variable

Modifiez votre programme afin de pouvoir saisie une clé de décodage, correspondant à un cryptage de César avec un décalage fonction de la valeur de cette clé :
cryptage2>

La zone de saisie clé de codage indique la valeur du décalage choisi (clé de codage) . Modifiez votre programme pour prendre en compte cette valeur saisie par l’utilisateur.
Attention , la valeur de cette clé doit être comprise entre 1 et 20, il vous faudra donc vérifier la valeur de la clé saisie par l’utilisateur et si celle-ci est incorrecte en avertir l’utilisateur à l’aide d’une fenêtre pop-up. Vous ne devez lancer le cryptage que si la valeur est correcte.

Cryptanalyse

Vous devez ecrire un programme permettant de decrypter un texte (césar) alors que vous ne connaissez pas la valeur de la clé. Il vous faut donc mettre en place une solution pour casser ce code.

Ressources :

  1. Vocabulaire.