Pythonでpasslibを用いてPBKDF2-SHA256アルゴリズムを使用してパスワードをハッシュ化する

スポンサーリンク

Pythonでpasslibを用いてPBKDF2-SHA256アルゴリズムを使用してパスワードをハッシュ化してみます。なお、PBKDF2-SHA256というのは、PBKDF2は鍵導出関数の1つで、SHA256はハッシュ関数。鍵導出関数は、パスワードなどの値を、「マスターキー」のように用い、擬似乱数関数 (PRF: pseudo-random function)を使って、鍵を導出する(導き出すもの)。擬似乱数関数は、秘密鍵と値を入力とする効率的に計算可能な関数。

今回はpasslibを用います。このライブラリ・モジュールは、Pythonの標準ライブラリではありませんので、事前にインストールする必要があります。

■Python

今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)

■passlibを用いてPBKDF2-SHA256アルゴリズムを使用してパスワードをハッシュ化する

では、早速passlibを用いてPBKDF2-SHA256アルゴリズムを使用してパスワードをハッシュ化するスクリプトを書いていきます。

■コード

from passlib.hash import pbkdf2_sha256

hash = pbkdf2_sha256.hash("password1234")

print(hash)

「from import」でpasslib.hashのpbkdf2_sha256を呼び出します。その後、hashという変数を定義し、pbkdf2_sha256.hash()を用います。括弧内に引数,パラメータとして、パスワードを渡します。今回は仮で設定したパスワード「password1234」を渡します。これでPBKDF2-SHA256アルゴリズムを使用してパスワードがハッシュ化されます。その後、ハッシュ化された値をhash変数に格納します。

■実行・検証

このスクリプトを「pass_hash.py」という名前で、Pythonが実行されている作業ディレクトリ(カレントディレクトリ)に保存し、コマンドプロンプトから実行してみます。

実行してみると、passlibを用いてPBKDF2-SHA256アルゴリズムを使用したパスワードがハッシュ化され、ハッシュ化された値をprint()で出力させることができました。

コメント

タイトルとURLをコピーしました