Définition
Processus permettant de rendre incompréhensible un document ou un message sans la clé de déchiffrement ou encore de le rendre compréhensible avec la clé.
Il est évident qu'ici sera exposé différentes méthodes dont certaines seront non sécuritaires. Il est donc préférable de ne pas utiliser ces méthodes pour des mots de passe. Par contre, dans un jeu de rally, d'énigmes ou de jeu à réalité augmenté, toutes ces méthodes peuvent être utilisées permettant aux joueurs de travailler un peu pour trouver un message par exemple.
Code à barres / QR code
Le code è barres et QR code sont des méthodes permettant de traduire des informations sous la forme d'un code visuel permettant à un appareil électronique de lire ces informations rapidement et avec un très faible marge d'erreur. Il existe plusieurs types de code à barres et de QR code permettant de code plus ou moins d'information. L'un des plus utile pour les activités ludiques est très certainement le QR Code. Il vous permettra entre autre de coder un lien internet visuellement que vos joueurs auront à trouver d'une manière ou d'une autre. La limite de stockage d'information d'un QR Code est tributaire de son contenu. Elle varie de 1817 à 7089 caractères.
Voici donc un petit outil pour que vous puissez créer vos propres QR code (Maximum 1800 caractères pour éviter des erreurs).
Analyse fréquentielle
L'analyse fréquentielle est différent pour chaque langue. En fait, cela consiste à calculer la probabilité d'un caractère donné dans une langue donnée. L'idée est de récupérer un très grand nombre de texte et de tout simplement calculer le nombre de fois ou une lettre apparaît. Grâce è la magie des mathématiques, il est possible de déduire un texte avec des symboles dans le cas où un message a substitué les lettres par ces derniers.
Lettre | Français | Anglais |
---|---|---|
A | 9,42 | 8,08 |
B | 1,02 | 1,67 |
C | 2,64 | 3,18 |
D | 3,39 | 3,99 |
E | 15,87 | 12,56 |
F | 0,95 | 2,17 |
Lettre | Français | Anglais |
---|---|---|
G | 1,04 | 1,80 |
H | 0,77 | 5,27 |
I | 8,41 | 7,24 |
J | 0,89 | 0,14 |
K | 0,00 | 0,63 |
L | 5,34 | 4,04 |
Lettre | Français | Anglais |
---|---|---|
M | 3,24 | 2,60 |
N | 7,15 | 7,38 |
O | 5,14 | 7,47 |
P | 2,86 | 1,91 |
Q | 1,06 | 0,09 |
R | 6,46 | 6,42 |
Lettre | Français | Anglais |
---|---|---|
S | 7,90 | 6,59 |
T | 7,26 | 9,15 |
U | 6,24 | 2,79 |
V | 2,15 | 1,00 |
W | 0,00 | 1,89 |
X | 0,30 | 0,21 |
Lettre | Français | Anglais |
---|---|---|
Y | 0,24 | 1,65 |
Z | 0,32 | 0,07 |
Chiffre de César ou ROT
Méthode de codage consistant en un décalage de X caractères de l'alphabet.
Exemple pour ROT-1 :
Lettre à encrypter | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
Lettre cryptée | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A |
Exemple pour ROT-13 :
Lettre à encrypter | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
Lettre cryptée | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M |
Un fait intéressant à remarquer avec le ROT-13 est qu'il est un algorythme symétrique. Vous remarquerez que le "A" correspond à "N" et que la lettre cryptée correspond à "A". Il en va de même pour toutes les lettres de l'alphabet. Il n'en va ainsi pour les autres types de ROT-?. Si vous avez des chiffres à encoder, il vous faudra probablement les convertir en chiffres romains!
Hachage
Fonction qui convertit un grand ensemble en un plus petit (empreinte). Il existe plusieurs méthodes de hachage en voici quelques uns :
- MD5
- SHA-1
- SHA-256
Il est aussi important de savoir que la technique de hachage ne permet pas de retrouver la clef originale. Ce qui veut simplement dire que l'algoruthme est asymétrique et qu'elle permet seulement de valider si le message à encoder est le même que le précédent. Cette méthode peut être utilisé dans les jeux afin de s'assurer qu'un joueur a bel et bien passé par une étape et s'il a récupéré un texte (sans nécessite de valider le texte dans son entièreté.