Geheime Botschaften in Bildern verstecken.
Bibliothek herunterladen
Um die Steganographie-Bibliothek verwenden zu können, wird die folgende Datei benötigt. Sie muss im Projektverzeichnis gespeichert werden, damit die Einbindung klappt.
Die Datei liegt absichtlich in einem binären Format vor, so dass der Code nicht gelesen werden kann, da einige Zusatzaufträge zur eigenen Implementation der angebotenen Funktionalität auffordern.
Bibliothek importieren
Die Bibliothek kann mit dem bekannten import-Befehl importiert werden:
import steganoVerfügbare Variablen
stegano.RED_INDEX
stegano.GREEN_INDEX
stegano.BLUE_INDEX2
3
Der Index des gewünschten Farbkanals im Farb-Tupel (r, g, b).
stegano.RED_MASK
stegano.GREEN_MASK
stegano.BLUE_MASK2
3
Die Farb-Masken, damit mit Hilfe eines Wertes mehrere Farbkanäle angegeben werden können. Farbmasken können mit dem bitweisen logischen ODER kombiniert werden: stegano.RED_MASK|stegano.GREEN_MASK|stegano.BLUE_MASK
Wichtige Funktionen
embed()
Diese Funktion bettet eine Mitteilung in die angegebenen Farbkanäle der Bilddatei ein.
stegano.embed(filename, channel_mask, message)- Parameter
filename
Der Name der Bilddatei als String.channel_mask
Der/die zu verwendene(n) Farbkanal oder -kanäle alsint(Farb-Masken oben betrachten!).message
Der einzubettende Text als String.- Rückgabewert
- Die Funktion liefert als Resultat ein
Image-Objekt derpillow-Bibliothek.
reveal()
Diese Funktion extrahiert den versteckten Text aus den angegebenen Farbkanälen der Bilddatei.
stegano.reveal(filename, channel_mask)- Parameter
filename
Der Name der zu verwendenden Bilddatei als String.channel_mask
Der/die zu verwendene(n) Farbkanal oder -kanäle alsint(Farb-Masken oben betrachten!).- Rückgabewert
- Die Funktion liefert als Resultat den extrahierten Text als String.
get_lsb()
Diese Funktion extrahiert das least-significant Bit (LSB) aus der angegebenen Farbe beim gewünschten Index.
stegano.get_lsb(color, color_index)- Parameter
color
Die zu verwendende Farbe als Tupel ausint-Werten (wie z.B.(0, 127, 255)).color_index
Der zu verwendende Index alsint(z.B.0für den Rot-Anteil).- Rückgabewert
- Die Funktion liefert als Resultat den Wert des gewünschten LSB als
int.
set_lsb()
Diese Funktion setzt das LSB der angegebenen Farbe des Farb-Tupels auf einen bestimmten Wert.
stegano.set_lsb(color, bit, color_index)- Parameter
color
Die zu verändernde Farbe als Tupel ausint-Werten (wie z.B.(0, 127, 255)).bit
Das zu setzende Bit alsint.color_index
Der Index des zu verändernden Farbkanals alsint.