Come funziona davvero
Condividere un file senza consegnarlo a noi
Come funziona un link di condivisione quando nemmeno chi lo ospita può aprirlo.
Quando mandi un file con un servizio qualunque, succede una cosa che nessuno racconta: quel file diventa leggibile da chi lo ospita. Non per cattiveria — semplicemente, per consegnarlo a qualcuno che non ha un account, il server deve poterlo aprire.
Da noi funziona diversamente, e la differenza sta tutta in un carattere: il cancelletto.
Il link è fatto così
Quando crei un link di condivisione, l'indirizzo che ottieni ha questa forma:
lifetimecloud.me/s/<codice>#k=<chiave>
La prima metà dice quale condivisione. La seconda metà, quella dopo il cancelletto, è la chiave per decifrare i file.
Perché quella metà non ci arriva mai
La parte di un indirizzo che viene dopo il # si chiama frammento, e per come è fatto il web il browser non la manda al server. Mai. Non è una nostra promessa né una nostra scelta: è il funzionamento del protocollo, lo stesso in tutti i browser.
Quindi quando qualcuno apre il tuo link, al nostro server arriva solo il codice della condivisione. La chiave resta nel browser di chi riceve, e lì dentro apre i file.
Che cosa abbiamo noi, allora
Sul nostro disco ci sono i file cifrati, esattamente come li hai caricati. Quando qualcuno scarica, il server prende quei byte e li spedisce così come sono: non li apre, perché non può.
Nel database teniamo una copia della chiave, ma chiusa a sua volta: una chiusa con la tua chiave personale, così puoi ritrovare il link anche fra sei mesi; e, se hai messo una password sulla condivisione, una chiusa con quella password. Nessuna delle due si apre senza qualcosa che sta solo da te o da chi riceve.
Con la password il link cambia forma
Se proteggi la condivisione con una password, il link non porta più la chiave: diventa semplicemente lifetimecloud.me/s/<codice>. Chi lo apre deve digitare la password, e da quella il suo browser ricava la chiave per aprire i file.
È la scelta giusta quando il link passa per un canale che non controlli — una chat di gruppo, una mail inoltrata, un messaggio che resta nello storico di qualcun altro.
Scadenza, tetto ai download, revoca
Quando crei il link puoi mettere, se vuoi:
- una scadenza in giorni, dopo la quale il link smette di funzionare;
- un numero massimo di scaricamenti, dopo il quale si chiude da solo;
- e in ogni momento puoi revocarlo dal tuo elenco delle condivisioni.
I tre controlli stanno sul server, non nel browser: passata la scadenza o finiti i download, il server risponde che il link non è più valido e non manda i byte, qualunque cosa abbia in mano chi lo apre.
In una riga
Il link porta con sé la chiave, in una parte dell'indirizzo che al nostro server non arriva mai. Noi conserviamo blocchi illeggibili e li spediamo così come sono. Che non possiamo aprire i file condivisi non è una promessa: è una conseguenza di come è costruita la cosa.