私が必要とするのは、文字列をハッシュすることです。テキスト ファイル内の隠しフレーズになるだけなので、安全である必要はありません (人間の目で認識できる必要はありません)。
ユーザーが文字列を入力すると、それをハッシュして、(テキスト ファイルから) 既にハッシュされたものと比較したいので、単なるランダムな文字列であってはなりません。
この目的には何が最適でしょうか? 組み込みクラスでそれを行うことはできますか?
私が必要とするのは、文字列をハッシュすることです。テキスト ファイル内の隠しフレーズになるだけなので、安全である必要はありません (人間の目で認識できる必要はありません)。
ユーザーが文字列を入力すると、それをハッシュして、(テキスト ファイルから) 既にハッシュされたものと比較したいので、単なるランダムな文字列であってはなりません。
この目的には何が最適でしょうか? 組み込みクラスでそれを行うことはできますか?
base64 モジュールを使用するだけで、目標を達成できます。
>>> import base64
>>> a = 'helloworld'
>>> encoded_str = base64.encodestring(a)
>>> encoded_str
'aGVsbG93b3JsZA=='
>>> base64.decodestring(encoded_str)
'helloworld'
>>>
もちろん、hashlibモジュールを使用することもできます。ハッシュされた文字列は後でデコードできない(または非常に難しい)ため、より安全ですが、質問にはbase64で十分です-「実際に安全である必要はありません」
組み込み関数を使用するだけhash()
です。たとえば、次のようになります。
s = 'a string'
hash(s)
=> -8411828025894108412