Я не могу воспроизвести ни один из ваших результатов (я не на Ма c). Вероятно, проблема связана с тем, что CB C является блочным шифром, что означает, что для каждого цикла шифрования требуется фиксированная длина блоков в 16 байтов (в отличие от потоковых шифров). Когда у вас есть менее 16 байтов данных, он будет использовать заполнение.
Почему разница? Стандарт AES не определяет (.. Я знаю, это не очень полезно для нас) какой тип заполнения должен быть использован, так что он может отличаться в реализации между PKCS # 5 или PKCS # 7.
В моем случае мне даже намекали использовать это вместо выбранной вами операции *** WARNING : deprecated key derivation used. Using -iter or -pbkdf2 would be better.
опция -pbkdf2
в openssl соответствует PKCS # 5. На самом деле у нас нет информации о том, какую библиотеку использует онлайн-инструмент для той же операции. Что касается результатов:
U2FsdGVkX1+FBre1MZ1YDfgZRmRyt/hMogfMhYeiq8Q= and
NrjrStoGrmkLAvWaJuKtvg==
Base64 декодируют до следующего, соответственно:
Salted__1XFdrL̅
6Ji&⭾
Итак, из этого, вы можете видеть, что вывод шифрования openssl также использует соль, но даже тогда содержимое совершенно другое.
Какая конфигурация мне не хватает? Хотя, вы можете попробовать следующее:
openssl enc -e -aes-128-cbc -pbkdf2 -nosalt
Соли присутствуют для защиты от грубой принудительно атаковать используемый закрытый ключ, например, если собрано несколько зашифрованных документов, и во время расшифровки они не будут иметь значения. Это будет просто уникальная подсказка для расшифровки, и будет устранена во время процесса, но исключит некоторые атаки.
Вопрос в том, как вы собираетесь использовать схему шифрования в будущем - до тех пор, пока вы Если вы используете openssl последовательно, вы можете быть уверены, что он будет работать, хотя быстрый поиск в Google показал, что разные версии могут изменить и даже повлиять на это, поэтому я, вероятно, поэтому не могу расшифровать данные, представленные в OpenSSL 1.1. 1 11 сентября 2018 года. Также здесь есть статья с некоторыми хорошими примерами и пояснениями.