Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2298 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Cacher un texte dans une image

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Cacher un texte dans une image

n°2257256
llyudy
SCruel
Posté le 03-05-2015 à 19:29:20  profilanswer
 

Bonjour / bonsoir
 
Pour mon projet de fin d'année (je dois le rendre le 13), je dois réaliser une stéganographie, cacher du texte dans une image (j'ai déjà réaliser l'image caché dans une autre), le code est commenté par mon prof, le problème c'est que je n'ai pas le temps de reprendre l'algo à zéro sachant que je suis un peu perdu malgré toutes mes recherches et tentatives de résolution, j'ai besoin de conseils rapidement, si possible, merci d'avance à ceux qui me répondront :)
Je précise que je me sert de la classe ISNImage, une classe que nous a refilé le prof en début d'année et qui nous évite de coder tous les BufferedImage etc, je peux la poster si besoin.
 
Voici donc mon code :
 

Code :
  1. public static ISNImage code(ISNImage img, String message){
  2.         // Affectation des dimensions
  3.         int largeur = img.largeur();
  4.         int hauteur = img.hauteur();
  5.          
  6.         // on crée une image img1 de même dimension que img (image couverture)
  7.         ISNImage img1 = new ISNImage(largeur,hauteur);
  8.          
  9.         // Conversion du message en binaire
  10.         message = "Je suis un texte cache";
  11.         String chaine = "";
  12.         for (int i = 0 ; i < message.length() ; i++){
  13.             int ascii = (new Character(message.charAt(i))).hashCode();
  14.             String binaryString = Integer.toBinaryString(ascii);
  15.             chaine += binaryString;
  16.         }
  17.          // cette partie là ne sert visiblement à rien, puisque tu n'utilises pas la valeur de chaîne dans la suite.
  18.        
  19.         for (int j = 0 ; j < hauteur && j < message.length() ; j++){
  20.             for (int i = 0 ; i < largeur && i < message.length() ; i++){
  21.             // c'est ici le problème, les conditions d'arrêt des boucles "for" font n'importe quoi!
  22.                     int[] rgb = img.getPixel(i, j);
  23.                     int rouge = rgb[0] & 240; // On remet à zéro les 4 bits de droite pour le canal rouge
  24.                     int vert = rgb[1]; // Là non car on ne va rien cacher de dans
  25.                     int bleu = rgb[2] & 240; // Idem que pour le canal rouge
  26.                      
  27.                      
  28.                     for(i = 0 ; i < message.length() ; i++){ // on parcourt la chaine caractere par caractere
  29.                     // tu caches donc la totalité de ton message dans une seule colonne puisque j garde une valeur constante dans cette boucle,
  30.                     // donc là aussi, gros problème : le ième caractère du message doit être caché dans un pixel de coordonnées (x;y)
  31.                     // Il faut que tu trouves la bonne relation entre i et (x;y). y n'est certainement pas constamment égal à j
  32.                         char first = message.charAt(i);
  33.                          
  34.                         int rouge1 = first >> 4;
  35.                         int vert1 = first;
  36.                         int bleu1 = first >> 4;
  37.                      
  38.                         int r = rouge | rouge1;
  39.                         int v = vert | vert1;
  40.                         int b = bleu | bleu1;
  41.                      
  42.                         img1.putPixel(i, j,r,v,b);
  43.                          
  44.                     }
  45.  
  46.                      
  47.                 }
  48.             }
  49.         return img1;
  50.     }
  51. Il te faut reprendre l'algorithme à partir de zéro ... bon courage

mood
Publicité
Posté le 03-05-2015 à 19:29:20  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Cacher un texte dans une image

 

Sujets relatifs
Aide Fichier.bat info Regroupage info fichier texteCalculer taille image et afficher [RESOLU]
[Win7] Insertion de texte dans un nom de fichier lors d'un copy[RESOLU] Batch - copier des parties d'un fichier texte
Contraste des régions d'une image MatlabProblème pour enlever le GRAS du texte
Afficher texte si l'URL contient un motAligner verticalement 2 images
Aligner un élément par rapport à une imagecacher email en js (pas email texte mais href d'une image)
Plus de sujets relatifs à : Cacher un texte dans une image


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR