Почему зашифрованный текст RSA дает разные результаты для одного и того же текста

Я шифрую данные с помощью openSSL, используя шифрование RSA, которое работает нормально. Мое понимание RSA заключается в том, что шифрование одних и тех же данных одним и тем же открытым ключом всегда даст вам один и тот же результат (как указано здесь или жеВот).

Однако, используя openssl, я получаю разные результаты каждый раз, когда повторяю шифрование. Например:

➜  ~  echo '30' | openssl rsautl -encrypt -inkey pub.pem -pubin  | shasum
      11b6e058273df1ebe0be5e0596e07a6c51724ca0  -

➜  ~  echo '30' | openssl rsautl -encrypt -inkey pub.pem -pubin  | shasum
      05cb82595f7429ef196189f4e781088597d90eee  -

Так почему вывод не уникален? Это из-за неправильного шифрования RSA или из-за того, что openssl делает какую-то дополнительную магию?

На самом деле я пытаюсь создать базу данных, которая хранит только зашифрованные данные RSA. Я хотел бы выполнить поиск по хэш-суммам зашифрованной информации, что невозможно, если сама процедура шифрования не является уникальной.

Ответы на вопрос(2)

Ваш ответ на вопрос