Niveau :
Résumé : 2c2 ; 4c
Aujourd'hui Jack Bauer va encore devoir sauver le monde. Mais Jack Bauer est fort, Jack Bauer a tout prévu.
Jack Bauer a une fille à qui il envoie toujours des messages chiffrés. Sa technique préférée est d'utiliser l'outil 2c2 ou 4c qui permettent de chiffrer des messages en y incorporant un flux aléatoire. Quel est l'intérêt ? Il est tout simplement que personne ne peut distinguer un flux aléatoire d'un flux de données correctement chiffrées.
Et alors ? Alors aujourd'hui Jack Bauer doit aussi envoyer un message à un agent secret chinois du FBINSACIA pour lui expliquer qu'un terroriste français veut faire sauter la capitale du monde avec une bombe nucléaire placée sous une faille géologique.
Mais pas de chance pour lui dès 14h du matin, Jack Bauer est capturé par le fils du méchant qui est aussi un salaud de djihadiste communiste extrémiste. Son plaisir est de torturer et il va donc torturer Jack Bauer pour lui soutirer le mot de passe du fichier envoyé par Jack Bauer sur son blog.
Et là, Jack Bauer, malin, donne le mot de passe après s'être fait arracher un 3e ongle de pied : "J'aime les patates". Le terrible méchant sort son iBook, décrypte le tout et commence à lire :
- Acheter du riz
- Anniversaire de la mort de maman
- Aller chercher le chien à la SPA
- Pense a faire tes devoirs
À 15h du soir Jack Bauer réussit à s'enfuir après avoir tué 3 gardes chacun faiblement armé d'une kalachnikov d'un poignard et d'une bombe à fragmentation dans l'estomac. Il sort son iPod et commence à transmettre à son contact : "Une journée ne dure que 16h sur 24h". Le chinois à l'écoute sur son iPhone commence à décrypter le fichier et peut lire :
- Les mercenaires ne sont plus allemands mais français- stop
- L'ennemi dispose d'une bombe - stop
- Elle est cachée là où tu sais - stop
- Parti en mission suicide - stop
- Bisous et pense à t'occuper du chien
Jack Bauer a une fois de plus triomphé des méchants qui menacent l'ordre mondial !
Et moi, et moi, et moi ?
C'est beau la technologie n'est pas ? Oui mais bon tout cela n'est que de la fiction. Enfin pas tant que ça, un acharné (Michal Zalewski) a développé un outil (2c2) pour rendre tout cela possible. Outil qui a été amélioré par James Kehl sous le nom de 4c.
Décompressez, compilez ...
Choisissons un secret pas trop secret (la photo de votre copine) et un secret un peu plus secret (la photo de votre maîtresse), ainsi que 2 mots de passe "J'aime les chèvres" et "J'aime les légionnaires" (attention les mots de passe demandés par ces outils sont généralement longs).
$ ./2c2 -o image.crypt -e gfriend.jpg beauty.jpg
[*] Using /dev/urandom for random pad data...
[*] Source 1: facile (11174 bytes)
Source 2: dur (655 bytes)
[+] Enter gfriend.jpg password:
[+] Enter beauty.jpg password:
....
[*] Done, have a nice day, and remember to wipe the data.
$ shred -zu gfriend.jpg beauty.jpg
Le jour où votre copine vous torture, avouez le premier mot de passe :
$ ./2c2 -o copine.jpg -d image.cryptHop un seul fichier. Si vous donnez en plus le 2e mot de passe, le 2e fichier est aussi décrypté. Mais rien ne prouve que c'est un fichier crypté, en pratique c'est un flux aléatoire qui a servi à chiffrer le premier. Il faut en réalité utiliser ce système de chiffrage régulièrement sinon vous aurez l'air louche. Attention, le déchiffrage détruit le fichier chiffré.
2c2 by
[*] Using /dev/urandom for random pad data...
[*] File f0 opened successfully, credentials please.
[+] Enter main password:
[+] Splitting data stream...
[+] Main chunk deciphered. Any secondary file? Hit RETURN for none.
[+] Enter secondary password:
[*] Done, have a nice day, and remember to wipe the data.
Notez donc que si vous ne voulez pas réellement de 2e fichier, il suffit de ne pas le préciser et l'algorithme utilisera un flux aléatoire.
4c va plus loin en intégrant jusqu'a 8 fichiers dans le flux crypté. 4c vous demande un mot de passe global à tout le fichier suivi d'un mot de passe par flux à crypter.
# ajoutez autant de - que de flux aléatoire à ajouterEt pour la lecture
# il se peut que 4c décide d'ajouter des flux aléatoire supplémentaires
$ ./4c -c -f fichier.crypt -- gfriend.jpg beauty.jpg - -
# les questions sur les noms de fichier à extraire sont posées directement
$ ./4c -x -f fichier.crypt