Questo è l'opposto di quello che stavo facendo in questa domanda - https://crypto.stackexchange.com/questions/21021/encryption-and-hmac-in-a-pskc-file
Le specifiche sono disponibili su https://tools.ietf.org/rfc/rfc6030.txt
I dati / seed sono crittografati con AES-128-CBC e e una chiave e un IV. Il IV è anteposto ai dati crittografati e il tutto è codificato in base 64 e memorizzato nel campo CipherValue.
Ho (questo proviene da un file pskc di esempio che ho, non dall'RFC).
CipherValue/EncryptedText = v5dgOiUq1Hgja0g1SI9VpcHu81DLdcDqT8C3+k8wlQtk5KL1KErwojxLPSNO8lZt
Encryption Key = E9C1E401122EE194D620465A775D9C97
Algo = AES-128-CBC
Ho bisogno di ottenere i dati decrittati da questo
Questo è quello che sto facendo
Ho CipherValue memorizzato in un file chiamato cv.
openssl base64 -d -A < cv > cv.bin
Ottengo un cv.bin a 48 byte
Ho versato in 2 parti
iv.bin = 16 bytes
data.bin = 32 bytes
Converto iv.bin in esadecimale
xxd -p < iv.bin
bf97603a252ad478236b4835488f55a5
Così il mio
iv = bf97603a252ad478236b4835488f55a5
Converto la chiave in esadecimale
Ho una chiamata al file k.b64 che contiene E9C1E401122EE194D620465A775D9C97
openssl base64 -d -A < k.b64 > k.bin
xxd -p < k.bin
13d0b5138d35d76d84135f780fadb4e3ae40efbe43f42f7b
key = 13d0b5138d35d76d84135f780fadb4e3ae40efbe43f42f7b
Ora decifro
openssl enc -aes-128-cbc -d -K 13d0b5138d35d76d84135f780fadb4e3ae40efbe43f42f7b -iv bf97603a252ad478236b4835488f55a5 < data.bin
Ottengo il seguente errore
▓\=Bt═┐|)éïh│■ìcbad decrypt
62008:error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt:.
\crypto\evp\evp_enc.c:539:
Cosa sto facendo di sbagliato qui?