NotizieCryptoHo scansionato l’intera blockchain di Bitcoin alla ricerca di immagini. Ecco cosa ho trovato

Ho scansionato l’intera blockchain di Bitcoin alla ricerca di immagini. Ecco cosa ho trovato

Autore: Bitcoin Magazine·

Punti chiave

  • L’autore ha sincronizzato un full node Bitcoin Core su un hard disk da 4 terabyte, un processo che ha richiesto circa 72 ore.
  • PhotoRec ha scansionato più di un terabyte di dati della blockchain per oltre 11 ore senza recuperare immagini significative.
  • La scansione ha prodotto alcuni falsi positivi, tra cui 8 file ICO e 4 file PNG identici che non mostravano immagini reali.
  • L’articolo afferma che Bitcoin Core usa XOR per scrambolare i dati della blockchain e il set UTXO mentre sono archiviati su disco.
  • Secondo il pezzo, i normali operatori di nodi Bitcoin in genere non troveranno dati arbitrari o immagini identificabili nei dati della blockchain archiviati.
Ho scansionato l’intera blockchain di Bitcoin alla ricerca di immagini. Ecco cosa ho trovato

Bitcoin Magazine Ho scansionato l’intera blockchain di Bitcoin alla ricerca di immagini. Ecco cosa ho trovato

Ho scansionato la blockchain di Bitcoin alla ricerca di immagini, e il risultato è stato inaspettato. Online si è parlato molto dei dati arbitrari e dei contenuti che si possono trovare sulla blockchain di Bitcoin. Questa possibilità ha dato origine a una nicchia artistica, e ha anche alimentato un movimento contro le “transazioni non monetarie” sulla rete Bitcoin. Dal modo in cui ne parlano sostenitori e detrattori, si potrebbe immaginare la blockchain come un muro coperto di graffiti.

Ho deciso di verificare direttamente l’affermazione: esistono davvero immagini sulla blockchain, e cosa significa questo per i Bitcoiners che vogliono eseguire il proprio full node e massimizzare la propria sovranità finanziaria? Il mio approccio era semplice. Ho comprato un nuovo hard disk per archiviare la blockchain e poi ho eseguito un classico software di recupero immagini sui dati — il tipo di strumento usato per recuperare immagini da hard disk danneggiati e individuare dati immagine grezzi.

Ho scelto PhotoRec, un programma open source per il recupero di immagini in circolazione da oltre 20 anni. Il software è progettato per individuare file immagine nei dati grezzi. Può recuperare immagini e altri formati di file da hard disk guasti o danneggiati. Viene anche spesso usato per recuperare i file wallet.dat persi dei primi tempi di Bitcoin, prima della diffusione delle seed word.

Sincronizzazione del full node Bitcoin

Per archiviare l’intera blockchain di Bitcoin, ho comprato un disco da 4 terabyte per un paio di centinaia di dollari. Ho installato l’ultima versione di Bitcoin Core e ho iniziato a sincronizzare la catena. Il processo, che comporta il download e la verifica dell’integrità contabile di tutte le transazioni nella storia di Bitcoin, ha richiesto circa 72 ore, cioè tre giorni, con Bitcoin Core che lo eseguiva automaticamente in background. Ho svolto l’operazione su una macchina da gaming altrimenti potente; il principale collo di bottiglia era il disco, lento nella lettura e scrittura dei dati durante la sincronizzazione della blockchain di Bitcoin.

La parte più lenta del processo riguarda il set degli output di transazione non spesi, o UTXO. Quando qualcuno sincronizza la blockchain, ogni valore di transazione non speso, cioè ogni saldo positivo, viene organizzato nel set UTXO. Man mano che quei valori vengono spesi, vengono rimossi dal set e viene aggiunto il nuovo indirizzo che riceve i satoshi.

Su un disco rigido, questo processo di indicizzazione UTXO avrebbe potuto richiedere tre settimane secondo alcune stime, quindi per accelerarlo il mio clanker, un agente AI, ha suggerito di indicizzare prima i dati in RAM e poi riportarli sul disco da 4 terabyte. Sebbene l’intero processo abbia richiesto tre giorni in background, un SSD avrebbe potuto completare il lavoro in circa un giorno. Gli SSD sono molto più veloci dei dischi rigidi, ma sono anche più costosi — spesso quattro volte tanto, o più.

Una volta che la blockchain è stata completamente scaricata e verificata, ho spostato l’indice UTXO dalla RAM al disco e avviato il software Bitcoin. La catena era completamente sincronizzata e il wallet era pronto all’uso. A quel punto, la questione riguardava meno il trovare opere nascoste e più il capire se i normali operatori di nodi debbano mai preoccuparsi della comparsa di dati arbitrari nella catena archiviata. Il passo successivo era recuperare eventuali immagini memorizzate sulla blockchain.

Recupero di immagini sulla blockchain con PhotoRec

Con l’intera blockchain di Bitcoin sul mio disco, ho spento Bitcoin Core e chiesto al mio clanker, l’agente Cursor AI, di eseguire PhotoRec 7.2 sul disco. Per impostazione predefinita, PhotoRec cerca i formati jpg, png, gif, tif, bmp, ico, psd e raw. Il processo è andato avanti per oltre 11 ore sui dati della blockchain e alla fine non ha trovato nulla.

Dopo aver scansionato più di un terabyte di dati della blockchain per mezza giornata, non è emersa alcuna immagine. La pagina wiki di PhotoRec offre un semplice esempio del funzionamento del software: “PhotoRec identifica un file JPEG quando un blocco inizia con: 0xff, 0xd8, 0xff, 0xe0, 0xff, 0xd8, 0xff, 0xe1, o 0xff, 0xd8, 0xff, 0xfe.” In altre parole, il programma analizza i dati sul disco alla ricerca di sequenze di byte che indicano la presenza di un file immagine.

Il programma può generare falsi positivi. Ha salvato 8 file ICO e 4 file PNG identici che, una volta aperti, non mostrano alcuna immagine, come si vede nell’immagine qui sotto. In termini pratici, non è stata trovata alcuna immagine significativa di qualsiasi tipo.

Dove sono finiti i Jpeg? I trucchi magici di XOR

Com’è possibile? Per anni, nel mondo crypto si è parlato di NFT e della possibilità di incidere dati immagine sulla blockchain di Bitcoin. In questa nicchia sono circolati milioni di dollari, e attorno al tema è ancora in corso una vera e propria guerra culturale. È davvero possibile che sulla catena non ci siano immagini?

I rischi legati ai dati arbitrari sono stati discussi e previsti da tempo nei circoli di sviluppo di Bitcoin Core, già nel 2011. XOR, una semplice tecnica di offuscamento dei dati, viene usato per scrambolare tutti i dati della blockchain mentre sono memorizzati su un hard disk.

In termini semplici, i computer lavorano con 0 e 1, e XOR confronta due bit e restituisce 1 se sono diversi o 0 se sono uguali. Nel caso di Bitcoin, XOR confronta ogni bit dei dati della blockchain con una chiave casuale generata durante l’installazione iniziale, producendo dati a riposo che altri programmi non possono interpretare. Quando il software Bitcoin è in esecuzione, dispone della chiave necessaria per decifrare quei dati e usarli. XOR è anche molto veloce, quindi non incide in modo significativo sulle prestazioni. Ecco un esempio del blocco genesis di Bitcoin prima e dopo XOR.

XOR è attualmente applicato sia ai dati della blockchain sia al set UTXO. Se ne è parlato inizialmente nel 2014, quando il software antivirus ha iniziato a scambiare i dati della blockchain per codice virale. Il software antivirus avrebbe quindi messo in quarantena un blocco, corrompendo i dati della blockchain e mandando in crash Bitcoin, rendendo impossibile la sincronizzazione. Entro la fine del 2015, XOR era stato implementato sui dati a riposo del set UTXO e nel 2024 è stato implementato su tutti i dati della blockchain a riposo.

Per inciso, il processo XOR significa che nessun dato arbitrario può essere identificato o estratto dalla blockchain senza aggirare intenzionalmente XOR, un’operazione che non è necessaria per l’uso monetario di Bitcoin. Poiché il software Bitcoin Core mantiene un semplice database della posizione di ogni blocco scrambolato, può recuperare i dati, decifrarli e usarli facilmente in modo mirato. Sincronizzare Bitcoin in forma non scrambolata è un processo personalizzato che può richiedere tanto tempo quanto una sincronizzazione da zero, poiché in pratica deve riscrivere l’intero terabyte di dati in un nuovo ordine, e per chi desidera soltanto i normali vantaggi di privacy e sicurezza derivanti dall’esecuzione di un nodo Bitcoin non c’è molta utilità in questo. Quindi, per la stragrande maggioranza delle copie dei dati della blockchain di Bitcoin conservate sui computer dei normali Bitcoiners in tutto il mondo, non ci sono di fatto dati arbitrari o immagini identificabili. Sorprendente, lo so. Sentitevi liberi di eseguire voi stessi il test di PhotoRec sul vostro nodo.

Questo articolo, I Scanned the Entire Bitcoin Blockchain for Images. What I Found Will Shock You, è apparso per la prima volta su Bitcoin Magazine ed è scritto da Juan Galt.