これはかなり一般的で直接的な問題だと思っていましたが、検索して見つけられませんでした。シーケンシャルSHA 256ハッシュは同じ入力に対して異なる出力を与えます
私は初心者のPythonユーザです。主に独学です。私は、入力句からハッシュ値を生成する、かなり簡単な演習であると思ったことを試しています。ここに私のコードは次のとおりです。
import hashlib
target = input("Give me a phrase: ").encode('utf-8')
hashed_target = hashlib.sha256(target)
print(hashed_target)
私はこれを実行し、プロンプトを取得: 私の句を与える:
私は、フレーズ入力された「私に自由を与えるか、または私に死を与えるを!」ハッシュ出力0x7f8ed43d6a80
を得ました。
テストするだけで、同じフレーズでもう一度試しましたが、別の出力を得ました:0x7f1cc23bca80
。
私はそれが奇妙だと思ったので、元の入力をコピーして貼り付け、第3の異なるハッシュ出力を得ました:0x7f358aabea80
。
簡単な説明が必要です。私は何のエラーも出ませんし、コードは単純ですが、ハッシュは似ていますが、間違いありません。
誰かが助けることができますか?
を、私は正確に同じ変数を毎回使用するようにコードを書き直しました。 輸入hashlib ターゲット=( 'UTF-8') hashed_target = hashlib.sha256(ターゲット) プリント(hashed_target) が、私はこの3回実行し、得た "私に自由を与えるか、または私に死を与える!"。エンコード3つの異なるハッシュ出力。 '0x7f7472104a80' ' 0x7fb113db6a80' '0x7f3e5051ea80' –
私は私が見ると思うあなたの質問に編集として「私は彼をテストするためにやった」と:) –