begin process at 2010 07 30 10:06:32
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > STÉGANOGRAPHIE OU COMMENT CACHÉ DU TEXTE DANS UNE IMAGE

STÉGANOGRAPHIE OU COMMENT CACHÉ DU TEXTE DANS UNE IMAGE


 Information sur la source

Note :
8,2 / 10 - par 5 personnes
8,20 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Graphique Classé sous :stéganographie, texte, image, cacher, dissimuler Niveau :Expert Date de création :10/07/2005 Vu / téléchargé :12 155 / 1 810

Auteur : aymenk

Ecrire un message privé
Site perso
Commentaire sur cette source (13)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Stéganographie ou comment caché du Texte dans une Image.
Volé un bit ou 2 pour chaque Jeu RGB ne fais de mal a personne et surtout a une Image...
Par cette methode on peut caché du texte dans une image et récuperer le texte caché



 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  • Project1.dprTélécharger ce fichier [Réservé aux membres club]Voir ce fichier188 octets
  • Project1.drcTélécharger ce fichier [Réservé aux membres club]17 351 octets
  • Project1.resTélécharger ce fichier [Réservé aux membres club]876 octets
  • SteniG.JPGTélécharger ce fichier [Réservé aux membres club]Voir ce fichier59 103 octets
  • Unit1.dcuTélécharger ce fichier [Réservé aux membres club]6 567 octets
  • Unit1.dfmTélécharger ce fichier [Réservé aux membres club]3 247 048 octets
  • Unit1.pasTélécharger ce fichier [Réservé aux membres club]Voir ce fichier4 762 octets

Télécharger le zip


 Sources du même auteur

Source avec Zip GENERATEUR DE TEXTURE
Source avec Zip Source avec une capture CHANGER LA LANGUE DU CLAVIER PAR PROGRAMMATION
Source avec Zip Source avec une capture GET SERIAL DRIVE
Source avec Zip SENDKEY DU VB EXEMPLE SIMPLE DE COMPREHENSION
Source avec Zip Source avec une capture FRACTAL FRACTALS...3E PARTIE

 Sources de la même categorie

Source avec Zip Source avec une capture LABYRINTHE RESOLVER par diglas
Source avec Zip Source avec une capture REMPLISSAGE D'UNE COURBE DE BÉZIER par barbichette
Source avec Zip Source avec une capture DESKTOPICONFLYING par cantador
Source avec Zip Source avec une capture DÉFILEMENT D'UN TEXTE SOUS FORME D'IMAGE SUR UN AFFICHEUR À ... par zwail1
Source avec Zip Source avec une capture CONVERSION PIXEL, MM, INCH, TWIPS, POINT... par yanb

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture COMPOSANT TZSIMAGE par ThWilliam
Source avec Zip COMBINAISONS DE STRINGS par askil2000
Source avec Zip Source avec une capture ANAGLYPHEUR OU COMMENT VOIR EN RELIEF LES STÉRÉOSCOPES ANCES... par jfs59
Source avec Zip Source avec une capture STEGANO - CACHER DU TEXTE DANS UNE IMAGE (TUTO) par pablor44
Source avec Zip Source avec une capture COMPOSANT TDBPFONTIMAGE : UNE IMAGE DE TEXTE A PARTIR D'UNE ... par JulioDelphi

Commentaires et avis

Commentaire de bloom1 le 11/07/2005 03:30:38

Euh, ca fonctionne pas !

Commentaire de gildeplomb le 11/07/2005 11:17:53

Euh si ca fonctionne tres bien

Bravo

Commentaire de DRJEROME le 11/07/2005 12:47:25

Ben...moi j'ai pas encore essayé... mais bravo à l'avance ;)

Commentaire de bloom1 le 13/07/2005 18:27:40

Comment tu fais pour crypter du texte dedans ?

Commentaire de japee le 13/07/2005 20:53:28 administrateur CS

Très intéressant, ce code, aymenc.

Pour les lignes :

R := R and 248 or (C and 7);      // masquage (évident!)
G := G and 248 or (C and 56) shr 3;
B := B and 252 or (C and 192) shr 6;

ton commentaire quant au masquage ("évident") démontre une belle maîtrise des mathématiques.
Félicitations !
Ceux qui sont moins brillants que toi auront un bon sujet de réflexion pour les vacances ! ;)

Bonne continuation.

japee

Commentaire de Millenod le 16/07/2005 00:00:55

Intéressant ma fois.
je débute et suis pas tout à fait à l'aise dans la manipulation des bits... et je n'y connais rien sur les images bmp.
(quel handicap!!!)


col := MyImage.canvas.Pixels[x, y];
On obteint la couleur d'origine du pixel, au format RGB.
Le format est définit comme tel : PPRRGGBB, avec PP pour la valeur de la palette, le RR pour le rouge, le GG pour le vert, BB pour le bleu

R := getRvalue(col);              // extraction du rouge
G := getGvalue(col);              // extraction du vert
B := getBvalue(col);              // extraction du bleu
on a les intensité des couleurs.

R := R and 248 or (C and 7);      // masquage (évident!)
c'est la que ca devient rude.

C and 7 : masque pour obtenir uniquement les valeurs contenu dans les 3derniers bits (GBB)
R and 248 : masque pour obtenir uniquement les valeurs contenu dans les 5premiers bits (PPRRG)

R := R and 248 or (C and 7); on regroupe les valeurs obtenu par les 2 masques dans la nouvelle valeur de R


G := G and 248 or (C and 56) shr 3;
y'a du décalage de bits dans l'air. rude!

(C and 56) : masque pour obtenir uniquement les valeurs contenu dans les bits 6 à 4 (RRG)

(C and 56) shr 3 : on décale ces bits pour les traiter comme si c'était les 3 premiers (GBB)

G and 248 or (C and 56) shr 3 : on regroupe les masques en un nouveau


etc


un texte comprends les caractère dont le code hexa est compris enter $20 (=32) et $7E (=126)
ce qui donne une valeur comprise entre :
00100000 et 01111110

ce qui indique que sur notre pixel, on ne va pas toucher au bit PP

on va coder notre caractère sur les valeurs RRGGBB.

pour la nouvelle valeur de R du code ci-dessus, on ne touchera pas à BB.
....



je pense pas être trop loin de la solution...
mais j'aurais besoin de qq explications en plus.
si l'un de vous veut bien me donner les derniers détails, pour que moi aussi je puisse etre illuminé par la beauté de ce code, et surtout sa subtilité :)


merci beaucoup de m'avoir fait creuser le ciboulot :)

Commentaire de assemple le 18/07/2005 10:58:51

cacheR : infinitif et non caché.
Pour ne pas faire cette faute il suffit de remplacer le verbe douteux par le verbe FAIRE.
2 exemples puisés dans votre texte, le verbe "cacher" dans 2 contextes. J'y ai remplacé "caché" par "FAIRE" ou "FAIT" :
1) Stéganographie ou comment FAIRE du Texte dans une Image.
2) ...et récuperer le texte FAIT


Commentaire de aymenk le 18/07/2005 11:37:52

Salut  Millenod,
Rappelons que dans le type BMP en format 24 bit/pixel, chaque pixel est représenté par
3 octets: un pour le rouge, un pour le vert et un pour le bleu. Chaque octet comporte
8 bits permettant de coder une valeur entière de 0 à 255.
Nous allons cacher un caractère (un octet) dans un pixel.
Nous aurons donc un caractère caché dans chaque point de l'image. Nous devons
répartir les 8 bits d'un octet parmi les 24 bits représentant le pixel. Arbitrairement
nous choisissons d'utiliser:
- les 3 bits de poids faible de l'octet du rouge
- les 3 bits de poids faible de l'octet du vert
- les 2 bits de poids faible de l'octet du bleu

Il est essentiel d'utiliser comme container les bits de poids faible, car ils ont
moins d'influence sur la couleur.

Commentaire de assemple le 18/07/2005 12:12:28

REPONSE à MILLENOD
Tu confonds Bit et Octet
Aymenk bloque le "cryptage" si l'image n'est pas en 24 bits donc :
Pour chaque point :
R         G       B
xxxxxxxxxxxxxxxxxxxxxxxxxx
x= 0 ou 1
R, G et B variant de 0 à 255,  
Un caractère = 1 octet soit xxxxxxxx (x= 0 ou 1)

Le cryptage consiste à altérer R et B de 7/255 soit 2,7%, et B de 4/255 soit  1,5%, et dans la place libérée, stocker les 8 bits de chaque caractère du texte à crypter.
R       G       B
xxxxx123xxxxx456xxxxxx78
x= 0 ou 1, issus de l'image
1,2,3,4,5,6,7 = 0 ou 1, issus du caractère.
123, comme 456 varie de 0 à 7, tandis que 78 varie de 0 à 4

C'est à peu près ça (ou 8/256 et 5/256 ???)

Le programme de cryptage est pas mal, simple, modifiable...
Mais il eut été mieux que le dpr soit mieux conçu, par exemple en affichant les deux images, sans et avec texte

Commentaire de Millenod le 18/07/2005 13:46:34

@assemple
merci pour les corrections d'orthographe. Même si je connais les règles, j’ai tendance à me laisser aller sur les forums, sans pour autant donner dans un style sms.

@aymenk
Merci, j’avais pas tout à fait vu le tout comme ça. Bien que maintenant, grâce à ton explication, c’était « presque » limpide.
Je ne savais pas la subtilité sur la relation entre bits de poids faibles et couleur.

assemple a d’ailleurs très bien illustré ton explication.


Je vous remercie donc pour votre aide et m’avoir permis de mieux comprendre les subtilités de ce code, et de voir le soutien qu’offrent les membres du site.

Commentaire de paustmart le 24/08/2005 14:06:01

Extrèmement interessant ce cours sur les images. Merci.

Commentaire de CloudStrife le 14/01/2006 19:12:52

hum :) très intéressent :P

Par contre, une petite amélioration pourrait être faite :)
Une adaptation a la taille du texte et de l'image :)
Au plus le texte est court au moins il consomme d'octet... hors pourquoi prendre 8bits par pixel sur une image de 1024x768, si le texte fait que 5000 caractères ? :) dans ce cas 1bit suffit plus que largement (puisqu'il permet de codé 96ko dans le fichier).
Et pourquoi pas y planquer complètement un fichier et non que un texte ? :)

Commentaire de Bidou le 11/05/2006 09:38:21 administrateur CS

Je me suis permis de convertir ton code en C# :
http://www.csharpfr.com/codes/CACHER-TEXTE-DANS-IMAGE_37542.aspx

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Cacher un fichier texte [ par Furbyz ] Bonjour,Voila je créer un fichier .exe sous delphi 6 qui permet de lire le comptenue d'un fichier texte nommé info.txtjusque la pas de prob. Mais je v Recuperer certain node d'un TTreeView [ par Knolan ] Alors voila je voudrais sauvegarder dans un fichier texte le texte des nodes auquels sont affectés une certaine imageLe problème c'est pour entrer dan Convertir texte en image [ par ludopika ] Bonjour a tous,Je voudrais convertir un apercu de texte ( exemple avec rich edit) en image bitmap.J'ai essayé avec les memorystream et le clipboard ma Probleme de stream [ par ewertheimer ] Voila en faites je suis en train de creer un logiciel ou on charge des image dans un TImage et l'on envoie ensuite la photo par stream. Mon probleme : Texte sur une image [ par Gysmo ] Comment arrivé à écrir du texte sur une image puis la sauvegarder comme tel??!Merci Imprimer une image et un texte sur la même feuille [ par zeusnul ] Bonjour,J'aimerais pouvoir imprimer une image et un texte sur la même feuille, mais je suis dans l'incapacité de trouver ça dans l'aide de delphi. Je sauvegarder du texte en jpg [ par csweety13 ] Bonjour, je travaille en Delphi 6. J'ai un RicheEdit, dans lequel je copie du texte =>REdTxtJoint.PasteFromClipboard; Cependant, je voudrais enre Tentative d'OCR ... [ par cerber943 ] Bonjour à tous,J'ai un logiciel duquel je voudrais récupérer des données texte qui sont incrustées dans des images (c du flash). J'ai besoin de ca pou Un Label dans une image.. [ par sophie75 ] Salut à toutes et à tous,C'est mon premier message ici, en fait je débute en Delphi donc excusez-moi si mes questions peuvent parraître idiotes :-)J'a Ombre sur le texte d'un speedbutton [ par txo ] Bonjour,Je doit coder un menu similaire a celui que je joint en image.J'ai un problème pour créer un effet d'ombre sur les speedbutton.Si quelqu'un pe


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Juillet 2010
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,733 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales