【Python】ハッシュ値をもとめる(MD5・SHA256)

スポンサーリンク

Pythonのハッシュ値(MD5・SHA256・SHA512)について。

この記事の内容はコチラです

  • Pythonでハッシュ値(MD5・SHA256・SHA512)を取得する
  • ハッシュ化する
  • hashlibの使い方を知る

Pythonでハッシュ化するには「hashlib」を使います。

ハッシュアルゴリズムはいくつもありますが、今回はMD5・SHA224・SHA256・SHA512について、ハッシュ値をもとめる方法を解説します。

ハッシュ化してハッシュ値をもとめる

PythonでMD5・SHA224・SHA256・SHA512でハッシュ化してハッシュ値を求めていきます。

MD5 ハッシュ

import hashlib

dat = 'python' 

# MD5のハッシュ値
hs = hashlib.md5(dat.encode()).hexdigest()
print(hs)

#[結果] 23eeeb4347bdd26bfc6b7ee9a3b755dd

PythonのMD5ハッシュ関数は「hashlib.md5」を使います。

「hashlib.md5」の引数に文字列を指定します。その際、「encode」する必要があります。そして「hexdigest」で16進形式文字列にします。

これで、文字列「python」のMD5ハッシュ値「23eeeb4347bdd26bfc6b7ee9a3b755dd」を取得できました。

SHA224 ハッシュ

import hashlib

dat = 'python' 

# SHA224のハッシュ値
hs = hashlib.sha224(dat.encode()).hexdigest()
print(hs) 

#[結果] dace1c32d56e6f2bd077266a5a381fcf7ff9052e0a269e32cd52a551

PythonのSHA224ハッシュ関数は「hashlib.sha224」を使います。

「hashlib.sha224」の引数に文字列を指定します。その際、「encode」する必要があります。そして「hexdigest」で16進形式文字列にします。

これで、文字列「python」のSHA224ハッシュ値「dace1c32d56e6f2bd077266a5a381fcf7ff9052e0a269e32cd52a551」を取得できました。

SHA256 ハッシュ

import hashlib

dat = 'python' 

# SHA256のハッシュ値
hs = hashlib.sha256(dat.encode()).hexdigest()
print(hs) 

#[結果] 11a4a60b518bf24989d481468076e5d5982884626aed9faeb35b8576fcd223e1

PythonのSHA256ハッシュ関数は「hashlib.sha256」を使います。

「hashlib.sha256」の引数に文字列を指定します。その際、「encode」する必要があります。そして「hexdigest」で16進形式文字列にします。

これで、文字列「python」のSHA256ハッシュ値「11a4a60b518bf24989d481468076e5d5982884626aed9faeb35b8576fcd223e1」を取得できました。

SHA512 ハッシュ

import hashlib

dat = 'python' 

# SHA512のハッシュ値
hs = hashlib.sha512(dat.encode()).hexdigest()
print(hs)

#[結果] ecc579811643b17...(以降省略)

PythonのSHA512ハッシュ関数は「hashlib.sha512」を使います。

「hashlib.sha512」の引数に文字列を指定します。その際、「encode」する必要があります。そして「hexdigest」で16進形式文字列にします。

これで、文字列「python」のSHA256ハッシュ値「ecc579811643b17…(以降省略)」を取得できました。

その他のハッシュ関数

import hashlib

# hashlib対応アルゴリズムを表示
hashlib.algorithms_guaranteed

#[結果] {'sha3_384', 'blake2s', 'sha384', 'sha3_256', 
#[結果] 'sha224', 'sha3_512', 'shake_128', 'sha256', 
#[結果] 'md5', 'sha1', 'blake2b', 'sha512', 'shake_256', 'sha3_224'}

Pythonのハッシュアルゴリズムは「hashlib.algorithms_guaranteed」で確認できます。

参考ページhttps://docs.python.jp/3/library/hashlib.html

以上、Pythonで文字列をハッシュ化してハッシュ値(MD5・SHA256・SHA512)をもとめる方法でした。

コメント