RSA暗号化を使用してopenSSLでデータを暗号化しています。 RSAの私の理解は、同じ公開鍵で同じデータを暗号化すると常に同じ結果(as stated hereまたはhere)が与えられることです。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暗号化データのみを格納するデータベースを設計しようとしています。私は、暗号化された情報のハッシュサムを検索したいと思います。それは、暗号化の手順自体が一意でない場合は不可能です。
FWIWでは、rsautilは[pkeyutil](http://www.openssl.org/docs/apps/pkeyutl.html)の方が償却されています –