Hydra chiffre des images

Transposition de tranches d'images

Hydra est toujours à la recherche de nouveaux moyens de communication. Cette fois-ci, c'est Viper qui a proposé une nouvelle méthode permettant de chiffrer une image. L'idée est très simple : on découpe l'image en bandes verticales de largeurs différentes. Par exemple 3, 5, 7, et 11. Puis on la réagence en mettant les bandes dans l'ordre inverse. La bande de 11 en premier, puis la bande de 7, puis celle de 5 et enfin celle de 3.

Ensuite, on réalise la même opération dans l'autre sens.

Cette double opération est elle-même répétée plusieurs fois.

Le déchiffrement est difficile quand on ne connaît pas les largeurs des bandes d'images. Or, une information est parvenue au Shield, indiquant justement les détails du protocole. Hydra chiffre toujours des images de 328x328, en découpant des bandes ayant pour largeurs :

2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47

Par contre, le Shield n'a pas pu savoir combien de fois la double opération de mélange devait être appliquée.

Le message suivant a été intercepté :

Aidez le Shield en le déchiffrant et indiquez le nom du nouvel allié d'Hydra.

Exemple

En utilisant des bandes de [2, 3, 5, 7] et en réalisant 3 fois l'opération de mélange sur les lignes et les colonnes, l'image :

serait transformée en

Bien sûr pour déchiffrer, il faut appliquer le protocole dans l'autre sens.

N'hésitez pas à utiliser par exemple tinyeye pour retrouver d'où vient une image en votre possession.

Ce problème est tiré de c0d1ng UP 2016

Type de retour

une chaîne de caractères

Entrée du problème

Pas de donnée d'entrée

Formulaire de réponse

Vous devez être connecté pour pouvoir répondre aux défis

Tags : cup16 image cryptographie algo