Nicola D'Agostino (.net) - Articoli, traduzioni, grafica, web

Il grande fratello nella stampante

Andiamo alla scoperta delle funzioni di watermarking nascoste in gran parte delle stampanti e dei programmi di grafica in commercio.

di Nicola D’Agostino

Immaginate che ogni volta che stampate un documento nella pagina venga incluso un codice segreto che serve a identificare il dispositivo che lo ha prodotto e -potenzialmente- l’utente che l’ha prodotto. Potrà sembrare fantascienza ma è purtroppo la realtà dei nostri giorni. Sono ormai numerosi i modelli di stampanti in commercio che includono una tecnologia imposta dal governo degli USA per contrassegnare con dei puntini minuscoli ogni pagina stampata e associarla alla stampante che l’ha generata. La scusa per l’inclusione di questa tecnologia è la lotta alle falsificazioni di documenti e soprattutto quella di carta moneta.

Il grande fratello è già tra noi

Non si tratta di una novità assoluta: già da un paio d’anni si è scoperto che nelle ultime versioni di stampanti, scanner e programmi commerciali di fotomanipolazione (Adobe Photoshop, JASC/Corel Paint Shop Pro, Ulead PhotoImpact) c’è una protezione simile, basata sul watermarking, imposta dai governi e dalle banche internazionali e che vieta nella pratica la scansione e la stampa di molte banconote mondiali (Euro incluso), a prescindere dallo scopo.

Entrambe le pratiche nascondono dietro il paravento del limitare crimini un inquietante approccio da “Grande Fratello”, impedendo, regolamentando, monitorando e schedando le attività di singoli cittadini e associazioni ritenuti sospetti. Un’organizzazione statunitense per la difesa della libertà e dei diritti civili ha scoperto che l’FBI ha già fatto uso del sistema per ammassare più di 1100 pagine di documenti prodotti dall’organizzazione negli ultimi anni, tra cui informazioni su altri gruppi di protesta come GreenPeace.

È per questo che l’EFF, Electronic Frontier Foundation, la storica associazione per i diritti nell’era digitale, si è attivata su un ulteriore fronte, l’indagine su come veniamo controllati tramite le stampe che facciamo e sta cercando di impedire questo monitoraggio e di ristabilire la privacy.
All’indirizzo www.eff.org/issues/printers ci sono vari documenti tra cui il più interessante ed aggiornato è quello della disamina di come “fa la spia” la stampante laser a colori Xerox Docucolor.

L’EFF in azione

I dati sono stati raccolti dall’EFF stampando una serie di fogli di test alla risoluzione di 600 dpi in varie copisterie e centri di stampa digitale. I fogli stampati sono stati poi esaminati con un microscopio digitale e, più semplicemente, con l’aiuto di un led blu e una lente di ingrandimento della ricerca di marchi o segni di riconoscimento. Nel caso della Xerox Docucolor si tratta di puntini gialli, o meglio di una griglia rettangolare di 15×8 minuscoli pallini giallastri. La griglia, delle dimensioni di mezzo pollice per un pollice (1,27cm per 2,54 cm), viene stampata ripetuta su ogni foglio che esce dalla laser, parallela ai bordi, anche se spesso irregolarmente, con spostamenti minuscoli nella distanza. Nella procedura di rilevamento l’EFF ha trascritto i puntini e le posizioni, li ha evidenziati (sono visibili a malapena) e li ha elaborati sotto Linux da shell script e programmi in C appositi e decifrare i pattern.

I puntini servono a contenere, codificati, fino a 14 byte da 7 bit di informazione, oltre a informazioni addizionali per la correzione d’errore. Metà di questi byte solitamente non vengono sfruttati arrivando ad una media di 10 byte di dati “utili”.(a chi ci spia). L’EFF ha realizzato anche un programma in CGI (che trovate sul sito e anche sul cd allegato a questo numero di Hackers Magazine) che aiuta ad estrarre dai pallini tutte le informazioni quali il numero di serie, la data, e l’orario.

i puntini gialli del watermarking

Carta canta, anzi parla

Vediamo in dettaglio cosa fanno i segni stampati di nascosto: la prima fila in alto e la prima colonna a sinistra sono dedicate alla parità e alla correzione di errore e servono a verificare che l’informazione sia stata letta correttamente e, nel caso, a indicare dove sono le discrepanze. Visto che viene omessa la prima fila per la parità ogni colonna viene letta dalla cima verso il fondo come un singolo byte di sette bit (invece che di otto) e i byte sono letti da destra a sinistra. Le colonne, segnate con i numeri dai tecnici dell’EFF, hanno questo significato, partendo dall’estrema destra:

spiegazione dei puntini gialli del watermarking

15: funzione sconosciuta (è spesso zero e costante in ogni stampante, potrebbe custodire informazioni sul modello o la configurazione)
14, 13, 12, 11 (ma talvolta il 14 è omesso): contengono il numero di serie della stampante, in decimali a codifica binaria, a due cifre per byte. Partendo dal basso sono tutte potenze di 2 e ad esempio se il seriale è 21052857 nella colonna 14 avremo pallini in corrispondenza dell’1, 4 e 16 che compongono 21, la prima coppia. Nella colonna 13 abbiamo segnati l’1 e il 4 che restituiscono la seconda coppia 05 e così via.
10: è un separatore ed è solitamente pieno di uno (cioè puntini)
9: inutilizzato e quindi vuoto
8: indica l’anno in cui la pagina è stata stampata ma viene omesso il secolo, quindi solo le due cifre finali.
7, 6, 5: indicano il mese, giorno in cui la pagina è stata stampata, sempre con il solito metodo.
4, 3: inutilizzati
2: indica il minuto della stampa (sì, il grande fratello è puntiglioso a tal punto)
1: serve per la parità come detto prima.

Come vedete è un metodo semplice, efficace e inquietante. Oltre a attivarsi per protestare consigliamo di cercare una stampante che non faccia la spia (vedere il riquadro) e sopratutto di tenere d’occhio gli sviluppi sul sito dell’EFF.

Le banconote proibite

Le banconote antifalsario condividono la stessa tecnica di base delle stampanti che fanno la spia. Nel caso della carta moneta il watermark non contiene informazioni ma viene “semplicemente” rilevato. Quando scanner, fotocopiatrici, stampanti ma anche programmi incappano in una serie di cerchietti e pallini poco visibili di colore giallo, verde o arancione disposti a cerchio tutto si blocca e si viene reindirizzati al sito del Central Bank Counterfeit Deterrence Group, www.rulesforuse.org

Dietro c’è un consorzio di 27 banche mondiali (tra gli altri USA, Canada, Europa e Giappone) che stanno spingendo da più di due anni tutti i produttori a inserire il codice che rileva il watermark e impedisce qualsiasi elaborazione di valuta cartacea e, si dice, anche varie monete fittizie.

Rilevazione anche dei soldi del Monpoli

Per chi vuole e deve acquisire e riprodurre soldi le strade sono due. La prima è rivolgersi ai governi. Ad esempio quello statunitense offre immagini a bassa qualità della nuova banconota da 50 dollari per chi ne ha bisogno (settore dell’istruzione ed altri usi leciti) e non esclude di fornire versioni a qualità più alta per progetti artistici. La seconda possibilità è di usare una periferica o un software che non contiene il sistema di vigilanza, tra cui le versioni precedenti alla CS di Photoshop o molto più semplicemente il software libero (e aperto) Gimp.

Messaggio di Photoshop

La lista delle spie

Oltre a indagare sui meccanismi di spia delle stampanti, l’EFF sta curando anche una lista di tutti i modelli che stampano i puntini rivelatori o meno. L’elenco comprende i principali nomi del settore come Brother, Canon, Dell, HP, Epson, Konica-Minolta, Kyocera, Lexmark, Ricoh, Tektronix, Xerox. Si salva qualche modello specifico e, almeno per ora, un unico marchio, Samsung.
Perché la lista sia sempre più precisa ed aggiornata è benvenuta la collaborazione: sul sito viene spiegato come effettuare delle prove e comunicare i risultati. Per l’opera di studio e ingegnerizzazione inversa esiste anche una lista di discussione: http://zork.net/mailman/listinfo/printers

Una versione di questo articolo è stata pubblicata su "Hackers Magazine"