ELI5

ELI5 · Parte 3 di 7

Le tue chiavi, in parole semplici

Dietro ogni firma che apponi e ogni file sigillato che ricevi c'è un solo piccolo segreto. Non devi gestire un cassetto pieno di password, una per ogni compito. In Label 309 custodisci una sola cosa, un seed master, appena 32 byte casuali, e tutto il resto si ricava da lì.

Pensa alla classica chiave maestra che un fabbro usa per tagliare un pugno di chiavi specifiche. La maestra la tieni per te, sotto chiave. Le chiavi specifiche che ne ricava svolgono ciascuna un solo lavoro. La maestra non la consegni mai, e non c'è bisogno che tu lo faccia.

Un segreto, qualche lavoro

Il tuo seed master è semplicemente una sequenza di numeri casuali che nessun altro possiede. Di per sé non è legato ad alcun compito particolare. Da esso il tuo dispositivo ricava in silenzio le chiavi che usi davvero, sempre le stesse, ogni volta, a partire dallo stesso seed. Label 309 ne deriva esattamente tre:

  • Una chiave per firmare, cioè per apporre il tuo timbro personale su un record, così che chiunque possa capire che proviene davvero da te. (Questa usa Ed25519, lo stesso tipo di firma che i wallet Cardano già adoperano.)
  • Una chiave per ricevere file sigillati ordinari, così che qualcuno possa chiudere a chiave un file in modo che solo tu possa aprirlo.
  • Una chiave per ricevere file sigillati a prova di futuro, la stessa idea, ma con una crittografia sicura anche contro i computer quantistici (ne parliamo più a fondo in A prova di computer quantistici).

Queste chiavi non le generi separatamente né le annoti una per una. Escono tutte dallo stesso seed master, nello stesso identico modo, ogni volta. Riproduci il seed e le riproduci tutte. Perdilo e sono perse per sempre: è l'unica cosa che vale la pena custodire più di ogni altra. (Il modo in cui conservi e sblocchi quel seed è lasciato a ciascuna app; lo standard fissa soltanto come ne escono le chiavi.)

Le metà pubbliche che puoi condividere

Ecco la parte che sorprende. Ognuna di quelle chiavi operative è fatta di due metà che si corrispondono: una metà privata e una metà pubblica.

Le metà private restano con te, proprio accanto al seed. Non lasciano mai le tue mani. Sono ciò che ti permette di firmare davvero e di aprire davvero i file sigillati.

Le metà pubbliche sono un'altra cosa: sono fatte apposta per essere condivise. Pensa a una metà pubblica come al tuo indirizzo. Label 309 scrive perfino quelle di ricezione in una forma comoda, da copiare e incollare (iniziano con age1…, oppure age1pqc… per quella post-quantistica). Puoi consegnarla a chiunque, pubblicarla ovunque, stamparla su un biglietto. Grazie a essa, gli altri possono:

  • Controllare il tuo timbro. Quando firmi un record, chiunque abbia la tua metà pubblica può confermare che la firma è davvero tua.
  • Inviarti qualcosa di sigillato. Chiunque abbia la tua metà pubblica può chiudere a chiave un file in modo che solo la tua corrispondente metà privata possa aprirlo.

E non possono fare altro. Una metà pubblica non può servire a falsificare il tuo timbro, e non può aprire nulla di sigillato per te. Distribuirla è sicuro quanto dare a qualcuno il tuo indirizzo di casa: ti possono mandare posta, ma non possono trasferirsi in casa tua né firmare lettere a tuo nome.

Perché dividere i compiti in chiavi separate

Ti chiederai perché ci sia una chiave per firmare e chiavi diverse per ricevere file sigillati, invece di un'unica chiave buona per tutto.

È la stessa ragione per cui non usi una sola chiave per la porta di casa, l'auto e la cassaforte. Label 309 tiene i compiti separati a livello crittografico, così che una debolezza in uno non possa mai propagarsi agli altri. La chiave che dimostra che hai scritto qualcosa è isolata dalle chiavi con cui gli altri ti inviano file privati. Risalgono tutte allo stesso seed, ma ciascuna sta in piedi da sé.

Ti tiene anche pronto per il futuro. Se tra qualche anno arriva un tipo di serratura migliore, il tuo dispositivo può ricavare una nuova chiave dallo stesso seed, senza dover ricominciare da capo con un segreto del tutto nuovo. È esattamente così che è stata aggiunta la chiave di ricezione post-quantistica: stesso seed, una chiave in più.

L'unica cosa da tenere al sicuro

Custodisci il seed master e le metà private; condividi liberamente quelle pubbliche. Le metà pubbliche permettono al mondo di controllare il tuo timbro e di inviarti file sigillati, ma non possono in alcun modo impersonarti né leggere la tua posta. Se ti interessa il meccanismo nel dettaglio, lo descrive il riferimento Chiavi.