Vai al contenuto

Cifrare e decifrare file

File Encrypt & Decrypt

Cifra qualsiasi file con AES-256-GCM a partire da una passphrase, e decifra i file che ha prodotto.

Mandare un file per e-mail o con un’app di messaggistica lo deposita in forma leggibile sul disco di qualcun altro. Cifrarlo prima con una passphrase condivisa per un altro canale fa sì che la copia in transito e la copia a riposo siano entrambe prive di significato per chi non ha la passphrase. Questo strumento lo fa con AES-256-GCM interamente dentro la scheda.

🔒 Funziona interamente nel tuo browserencryptaesfileprivacy

Il file viene cifrato in questa scheda con la crittografia del browser stesso. Né il file né la passphrase vengono caricati, e di nessuno dei due resta niente memorizzato — nemmeno da questa pagina.

Trascina qui il file da cifrare

Qualsiasi file, di qualsiasi dimensione che il tuo browser regga in memoria.

Che cosa viene fatto al file, esattamente

Cifrario
AES-256-GCM, tag da 128 bit
Chiave
256 bit, derivata per ogni file
Derivazione della chiave
PBKDF2 with HMAC-SHA-256, 600.000 iterazioni
Sale
16 byte casuali, nuovi per ogni file
Nonce
12 byte casuali, nuovi a ogni cifratura

Il risultato è un’intestazione di 38 byte — un marcatore, i parametri, il sale e il nonce — e poi il testo cifrato. L’intestazione viene autenticata insieme al contenuto, quindi cambiare il numero di iterazioni per strada rompe la decifratura invece di indebolirla di nascosto. Il nome del file non viene conservato in nessun punto lì dentro.

PBKDF2 e non Argon2id, perché è quello che il browser mette a disposizione da sé e su cui si può contare; Argon2id regge meglio le GPU, ma vorrebbe dire distribuire una build WebAssembly che questo progetto non può verificare. Il compromesso è detto, non nascosto.

Se perdi la passphrase, il file è perso. Non c’è recupero, non c’è suggerimento, non c’è porta di servizio — non perché sarebbe difficile aggiungerla, ma perché una porta di servizio è esattamente ciò da cui questo protegge.

Come si usa

  1. Trascinare il file e impostare una passphrase

    La passphrase viene allungata in una chiave con PBKDF2 e un sale casuale nuovo, quindi due cifrature dello stesso file con la stessa passphrase producono byte diversi.

  2. Mandare la passphrase per un’altra strada

    Una passphrase nella stessa e-mail del file non protegge nulla. Va usato un canale diverso, oppure lo strumento della nota che si autodistrugge.

  3. Decifrare dall’altra parte

    La stessa pagina decifra quello che ha prodotto. Il GCM autentica mentre decifra, quindi un file alterato in transito fallisce del tutto invece di restituire un output corrotto.

Domande frequenti

Che cosa succede se dimentico la passphrase?

Il file è perduto. Non c’è alcuna chiave di recupero, nessun ripristino e nessuna backdoor, ed è proprio questo a rendere lo strumento degno di essere usato. La passphrase va scritta da qualche parte prima di cifrare qualunque cosa che non ci si possa permettere di perdere.

Qualcun altro può aprirlo senza questa pagina?

Il contenitore è un formato proprio di questo strumento: una piccola intestazione con il sale, l’IV e i parametri, e poi il testo cifrato GCM. È documentato nella pagina e si reimplementa senza fatica, ma non è uno zip e non è un file OpenPGP, quindi chi riceve ha bisogno di questa pagina o della specifica.

C’è un limite di dimensione del file?

Il limite è la memoria del browser, dato che il file è tenuto nella scheda invece di essere trasmesso a un server. File molto grandi possono fallire su un telefono dove riescono su un computer.

Nasconde il nome e la dimensione del file?

Il nome è memorizzato dentro il contenitore cifrato, quindi è nascosto. La dimensione no: la lunghezza del testo cifrato segue quella del testo in chiaro, e questo vale per ogni strumento di questo genere.

Può ricevere da

Dopo

Questi accettano ciò che produce questo strumento, così il risultato può passare direttamente.