Un'applicazione crittografa i dati con AES ( aes-256-cbc
) utilizzando una chiave e IV derivate da una frase di accesso generata a caso ( openssl enc -pass...
). Crittografa la passphrase con RSA a 2048 bit. Quindi i dati della frase passata sono limitati dalla dimensione della chiave RSA (cioè da un massimo di 256 byte) e da qualsiasi schema padding
Considerata la caratteristica casuale dei dati della frase di trasmissione (ad esempio openssl rand
), che è meglio: più dati o riempimento migliore?
Esempi di lunghezze della frase di accesso:
- 256 byte senza padding (passa
-raw
opzione aopenssl rsautl
) - 245 byte con il valore predefinito di OpenSSL
pkcs
padding - 214 byte con
oaep
padding (utilizzando il digest SHA1 predefinito) - 190 byte con
oaep
padding utilizzando un digest SHA256
Per parafrasare, se la fonte casuale è abbastanza buona c'è qualcosa da guadagnare usando meno bit casuali per la chiave e poi applicando uno schema di padding e, in tal caso, quale schema di padding è il migliore?