Расшифровать строку 3des cfb в bash

Я хочу расшифровать строку с помощью openssl, но он продолжает говорить: не шестнадцатеричная цифра недопустимое шестнадцатеричное значение iv

Я использую эту команду:

openssl enc -d -in crypt -out file.txt -K mypas -iv iv.txt -p -des-ede3-cfb

mypas = 1D5sqZr QEG5ZEY54shhGE9

iv.txt = 2cd3e7471d9da0ef

crypt = 25cc14697f9f2106adcf2e48

Что я делаю неправильно?

строка зашифрована 3DES в режиме CFB.

Заранее спасибо :)


person user3438734    schedule 19.03.2014    source источник


Ответы (1)


от 1_:

-K/-iv         key/iv in hex is the next argument

Вы должны указать iv и ключ в шестнадцатеричном формате. Не как имена файлов.

Я не могу понять ваши данные, но вот пример:

$ od -t x1 file.bin
0000000 43 f7 fd 5b 39 fd 5c 70 66 d2 8f 67 2a 5d fd
0000017

$ openssl enc -d -in file.bin -out file.txt \
    -K 4C4F4C4F4C4F4C4F4C4F4C4F4C4F4C4F4C4F4C4F4C4F4C4F \
    -iv 524f464c524f464c -p -des-ede3-cfb
salt=B8FCBCBF6448EAB7
key=4C4F4C4F4C4F4C4F4C4F4C4F4C4F4C4F4C4F4C4F4C4F4C4F
iv =524F464C524F464C

$ cat file.txt
this is a test
person that other guy    schedule 19.03.2014