Ich verschlüssele Daten mit OpenSSL mit RSA-Verschlüsselung, die gut funktioniert. Mein Verständnis von RSA ist, dass das Verschlüsseln der gleichen Daten mit dem gleichen öffentlichen Schlüssel immer das gleiche Ergebnis liefert (as stated here oder here).Warum gibt RSA-verschlüsselten Text mir verschiedene Ergebnisse für den gleichen Text
Mit Openssl bekomme ich jedes Mal, wenn ich die Verschlüsselung wiederhole, unterschiedliche Ergebnisse. Zum Beispiel:
➜ ~ echo '30' | openssl rsautl -encrypt -inkey pub.pem -pubin | shasum
11b6e058273df1ebe0be5e0596e07a6c51724ca0 -
➜ ~ echo '30' | openssl rsautl -encrypt -inkey pub.pem -pubin | shasum
05cb82595f7429ef196189f4e781088597d90eee -
Warum ist der Ausgang nicht eindeutig? Liegt es daran, dass ich die RSA-Verschlüsselung falsch verstanden habe oder weil openssl zusätzliche Magie nutzt?
Eigentlich versuche ich eine Datenbank zu entwerfen, die nur RSA-verschlüsselte Daten speichert. Ich würde gerne auf den Hashsummen der verschlüsselten Informationen suchen, was unmöglich ist, wenn der Verschlüsselungsvorgang an sich nicht einzigartig ist.
FWIW, rsautil wird zugunsten von [pkeyutil] abgeschrieben (http://www.openssl.org/docs/apps/pkeyutl.html) –