Pour transmettre des cartes à ses acolytes des légions du M.A.L, Dr Boum utilise une technique cryptographique que vous espérez douteuse.
Il semble s'agir de la méthode du masque jetable, réputée inviolable si on l'utilise correctement. Mais Dr. Boum l'a-t-il utilisée correctement ?
Les cartes sont représentées sous formes d'images, dans des fichiers au format PNG, comme dans l'illustration de ce défi.
Pour chiffrer cette carte, une clé aléatoire est choisie, puis on applique l'opération XOR entre chaque octet de la clef et du fichier PNG pour donner le fichier chiffré.
Par exemple, si le fichier contient les octets (ici notés en décimal)
81, 210, 41, 7, 170, 49, 42, 53, 2, 122
et que la clé est constituée de la série d'octets :
51, 56, 111, 127, 139, 1, 207, 211, 245, 107
alors le chiffrement donnera :
98, 234, 70, 120, 33, 48, 229, 230, 247, 17
Pour déchiffrer, il suffit de procéder en sens inverse (appliquer la clé sur le chiffré redonne le clair).
La méthode du masque jetable impose, entre autres, que la clé soit aléatoire, aussi longue que le message au moins, et jamais réutilisée, ce qui est difficile en pratique.
Dr. Boum est toutefois très fier de la technique qu'il vient de mettre au point : il se base sur la date et l'horaire actuels, calcule des condensés sha512 et les utilise pour dériver une clé. Cette clé n'est pas toujours assez longue, mais elle est quand même très longue, et il la répète un assez petit nombre de fois pour qu'à son avis, la sécurité du système ne soit pas mise en péril.
Pour générer cette clé, il lui suffit de faire les opérations suivantes :
Par exemple, si la clé est générée le 19 mars 2022 à 12:03:56, alors :
19
, 12
, 03
et 56
8d89aa701de5a35b24cfadbd2088986ae13...ca1f7023e89bee683c1dbb2134a984d0
5aadb45520dcd8726b2822a7a78bb53d794...66163ed1327e82e8b6757d1932113cb8
081353b00607b812ca63641b911da8f4a5d...2e66d6460641b62c1301d4e80f166f82
704e306889b432078eba650de3c8931f865...81372596d03bb21d72aedbbd14a747d7
8d5a087089ad134eaab453307055b0681d200689e5dc07b4a3d8b8325b721207246b...
141, 90, 8, 112, 137, 173, 19, 78, 170, 180, 83, ...
On obtient ainsi une séquence pseudo-aléatoire qui constitue la clé, et qui est répétée le nombre de fois nécessaires pour être au moins aussi longue que le fichier à chiffrer.
Un ensemble de cartes a été chiffré de cette manière à des jours et horaires différents (donc avec des clés différentes), Vous avez pu récupérer une archive contenant tous ces fichiers chiffrés, mais les horodatages des fichiers semblent avoir été falsifiés, et vous ne pouvez pas utiliser cette information.
Décryptez néanmoins les images des cartes de Dr. Boum, et relevez les lettres présentes en haut à gauche de chaque carte pour former le mot qui vous permettra de valider ce défi.