# パスワード生成したい(``pwgen``) ```console $ brew install pwgen $ pwgen オプション 文字数 生成数 ``` `pwgen`はパスワード用にランダムな文字列を生成してくれるコマンドです。 オプションを使ってパスワードに含まれる文字の種類や数を調整できます。 複数のサービスの間で、パスワードを使い回すことは厳禁!とよく言われますが、人間の頭で思いつくには限界があります。 このようなことは、コンピューターにまかせてしまいましょう。 ## 完全ランダムしたい(`-s`) ```console $ pwgen -sB 20 1 # 完全ランダム / 似たような文字を除外 XKjYRCof4a4r4yWLkYqa ``` `-s`で完全ランダムな文字列が生成されます。 `-B`で似たような形の文字を除外できます。 ## 特殊文字したい(`-y`) ```console $ pwgen -y 20 1 # 特殊文字を含む Ahf5TiaNg`ie2pi,shai ``` `-y`で特殊文字を追加できます。 ## 大文字/小文字/数字/特殊文字したい(`-syncB`) ```console $ pwgen -syncB 14 3 9~{u-|WJh9+t*C XJKW4(Ro!sM^~| =L<>'wR4LF{%{X ``` `-c`で大文字を1つ以上、 `-n`で数値を1つ以上、 `-y`で特殊文字を1つ以上、追加できます。 ここに`-s`(完全ランダム)と `-B`(曖昧回避)も組み合わせた `-syncB`を(シンクビーの語呂で覚えて)使うことが多いです。 ## 長いは正義 パスワードは**文字数を長くすること**が大切です。 近年はマシンのパワー(=GPUの性能)があがり、ブルートフォースでパスワードがクラックされる時間もどんどん短くなっています。 大文字/小文字/数字/特殊文字をまぜていても、8文字では5分くらいでクラックされてしまうらしいです。 2024年の時点では、12文字以上にしておくのが安全なようです。 ・・・え?8文字までしか使えない? そんなサービスを使うのはやめましょう。 :::{hint} パスワードを考えるのは大変ですが、覚えるのはもっと大変! なので、パスワードマネージャーを使いましょう。 :::