Chiffrement photo
Cachez un message chiffré dans une photo, avec un encodage conçu pour résister à une recompression modérée par les applications de chat.
Conçu pour résister à une recompression JPEG modérée.
Comment ça marche
À quoi ça sert
Chiffrement photo cache un message chiffré dans une photo ordinaire, d’une manière conçue pour résister à une recompression JPEG modérée, celle que les applications de chat et les réseaux sociaux appliquent aux images. La personne qui reçoit la photo l’ouvre ici avec le même mot de passe et récupère le message.
Comment le message est caché
La photo est découpée en blocs de 8×8 pixels, la même grille que celle de JPEG. Chaque bloc porte un bit : sa luminosité moyenne est légèrement décalée vers le palier pair ou impair le plus proche sur une échelle de 24 niveaux. Cette technique, appelée modulation par indice de quantification (QIM), a été décrite par Brian Chen et Gregory Wornell vers 1998. La compression JPEG préserve assez bien la luminosité moyenne d’un bloc, si bien que les bits survivent généralement. Chaque bit est écrit 7 fois dans des blocs répartis sur toute l’image, et un vote à la majorité corrige les copies endommagées.
Chiffrement et capacité
Avant d’être caché, le message est chiffré en AES-256-GCM avec une clé dérivée de votre mot de passe par Argon2id (64 Mio de mémoire, 3 passes). La photo est redimensionnée pour que ses côtés mesurent entre 800 et 2 048 pixels. La capacité est faible : une photo de 800×800 contient environ 78 caractères, et les photos plus grandes davantage.
Limites
Le redimensionnement, le recadrage, les filtres, les changements de luminosité ou une compression très forte détruisent les données cachées, et certaines applications réduisent automatiquement les grandes photos. Envoyez la photo en tant que fichier quand c’est possible et testez d’abord. Les changements de luminosité peuvent apparaître sous forme de légers effets de blocs sur les zones unies comme le ciel. Le procédé de dissimulation est public : n’importe qui disposant de cet outil peut voir qu’une photo contient des données ; seul le contenu est protégé, par votre mot de passe. Tout se passe dans votre navigateur et la photo n’est pas envoyée.