Au dernier stage gameCodeur ( sur « the hobbit » ) on a parlé un peu cryptage de données.
Du coup ça m’a donné envie de faire une petite application de cryptage d’images.
Alors comment crypter une image ? Il suffit de crypter chaque pixel, je dirai même mieux il suffit de crypter chaque canal ( R,V,B, éventuellement A) de chaque pixel
il vous faut donc une fonction de cryptage qui code un nombre entre 0 et 255 !!!
La méthode que j’utilise pour crypter mes données est le codage affine. Bon le cryptage affine c’est bien mais au final si tu connais la fonction de cryptage ( c’est une fonction affine , un truc qui ressemble à y = ax+b) bah tu pourras facilement decrypter. Du coup si on regardait dans mon code on aurait facilement trouvé les coefficients de la fonction affine ( et Dieu sait que lire du code lua c’est pas ce qu’il y a de plus compliqué …)
En fait la fonction affine c’est ce qu’on appelle la CLE ( de cryptage ou de decryptage )
Alors ce qu’on peut faire c’est changer de clé à chaque canal et la ça devient moins drôle pour le mec qui veut décrypter 🙂
Du coup la clé de cryptage est elle même une image ! Chaque pixel de » l’image clé » permet de fabriquer la fonction affine qui va crypter le canal R,V ou B
Du coup y a 2 applications :
il y a un generateur de clé qui vous fourni 2 « clé_images ». utilisez celle que vous voulez pour crypter et l’autre décryptera
il y a le crypteur d’image, hummmm qui crypte les images …
je vous passe les détails et je vous laisse tester le crypteur d’images
PS : pour l’anecdote, comme c’était du cryptage j’ai voulu obfusquer mes sources avec l’obfuscateur de raphytator… mais comme j’étais crevé j’ai obfusqué mes sources sans sauvegarde ! du coup je n’ai plus les sources ….j’étais mort de rire quand j’ai compris ma connerie.
Doiy y avoir 600 lignes de code à tout casser mais bon c’est relou 🙂
Devlogs du projet
Pour crypter une image il faut une clé de cryptage qui est elle même une image. On peut utiliser l’image que l’on veut comme clé ( du moment qu’elle est…
C’est l’appli principale ! Tu glisses une image dans le cadre de gauche Tu glisses la clé dans le cadre droite Tu cryptes Tu récupères ton image cryptée Articles similaires