Code de César
Instant historique :
Le chiffre de César, ou Code de César, bref, Caesar Code, est un code par décalage. C'est un des plus ancien code de crypto connu. Autant aujourd'hui il peut paraître plus que simple, autant pour l'époque, le taux d'analphabétisme étant énorme et le niveaux des quelques littrés étant faible, ça leur paraissait incompréhensible. Ce procédé cryptographique a perduré jusqu'à la fin du moyen-âge… Il fut le plus usité de toute l'histoire de la cryptographie. Vous le connaissez d'ailleurs très certainement.
Le code de César a évolué avec le temps ; ce sont des dérivés de l'original. Nous comptons parmi eux le code de César progressif ainsi que le carré de César.
Code de César :
Décalage simple.
Exemple :
ZSMGM YR IBIQTPI <-- VOICI UN EXEMPLE : décalage = 4
REDZEKH <-- BONJOUR : décalage 13
Le maximum de décalage est donc de 25.
Note : l'alphabet boucle.
Exemple :
MEMO : décalage 25 = LDLN
Le décalage est appelé "clé".
Dans le code de César, seul [a-z] est autorisé. Les espaces sont préservés entre chaque mots.
Code de César progressif :
Le code de César progressif se base sur le même algorithme (procédé par décalage) que le code de César. La différence est que, à chaque lettre ou mot, le décalage s'incrémente de 1.
Classic mode:
Exemples (pour lettres) :
ABCDE = BDFHJ <-- B(+1)D(+2)F(+3)H(+4)J(+5)
Exemple pour phrase :
hello world = igopt cvzun <-- +1,+2,…+10
Note : là encore, l'alphabet boucle (toujours). Ainsi, lorsqu'on arrive à +23, +24, +25 --> on retourne à +1, +2 (dans le cas d'une phrase de plus de 25 caractères ; bien entendu, les espaces ne sont pas pris en compte). Le compteur (l'incrémentation) change à chaque lettre de +1.
Ca, c'est le code de César progressif de base. Certains petits malins vont légèrement modifier l'algo, ce qui peut le rendre plus difficilement déchibrable. Là en l'occurence, j'ai inventé deux autres types de formes "logiques" pour le fun. Personal mode et Geometrical mode.
Personal mode:
Au lieu d'être limité (forcé) à une incrémentation de 1, on peut en rentrer une comprise entre [1-25]. Avec une notion supplémentaire :
- préciser si l'on souhaite entrer un mot ou une phrase.
Exemple (pour mot) :
MAJOR : clé = 4 = QFPVZ <-- Q(+4)F(+5)P(+6)V(+7)Z(+8) <-- c'est un mot, on incrémente à chaque lettre
Exemple (pour phrase) :
clé = 2 (puis incrémentation de 1, toujours limité à 1) :
bonjour tout le monde = dqplqwt wryw pi rtsij <-- dqplqwt (+2) wryw (+3) pi (+4) rtsij (+5) <-- c'est une phrase, on incrémente à chaque mot.
Geometrical mode :
On peut rentrer une clé à incrémentation géométrique.
Exemple : si on rentre 2 comme valeur pour la clé, cela donnera : +2,+4,+6,+8,+10,+12, etc.
Les chiffres probables pour cette technique devraient être limités à [2-6] (car, dans le cas de phrases longues, on va vite monter à des chiffres extrêmes).
Exemples (pour mot) :
RAZOR : clé = 2 = TEFWB <-- T(+2)E(+4)F(+6)W(+8)B(+10) <-- c'est un mot, on incrémente à chaque lettre
MUJER : clé = 4 = QCVUL <-- Q(+4)C(+8)V(+12)U(+16)L(+20) <-- c'est un mot, on incrémente à chaque lettre
Exemple (pour phrase) :
amnisty for them : clé = 6 = gstoyze rad lwze <-- gstoyze (+6) rad (+12) lzwe (+18) <-- c'est une phrase, on incrémente à chaque mot.
Ainsi donc, lorsque c'est un seul mot, on incrémente géométriquement chaque lettre ; lorsque c'est une phrase, c'est à chaque mot, en commençant par la clé elle-même (soit 2, 3, 4, 5 ou 6).
Carré de César :
Le carré de César était lui aussi déjà utilisé à l'époque de JC (Jules César ; ou Jésus Christ^^ c'est la même époque de toutes façons).
Pour la petite histoire, ce procédé était déjà utilisé dans la grèce antique, soit 4-5 siècles avant JC. Les grecs, eux, utilisaient ce que l'on appelle la scytale. Si ça vous intéresse allez jeter un petit coup d'oeil par ici : http://fr.wikipedia.org/wiki/Scytale. C'est donc pour le coup la plus ancienne technique de chiffrement découverte à ce jour.
Le procédé est enfantin encore une fois : comme l'indique son nom, il faut établir un carré (ou un rectangle) et lire le texte en colonne, de haut en bas et de gauche à droite ou de gauche à droite, de haut en bas.
Exemple de façon verticale :
Valeur de la clé (du côté) = 4, axe = vertical
mynameissakarov
mmsr
yeao
nikv
asa
chiffré :
mmsryeaonikvasa
Exemple de façon horizontale (clé=4) :
wema
kecy
pher
s
wemakecyphers
La valeur de la clé (du côté) peu être celle de la hauteur ou celle de la largeur.
ILSUFF
ITSIMP
LEMENT
DIMAGI
NERUNC
ARREOU
UNRECT
ANGLEE
TLETOU
RESTJO
UE
Vu comme ça, c'est simple. C'est certain. Mais si vous ne connaissez pas le carré de César et que je vous avais donné :
ITLDNAUATRULTEIERNNLEESSMMRRRGESUIEAUEELTTFMNGNOCEOJFPTICUTEUO
Et que vous ne connaissiez pas la valeur de la clé, vous auriez tout de suite trouvé cela plus compliqué !
Là aussi, on peut faire plusieurs variantes. J'en ai donc imaginé deux : Square et Rectangle.
Square:
Avec celle-ci nous allons devoir créer de parfaits carrés.
Exemple :
V O I C I
U N J O L
I C A R R
E C L E D
E C I N Q
Soit 5 sur 5 (clé = 5)
Il donnera en chiffré :
VUIEEONCCCIJALICORENILRDQ
Rectangle:
Avec celle-ci nous pouvons créer des rectangles.
Exemple :
B O N J O U R C E
C I E S T U N T E
S T
Ce qui nous donne :
BCSOITNEJSOTUURNCTEE
Instant historique :
Le chiffre de César, ou Code de César, bref, Caesar Code, est un code par décalage. C'est un des plus ancien code de crypto connu. Autant aujourd'hui il peut paraître plus que simple, autant pour l'époque, le taux d'analphabétisme étant énorme et le niveaux des quelques littrés étant faible, ça leur paraissait incompréhensible. Ce procédé cryptographique a perduré jusqu'à la fin du moyen-âge… Il fut le plus usité de toute l'histoire de la cryptographie. Vous le connaissez d'ailleurs très certainement.
Le code de César a évolué avec le temps ; ce sont des dérivés de l'original. Nous comptons parmi eux le code de César progressif ainsi que le carré de César.
Code de César :
Décalage simple.
Exemple :
ZSMGM YR IBIQTPI <-- VOICI UN EXEMPLE : décalage = 4
REDZEKH <-- BONJOUR : décalage 13
Le maximum de décalage est donc de 25.
Note : l'alphabet boucle.
Exemple :
MEMO : décalage 25 = LDLN
Le décalage est appelé "clé".
Dans le code de César, seul [a-z] est autorisé. Les espaces sont préservés entre chaque mots.
Code de César progressif :
Le code de César progressif se base sur le même algorithme (procédé par décalage) que le code de César. La différence est que, à chaque lettre ou mot, le décalage s'incrémente de 1.
Classic mode:
Exemples (pour lettres) :
ABCDE = BDFHJ <-- B(+1)D(+2)F(+3)H(+4)J(+5)
Exemple pour phrase :
hello world = igopt cvzun <-- +1,+2,…+10
Note : là encore, l'alphabet boucle (toujours). Ainsi, lorsqu'on arrive à +23, +24, +25 --> on retourne à +1, +2 (dans le cas d'une phrase de plus de 25 caractères ; bien entendu, les espaces ne sont pas pris en compte). Le compteur (l'incrémentation) change à chaque lettre de +1.
Ca, c'est le code de César progressif de base. Certains petits malins vont légèrement modifier l'algo, ce qui peut le rendre plus difficilement déchibrable. Là en l'occurence, j'ai inventé deux autres types de formes "logiques" pour le fun. Personal mode et Geometrical mode.
Personal mode:
Au lieu d'être limité (forcé) à une incrémentation de 1, on peut en rentrer une comprise entre [1-25]. Avec une notion supplémentaire :
- préciser si l'on souhaite entrer un mot ou une phrase.
Exemple (pour mot) :
MAJOR : clé = 4 = QFPVZ <-- Q(+4)F(+5)P(+6)V(+7)Z(+8) <-- c'est un mot, on incrémente à chaque lettre
Exemple (pour phrase) :
clé = 2 (puis incrémentation de 1, toujours limité à 1) :
bonjour tout le monde = dqplqwt wryw pi rtsij <-- dqplqwt (+2) wryw (+3) pi (+4) rtsij (+5) <-- c'est une phrase, on incrémente à chaque mot.
Geometrical mode :
On peut rentrer une clé à incrémentation géométrique.
Exemple : si on rentre 2 comme valeur pour la clé, cela donnera : +2,+4,+6,+8,+10,+12, etc.
Les chiffres probables pour cette technique devraient être limités à [2-6] (car, dans le cas de phrases longues, on va vite monter à des chiffres extrêmes).
Exemples (pour mot) :
RAZOR : clé = 2 = TEFWB <-- T(+2)E(+4)F(+6)W(+8)B(+10) <-- c'est un mot, on incrémente à chaque lettre
MUJER : clé = 4 = QCVUL <-- Q(+4)C(+8)V(+12)U(+16)L(+20) <-- c'est un mot, on incrémente à chaque lettre
Exemple (pour phrase) :
amnisty for them : clé = 6 = gstoyze rad lwze <-- gstoyze (+6) rad (+12) lzwe (+18) <-- c'est une phrase, on incrémente à chaque mot.
Ainsi donc, lorsque c'est un seul mot, on incrémente géométriquement chaque lettre ; lorsque c'est une phrase, c'est à chaque mot, en commençant par la clé elle-même (soit 2, 3, 4, 5 ou 6).
Carré de César :
Le carré de César était lui aussi déjà utilisé à l'époque de JC (Jules César ; ou Jésus Christ^^ c'est la même époque de toutes façons).
Pour la petite histoire, ce procédé était déjà utilisé dans la grèce antique, soit 4-5 siècles avant JC. Les grecs, eux, utilisaient ce que l'on appelle la scytale. Si ça vous intéresse allez jeter un petit coup d'oeil par ici : http://fr.wikipedia.org/wiki/Scytale. C'est donc pour le coup la plus ancienne technique de chiffrement découverte à ce jour.
Le procédé est enfantin encore une fois : comme l'indique son nom, il faut établir un carré (ou un rectangle) et lire le texte en colonne, de haut en bas et de gauche à droite ou de gauche à droite, de haut en bas.
Exemple de façon verticale :
Valeur de la clé (du côté) = 4, axe = vertical
mynameissakarov
mmsr
yeao
nikv
asa
chiffré :
mmsryeaonikvasa
Exemple de façon horizontale (clé=4) :
wema
kecy
pher
s
wemakecyphers
La valeur de la clé (du côté) peu être celle de la hauteur ou celle de la largeur.
ILSUFF
ITSIMP
LEMENT
DIMAGI
NERUNC
ARREOU
UNRECT
ANGLEE
TLETOU
RESTJO
UE
Vu comme ça, c'est simple. C'est certain. Mais si vous ne connaissez pas le carré de César et que je vous avais donné :
ITLDNAUATRULTEIERNNLEESSMMRRRGESUIEAUEELTTFMNGNOCEOJFPTICUTEUO
Et que vous ne connaissiez pas la valeur de la clé, vous auriez tout de suite trouvé cela plus compliqué !
Là aussi, on peut faire plusieurs variantes. J'en ai donc imaginé deux : Square et Rectangle.
Square:
Avec celle-ci nous allons devoir créer de parfaits carrés.
Exemple :
V O I C I
U N J O L
I C A R R
E C L E D
E C I N Q
Soit 5 sur 5 (clé = 5)
Il donnera en chiffré :
VUIEEONCCCIJALICORENILRDQ
Rectangle:
Avec celle-ci nous pouvons créer des rectangles.
Exemple :
B O N J O U R C E
C I E S T U N T E
S T
Ce qui nous donne :
BCSOITNEJSOTUURNCTEE
Commentaire