
Un modulo di steganografia in puro Python.
Stegano, un modulo di steganografia in puro Python.
La steganografia è l'arte e la scienza di scrivere messaggi nascosti in modo che nessuno, oltre al mittente e al destinatario previsto, sospetti l'esistenza del messaggio: una forma di sicurezza attraverso l'oscuramento. Di conseguenza, le funzioni fornite da Stegano nascondono solo i messaggi, senza crittografia. La steganografia è spesso usata insieme alla crittografia.
$ poetry install stegano
Potrai usare Stegano nei tuoi programmi Python.
Se vuoi installare Stegano solo come strumento da riga di comando:
$ pipx install stegano
pipx installa gli script (disponibili a livello di sistema) forniti dai pacchetti Python in virtualenv separati, per isolarli dal tuo sistema e gli uni dagli altri.
È disponibile un tutorial.
Se vuoi usare Stegano nel tuo programma Python, ti basta importare la tecnica steganografica appropriata. Per esempio:
>>> from stegano import lsb
>>> secret = lsb.hide("./tests/sample-files/Lenna.png", "Hello World")
>>> secret.save("./Lenna-secret.png")
>>>
>>> clear_message = lsb.reveal("./Lenna-secret.png")
Per il nascondimento reversibile dei dati (il supporto originale può essere ripristinato esattamente dopo l'estrazione del messaggio), usa la tecnica dello spostamento dell'istogramma:
>>> from stegano import rdh
>>> secret = rdh.hide("./tests/sample-files/Lenna-grayscale.png", "Hello World")
>>> secret.save("./Lenna-secret.png")
>>>
>>> clear_message = rdh.reveal("./Lenna-secret.png")
>>> cover = rdh.recover("./Lenna-secret.png") # restores the original image
$ stegano-lsb hide -i ./tests/sample-files/Lenna.png -m "Secret Message" -o Lena1.png
$ stegano-lsb reveal -i Lena1.png
Secret Message
$ stegano-rdh hide -i ./tests/sample-files/Lenna-grayscale.png -m "Secret Message" -o stego.png
$ stegano-rdh reveal -i stego.png
Secret Message
$ stegano-rdh recover -i stego.png -o cover.png # cover.png == the original image
$ stegano-lsb hide -i ./tests/sample-files/Lenna.png -m 'Secret Message' --generator eratosthenes -o Lena2.png
Il messaggio verrà disperso nell'immagine, seguendo un insieme descritto dal crivello di Eratostene. Sono disponibili altri insiemi. Puoi anche usare i tuoi generatori.
Questo renderà un'eventuale steganalisi più complicata.
$ python -m unittest discover -v
Esecuzione del controllo statico dei tipi:
$ mypy stegano
I contributi sono benvenuti. Se vuoi contribuire a Stegano, ti consiglio vivamente di installarlo in un ambiente virtuale Python con poetry.
Se lo desideri e se ti piace Stegano, puoi donare tramite GitHub Sponsors:
oppure con Bitcoin a questo indirizzo:
bc1q56u6sj7cvlwu58v5lemljcvkh7v2gc3tv8mj0e
Grazie!
Questo software è concesso in licenza sotto la GNU General Public License versione 3
Copyright (C) 2010-2026 Cédric Bonhomme
Per maggiori informazioni, è disponibile l'elenco degli autori e dei contributori.