我想使用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
我做错了什么?
字符串在CFB模式下加密3DES。
提前致谢:)
答案 0 :(得分:1)
来自openssl enc --help
:
-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