Introduzione alla Crittografia
La crittografia è un metodo di protezione delle informazioni e delle comunicazioni mediante l'uso di codici, in modo che solo coloro per i quali le informazioni sono destinate possano leggerle e processarle.
Nella scienza informatica, la crittografia si riferisce a tecniche di sicurezza delle informazioni e delle comunicazioni derivate da concetti matematici e da un insieme di calcoli basati su regole chiamati algoritmi, per trasformare i messaggi in modi difficili da decifrare. Questi algoritmi deterministici sono utilizzati per la generazione di chiavi crittografiche, la firma digitale, la verifica per proteggere la privacy dei dati, la navigazione web su internet e le comunicazioni riservate come le transazioni con carte di credito e le email.
Obiettivi della crittografia
La crittografia moderna si occupa dei seguenti quattro obiettivi:
-
Confidenzialità
Le informazioni non possono essere comprese da nessuno per cui non sono destinate. -
Integrità
Le informazioni non possono essere alterate durante l'archiviazione o il transito tra il mittente e il destinatario previsto senza che l'alterazione venga rilevata. -
Non ripudio
Il creatore/mittente delle informazioni non può negare, in una fase successiva, le proprie intenzioni nella creazione o nella trasmissione delle informazioni. -
Autenticazione
Il mittente e il destinatario possono confermare l'identità reciproca e l'origine/destinazione delle informazioni.
Crittosistemi
Le procedure e i protocolli che soddisfano alcuni o tutti i criteri sopra menzionati sono noti come crittosistemi. I crittosistemi sono spesso considerati solo procedure matematiche e programmi per computer; tuttavia, includono anche la regolazione del comportamento umano, come la scelta di password difficili da indovinare, il disconnettersi dai sistemi inutilizzati e il non discutere di procedure sensibili con estranei.
Nei prossimi paragrafi verra illustrato il funzionamento di numerosi sistemi crittografici, vedremo inizialmente alcuni concetti fondamentali per definire un sistema crittografico come sicuro; successivamente vedremo come scambiare messaggi in modo sicuro, analizzando i due diversi approcci: la crittografia simmetrica e quella asimmetrica; vedremo come firmare digitalmente i messaggi e come garantire l'integrità dei dati con le funzioni hash. Infine vedremo alcune applicazioni pratiche della crittografia in sistemi reali.