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:

  1. Confidenzialità
    Le informazioni non possono essere comprese da nessuno per cui non sono destinate.

  2. 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.

  3. Non ripudio
    Il creatore/mittente delle informazioni non può negare, in una fase successiva, le proprie intenzioni nella creazione o nella trasmissione delle informazioni.

  4. 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.