Shamir backup

Difficoltà: avanzato

Argomento: tecnologia


DEFINIZIONE

Il Shamir backup è una modalità per effettuare copie di sicurezza per contrastare i due maggiori rischi legati alla protezione del recovery seed: il furto e la distruzione.

Il Shamir backup è un metodo di protezione delle password o di altre informazioni sensibili mediante la creazione di un insieme di parti o pezzi (share) che possono essere utilizzati per ricostruire l'informazione originale. Questo metodo, chiamato SSS o Shamir's Secret Sharing, è stato sviluppato dal matematico israeliano Adi Shamir, che ha dato il suo nome all'algoritmo.

Il funzionamento del Shamir backup è il seguente: prima di tutto, l'informazione da proteggere viene suddivisa in un certo numero di parti, chiamate shares. Ogni parte è quindi distribuita a un soggetto diverso o conservata in un posto diverso. Per ricostruire l'informazione originale, è necessario ottenere un certo numero di queste parti denominato soglia o threshold, che possono essere combinate per ottenere l'informazione completa. La sicurezza di questo metodo dipende dal numero di parti necessarie per ricostruire l'informazione originale e dal fatto che le parti distribuite a diverse persone o enti non possono essere utilizzate per ricostruire l'informazione da sole.

Il Shamir backup viene spesso utilizzato per proteggere le password o le chiavi private di accesso ai portafogli di criptovalute, poiché offre un modo sicuro per proteggere queste informazioni sensibili senza doverle memorizzare o archiviare in modo centralizzato. Tuttavia, il Shamir backup può essere utilizzato anche per proteggere altre informazioni sensibili, come le chiavi di accesso ai sistemi di sicurezza o i codici di autenticazione per l'accesso ai servizi online.

Il recovery seed è la chiave del vostro patrimonio digitale e se lo si perde, le proprie criptovalute potrebbero andare irrimediabilmente perse. Per evitarlo, è possibile creare più parti, o share, per effettuare il backup delle chiavi private e specificare un numero prestabilito (denominato soglia o threshold) di queste share uniche che devono essere raccolte e utilizzate per recuperare il wallet. Questo è il principio di base del backup di Shamir.

Semplificando, ipotizziamo ad esempio che il nostro seed backup sia formato dalle parole:

abisso babele catena datato elfico fanale

Queste parole potrebbero essere suddivise in 3 shares, con una soglia o threshold di 2 shares:

  • share 1: abisso babele catena datato XXXXXX XXXXXX
  • share 2: abisso babele XXXXXX XXXXXX elfico fanale
  • share 3: XXXXXX XXXXXX catena datato elfico fanale

ognuna di queste share andrebbe conservata in un posto diverso, nessuno trovando una sola share potrebbe ricostruire l'elenco completo delle parole, ma se anche una delle share dovesse andar persa si potrebbe ricostruire il messaggio con le altre due.

Questo esempio è una semplificazione del metodo Shamir's Secret Sharing, attraverso il quale si possono un numero arbitrario di share e un valore arbitrario del threshold (ma inferiore alle share), e si può applicare ad un qualunque messaggio sul quale effettuare un algoritmo di crittografia.


aggiornato il 2022-12-19