Mi sono imbattuto in Lavabit High Scalability Writeup e mi sono incuriosito.
Do you use any particularly cool technologies or algorithms?
The way we encrypt messages before storing them is relatively unique. We only know of one commercial service, and one commercial product that will secure user data using asymmetric encryption before writing it to disk. Basically we generate public and private keys for the user and then encrypt the private key using a derivative of the plain text password. We then encrypt user messages using their public key before writing them to disk.
Per quanto ne so, Lavabit ha offerto anche un client webmail. La crittografia sul lato server è possibile dove solo l'utente può decrittografare i messaggi ma un accesso webmail è offerto allo stesso tempo? Lavabit ha affermato che non poteva recuperare la password se fosse persa, il che significa che non poteva essere reimpostata, vero?
Ciò significherebbe che le credenziali dell'utente devono essere memorizzate nel database al fine di autenticarlo. Questa stessa password viene utilizzata per generare la derivata, che viene quindi nuovamente utilizzata per decrittografare la chiave privata, che può essere utilizzata nuovamente per decrittografare le e-mail crittografate con chiave pubblica.
Questo non significa che Lavabit è / era in possesso delle password? A mio parere, ciò avrebbe senso solo se sono richieste due password. Una password per autenticare l'utente e una passphrase per sbloccare la chiave privata. Laddove la passphrase, al contrario della password, non è memorizzata nel database, ma inserita ogni volta dall'utente senza persistere da qualche parte.
Simili che ho trovato nelle Domande frequenti su MyKolab.com :
Some other providers claim to use server side cryptography to store my data encrypted so they cannot access it. Do you do that as well?
We currently do not have any plans to do that. The reason is simple. With server-side encryption, the provider holds the encrypted data, the key, and the passphrase, as all three need to pass through the web interface and be available on the server. So the provider does have access to all the data despite the encryption.
We don't believe in misleading our users in this way.
The only solution would be client side encryption of everything, but that's very hard to implement and there is a whole set of standards missing on the browser side to do this properly and securely, also keeping in mind that sand boxing in browsers does not work from a security perspective. Therefore, we suggest to use native clients such as Kontact and use GnuPG for end-to-end encryption.
Quindi cosa intendeva dire Lavabit quando hanno detto che il recupero dei messaggi non sarebbe stato possibile? Come può funzionare in modo sicuro, rispettivamente solo come dichiarato da MyKolab.com?