【Python】secretsモジュールで、トークンを生成する

secrets モジュールを使って、パスワードやアカウント認証、セキュリティトークンなどの機密を扱うのに適した、暗号学的に強い乱数を生成することができます。

secrets モジュールはパスワードのリセットや想像しにくい URL などの用途に適した、安全なトークンを生成するための関数を提供します。


token_bytes()

バイトを含むバイト文字列を返します。nbytesNone の場合や与えられなかった場合は妥当なデフォルト値が使われます。

コード:

from secrets import token_bytes
bytes = token_bytes(5)
print(bytes)

 

実行結果:

b'\xc4\xb9\xa0^\x10'

 

token_hex()

十六進数のランダムなテキスト文字列を返します。文字列は nbytes のランダムなバイトを持ち、各バイトは二つの十六進数に変換されます。nbytesNone の場合や与えられなかった場合は妥当なデフォルト値が使われます。

コード:

from secrets import token_hex
hex = token_hex(16)
print(hex)

 

実行結果:

91cb36f659666848c0ac8f3efc150926

 

token_urlsafe()

nbytes のランダムなバイトを持つ URL 安全なテキスト文字列を返します。テキストは Base64 でエンコードされていて、平均的に各バイトは約 1.3 文字になります。 nbytesNone の場合や与えられなかった場合は妥当なデフォルト値が使われます。

コード:

from secrets import token_urlsafe
safe_url = token_urlsafe(16)
print(safe_url)

 

実行結果:

teMZxNa1q4LlwdcEev6YrA

 



返信を残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください