Imbottitura ottimale della crittografia asimmetrica
Nella crittografia , OAEP ( Optimal Asymmetric Encryption Padding ) è uno schema di riempimento , generalmente utilizzato con la crittografia RSA . Questo algoritmo è stato introdotto nel 1994 da Mihir Bellare e Phil Rogaway . L'OAEP è una forma di rete Feistel che richiede una fonte di casualità e due funzioni hash .
Descrizione dell'algoritmo
Se notiamo
-
m{\ displaystyle m} il messaggio originale (completato qui da zeri),
-
r{\ displaystyle r} dati casuali,
-
G,H{\ displaystyle G, H} le due funzioni di generazione di maschere deterministiche (trasformano, tramite una funzione hash, un input di qualsiasi lunghezza in un output della lunghezza desiderata ma attenzione, questo non è un generatore casuale perché l'output generato è una voce di funzione fornita).
Per i passaggi di crittografia, abbiamo
X=m⊕G(r){\ displaystyle X = m \ oplus G (r)}
Y=H(X)⊕r{\ displaystyle Y = H (X) \ oplus r}
OAEP(m)=X||Y{\ displaystyle \ mathrm {OAEP} (m) = X || Y},
dove "|| "Indica la concatenazione e l'operatore" esclusivo o " .⊕{\ displaystyle \ oplus}
Per i passaggi di decrittografia / verifica, calcola semplicemente:
r=H(X)⊕Y{\ displaystyle r = H (X) \ oplus Y},
allora abbiamo
m=X⊕G(r){\ displaystyle m = X \ oplus G (r)}.
La reversibilità dell'algoritmo permette di verificare che i dati decriptati corrispondano a quelli attesi.
Generalmente è un passaggio della crittografia RSA , in questo caso si parla di RSA-OAEP, la funzione hash comunemente utilizzata è SHA-1 .
Uno degli interessi di RSA-OAEP è quello di poter essere provato sicuro in un modello teorico idealizzato, quello dell'oracolo casuale.
Questo algoritmo è consigliato dalla direttiva PKCS ( Public Key Cryptography Standard ) 1, versione 2.1 (Giugno 2002).
Riferimenti
-
M. Bellare , P. Rogaway (1995). " Optimal Asymmetric Encryption - How to encrypt with RSA " (pdf) in Eurocrypt '94 Proceedings Lecture Notes in Computer Sciences 950 : 92–111 p., Springer-Verlag.
link esterno
Articoli Correlati
<img src="https://fr.wikipedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" title="" width="1" height="1" style="border: none; position: absolute;">