In che modo gli algoritmi di hashing proteggono la crittografia a chiave pubblica

11

La crittografia a chiave pubblica non si limita a indovinare le password. Si basa su un concetto matematico specifico: il valore hash. È qui che entrano in gioco gli algoritmi di hashing. Prendi un numero di input di base e lo esegui attraverso l’algoritmo. Il risultato è un riepilogo dei dati originali.

Il vero potere sta nella direzione della matematica. Puoi passare dall’input all’hash con facilità. Ma provare a decodificare l’input originale dall’hash? Questo è quasi impossibile.

Consideriamo un esempio grossolano. Inizia con il numero di input 10.667. Moltiplicalo per 143. Il valore hash è 1.525.381.

Se vedi solo 1.525.381, come ci sei arrivato? Non puoi semplicemente indovinare. Ma se qualcuno ti dice che il moltiplicatore era 143, trovare 10.667 è banale.

I sistemi a chiave pubblica sono molto più complessi della semplice moltiplicazione. Usano numeri enormi per rendere inutile il reverse engineering.

Perché i valori hash sono importanti per la sicurezza

Si sente spesso parlare di crittografia a chiave pubblica e di chiavi private. La forza sottostante deriva da questi valori hash. Nei sistemi moderni, non usiamo numeri interi piccoli. Utilizziamo algoritmi complessi con enormi lunghezze di bit.

Gli standard comuni includono chiavi a 40 o 128 bit. La differenza è sconcertante.

Un numero a 128 bit non è solo grande. È astronomicamente grande. Ci sono 2^128 combinazioni possibili. Quel numero assomiglia a questo:

340.282.366.920.938.463.463.374.607.431.768.211.456.000.000

Per metterlo in prospettiva, prova a trovare uno specifico granello di sabbia nel deserto del Sahara. Questa è la scala di difficoltà coinvolta nel violare un forte algoritmo di hashing.

La strada a senso unico della crittografia

Perché questo è importante per la tua navigazione quotidiana? Quando ti connetti a un sito web sicuro, il tuo browser e il server utilizzano questi algoritmi di hashing per verificare l’identità senza inviare dati sensibili in rete.

La chiave pubblica crittografa il messaggio. Solo il titolare della chiave privata corrispondente può decrittografarla. Il modello di sicurezza presuppone che il calcolo dell’hash forward sia semplice. Calcolarlo all’indietro è computazionalmente costoso.

Se qualcuno potesse facilmente ricavare il numero immesso dal valore hash, l’intera Internet sarebbe vulnerabile. Dovremmo trovare modi migliori per proteggere i dati.

Scegliere la giusta forza dell’algoritmo

Non tutti gli algoritmi di hashing sono uguali. I sistemi più vecchi utilizzavano lunghezze di bit più brevi. Una chiave a 40 bit potrebbe sembrare robusta a un profano. Ma i computer moderni possono forzarli in pochi secondi.

Ecco perché siamo passati a tasti più lunghi. Il passaggio a 128 bit, o anche a livelli superiori, era necessario. Crea una barriera che lo sforzo umano non può superare.

Quando vedi “SSL” o “TLS” nella barra del browser, tali protocolli utilizzano questi principi. Garantiscono che lo scambio di chiave pubblica rimanga sicuro.

La sicurezza della crittografia a chiave pubblica si basa sulla difficoltà di invertire un algoritmo di hashing.

Come informatica