3.6 KiB
Bitmessage
Bitmessage è un protocollo per lo scambio di posta elettronica in maniera sicura, privata, intracciabile e, volendo, anonima.
Ne esiste una sola implementazione completa (al momento della scrittura di questo documento) chiamata PyBitmessage e disponibile per Windows, GNU/Linux e OSX.
il protocollo, in breve, definisce che:
- ogni utente è identificato da una coppia di chiavi crittografiche e da un indirizzo derivato dalla chiave pubblica
- ogni messaggio è firmato con la chiave privata del mittente e interamente crittografato con la chiave pubblica del destinatario.
- l'unica informazione visibile del messaggio è il TTL che ha lo scopo di evitare il flooding della rete con lo stesso messaggio
- i messaggi rimangono nella rete solo per qualche giorno, poi sono persi per sempre se il mittente non decide di reinviare
- è necessario completare un Proof Of Work (illustrato nel capitolo Bitcoin di questo documento) per l'invio di un messaggio
- la rete implementa meccanismi anti-flooding per evitare la saturazione della stessa
Come si usa
PyBitmessage è disponibile gratuitamente sul sito bitmessage.org. Il software è molto semplice da usare e ulteriori informazioni sono contenute nello stesso.
- il software creerà un nuovo indirizzo Bitmessage al suo avvio
- è possibile mantenere una lista contatti in cui memorizzare gli indirizzi conosciuti
- Esistono i Canali di Bitmessage che agiscono da Mailing List.
Come funziona
Essenzialmente, il protocollo Bitmessage è molto semplice, infatti ogni nodo:
- si collega direttamente ad altri nodi
- ogni messaggio che riceve tenta di decrittografarlo con la propria chiave privata
- se funziona, allora il messaggio è destinato a questo nodo
- se non funziona, il TTL viene diminuito e il messaggio viene rispedito sulla rete
- ai messaggi inviati va allegato un proof of work molto tassante
- questo è necessario per il funzionamento della rete, ma il software deve usare molte risorse per il proof of work
In realtà, esso descrive procedure di proof of work e anti flooding molto complesse che permettono il corretto funzionamento della rete e il blocco di eventuali attaccanti.
Confronto con E-Mail
La maggior parte dei problemi di PyBitmessage derivano dal suo alto livello di sicurezza, che porta però a bassa accessibilità e mancanza di comodità nell'uso del software.
Alcuni dei maggiori problemi di accessibilità del software sono:
- mancanza di client avanzati che invece esistono per le E-Mail (ad esempio Mozilla Thunderbird o Microsoft Outlook) e permettono di organizzare in maniera avanzata i messaggi
- impossibilità di un'istanza del software di ricevere messaggi non destinati ad essa (a scopo di caching). Anche se in futuro fosse possibile, sarebbero necessarie le chiavi private di accesso dei destinatari
- impossibilità (per ora) di usare indirizzi arbitrari come ad esempio nome.cognome@azienda.it, costringendo invece gli utenti ad usare indirizzi auto generati impossibili da memorizzare
- elevato uso di risorse hardware ed elevata congestione di rete causata dal software
- mancanza di client per tutte le piattaforme e di client web, questi ultimi perchè non permetterebbero di mantenere la sicurezza.
- non ancora supportato l'uso di password per proteggere le proprie chiavi private.
Finchè non viene trovata soluzione ad almeno parte di questi problemi, BitMessage non è pronto per rimpiazzare le E-Mail.