Я просто смущен тем, что такое режим заполнения, используемый при использовании криптографии: des_ecb_encrypt/2 в erlang. Спасибо заранее!Какой режим заполнения используется при использовании crypto: des_ecb_encrypt/2 in erlang
ответ
Чтобы узнать, зашифруйте некоторый открытый текст, который не является целым числом блоков. Расшифруйте его с помощью набора «no padding» и посмотрите, что процесс шифрования добавлен в конец последнего блока.
Если шифрование завершается с ошибкой, то, вероятно, ожидается, что вы сначала добавите свое собственное дополнение. Как уже было сказано, используйте дополнение PKCS5 или PKCS7.
Я не публиковал это как ответ, потому что я не знал наверняка, какое дополнение было использовано rossum, ваш ответ - это в основном мои комментарии, не сообщая фактический механизм заполнения. –
Я дал вам способ узнать, какой механизм заполнения используется: расшифровать с помощью «no padding» и посмотреть, что добавление добавлено в последний блок. – rossum
Не обращайте внимания на rossum, я делал комментарии, а не задавал вопрос. И я уже предложил зашифровать один байт и расшифровать вывод - я просто не отложил его в качестве ответа, потому что он не является удобным для использования. –
Эх, похоже, что он не заполняет, если я не ошибаюсь. Возможно, вам придется проложить/разблокировать себя. Не могли бы вы попытаться зашифровать один байт или символ? Если он не работает, вы работаете без заполнения. Если это работает, попробуйте расшифровать и посмотрите, соответствует ли результат. Если это не так, выполняется какое-то автоматическое, но неопределенное заполнение. –
Только для моей информации, что означает это/2? –
Функция/2 является синтаксисом для функции arity 2 (два аргумента). – butter71