Проблема дешифрования строк OpenSSL
Я постараюсь сделать это кратким, насколько это возможно.
Я хочу иметь возможность шифровать и дешифровать простые строки с использованием OpenSSL, что я делал раньше.
ОДНАКО, должны соблюдаться следующие условия:
Простое использование ключевой фразы (без ключей)Нет входных / выходных файловНет запроса на фразу-пароль (укажите параметры командной строки для любого направления)Я на 50%. Я могу успешно выполнить шифрование через:
echo 'someTextIWantToEncrypt' | openssl enc -e -aes-256-cbc -nosalt -pass pass:mySecretPass
Выходной результат:
(??b}n??v???>??G??.?B??~?
Ок, отлично. Теперь я хочу расшифровать эту строку. Итак, я делаю:
echo -n '(??b}n??v???>??G??.?B??~?' | openssl enc -d -aes-256-cbc -pass pass:mySecretPass
или даже как альтернатива:
openssl enc -d -aes-256-cbc -pass pass:mySecretPass <<< '(??b}n??v???>??G??.?B??~?'
Но я получаю этот ответ:
bad magic number
Хотя я не хочу использовать файлы ввода / вывода, этот метод работает на 100%:
# encrypt to file
echo -n 'someTextIWantToEncrypt' | openssl enc -e -nosalt -out test.txt -aes-256-cbc -pass pass:mySecretPass
# decrypt from file
openssl enc -d -nosalt -in test.txt -aes-256-cbc -pass pass:mySecretPass
# result of decryption (is successful):
someTextIWantToEncrypt
Итак ... как я могу добиться вышеописанного процесса расшифровкибез используя входные / выходные файлы вообще? Я чувствую, что я близко, но упускаю какую-то мелочь.
Заранее спасибо.