Salta al contenuto
Recensioni

Banana Split: dividere una seed phrase (o una password) in più pezzi senza affidarla a una sola copia

· · di skariko

GPL v3.0
Questo programma è considerato software libero perché rispetta le quattro libertà: libertà di eseguire il programma per qualsiasi scopo, libertà di studiare il funzionamento del programma e modificarlo, libertà di ridistribuire copie, libertà di migliorare il programma e distribuire le modifiche.

Banana Split è un'app open source che usa lo schema di Shamir's Secret Sharing per dividere seed phrase e password in più QR code, senza un singolo punto di rottura.

Indice

Chi conserva chiavi private, seed phrase di wallet crypto o password particolarmente delicate conosce bene il dilemma del backup: una copia sola è un punto di rottura, perché basta perderla, bruciarla o danneggiarla per perdere tutto. Più copie identiche, però, moltiplicano il rischio opposto: chiunque ne trovi anche solo una ha in mano l’intero segreto. Banana Split prova a risolvere questo compromesso usando la crittografia a soglia, ed è distribuito come app open source sotto licenza GPLv3.

Da dove arriva

Il progetto nasce come fork di un lavoro originale di Parity Technologies, oggi mantenuto da Evgeny Mezin. Il codice è pubblico su GitHub e comprende due implementazioni parallele dello stesso protocollo crittografico: un’app web in Vue e TypeScript, compilata in un singolo file HTML autonomo, e un’app Flutter per Android e Windows (che si compila anche per macOS e Linux).

Il principio: Shamir’s Secret Sharing

Alla base c’è lo schema di Shamir’s Secret Sharing: il segreto viene diviso in N “pezzi” (shard), e potrete scegliere quanti ne servono per ricostruirlo, il cosiddetto quorum. Con una configurazione a 3 su 5, ad esempio, potrete perdere fino a due shard senza compromettere il recupero, ma se qualcuno mettesse le mani su due shard qualsiasi non ricaverebbe alcuna informazione utile: sotto la soglia stabilita, i pezzi non rivelano nulla del segreto originale.

Come funziona in pratica

Il flusso è lineare: inserite il segreto da proteggere (una seed phrase, una chiave privata, una password), scegliete quanti shard generare e quanti ne servono per la ricostruzione, poi impostate una passphrase, generata automaticamente oppure scelta da voi con un minimo di 8 caratteri. Banana Split cifra il segreto con quella passphrase e lo divide in altrettanti QR code. Gli shard si possono salvare come PNG o PDF e distribuire fisicamente. Per ricostruire il segreto basta scansionare un numero sufficiente di QR code, tramite fotocamera o importandoli dalla galleria, e inserire la passphrase.

Dove si trova e cosa c’è sotto il cofano

L’app Android è disponibile su F-Droid, esiste anche una build per Windows, e c’è una versione web utilizzabile senza installazione su nfcarchiver.com/banana/. Sul piano crittografico, la passphrase passa attraverso una derivazione della chiave con scrypt, la cifratura vera e propria usa NaCl secretbox (XSalsa20-Poly1305), mentre la suddivisione in shard avviene sul campo GF(256). Tutto avviene in locale: nessuna chiamata di rete, nessuna raccolta dati, nessun tracciamento, come dichiarato anche nella scheda F-Droid.

Un’alternativa via browser: 2of3 di Ente

Se preferite uno strumento pronto all’uso senza installare nulla, un’alternativa concettualmente identica a Banana Split è 2of3, il tool di Ente raggiungibile su 2of3.ente.com. Anche qui la logica è la stessa: si inserisce un segreto, si ottengono 3 “card” di recupero, e ne bastano 2 qualsiasi per ricostruirlo, mentre una sola non rivela nulla. Il segreto non lascia mai il browser, tutto avviene lato client, e il codice è open source all’interno del repository di Ente. È pensato per un caso d’uso generico esattamente come Banana Split, dalla seed phrase di un wallet alla password d’emergenza di un password manager, e come la versione web di Banana Split non richiede installazione: basta aprire la pagina, generare le card e scaricare anche una versione HTML offline per il recupero futuro, utile se il sito dovesse non essere più raggiungibile. Il compromesso è nella flessibilità: lo schema di 2of3 è fisso a 2 su 3, mentre Banana Split lascia scegliere liberamente sia il numero di shard sia la soglia di ricostruzione, e offre anche app native per Android e Windows per chi preferisce non passare dal browser.

Ente, dopo averlo sviluppato come esperimento interno in un hackathon, lo ha poi ripreso e integrato nel proprio ecosistema sotto forma di Legacy Kit: stessa suddivisione a soglia, ma applicata specificamente al recupero dell’account Ente (Photos, Locker, Auth), con l’aggiunta di un meccanismo server-mediato che introduce un periodo di attesa configurabile e revocabile prima che il recupero vada a buon fine, così da poter bloccare un tentativo sospetto prima che si concluda.

Per chi vuole uno strumento generico, senza vincoli a un servizio particolare e senza alcun server coinvolto, Banana Split resta comunque la scelta più diretta.

F-Droid GitHub Scarica per PC Codice sorgente

Da leggere anche