【Python】secretsモジュールを用いたパスワードの作成

アイキャッチ画像

今回は、Pythonのsecretsモジュールを用いて暗号学的に強い乱数によるパスワードの作成方法について解説していきます。

乱数といえばrandomモジュールが思い浮かびますが、パスワードの生成には向いておらず、モデリングやシミュレーションによく使われます。

しかし、初心者向けの内容として暗号を作成する方法も過去に解説していますのでよろしければ参考にしてみてください。

参考:乱数を使って適当な暗号文を作成する方法(復号化不可)

無料の説明会を有効活用しよう!

独学の学習は孤独感を感じやすく挫折してしまう初心者も多いです。それでもなんとかPythonを効率よく学びたいという方は適性を知るためにもまずは無料説明会を利用しましょう。

乱数の生成

secretsモジュールを用いた乱数の生成方法は3つあります。

いろいろな使い方ができますね!

乱数を用いたパスワードの生成

先ほどの乱数の生成方法と、「chr」関数を使うことで暗号学的に強いパスワードを作成することができます。

このパスワード生成方法では、ASCIIコードに対応する番号を設定し、その範囲内でランダムに選ばれた数字をもとに文字列を生成します。

しかし、大文字と小文字のアルファベットに加え、数字に対応するASCIIコードの番号を48~122と直接記述するのはプログラム的にわかりずらいです。

そこで、「string」モジュールを用いてもっとわかりやすく記述してみましょう。

参考:乱数を使って適当な暗号文を作成する方法(復号化不可)

stringモジュールを用いたパスワード生成

stringモジュールはパスワードを生成する際にとても便利です。各関数の返り値と実際の生成方法を解説していきます。

stringモジュールもかなり便利ですね!

条件付きパスワードの生成方法

生成するパスワードの条件
  • 10文字のパスワード
  • アルファべットと数字からなるパスワード
  • 大文字、小文字を少なくとも1つずつ含む
  • 数字を少なくとも3つ含む

という条件でパスワードを作成するコードの例です。

そこまで難しくないですね!

まとめ

最後まで読んでいただきありがとうございます!

今回は、secretsモジュールやstringモジュールを用いて暗号的に強いパスワードを生成する方法を解説しました。

ぜひ少しでも参考になれば嬉しいです。過去には初心者向けにrandomモジュールを使った暗号(パスワード)の作成方法についても解説していますのでこちらも参考にしてみてください。

参考:乱数を使って適当な暗号文を作成する方法(復号化不可)

無料の説明会を有効活用しよう!

独学での学習は孤独感を感じやすく挫折してしまう初心者も多いです。また、参考書を購入しても全く読む気にならないという方も多いはずです。

それでも、なんとかPythonの勉強を行い、高スキルなエンジニアを目指したいという方は無料で受けられるオンライン説明会に参加してみることも一つの手です。

Pythonというプログラミング言語は機械学習の人気の高まりなどもあり、様々なスクールが無料説明会を開催しています。

その中でも「Freeks(フリークス)|業界初!10,780円のサブスク型プログラミングスクール」がオススメです。Pythonを効率よく学びたいという方はまずは適性を知るためにも無料説明会を利用しましょう。

無料説明会を参加してみる!

参考にしたドキュメント

コメントを残す

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

CAPTCHA