steghide

Section: User Commands (1)
Updated: 14 May 2002
Index  

NAME

steghide - a steganography program  

SYNOPSIS

steghide command [ arguments ]  

DESCRIPTION

Steghide e' un programma che nasconde un messaggio in un contenitore rimpiazzando alcuni dei bit meno significativi del file contenitore con i bit componenti il messaggio. In seguito il messaggio sara' invisibile e potra' essere estratto solo attraverso l'apposita password. Il risultato dell'operazione di sostituizione dei bit viene detto stego file.

I formati supportati sono jpeg, bmp, wav ed au. Tutti questi tipi di file possono essere utilizzati come contenitori. Non ci sono restrizioni sul formato del file da nascondere.

Il testo verra' cifrato prima di essere inserito nel contenitore. L'algoritmo di cifratura e' il blowfish utilizzato insieme all'algoritmo di hash MD5 ( per creare una chiave a partire dalla password per inizializzare il blowfish).

Insieme al file anche il nome originale e checksum cr32 vengono inseriti nel contenitore.

 

COMMANDS

Il primo argomento da passare a steghide dovra' essere per forza uno di questi comandi. Ai comandi embed ed extract e' possibile passare alcune opzioni. Per una descrizione piu' accurata vedi la sezione ARGUMENTS.
embed, --embed
Nasconde un file in chiaro all'interno di un contenitore, il risultato e' detto stego file. Necessita delle seguenti opzioni: il nome del file contenitore (-cf). il nome del file in chiaro (-pf), un nome per il file risultante (-sf).
extract, --extract
Estrae i dati in chiaro dal contenitore. Necessita delle seguenti opzioni: il nome del file contenente i dati (-sf), il nome del file in chiaro da creare (-pf).
version, --version
Visualizza la versione.
license, --license
Visualizza la licenza.
help, --help
Visualizza l'help.

 

ARGUMENTS

-pf, --plainfile
Questa opzione puo' essere utilizzata con i comandi embed ed extract. Quando utilizzate con il comando embed definisce il file contenente il messaggio.

Nel secondo caso invece, un file con il nome passato a questa opzione viene creato e i dati in chiaro nascosti nel file contenitore vengono scritti su di esso.

Si noti che steghide insirisce il nome originale del file in chiaro all' interno del contenitore, dunque in caso si ometta l'opzione -pf quando si estragga un messaggio, quest'ultimo verra' salvato nella directory attuale con il suo nome originale.

Se si utilizza l'opzione -pf - lo standard input e lo standard output saranno utilizzati al posto di un file. La medesima notazione puo' essere utilizzata con -cf e -sf.

-cf, --coverfile
Definisce il file da utilizzare come contenitore. -cf mycover.bmp indica a steghide di usare mycover.bmp come contenitore.

Questa opzione puo' essere utilizzata solo con il comando embed.

-sf, --stegofile
Indica lo stego file risultante. Quando quest'opzione viene utilizzata con il comando embed, viene generato un file con quel nome. Con il comando extract invece si da per scontato che il file esista gia' e contega un messaggio.

Il formato del file contenitore (e dello stego file) viene rilevato automaticamente in base all'header del file, l'esetnsione non e' importante.

-p, --passphrase
Usa la stringa che segue l'opzione come password. Se e' piu' lunga di una parola va racchiusa tra apici. es: -p "a very long passphrase".

Se la passwordnon viene specificata dopo -p, viene richiesta a video.

-d, --distribution
Indica il metodo utilizzato per calcolare la posizione dei bits nascosti nel contenitore. Puoi scegliere tra due metodi differenti: un intervallo costante tra due bits (detto "cnsti") o un intervallo pseudo casuale detto ("prndi").

Questa opzione puo' essere utilizzata solo con il comando embeed.

Per utilizzare il metodo cnsti e' necessario invocare steghide con la seguente opzione: -d cnsti <n> dove <n> e' l'intervallo che si intende usare, ovvero il numero di bytes tra un bit nascosto ed il successivo.

Non specificare questa opzione significa fare in modo che steghide utilizzi il metodo prndi: -d prndi <n> dove <n> significa massimo intervallo. L'intervallo medio sara' circa la meta' del massimo specificato.

Di solito non ce' bisogno di utilizzare l'opzione -d poiche' di default verra' indicato il metodo prndi con il massimo intervallo possibile per un ceto tipo file in chiaro e contenitore.

Se viene indicata l'opzione -d cnsti Esi omette <n>, viene utilizzato il massimo intervallo possibile. -d prndi e' il default.

Si noti che cnsti e' il metodo meno sicuro e non andrebbe utilizzato.

-k, --checksum
Inserisce un checksum crc32 del file inchiaro nel contenitore. E' il defualt.

-K, --nochecksum
Il checksum non viene calcolato. E' utile nel caso in cui i dati in chiaro contengano gia' un qualche tipo di checksum.

-k e -K Possono essere utilizzate solo con il comando embed.

-n, --embedplainname
Inserisce il nome del file in chiaro nel contenitore. E' il defualt. Viene utilizzato al momento dell'estrazione.

-N, --notembedplainname
Non inserisce il nome del file in chiaro.

-n e -N Possono essere utilizzate solo con il comando embed.

-c, --compatibility
Questa opzione fa in modo che steghide usi il modulo blowfish-compat delle libreri libmcrypt che garantisce la compatibilita' con la versione delle librerie < 2.4.9.

Use this switch if you have a libmcrypt version >= 2.4.9 and want to send an embedded message to a person that has a libmcrypt version < 2.4.9. Also use this switch if you have a libmcrypt version >= 2.4.9 and want to read a message that has been embedded by a person with a libmcrypt version < 2.4.9.

-v, --verbose
Visualizza informazioni dettagliate sul processo di estrazione o inserimento in corso.

-q, --quiet
Sopprima ogni messaggio d'errore.

-f, --force
Sovrascrive sempre file gia' presenti.

-e, --encryption
Cifra i dati in chiaro prima di inserirli. E' il default. You can use it to specify explicitly that encryption should be used.

-E, --noencryption
non cifra i dati in chiaro prima di inserirli. Si noti che inserire dati non cifrati e' meno sicuro.

-n e -N Possono essere utilizzate solo con il comando embed.

-h, --sthdrencryption
Cifra lo stego header prima di inserirlo. L'header e' composto di alcune informazioni amministrative, ad esempio la dimensione dei dati in chiaro.

E' il default.

-H, --nosthdrencryption
non cifra l'header prima di inserlo. Non e' molto consigliabile.

Nota importante: se il mittente di un file steganografato non ha cifrato l'header (utilizzando l'opzione -H) allora chi riceve il messaggio deve anche usare l'opzione -H per estrarre il messaggio.

 

EXAMPLES

Per inserire il file secret.txt el file jpeg cvr.jpg e salvarne il risultato in stg.jpg digita:


  $ steghide embed -pf secret.txt -cf cvr.jpg -sf stg.jpg
  Enter passhrase:
  Re-Enter passphrase:

Per estrarre i dati:


  $ steghide extract -sf stg.jpg
  Enter passphrase:
  writing plain file to "secret.txt".

Quando inserisci i dati, il nome del file originale viene salvato anch'esso: il comando extract crea il file secret.txt nella directory corrente ed estra in esso i dati contenuti nel file steganografato.

con l'opzione -pf e' possibile forzare il nome del file risultante.


  $ steghide extract -sf stg.jpg -pf plain.txt
  Enter passphrase:
  writing plain file to "plain.txt".

Puoi utilizzare una pipe per passare i dati a steghide dallo standard input.


  $ gzip -c pln.txt | steghide embed -cf cvr.bmp -sf stg.bmp -pf - -p "This is a passphrase."

Per estrarre e visualizzare al volo il risultato puoi provare


  $ steghide extract -sf stg.bmp -pf - -p "This is a passphrase." | gunzip | less

Quando si utilizza lo standard input o lo standard output e' sempre necessario specificare una password sulla riga di comando con l'opzione -p.

 

AUTHOR

Stefan Hetzl <shetzl@teleweb.at>


 

Index

NAME
SYNOPSIS
DESCRIPTION
COMMANDS
ARGUMENTS
EXAMPLES
AUTHOR

This document was created by man2html, using the manual pages.
Time: 21:39:11 GMT, June 12, 2002