MoneroSwapper MoneroSwapper
Guide

Firma Offline Transazioni Monero: Guida Air-Gapped Cold Spending

MoneroSwapper Team · · · 11 min read · 61 views

Cos'è la Firma Offline delle Transazioni?

La firma offline delle transazioni è una tecnica di sicurezza che mantiene le tue chiavi private di spesa su un dispositivo che non si connette mai a internet, permettendo comunque di inviare transazioni. Il concetto è semplice: crei la transazione su un portafoglio watch-only connesso a internet, trasferisci i dati della transazione non firmata su un dispositivo air-gapped che detiene le chiavi private, la firmi lì, e poi ritrasferisci la transazione firmata al dispositivo online per la trasmissione alla rete Monero.

Questo approccio fornisce il massimo livello di sicurezza per i tuoi fondi Monero, poiché la chiave di spesa privata non esiste mai su alcun dispositivo con accesso di rete. Anche se il computer online fosse completamente compromesso da malware, keylogger o trojan ad accesso remoto, l'attaccante non può rubare i tuoi fondi perché la chiave di spesa è fisicamente isolata su un dispositivo separato.

Quando È Necessario Questo Livello di Sicurezza?

La firma offline delle transazioni introduce una complessità significativa nel processo di spesa. Non è necessaria per le transazioni quotidiane di piccole dimensioni, ma diventa sempre più giustificata man mano che il valore delle tue disponibilità di Monero cresce. Considera di implementare questo approccio se:

  • Detieni risparmi XMR sostanziali che rappresenterebbero una perdita finanziaria significativa se rubati.
  • Operi in un ambiente ad alto rischio dove attacchi mirati ai tuoi dispositivi sono plausibili.
  • Gestisci fondi per altri e hai la responsabilità fiduciaria di mantenere i massimi standard di sicurezza.
  • Vuoi un cold storage che rimanga spendibile senza importare la frase seed in un hot wallet ogni volta.

Requisiti di Configurazione

L'Architettura a Due Dispositivi

Hai bisogno di due dispositivi separati. Il primo è il tuo dispositivo online, che esegue un portafoglio watch-only connesso alla rete Monero. Questo dispositivo può vedere il tuo saldo e le transazioni in entrata ma non può spendere fondi perché non ha la chiave di spesa privata. Il secondo è il tuo dispositivo air-gapped, che contiene il portafoglio completo con entrambe le chiavi di visualizzazione e spesa, ma non ha nessuna connettività di rete.

Il dispositivo air-gapped dovrebbe idealmente essere un computer o laptop dedicato con la scheda wireless fisicamente rimossa o disabilitata a livello di firmware. Spegnere semplicemente il WiFi via software non è sufficiente perché il malware può riabilitarlo. Per la massima sicurezza, usa un dispositivo che non sia mai stato connesso a internet o che sia stato installato di fresco da supporti verificati.

Il Mezzo di Trasferimento Dati

Poiché il dispositivo air-gapped non ha connessione di rete, hai bisogno di un mezzo fisico per trasferire dati tra i due dispositivi. Le due opzioni più comuni sono:

  • Unità flash USB: veloce e conveniente, ma introduce un piccolo vettore di attacco poiché il malware può diffondersi tramite USB. Dedica un'unità USB specifica solo a questo scopo e non usarla per nient'altro.
  • Codici QR: elimina completamente il rischio di trasmissione via USB. Il dispositivo air-gapped mostra un codice QR sullo schermo, che viene scannerizzato dal dispositivo online con una fotocamera. Questo metodo è più lento ma è considerato più sicuro perché il traffico è unidirezionale.

Il Flusso di Lavoro Passo per Passo

Fase 1: Configurazione del Portafoglio Watch-Only

Prima di tutto, devi creare il tuo portafoglio principale sul dispositivo air-gapped. Usa il CLI Monero o una wallet GUI per generare un nuovo portafoglio. Questo processo crea la tua seed phrase, la chiave di visualizzazione privata e la chiave di spesa privata. Annota la seed phrase su carta e conservala in modo sicuro, lontano da entrambi i dispositivi.

Successivamente, esporta le informazioni necessarie per creare un portafoglio watch-only. Dal dispositivo air-gapped, esegui il comando export_outputs per creare un file che contiene i dati di output necessari per il portafoglio watch-only. Trasferisci questi dati al dispositivo online tramite USB o QR code, e poi usa il comando monero-wallet-cli --generate-from-view-key per creare il portafoglio watch-only fornendo la chiave di visualizzazione e l'indirizzo del portafoglio.

Fase 2: Esportazione degli Output (export_outputs)

Prima di poter firmare una transazione, il dispositivo air-gapped deve sapere quali output non spesi (UTXO nella terminologia Monero) sono disponibili nel tuo portafoglio. Questo è il primo passaggio del processo di trasferimento dei dati e deve essere ripetuto ogni volta che vuoi effettuare una transazione, in quanto le informazioni sugli output cambiano man mano che ricevi nuovi fondi.

Sul dispositivo online con il portafoglio watch-only sincronizzato, esegui export_outputs. Questo crea un file che descrive gli output associati al tuo portafoglio. Questo file non contiene informazioni sensibili sufficienti per spendere i tuoi fondi, ma è necessario affinché il dispositivo air-gapped crei una transazione valida. Trasferisci questo file all'air-gapped tramite USB o QR code.

Fase 3: Import degli Output sul Dispositivo Air-Gapped

Sul dispositivo air-gapped, importa il file degli output usando il comando import_outputs. Questo aggiorna il portafoglio air-gapped con le informazioni sui fondi disponibili. Il portafoglio air-gapped può ora costruire una transazione valida sapendo quali output può spendere e per quale importo.

Fase 4: Costruzione e Firma della Transazione (sign_transfer)

Ora costruisci la transazione che desideri effettuare sul dispositivo air-gapped. Usa il comando transfer normalmente, specificando l'indirizzo di destinazione e l'importo. Il portafoglio creerà la transazione ma, invece di trasmetterla, ti chiederà di salvare i dati non firmati usando sign_transfer. Questo processo firma crittograficamente la transazione con la tua chiave di spesa privata.

Il risultato è un file di transazione firmata che può essere trasmesso alla rete Monero senza rivelare la chiave di spesa privata. La firma crittografica dimostra che il legittimo proprietario del portafoglio ha autorizzato la transazione, anche se la chiave privata non lascia mai il dispositivo air-gapped.

Fase 5: Trasmissione della Transazione (submit_transfer)

Trasferisci il file della transazione firmata al dispositivo online. Sul portafoglio watch-only, usa il comando submit_transfer per trasmettere la transazione firmata alla rete Monero. Il portafoglio watch-only verifica la firma e trasmette la transazione ai nodi della rete. Da questo momento, la transazione è nella mempool e sarà inclusa in un blocco dai miner di Monero.

Aspetti di Sicurezza Specifici per Monero

Privacy Intrinseca di Monero nelle Transazioni Air-Gapped

Monero offre vantaggi di privacy unici rispetto ad altre criptovalute nel contesto della firma offline. Le firme ad anello (ring signatures) di Monero garantiscono che anche se qualcuno intercetta i file di dati trasferiti tra il dispositivo online e quello air-gapped, non può determinare con certezza quale output stai spendendo. Questo è in contrasto con Bitcoin, dove la firma di una transazione rivela chiaramente quale UTXO viene speso.

Il protocollo RingCT (Ring Confidential Transactions) di Monero garantisce inoltre che gli importi delle transazioni siano nascosti anche nei file di transazione trasferiti tra i dispositivi. Questo significa che anche in caso di compromissione del mezzo di trasferimento dati, l'attaccante non può determinare quanto XMR stai inviando o ricevendo, proteggendo ulteriormente la tua privacy finanziaria.

Key Images e Protezione dal Double-Spend

Monero utilizza un sistema di key image per prevenire il double-spending. Ogni output speso genera una key image unica che viene registrata sulla blockchain. Quando importi gli output sul dispositivo air-gapped, includi anche le key image degli output già spesi, che il dispositivo air-gapped utilizza per evitare di tentare di spendere output già utilizzati. Questo meccanismo funziona in modo trasparente attraverso il processo di export_outputs/import_outputs.

Considerazioni Pratiche per gli Utenti Italiani

Documentazione per il Fisco Italiano

Anche quando si usa la firma offline per massimizzare la privacy, gli utenti italiani devono comunque mantenere registri accurati delle transazioni per gli obblighi fiscali verso l'Agenzia delle Entrate (AdE). Il sistema air-gapped non esenta dalle responsabilità fiscali. Ogni transazione in uscita, comprese quelle verso exchange per la conversione in euro, è un evento fiscalmente rilevante che deve essere documentato.

Si raccomanda di mantenere un registro privato delle transazioni effettuate, con date, importi e indirizzi di destinazione. Questo registro dovrebbe essere conservato in modo sicuro, ad esempio in forma cifrata o su carta, separato dal dispositivo air-gapped stesso. La CONSOB (Commissione Nazionale per le Società e la Borsa) e l'AdE stanno progressivamente aumentando la loro attenzione alla conformità fiscale in ambito crypto, rendendo la documentazione ancora più importante.

Compatibilità con i Portafogli Hardware

Per chi non vuole gestire la complessità di due computer separati, alcuni portafogli hardware come Ledger e Trezor offrono un'alternativa parziale. Questi dispositivi firmano le transazioni internamente senza esporre la chiave privata al computer host. Tuttavia, la compatibilità completa con Monero nei portafogli hardware è ancora limitata rispetto ad altre criptovalute, e i portafogli hardware potrebbero non supportare tutte le funzionalità avanzate di Monero come la firma offline completa con export_outputs.

Il metodo air-gapped descritto in questa guida rimane la soluzione più sicura e versatile per la cold storage di Monero, in quanto non dipende da hardware proprietario e può essere implementato con qualsiasi computer che esegua il software ufficiale Monero.

Acquistare XMR Prima di Configurare la Cold Storage

Prima di configurare il tuo sistema di firma offline, hai bisogno di acquisire XMR da trasferire nel tuo cold wallet. MoneroSwapper ti permette di acquistare Monero scambiando Bitcoin, Ethereum o altre criptovalute con XMR in modo rapido e senza KYC. Una volta ricevuto l'XMR sul tuo portafoglio iniziale, puoi trasferirlo al tuo indirizzo di cold storage generato sul dispositivo air-gapped, completando così la configurazione del tuo sistema di sicurezza avanzato.

Ricorda che il trasferimento iniziale al cold wallet è visibile sulla blockchain Monero, ma grazie alle proprietà di privacy di XMR, i successivi movimenti di fondi resteranno privati. Questo garantisce che il tuo patrimonio conservato in cold storage rimanga protetto sia da attaccanti informatici, grazie all'architettura air-gapped, sia da sorveglianza della blockchain, grazie alla crittografia nativa di Monero.

Errori Comuni da Evitare

Esporre la Chiave di Spesa in un Ambiente Online

L'errore più comune e fatale nell'implementazione della firma offline è la tentazione di "semplificare" il processo importando temporaneamente la seed phrase o la chiave di spesa privata in un portafoglio online. Anche se lo fai solo per una singola transazione urgente, questo compromette irrimediabilmente la sicurezza del tuo sistema. Una volta che la chiave di spesa è stata esposta a un ambiente online, devi considerare che potrebbe essere stata compromessa e trasferire immediatamente i fondi a un nuovo portafoglio air-gapped.

Usare un Dispositivo Air-Gapped Non Dedicato

Un altro errore frequente è usare il dispositivo air-gapped anche per altre attività, come navigare su internet "occasionalmente" o installare applicazioni non correlate. Un dispositivo che è stato precedentemente connesso a internet o che esegue software di origine sconosciuta potrebbe essere già compromesso. Il dispositivo air-gapped deve essere completamente dedicato alla gestione della firma Monero e non deve essere usato per nessun altro scopo.

Non Verificare le Transazioni Prima di Firmare

Prima di firmare una transazione sul dispositivo air-gapped, verifica sempre attentamente l'indirizzo di destinazione e l'importo. Assicurati che corrispondano esattamente a ciò che intendi inviare. Un attaccante sofisticato potrebbe potenzialmente manipolare il file di dati della transazione durante il trasferimento tra i dispositivi, sebbene questo tipo di attacco sia molto raro. La verifica manuale aggiunge un ulteriore livello di controllo che può prevenire errori costosi.

Aggiornare il Software Monero sul Dispositivo Air-Gapped

Il software Monero riceve aggiornamenti regolari che includono miglioramenti alla sicurezza, correzioni di bug e nuove funzionalità. Aggiornare il software sul dispositivo air-gapped richiede attenzione particolare: devi scaricare il nuovo software su un computer online, verificare la firma crittografica del pacchetto usando la chiave pubblica degli sviluppatori Monero, e solo allora trasferire il file al dispositivo air-gapped tramite USB.

Non saltare mai la verifica della firma: questo è il passaggio che ti protegge da versioni del software Monero contraffatte o modificate che potrebbero contenere codice malevolo progettato per rubare la tua chiave di spesa. Gli sviluppatori Monero pubblicano le impronte hash e le firme PGP per ogni rilascio sul loro sito ufficiale e sui canali di comunicazione verificati.

Backup e Recupero del Sistema Air-Gapped

Come per qualsiasi sistema di cold storage, il backup è fondamentale. La tua seed phrase di Monero, conservata su carta in un luogo sicuro (o meglio su piastre metalliche resistenti al fuoco e all'acqua), è l'unico backup necessario per recuperare il portafoglio su qualsiasi dispositivo. Se il dispositivo air-gapped si guasta, si perde o viene distrutto, puoi sempre recuperare l'intero portafoglio su un nuovo dispositivo usando la seed phrase.

Conserva il backup della seed phrase in una posizione fisicamente separata dal dispositivo air-gapped. Se entrambi si trovano nello stesso posto, un singolo evento (furto, incendio, alluvione) potrebbe comprometterli entrambi simultaneamente. Per importi significativi, considera copie multiple della seed phrase conservate in luoghi geograficamente distinti o affidate a persone di fiducia sotto appropriate misure di sicurezza.

Condividi questo articolo

Articoli correlati

Pronto per lo Scambio?

Scambio anonimo di Monero

Nessun KYC • Nessuna registrazione • Scambi istantanei

Scambia ora