Autor Beitrag
Fiete
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 611
Erhaltene Danke: 347

W7
Delphi 6 pro
BeitragVerfasst: Di 10.10.23 15:56 
Moin,
das Programm versteckt Texte in einem BitMap. Dazu müssen ein Bild UND ein Text vorhanden sein!
Beim Decodieren reicht natürlich das BitMap. Für die Codierung bzw. Decodierung müssen Sender
und Empfänger eine Kennung vereinbaren. Für die Bilder bild01.bmp bis bild04.bmp
aus dem BWInf-Wettbewerb ist KEINE Kennung nötig; der Startpunkt ist hier immer (0,0).
Stegano2023
Die Idee stammt aus dem BWInf2023. Dort wird nur das Decodieren gefordert, so habe ich noch eine
Prozedur zum Verschlüsseln kreiert.

Aus der Kennung wird ein HashWert berechnet, der den Zufallsgenerator initialisiert.
Der Startpunkt wird zufällig berechnet. Jedes Pixel wird in die RGB-Werte zerlegt. Nun ist R die
ASCII-Codierung des ersten Zeichens der Nachricht. Die Zahlen G und B beschreiben, wie viele Pixel
man sich in dem Bild nach rechts und nach unten bewegen muss, um das nächste veränderte
Pixel zu finden. Falls man bei der Rechtsbewegung über den rechten Bildrand kommt, beginnt man in
in derselben Zeile wieder ganz vorn und zählt von dort aus weiter; falls man bei der Bewegung nach
unten über den unteren Bildrand kommt, macht man in derselben Spalte von oben weiter. Vom erreichten
Pixel aus fährt man genauso fort. Das Ende der Nachricht wird mit G = 0 und B = 0 signalisiert.
Abschließend kann das veränderte BitMap unter <alter Dateiname>+< Geheim.bmp> gespeichert werden.
Die Decodierung erfolgt analog.

Um viel Text wie Moses1.txt zu codieren wird eine große Bitmap benötigt, ca. 11MB - 1653x2338

Viel Spaß beim Testen.
Gruß Fiete
Einloggen, um Attachments anzusehen!
_________________
Fietes Gesetz: use your brain (THINK)

Für diesen Beitrag haben gedankt: Andreas_500, Narses, Sinspin
Sinspin
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1334
Erhaltene Danke: 118

Win 10
RIO, CE, Lazarus
BeitragVerfasst: Mi 11.10.23 09:19 
Du als Senior, befasst dich mit Junior Aufgaben und verhilfst ihnen zu besonderem Glanz ;-)

_________________
Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?