Découverte Flash TI-Nspire
Codage affine
Auteur : Francis Minot, formateur T3
Un message est écrit uniquement avec les 26 lettres minuscules (sans blanc, accent, cédille, ponctuation, etc.) puis crypté par la méthode du « codage affine ».
Chaque lettre est remplacée par un nombre x compris entre 0 et 25. Ce nombre est changé par f(x) = a.x + b modulo 26 puis retransformé en lettre.
Cet exemple utilise, entre autres, l’instruction mathématique mod (modulo) et les instructions de chaîne : dim, ord, mid, char.
Réalisation et mise en œuvre
• Dans une page Calculs un message est stocké dans la variable mclair.
• La première colonne d’une page Tableur &listes est utilisée pour définir les variables dm, am et bm où
dm est la longueur du message, am et bm les paramètres du codage
(on utilise am et bm à la place de a et b pour éviter les interférences avec les noms des colonnes).
• Les colonnes suivantes sont nommées lt1 à lt4 et reçoivent les commandes suivantes :
lt1:=seq(mid(mclair,i,1),i,1,dm) lt2:=ord(lt1) – 97
lt3:=mod(am ×××× lt2 + bm , 26) + 97 lt4:=char(lt3)
Prolongement
Chercher les conditions sur les variables a et b pour que le codage soit réversible c'est-à-dire pour que deux lettres différentes soient codées par deux lettres elles aussi différentes.
Voir la réalisation pas à pas avec le logiciel TI-Nspire CAS Télécharger le fichier tns
Revenir au sommaire Découverte Flash TI-Nspire
T3 France 2008