La maggior parte dei wallet Bitcoin "sicuri" ha un difetto fondamentale: il server può vedere le tue chiavi. Non necessariamente perché vogliono rubarti i fondi, ma perché l'architettura lo richiede. TL Wallet è costruito su un principio diverso: zero-knowledge by design.
Cosa Significa "Zero-Knowledge" per un Wallet?
In crittografia, "zero-knowledge" significa che una parte (il server) può verificare che una transazione è valida senza mai vedere i dati sensibili (le tue chiavi private). Nel contesto di un wallet Bitcoin:
- Il seed BIP39 viene generato sul dispositivo
- Viene crittografato prima di essere archiviato localmente
- Il server non riceve mai il seed in chiaro
- Il server vede solo metadati pubblici: stato del wallet, nonce, timestamp
Perché la Maggior Parte dei Wallet NON è Zero-Knowledge
Molti wallet popolari funzionano così:
- Generi il seed sul dispositivo ✓
- Il seed (o una sua derivazione) viene inviato al server per "sincronizzazione" ✗
- Il server ora ha una copia delle tue chiavi ✗
- Se il server viene hackerato, i tuoi fondi sono a rischio ✗
Come TL Wallet Implementa lo Zero-Knowledge
1. Generazione Locale
Il seed BIP39 è generato usando la libreria crittografica del dispositivo. Non passa mai attraverso una connessione di rete in chiaro.
2. Crittografia a Riposo (AES-256-GCM)
Il seed è cifrato con AES-256-GCM prima di essere archiviato localmente (FlutterSecureStorage su Android, IndexedDB con AES su PWA).
3. Trasferimento Cifrato (X25519 + ED25519)
Quando trasferisci un wallet a un altro dispositivo, il seed viene cifrato con la chiave pubblica effimera del ricevente (X25519) e firmato con la tua chiave privata (ED25519). Il server vede solo dati cifrati e metadati.
4. Backup Cloud Cifrato (PBKDF2 + AES-256-GCM)
Il backup cloud opzionale è protetto da una password utente che non viene mai inviata al server. PBKDF2 (600k iterazioni) deriva una chiave AES-256 dalla password. Senza password, il ciphertext è matematicamente inutile.
Verificabilità: Non Fidarti, Verifica
TL Wallet è completamente open-source. Puoi verificare personalmente che:
- Il seed non viene mai inviato al server (controlla
wallet_repository.dart) - La crittografia avviene lato client (controlla
crypto_service.dart) - Il server valida solo metadati pubblici (controlla
functions/src/index.ts)
🛡️ Prova TL Wallet — Zero-Knowledge per Davvero
Open source. Codice verificabile. Nessun server vede le tue chiavi. Mai.
Scarica l'APK o apri la Web App →