Derivante dalle parole greche che significano "scrittura nascosta", la crittografia è la scienza dell'oscuramento delle informazioni trasmesse, che fa sì che possano essere lette solo dal destinatario desiderato. Le applicazioni della crittografia sono infinite. Dall'autenticazione end-to-end dei messaggi su WhatsApp alle pratiche firme digitali sui moduli legali o perfino sui cifrari ad altissimo consumo di CPU utilizzati per il mining delle criptovalute, la crittografia è diventata un aspetto essenziale del mondo digitale e un componente critico della cybersecurity per proteggere i dati sensibili da hacker e altri criminali informatici.
La pratica della crittografia risale a tempi antichissimi. Uno dei primi esempi è attribuito addirittura a Giulio Cesare. I moderni sistemi crittografici sono molto più avanzati, ma funzionano ancora in modo simile. La maggior parte dei sistemi di crittografia inizia con un messaggio non crittografato, noto come testo in chiaro, che viene poi crittografato in un codice indecifrabile, noto come testo cifrato, utilizzando una o più chiavi di crittografia.
Questo testo cifrato viene quindi trasmesso a un destinatario. Se il testo cifrato viene intercettato e l'algoritmo di crittografia è forte, il testo cifrato non potrà essere utilizzato da eventuali intercettatori non autorizzati, perché non saranno in grado di decifrare il codice. Il destinatario previsto, invece, sarà facilmente in grado di decifrare il testo, purché sia in possesso della chiave di decodifica corretta.
Prima di approfondire, diamo un'occhiata alle caratteristiche principali dei framework crittografici forti:
- Riservatezza: le informazioni crittografate sono accessibili solo ed esclusivamente alla persona a cui sono destinate.
- Integrità: le informazioni crittografate non possono essere modificate durante lo storage o in transito tra il mittente e il destinatario previsto senza che venga rilevata alcuna alterazione.
- Non ripudio: il creatore/mittente di informazioni crittografate non può negare la propria intenzione di inviare le informazioni.
- Autenticazione: le identità del mittente e del destinatario, così come l'origine e la destinazione delle informazioni, sono confermate.
- Gestione delle chiavi: le chiavi utilizzate per crittografare e decifrare i dati (e le attività associate come lunghezza, distribuzione, generazione e rotazione delle chiavi) vengono mantenute al sicuro.