Dlaczego tekst zaszyfrowany RSA daje mi różne wyniki dla tego samego tekstu

Szyfruję dane za pomocą openSSL przy użyciu szyfrowania RSA, które działa dobrze. Moje rozumienie RSA polega na tym, że szyfrowanie tych samych danych przy użyciu tego samego klucza publicznego zawsze daje taki sam rezultat (jak podano tutaj lubtutaj).

Jednak przy użyciu openssl otrzymuję różne wyniki za każdym razem, gdy powtarzam szyfrowanie. Na przykład:

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

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

Dlaczego więc wynik nie jest unikalny? Czy to dlatego, że mam błędne szyfrowanie RSA lub dlatego, że openssl wykonuje dodatkową magię?

Właściwie próbuję zaprojektować bazę danych, która przechowuje tylko dane zaszyfrowane RSA. Chciałbym wyszukiwać sumy zaszyfrowanych informacji, co jest niemożliwe, jeśli sama procedura szyfrowania nie jest unikalna.

questionAnswers(2)

yourAnswerToTheQuestion