Indice
Cos'è la crittografia
La crittografia è un insieme di tecniche matematiche che permettono di proteggere un'informazione garantendo quattro cose:
- Riservatezza: solo chi possiede la chiave giusta può decifrare il contenuto.
- Integrità: qualsiasi modifica non autorizzata al dato diventa rilevabile.
- Autenticazione: è possibile verificare chi ha realmente generato o inviato un'informazione (pur mantenendo l'identità privata).
- Non ripudio: chi ha autorizzato un'operazione non può negare di averlo fatto in un secondo momento.
Il meccanismo su cui questa disciplina si basa è un algoritmo (il metodo di trasformazione) e una chiave crittografica (il parametro segreto o distintivo che rende quella trasformazione unica).
Cambia la chiave, cambia il risultato: è lo stesso principio, del resto, che rende un hash diverso per ogni documento (ne parliamo nel dettaglio in hash blockchain: cos'è e come protegge un documento).
Oggi, quando si parla di tipo di crittografia, ci si riferisce in pratica a tre grandi famiglie di algoritmi. La cifratura simmetrica, di cui l'Advanced Encryption Standard (AES) è l'esempio più diffuso, usa una singola chiave per cifrare e decifrare. La cifratura asimmetrica, di cui RSA ed ECC (Elliptic Curve Cryptography) sono gli algoritmi più noti, si basa invece su una coppia di chiavi matematicamente collegate. Le funzioni hash, infine, non cifrano nulla in senso stretto: trasformano un dato di qualsiasi dimensione in un'impronta di lunghezza fissa, irreversibile, che cambia completamente anche se il documento originale viene modificato di un solo carattere.
Ognuna di queste tre famiglie risolve un problema diverso, ed è proprio la loro combinazione — non un singolo algoritmo isolato — a rendere sicuro un sistema digitale moderno, blockchain compresa.
Crittografia simmetrica e asimmetrica: la differenza che conta
Esistono due grandi famiglie di crittografia, e la differenza tra loro è ciò che ha reso possibile la blockchain così come la conosciamo. Il confronto tra questi due modelli offre già un esempio chiaro delle differenze in gioco.
Nella crittografia simmetrica, mittente e destinatario condividono un'unica chiave segreta, usata sia per cifrare sia per decifrare. È veloce ed efficiente, ma ha un problema pratico: la chiave va condivisa in qualche modo, e ogni condivisione è un potenziale punto debole.
Nella crittografia asimmetrica, invece, si usano due chiavi diverse e collegate matematicamente: una pubblica, che chiunque può conoscere, e una privata, che deve essere mantenuta segreta.
Chi vuole inviarti un dato protetto usa la tua chiave pubblica; solo tu, con la chiave privata corrispondente, puoi decifrarlo. Nessuna chiave segreta viaggia mai in chiaro. Questo secondo modello, inventato negli anni '70, è alla base di come una blockchain identifica chi autorizza un'operazione, sfruttando una coppia di chiavi pubblica e privata collegate matematicamente (un meccanismo che approfondiamo in chiave pubblica e privata: come funziona la sicurezza blockchain).
Nella pratica, la scelta tra chiave simmetrica e chiave asimmetrica dipende soprattutto da un compromesso tra velocità e gestione delle chiavi. Un algoritmo simmetrico come AES può usare chiavi da 128, 192 o 256 bit: più lunga è la chiave, più tentativi servirebbero per violarla per forza bruta, ma più lunga è anche la chiave, maggiore è il carico computazionale richiesto per cifrare e decifrare. Con una chiave a 256 bit, il numero di combinazioni possibili è talmente alto che, con la potenza di calcolo oggi disponibile, un attacco per tentativi resta del tutto impraticabile.
La cifratura asimmetrica, invece, deve gran parte della sua sicurezza a un problema matematico: la difficoltà di scomporre in numeri primi un numero molto grande. RSA, uno degli algoritmi a chiave pubblica più usati, genera la coppia di chiavi proprio a partire da due numeri primi enormi, tenuti segreti; conoscere il loro prodotto non basta per risalire ai numeri di partenza in un tempo ragionevole. È un problema che i computer classici non sanno risolvere in modo efficiente, ed è questo — non un segreto nascosto da qualche parte — a rendere sicuro l'intero sistema.
Perché la blockchain si basa sulla crittografia
Una blockchain applica questi principi in almeno due modi distinti:
- Per identificare chi autorizza un'operazione, tramite la coppia di chiavi pubblica e privata: è la crittografia asimmetrica a rendere possibile firmare digitalmente un'operazione senza rivelare mai la propria chiave segreta.
- Per collegare i blocchi tra loro in modo verificabile, tramite funzioni di hash crittografico: ogni blocco contiene l'impronta del precedente, e qualsiasi manomissione altera quell'impronta in modo immediatamente visibile.
Messe insieme, queste due applicazioni sono ciò che rende una blockchain resistente alla manomissione senza bisogno di un'autorità centrale che la sorvegli. Man mano che cresce la quantità di dati gestiti su una blockchain, questo meccanismo diventa ancora più importante per garantire affidabilità su larga scala.
Vale la pena guardare più da vicino come funzionano, in pratica, questi due meccanismi. Una firma digitale basata su crittografia asimmetrica — tipicamente con algoritmi come ECDSA o, più di recente, EdDSA — permette a chiunque di verificare che una determinata operazione sia stata autorizzata proprio dal possessore di una certa chiave privata, senza che quella chiave venga mai condivisa o resa visibile. È lo stesso principio che sta dietro a un wallet: il "portafoglio" non contiene realmente le monete o i dati, contiene la chiave che permette di firmare le operazioni che li riguardano.
Le funzioni hash lavorano diversamente, ma in modo complementare. Un algoritmo come SHA-256 prende in input un documento di qualsiasi dimensione — un file, una transazione, un intero blocco — e restituisce sempre una stringa di lunghezza fissa. La stessa funzione hash, applicata allo stesso input, restituisce sempre lo stesso risultato; applicata a un input anche minimamente diverso, restituisce un risultato completamente diverso, senza alcuna somiglianza apparente col precedente. Questa proprietà è ciò che permette a una blockchain di collegare i blocchi in una catena verificabile: ogni blocco contiene l'hash del blocco precedente, e le strutture dati chiamate Merkle tree permettono di verificare l'integrità di migliaia di transazioni con un'unica impronta finale, senza dover ricontrollare ogni singolo dato.
Il risultato pratico è che chiunque può verificare, in modo indipendente e senza fidarsi di un intermediario, se un documento o una transazione sono stati alterati dopo la loro registrazione. È esattamente questo principio — informazioni che, una volta notarizzate, non possano essere modificate senza lasciare traccia — a rendere la blockchain uno strumento utile per la protezione di documenti, contratti e prove digitali che devono restare valide nel tempo.
Crittografia post-quantistica: uno sguardo al futuro
Un dubbio legittimo, per chi affida una prova a lungo termine a un sistema crittografico, è: resterà sicuro anche tra vent'anni?
I computer quantistici, ancora agli albori ma in rapido sviluppo, sfruttano i principi della meccanica quantistica e potrebbero un giorno rendere più vulnerabili alcuni algoritmi crittografici oggi considerati robusti. Per questo la ricerca sta già lavorando su algoritmi "post-quantistici", progettati per resistere anche a questo tipo di attacco futuro.
Non è un problema imminente, ma è un buon esempio di come la sicurezza crittografica non sia un traguardo fisso: è un campo che si aggiorna costantemente, e i servizi seri lo tengono monitorato.
Per capire perché i computer quantistici preoccupano chi si occupa di crittografia, occorre guardare a cosa cambia rispetto ai computer classici. Un computer quantistico sufficientemente potente, eseguendo un algoritmo teorico noto come algoritmo di Shor, potrebbe risolvere in tempi ragionevoli proprio quei problemi matematici — la scomposizione in numeri primi, alla base di RSA, o il problema del logaritmo discreto, alla base delle curve ellittiche — che oggi rendono sicura la crittografia a chiave pubblica. Gli algoritmi simmetrici come AES sarebbero colpiti in modo meno drastico, ma richiederebbero comunque chiavi più lunghe per restare sicuri.
Non si tratta di fantascienza né di un rischio da ignorare: è per questo che il National Institute of Standards and Technology (NIST), l'ente statunitense che storicamente definisce gli standard crittografici usati in tutto il mondo, ha avviato da anni un processo di selezione per nuovi algoritmi post-quantistici, basati su problemi matematici diversi — reticoli, codici, funzioni hash — che restano difficili da risolvere anche per un computer quantistico.
Cosa significa la crittografia per un professionista
Se lavori con documenti, contratti o dati riservati di clienti, la crittografia non è un dettaglio tecnico da ignorare: è la ragione per cui puoi fidarti di un servizio digitale. Un sistema ben progettato applica tecniche di cifratura dei dati per garantirti che:
- nessuno può leggere un documento che non ti appartiene, nemmeno chi gestisce l'infrastruttura — spesso perché i dati restano crittografati end to end;
- una prova, una volta generata, non può essere alterata senza che la modifica sia evidente;
- puoi dimostrare che sei stato tu, e non altri, ad autorizzare una determinata operazione.
Questo è anche il principio da cui partono le normative sulla protezione dei dati, GDPR incluso: la crittografia è uno degli strumenti che una piattaforma può usare per dimostrare di trattare i dati dei clienti con la dovuta diligenza.
Nella pratica, valutare un servizio digitale su questo fronte significa fare qualche domanda semplice ma spesso trascurata. I dati sono protetti solo "in transito" — cioè mentre viaggiano dal tuo dispositivo al server — oppure anche "a riposo", una volta archiviati? È disponibile una forma di crittografia end-to-end, in cui nemmeno il fornitore del servizio può accedere al contenuto in chiaro, o la protezione si ferma all'infrastruttura del provider? Chi genera e custodisce le chiavi: il fornitore, il cliente, o un meccanismo condiviso?
Sono domande che valgono per qualsiasi settore, ma diventano centrali quando si parla di notarizzazione, protezione della proprietà intellettuale o certificazioni digitali, dove il valore del servizio dipende interamente dalla capacità di dimostrare — in un secondo momento, spesso a distanza di anni — che un dato non è stato alterato. Un fornitore che non sa rispondere con precisione a queste domande, o che parla genericamente di "sicurezza" senza entrare nei dettagli tecnici, merita più di un supplemento di indagine prima di affidargli documenti o processi critici.
La crittografia è il livello silenzioso che rende affidabile tutto ciò che costruiamo sopra una blockchain: senza di essa, non esisterebbero firme verificabili né prove a prova di manomissione.
Per un professionista il punto pratico è questo: quando un servizio dice di "usare la blockchain", la vera domanda da porsi è come usa la crittografia sotto il cofano.
Se vuoi vedere questo principio applicato concretamente, scopri come IÈUMÌ® protegge i tuoi dati con la crittografia.
FAQ
Qual è la differenza tra crittografia e cifratura?
Sono concetti vicini ma non identici:
- la crittografia è la disciplina che progetta l'algoritmo e la chiave;
- la cifratura è l'applicazione pratica di quell'algoritmo per trasformare un messaggio leggibile in uno illeggibile;
- la decifratura è l'operazione inversa, possibile solo con la chiave corretta.
La crittografia rende un dato impossibile da violare?
No, ma lo rende sicuro per un tempo ragionevole. In pratica:
- nessun sistema crittografico è "sicuro per sempre" in senso assoluto (con un'unica eccezione teorica, il cifrario di Vernam, poco pratico da usare su larga scala);
- la sicurezza reale dipende dal tempo e dalle risorse necessarie per violarlo, che devono restare più alti del valore di ciò che protegge;
- per questo gli algoritmi crittografici vengono aggiornati nel tempo, man mano che la potenza di calcolo disponibile cresce.
Cosa significa crittografia end-to-end?
Significa che solo il mittente e il destinatario di un dato possono leggerlo in chiaro: viene cifrato sul dispositivo di partenza e decifrato solo su quello di arrivo, senza che nessun sistema intermedio — server compresi — abbia mai accesso al contenuto in chiaro. È il modello usato da app di messaggistica come WhatsApp e Signal, ed è lo stesso principio che rende affidabile la gestione di documenti riservati su piattaforme digitali.
Che differenza c'è tra crittografia simmetrica e asimmetrica?
La crittografia simmetrica usa un'unica chiave segreta condivisa tra le parti, ed è più veloce; la crittografia asimmetrica usa una coppia di chiavi collegate matematicamente — una pubblica e una privata — ed è più adatta quando le parti non si conoscono o non possono scambiarsi in sicurezza una chiave segreta in anticipo, come avviene per l'appunto su una blockchain.


