Cosa fa
AES (Advanced Encryption Standard) è il cifrario simmetrico usato quasi ovunque: HTTPS, cifratura dei dischi, password manager e app di messaggistica. La stessa chiave segreta cifra e decifra. Questo strumento cifra il testo in Base64 da incollare dove vuoi e lo decifra di nuovo.
Puoi usare:
- una passphrase, trasformata in una chiave da 128 o 256 bit con PBKDF2-HMAC-SHA256 e un salt casuale, oppure
- una chiave hex: 32 o 64 cifre esadecimali (128 o 256 bit), usata così com’è. Fai clic su Chiave casuale per crearne una.
Sono disponibili due modalità operative. AES-GCM è la scelta moderna predefinita e rileva le manomissioni. AES-CBC con padding PKCS#7 è offerto per la compatibilità con sistemi datati.
Come si usa
- Scegli Cifra o Decifra, l’algoritmo e il tipo di chiave.
- Digita la passphrase o incolla la chiave hex in cima alla casella di input.
- Incolla il testo (o il Base64 da decifrare). Il risultato compare a destra; Usa come input inverte la direzione per verificare l’andata e ritorno.
Formato dell’output
L’output è un’unica stringa Base64, così resiste a email e chat:
passphrase: salt (16 bytes) | IV (12 GCM / 16 CBC) | ciphertext (+ 16-byte tag for GCM)
hex key: IV (12 GCM / 16 CBC) | ciphertext (+ 16-byte tag for GCM)
Per decifrare usa lo stesso algoritmo, tipo di chiave, lunghezza della chiave e numero di iterazioni usati per cifrare. Queste impostazioni sono salvate nell’indirizzo della pagina: un link condiviso le porta con sé, mentre la chiave resta a te.
Scegliere la passphrase
PBKDF2 rallenta ogni tentativo, ma non salva una passphrase corta o comune. Usa una passphrase lunga e casuale, per esempio da un generatore di password, e condividila su un canale diverso dal testo cifrato. Più iterazioni rendono i tentativi più difficili e la decifratura un po’ più lenta; valori tra 100.000 e 600.000 sono comuni.
Domande frequenti
› Meglio GCM o CBC?
Scegli GCM a meno che un altro sistema non richieda CBC. GCM è autenticato: una chiave errata o un solo byte modificato vengono rilevati invece di produrre dati senza senso. CBC garantisce solo la riservatezza ed è utile soprattutto per la compatibilità con codice datato.
› Perché il testo cifrato cambia ogni volta?
Ogni cifratura usa un nuovo IV casuale e, con una passphrase, anche un nuovo salt casuale. Entrambi sono salvati all’inizio dell’output, quindi la decifratura funziona comunque. Riutilizzare un IV con la stessa chiave, soprattutto in GCM, sarebbe una grave debolezza.
› Come decifro l’output nel mio codice?
Decodifica il Base64. Con una passphrase i primi 16 byte sono il salt PBKDF2, poi l’IV (12 byte in GCM, 16 in CBC), poi il testo cifrato. Deriva la chiave con PBKDF2-HMAC-SHA256 e lo stesso numero di iterazioni. Con una chiave hex non c’è salt. In GCM gli ultimi 16 byte sono il tag di autenticazione.
› La passphrase o la chiave vengono salvate o inviate?
No. La cifratura avviene nel browser tramite la Web Crypto API. La passphrase o la chiave restano solo nella memoria di questa pagina: non vengono salvate, non finiscono nella barra degli indirizzi né nei link di condivisione, quindi puoi condividere un messaggio cifrato senza la sua chiave.