Это противоположно тому, что я делал в этом вопросе - https://crypto.stackexchange.com/questions/21021/encryption-and-hmac-in-a-pskc-file
Спецификация находится по адресу https://tools.ietf.org/rfc/rfc6030.txt.
Данные / семя зашифрованы с помощью AES-128-CBC &, а также ключа и IV. IV добавляется к зашифрованным данным, и все это кодируется в base-64 и сохраняется в поле CipherValue.
У меня есть (это из образца файла pskc, а не из RFC).
CipherValue/EncryptedText = v5dgOiUq1Hgja0g1SI9VpcHu81DLdcDqT8C3+k8wlQtk5KL1KErwojxLPSNO8lZt
Encryption Key = E9C1E401122EE194D620465A775D9C97
Algo = AES-128-CBC
Мне нужно получить расшифрованные данные из этого
Это то что я делаю
Я храню CipherValue в файле с именем cv.
openssl base64 -d -A < cv > cv.bin
Я получаю 48 байт cv.bin
Я разлил на 2 части
iv.bin = 16 bytes
data.bin = 32 bytes
Я конвертирую iv.bin в hex
xxd -p < iv.bin
bf97603a252ad478236b4835488f55a5
Так что мой
iv = bf97603a252ad478236b4835488f55a5
Я превращаю ключ в шестнадцатеричный
У меня есть файл вызова k.b64, который содержит E9C1E401122EE194D620465A775D9C97
openssl base64 -d -A < k.b64 > k.bin
xxd -p < k.bin
13d0b5138d35d76d84135f780fadb4e3ae40efbe43f42f7b
key = 13d0b5138d35d76d84135f780fadb4e3ae40efbe43f42f7b
Сейчас расшифровываю
openssl enc -aes-128-cbc -d -K 13d0b5138d35d76d84135f780fadb4e3ae40efbe43f42f7b -iv bf97603a252ad478236b4835488f55a5 < data.bin
Я получаю следующую ошибку
▓\=Bt═┐|)éïh│■ìcbad decrypt
62008:error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt:.
\crypto\evp\evp_enc.c:539:
Что я здесь не так делаю?