Tag: crittografia

Mar 06

Ancora pillole di crittografia

Il funzionamento della crittografia classica su internet è questo: il server genera un sua coppia di chiavi ASIMMETRICHE (RSA) certificate da una Authority; quando il client contatta il server, come prima cosa il server gli manda la chiave pubblica. Essendo pubblica, per definizione è una chiave che può venire in possesso di chiunque, anche ad …

Continua a leggere »

Mar 03

OpenSSL again

Come decifrare i messaggi di errore? Ho questo messaggio che catturo con la funzione php openssl_error_string() error:0906D06C:PEM routines:func(109):reason(108) Uso la funzione da linea di comando openssl errstr citando il codice di errore (quello in grassetto): $ openssl errstr 0906D06C error:0906D06C:PEM routines:PEM_read_bio:no start line    

Feb 12

Esempio di cifratura a chiave asimmetrica con PHP

Oggi vediamo un semplice esempio di sequenza di operazioni per cifrare un messaggio e successivamente decifrarlo, con lo scopo di scrivere un messaggio segreto che solo il destinatario può decifrare. Lo scenario è il classico Alice scrive a Bob un messaggio che solo lui può leggere, utilizzando la crittografia asimmetrica ideata negli anni 70 da …

Continua a leggere »

Gen 27

Come testare se un intero è un numero primo

OpenSSL è un toolkit free software / open source per gestire la crittografia. A tutt’oggi la crittografia commerciale si basa sul fatto che se è facile eseguire n * m = p, fattorizzare p in fattori primi invece è un problema difficile, incredibilmente difficile soprattutto quando n e m sono numeri primi “grandi”. OpenSSL usa …

Continua a leggere »

Lug 18

openssl e padding

L’utilizzo del padding nella cifratura tramite openssl serve a evitare attacchi di tipo cifra-e-confronta dei crittogrammi. Se encrypt(text, key) desse sempre lo stesso risultato, si potrebbe indovinare il testo in chiaro confrontando due file cifrati. Abilitando l’opzione pkcs, openssl applica un padding versione PKCS ver. 1.5 al testo prima della cifratura, cioè introduce una stringa …

Continua a leggere »