La parola algoritmo compare ormai ovunque. La incontriamo quando parliamo di motori di ricerca, social network, intelligenza artificiale, applicazioni, sicurezza informatica e perfino quando qualcuno dice che “l’algoritmo di Instagram ha deciso cosa mostrarci”. A forza di sentirla nominare, però, rischiamo di darle un significato quasi misterioso, come se un algoritmo fosse una specie di entità invisibile che decide autonomamente cosa fare. In realtà il concetto di algoritmo è molto più semplice. Un algoritmo è una sequenza ordinata e finita di istruzioni che permette di risolvere un problema o raggiungere un determinato risultato . Detto ancora più semplicemente: un algoritmo è un procedimento. Riceve delle informazioni, esegue una serie di operazioni secondo regole precise e produce un risultato. E, cosa forse sorprendente, gli algoritmi non appartengono soltanto al mondo dei computer. Li utilizziamo continuamente anche nella vita quotidiana. Un esempio semplicissimo: preparar...
Quando sentiamo parlare di sicurezza informatica incontriamo spesso parole come crittografia , hash , checksum o sigle apparentemente misteriose come SHA-256 . Il nome può sembrare complicato, ma l’idea che c’è dietro è molto più semplice di quanto sembri. SHA-256 è un algoritmo che permette di prendere un’informazione digitale — una parola, una password, un documento, una fotografia o persino un intero programma — e trasformarla in una sorta di impronta digitale . Questa impronta viene chiamata hash . La cosa interessante è che, indipendentemente dalla dimensione del contenuto originale, SHA-256 produce sempre un risultato della stessa lunghezza: 256 bit , che normalmente vengono rappresentati come una sequenza di 64 caratteri esadecimali . Per esempio, potremmo avere qualcosa del genere: b133a0c0e9bee3be20163d2ad31d6248db292aa6dcb1ee087a2aa50e0fc75ae2 A prima vista sembra soltanto una lunga sequenza incomprensibile di lettere e numeri. In realtà contiene una caratteristica mol...