Cos'è Cifratura asimmetrica?
La cifratura asimmetrica è un sistema crittografico che usa una coppia di chiavi matematicamente correlate — una chiave pubblica che chiunque può usare per cifrare i dati e una chiave privata che solo il proprietario possiede per decifrarli — eliminando la necessità di condividere in anticipo una chiave segreta.
Noto anche come: public-key cryptography, asymmetric cryptography
La cifratura asimmetrica ha risolto il problema fondamentale della distribuzione delle chiavi che aveva limitato la crittografia per secoli. Prima della sua invenzione negli anni '70, due parti che volevano comunicare in modo sicuro dovevano prima concordare una chiave segreta condivisa attraverso un canale sicuro — un problema del pollo e dell'uovo. La crittografia asimmetrica consente a chiunque di cifrare un messaggio usando una chiave pubblica distribuita liberamente, mentre solo il titolare della corrispondente chiave privata può decifrarlo.
Il fondamento matematico si basa su funzioni trapdoor — operazioni facili da eseguire in una direzione ma computazionalmente impossibili da invertire senza una conoscenza speciale. RSA usa la difficoltà di fattorizzare il prodotto di grandi numeri primi; la crittografia a curva ellittica (ECC) usa il problema del logaritmo discreto sulle curve ellittiche. Queste proprietà matematiche garantiscono che conoscere la chiave pubblica non riveli la chiave privata.
La cifratura asimmetrica è significativamente più lenta di quella simmetrica — spesso da 100 a 1.000 volte più lenta per dimensioni di dati equivalenti. Per questo motivo, viene raramente usata per cifrare dati massivi direttamente. Invece, i sistemi moderni usano un approccio ibrido: la cifratura asimmetrica garantisce lo scambio di una chiave simmetrica, e quella chiave simmetrica cifra il payload effettivo. TLS, PGP e SSH seguono tutti questo schema ibrido.
Come Vaulted usa Cifratura asimmetrica
Vaulted usa la cifratura simmetrica (AES-256-GCM) invece di quella asimmetrica, perché il modello di condivisione tramite link elimina il problema della distribuzione delle chiavi che la crittografia asimmetrica esiste per risolvere. La chiave di cifratura è incorporata nel frammento URL e consegnata insieme al link stesso — non è necessaria nessuna coppia di chiavi pubblica/privata né un protocollo di scambio di chiavi. Questo mantiene l'implementazione crittografica semplice e veloce, richiedendo solo le primitive simmetriche della Web Crypto API.