Steganografia nelle immagini: tecnica LSB
Comprenda la steganografia Least Significant Bit (LSB) e come i dati segreti vengono incorporati nei pixel delle immagini.
Steganografia nelle immagini: tecnica LSB è una lezione Cryptology Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Cryptology Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Cryptology Academy include 4 lezioni in totale.
I pixel come triplette RGB
Un'immagine digitale a colori è composta da pixel. Ogni pixel memorizza tre valori dei canali cromatici: Rosso, Verde e Blu, ciascuno compreso tra 0 e 255 e memorizzato in un byte. Un'immagine di 1000x1000 pixel contiene quindi tre milioni di singoli byte di dati cromatici. Questo grande volume di dati offre spazio per nascondere piccole quantità di informazioni aggiuntive senza modifiche visibili.
Il bit meno significativo
In un valore a 8 bit, il bit meno significativo contribuisce al valore solo per 1 quando è impostato, rispetto a 128 per il bit più significativo. Invertire l'LSB di un canale di colore modifica il valore di un pixel al massimo di 1 su 255, una variazione del tutto impercettibile all'occhio umano. Per questo l'LSB è la posizione ideale in cui incorporare bit nascosti senza degradare la qualità visiva dell'immagine.
Memorizzare un byte su otto pixel
Per nascondere un byte (8 bit) di dati segreti, sovrascriviamo l'LSB di otto pixel consecutivi in un singolo canale di colore. Leggendo questi LSB in ordine si ricostruisce il byte nascosto originale. Questo è il più semplice algoritmo di steganografia LSB. La modifica dell'immagine è così lieve che coppie di pixel come (200, 201) appaiono visivamente identiche, mentre la differenza nell'LSB contiene dati significativi.
Calcolo della capacità del payload
Un'immagine BMP a colori a 24 bit con 1 milione di pixel contiene 3 milioni di byte di dati dei pixel e 3 milioni di singoli valori dei canali cromatici. Utilizzando un LSB per canale, possiamo nascondere 3 milioni di bit, ovvero 375 kilobyte di dati. In un file di supporto da 10 megapixel è possibile nascondere circa 3,75 megabyte. È una quantità sufficiente per migliaia di documenti di testo o piccoli eseguibili.
Impercettibilità visiva
Il sistema visivo umano è molto più sensibile alla tonalità e alla saturazione del colore che a minuscole differenze di luminosità pari a 1 unità. Un'immagine in cui ogni LSB è stato sostituito con dati segreti è visivamente indistinguibile dall'originale su un normale schermo. La metrica di qualità percettiva PSNR (rapporto segnale-rumore di picco) per la steganografia LSB è in genere superiore a 50 dB, ben al di sopra della soglia di percezione umana.
Posizionamento sequenziale o casuale dei bit LSB
L'approccio più semplice incorpora i bit nei pixel in sequenza, a partire dall'angolo in alto a sinistra. È facile da implementare e da rilevare: gli steganalisti sanno esattamente dove cercare. Un approccio più sicuro utilizza un generatore di numeri pseudocasuali inizializzato con una chiave condivisa per selezionare quali pixel e quali canali di colore ricevano i bit nascosti. Un analista privo della chiave non può determinare dove è stato incorporato il payload.
Selezione dei pixel basata su PRNG
Inizializzando un PRNG con una chiave segreta, mittente e destinatario possono generare indipendentemente la stessa sequenza pseudocasuale di coordinate dei pixel. Il mittente incorpora i bit solo in quelle coordinate; il destinatario estrae i bit dalle stesse coordinate e nello stesso ordine. Un attaccante che non conosce la chiave deve affrontare un problema di ricerca combinatoria, anche sapendo che è stata utilizzata la steganografia.
Strumenti di steganografia in pratica
OpenStego e Steghide sono strumenti open source diffusi che implementano la steganografia LSB con crittografia opzionale basata su password. Steghide supporta i formati JPEG, BMP, WAV e AU e utilizza una passphrase sia per selezionare le posizioni di incorporamento sia per crittografare il payload. L'uso di una passphrase garantisce che, anche se la presenza dei dati nascosti viene rilevata, per recuperarne il contenuto sia necessaria la passphrase.
JPEG e BMP per la steganografia
I file BMP memorizzano dati grezzi non compressi dei pixel, rendendo l'incorporamento LSB semplice e senza perdita. JPEG utilizza una compressione con perdita che scarta i dettagli ad alta frequenza e altera leggermente i valori dei pixel. I dati LSB incorporati in un JPEG prima del salvataggio verranno distrutti dalla ricompressione. La steganografia nei JPEG deve operare nel dominio della frequenza (coefficienti DCT) anziché sui valori dei pixel, il che è più complesso ma ampiamente utilizzato.
Compromesso tra capacità e rilevabilità
L'incorporamento di una quantità maggiore di dati aumenta la capacità del payload, ma anche la distorsione statistica. L'uso di due bit per canale raddoppia la capacità, ma rende più marcata la firma statistica. Strumenti come StegExpose possono rilevare i comuni strumenti LSB analizzando le distribuzioni delle coppie di pixel. In genere il payload sicuro viene mantenuto tra il 10 e il 15 percento della capacità del supporto per evitare di attivare gli algoritmi di rilevamento.
Steganalisi LSB: analisi delle coppie di pixel
L'analisi delle coppie di pixel sfrutta un artefatto prevedibile dell'incorporamento LSB. Le immagini naturali hanno una distribuzione caratteristica delle coppie di valori dei pixel; l'incorporamento LSB la altera leggermente, trasformando i valori dispari in pari o viceversa. Misurando il rapporto tra le coppie di pixel con valori ravvicinati, gli steganalisti possono stimare sia se è avvenuto un incorporamento sia, approssimativamente, quanti dati siano stati nascosti.
Capacità degli LSB
Un'immagine BMP a colori a 24 bit con 1.000.000 di pixel utilizza un LSB per ogni canale di colore. Quanti dati si possono nascondere?
Punti chiave della steganografia LSB
La steganografia LSB incorpora bit segreti nei bit meno significativi dei canali di colore dei pixel, causando variazioni visive impercettibili. Per nascondere un byte di dati servono otto pixel. Un'immagine da 1 megapixel può nascondere circa 375 KB utilizzando un LSB per canale. La selezione dei pixel basata su PRNG con una chiave condivisa migliora la sicurezza. Per i JPEG è necessario incorporare i dati nel dominio DCT. L'analisi statistica tramite le distribuzioni delle coppie di pixel può rilevare l'inserimento tramite LSB.
Domande Frequenti
La lezione «Steganografia nelle immagini: tecnica LSB» è gratuita?
Sì — il testo completo di «Steganografia nelle immagini: tecnica LSB» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Cryptology Academy, passa a CoddyKit PRO. Il corso Cryptology Academy include 4 lezioni in totale.
Cosa imparerò in «Steganografia nelle immagini: tecnica LSB»?
Comprenda la steganografia Least Significant Bit (LSB) e come i dati segreti vengono incorporati nei pixel delle immagini. Eserciti Cryptology Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Cryptology Academy?
Non è richiesta alcuna esperienza precedente. Cryptology Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.
Quanto tempo richiede la lezione «Steganografia nelle immagini: tecnica LSB»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Cryptology Academy?
Sì. Ogni lezione Cryptology Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Steganografia e crittografia a confronto
- Steganografia nelle immagini: tecnica LSB
- Steganografia audio e documentale
- Steganalisi: rilevare messaggi nascosti