EOS

Storie di Alice e Bob: La cifratura asimmetrica su curve ellittiche

C’erano una volta due nerd innamorati, Alice e Bob. E c’era una volta anche il temibile Opponente, Charlie. Alice e Bob vivevano lontani, e tutto quello che volevano era poter comunicare in santa pace senza che Charlie rubasse i loro segreti. Il canale di comunicazione non era sicuro, e i due dovevano dare per scontato che, qualsiasi cosa trasmettessero, potesse essere intercettato da Charlie. L’unica loro speranza era nella crittografia. Ad Alice e Bob serviva un modo per nascondere i propri messaggi, e un modo sicuro per scambiarsi le chiavi usate per cifrare, e la certezza che, dall’altro lato del canale, ci fosse sempre Alice o Bob, e mai Charlie in brilliant disguise. Oggi vi raccontiamo di come trovarono la soluzione nella crittografia asimmetrica a curve ellittiche.

Vi presento Alice e Bob

Dopo un poi che sei all’università inizi a sviluppare un certo orecchio, per i corsi. Passi davanti ad un’aula e senti parlare di Fresnel, e a quel punto sai già che si tratta o di un corso di ottica, o di quegli integrali orribili che hanno cercato di farti risolvere sul piano complesso. Passi davanti ad un’altra aula e senti parlare di specchi, ma sai che non è di Alice nel paese delle meraviglie che si discute, bensì di elettronica analogica. Passi davanti ad un’altra aula ancora e senti Nyquist, e sai che potrebbe essere un qualche corso di telecomunicazioni o di controlli automatici. Poi ti capita di sentir parlare di Alice e Bob. Talvolta anche di Charlie. Se sei un telecomunicazionista sai già di che si tratta, e capisci subito che non è bene indugiare davanti a quella porta. Se sei un ingenuo elettronico, invece, nell’abisso della tua disperazione pensi che si possa trattare di qualche corso divertente, magari uno di quelli organizzati dalle associazioni studentesche, e in quanto tali pieni di ragazze. Così entri, ma quello che ti trovi davanti è la solita platea con la quale ti sei sempre mescolato fin dall’inizio di ingegneria: tanti maschi, qualcuno con la testa rovesciata sul banco, molti che tentano di prendere appunti, tutti con l’aria afflitta. Sulla cattedra c’è invece un gasatissimo insegnante, giovane o vecchio non fa differenza, che mescola senza soluzione di continuità le disavventure di Alice e Bob che tentano disperatamente di avere una discussione privata, i campi di Galois, i numeri primi e grosse matrici piene di “alfa elevato a”. Dopo un po’, quando diventi assuefatto alla faccenda e riesci a non pensare che Alice, Bob e Charlie sono un modo molto triste per non dire A, B e C, ti rendi conto che il tutto sembra proprio la versione nerd di Romeo e Giulietta, e inizi ad appassionarti alla cosa. In effetti il problema è intrigante. Come si fa a nascondere un messaggio, a chiunque tranne che a chi vogliamo che lo legga? Be’, un modo ovvio consiste nel prendere il messaggio e trasformarlo in modo tale che solo chi conosca la trasformazione possa interpretarlo. Ad una cosa del genere aveva già pensato, ai suoi tempi, addirittura Giulio Cesare, tant’è che tutti i corsi di crittografia cominciano con il famoso e famigerato “cifrario di Cesare”. Cesare cifrava i suoi messaggi semplicemente sostituendo, a ciascuna lettera, la lettera tre posizioni più in giù nell’alfabeto (Figura 1).

 

Figura 1: Il cifrario di Cesare

Figura 1: Il cifrario di Cesare.

Come algoritmo di cifratura non è niente di che, ma per l’epoca funzionava. Solo chi sapeva come era stato alterato il testo poteva decifrarlo. Tutti i sistemi di cifratura si basano sullo stesso principio: ci vuole un algoritmo che renda “oscuro” il messaggio, e un segreto condiviso tra mittente e destinatario (la famosa “chiave”) che permetta al destinatario di recuperare il messaggio. Il cifrario di Cesare aveva un algoritmo (“sposta a destra”) e una chiave (“di tre posizioni”) abbastanza banali, ma sufficienti per le popolazioni barbariche dell’epoca (che era già tanto se sapevano leggere). I tempi cambiano, e non solo perché abbiamo Alice e Bob invece di Cesare e Quinto Tullio Cicerone. Un cifrario di Cesare è facilmente violabile da chiunque abbia un buon PC e qualche conoscenza di disposizione statistiche delle lettere in un testo. Al giorno d’oggi Alice e Bob devono spremersi le meningi un po’ di più e creare un algoritmo sufficientemente “tosto” che non sia violabile semplicemente provando tutte le chiavi possibili. Un esempio di algoritmo “tosto” che diede parecchi problemi al Charlie dell’epoca, ossia gli Alleati, è la macchina Enigma (Figura 2).

Figura 2: La macchina Enigma

Figura 2: La macchina Enigma.

Simile ad una macchina da scrivere e interamente meccanica, alla pressione di un tasto la macchina Enigma produceva un carattere in funzione della posizione di una serie di rotori (posizionati in un certo modo) e contatti elettrici (cablati in un certo modo). Le possibili posizioni dei rotori e dei cablaggi rappresentavano la chiave, ed erano talmente tante che le chiavi possibili erano più di dieci milioni di miliardi (ossia un bel po’). Immaginate di decifrare un testo criptato con un algoritmo del genere provando una chiave per volta. In linea di principio è possibile, avendo tempo a sufficienza. Peccato che la Germania cambiasse la chiave ogni giorno. Quindi immaginate di decifrare un testo cifrato con un algoritmo del genere, provando dieci milioni di miliardi di chiavi possibili, in un solo giorno. A mano è [...]

ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 3273 parole ed è riservato agli abbonati PLATINUM. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici MAKER e PLATINUM e potrai fare il download (PDF) di tutti gli EOS-Book, Firmware e degli speciali MONOTEMATICI. ABBONATI ORA, è semplice e sicuro.

Abbonati alle riviste di elettronica

8 Commenti

  1. Stefano.Fausti 18 agosto 2016
  2. Maurizio Di Paolo Emilio Maurizio 18 agosto 2016
  3. Raul Rosa Raul Rosa 18 agosto 2016
    • Marcello Colozzo Marcello.Colozzo 1 19 agosto 2016
  4. Cristiano Scavongelli superscav 19 agosto 2016
  5. IvanScordato IvanScordato 21 agosto 2016
  6. fbradasc 5 settembre 2016

Scrivi un commento

EOS