macで色々な条件付きランダムパスワードを生成する方法

技術

はじめに

こんにちは!さいけです。

今回は、「macで色々な条件付きランダムパスワードを生成する方法」を紹介します。

macで色々な条件付きランダムパスワードを生成する方法

ランダムパスワードの生成はpwgenというライブラリを使います。

インストール

homebrewを使ってpwgenをインストールします。

$ brew install pwgen

パスワードを生成する

まず、シンプルな使い方でランダムなパスワードを生成してみます。

pwgenコマンドを打つとパスワードが生成されます。

$ pwgen
zooPur2o coN8Esha faiGh1xo tae7Mee8 aet1kuHo oojeiF9i aquoP8ne Yagiedu1
Ohph1ohX bahPhai8 mii8Aig0 upuChiF9 Mohgh7Ch ieku1Nei Ape5quae Queu1quu
aiqu6eiM Nohy4moo ooQu3phi Ahtiur9p thie8Quo veivooJ3 be9keiVi piZohni4
Ook9eiT9 sheeY1ch lah1CooC ahJ2Iz8k IeTh3aeZ eeno5Ii5 ohhouTa1 chee4Foo
Chahb1ah eiJ4zeej bura8OhY Dahcu1ei wim7iLun uaF4yaes Iid7OhCh uu5Haefu
aewaoL8U pav6Soj5 Quee1ato Aus7Aegh tah2yahW Odoorou8 Jaish6mo thee3Uth
ein9Tohn EeZeM2ye haeceZu1 Rah4aequ epiW3sho caih9ALo gahg6ohT oov9Esie
moh7Le3I Ohy8Pe4f ahx2Phee Ohz5eija Rae7aeno aeRie0ei bohyoh3E eY2ah9Se
wiePh8qu ooN4toh6 quo6Lien ooH6quia Eece6ail ohNg4Ooy ekaiPh9E ao6uPaor
ahloh8Ah ioR8adoo is3iZoo6 ohDae8ei tha2Thee eekuV1oh Aeghieb5 Aiy8eiso
soh4Oqua tie5taeR ChieSh0P ooB3shaa ahQuie5a Yeit0dee ko9eeGie ci6Fei5n
uing2Yoh nep8ae7E tahau0Ie yee3Nei8 Ri1Foocu Ahj2gaeR eeT3aeba AP4usi2o
ieL1aeth Jah1uth1 ahd4AiZ2 othahSh8 ahNaeS0O OoGaapo4 zoG8ceiz Aa4raet8
BahWohx1 za5ohKu7 aej2Eej3 ieQuooN3 Oojaek0D ang6FuL0 Ie5gughe bohsh3Cu
ook7me7I di2uzeiP jae4Ohte hai0Oono eiS3ecua gaijoh6R aiBoo7ul cueTh1Ke
tie1Cuph nohtie4P Loo0yugh Wu7bae0e Lu4laer0 aeRaeje4 voCie1Iu lohy6AiS
ieGu2Wei huJ3bo6e AeRie2va Aiweid8i vai2goNg gushe5Pa Fa3thay4 fe8eePux
wei2Aigi Eewee2sh waquo2iV Rie2oiGo tukeeM8e Iree0xai IewohK4n be1di4Ba
ep6riyoZ thooSha4 oov9ieSe nee2jeeY LieJ3eey yieC3vee Nah9shoh mu4aiThi
fieV1eNg OoZ3air2 luk0Quee eiwi4eeG HiQuei6a Kaing7Ou OoNee4ci weiShi2i

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

条件付きパスワードを生成する場合は、条件の指定をする必要があります。

使い方

基本的には、以下の形式で条件を指定できます。

pwgen [ OPTIONS ] [ pw_length ] [ num_pw ]
  • [OPTIONS] …オプション
  • [pw_length]…パスワードの長さ
  • [num_pw]…パスワードの生成数

サンプルコマンド

よく使いそうなサンプルコマンドをざっとまとめました\(^o^)/

8桁のパスワードを生成する
$ pwgen 8
ieW6Ru1o Gou8zu2e zooMah4u uang9ahC Oophei3R mei9Eifu tah5ahQu Ahshoo4d
oojai3Fe Ceemeep4 Aiwee0lu Raekaiv7 Cuo4coo0 Jihoh5eR aec7Eiqu ye8ooGh5
Thi8cha7 Hawoo1so oobaiPh2 ieQu1poh azojeiD5 eoth2ohZ Ohj9xua0 ifiShai3
apaiV6no shohng1A Ieph2yei Aixai9ii ku3nuShi eish8OhZ Aich8lee Aijae3ua
naud1Lee chohn0Me Dei8aoqu ahr2Oeja zie3Oozo hoNoo0ee EeThei9V eiqu9eDe
ooShil5j Ooc2ehi8 vough9Oh keeM4Jee ohShoh4u EiKi8ahg Gae9shao ou3eiK7x
Diexah2o eaW0aesh luu8kaiP EL3lahno Oog2Ousa Doo4irah Lool5abo kaek9EKe
Wahm1ier ohhem7Ah eo8ahGo5 edoh1Tui eiGhoh3f Aeph4Pho ahjee1oG iedae2Ob
Iewiw7zi SuChie0s ahH7non3 ohHae3uh Ach3oovo zo5uThae ieNg7phi Shia3ach
uM8phugu aji2Eik1 ub4oJ6fa een1EeNg ooFiek2t Otoog0ca eepooTh5 hooGhuh1
ohr9aoNg aPhud5ei zoob0Ahd aiDaiJ6u Ceme1geu Cha1eifo Pi9paefa xoo6Ao6d
zee2Quee iechai9M gib6aiXi poS8aeTe Ohkai6th Ju8AeYah eiVahz6c acei9Iew
Xei4phah ooChoh0k eef5Iegh dae6eeRu ziesol8U Cheil8AW Itie4oe3 seg6Itai
waiGu5Ie oiN6Looj eumeeSh3 mee1uG7o ahFoiz6x Exai2oPh Toi2Tee8 rei7Yeez
Geeghe9j bae5OeCh Aojohf0T zah2Ooru gahn0Nei aez1Bei7 at4siToo Nae2Fi2e
pae3iThu yoo7an3A sai6UQuo Eikoo0ro No9yuchi Yei7ohpo Zol8Xait Xi0eeNgo
quai2EeN Locee8ie jeeGh4wa oopheoM2 ne3aeCe6 aak2ve4A waiT7vei RahvohX2
Kohj6ahh Rei2eequ eiph3Ejo Ro5leich Eh0Choh8 zou8gioK zeigu6Ah sae0iWuB
EisieX6v de6waZie NahTa0Ni naey2Wei igh0vaRu Emigh4oo ooRioz1a Jooch8nu
Foe1ush9 gai8Seer MiTogh3c Ye2tua4w Chohp7ro jeiNem6r ahzah7Ie Riev9hia
16桁のパスワードを1つ生成する
$ pwgen 16 1
Ohngaeph6iQu9fo4
記号を含めたパスワードを生成する

yオプションで記号を含めた生成の指定ができます

$ pwgen -y 16 1
Jie2du1oe/th8ein
セキュアで複雑なパスワードを生成する

sオプションでセキュアで複雑な生成の指定ができます

$ pwgen -s 16 1
jhUGx0uiIEKE0A2K
数字を含まないパスワードを生成する

0オプションで数字を含まない生成の指定ができます

$ pwgen -0 16 1
JeiXaechahghohQu
大文字を含まないパスワードを生成する

Aオプションで大文字を含まない生成の指定ができます

$ pwgen -A 16 1
iipoh6eitaicieb1
16桁のセキュアで記号を含むパスワードを3個生成して一行ずつ表示
$ pwgen -1sy 16 3
{y9HeRlW;#u3fc$O
y\Eo;P2#q[wGR8vw
ki}M>|_1o,xI/9sa
16桁のセキュアで記号を含むパスワードを1000個生成し、指定したパターンに合致したものを一行ずつ表示
$ pwgen -1sy 16 1000 | egrep "[a-zA-Z0-9_.-]{16}"
.DuT.RhZ_FzGARf9
zc1Fd_NNq7rb.XIj
esl0c-RqNOC.d3kR
9NDNPkc56GHfKn5.

おまけ:オプション一覧

オプション名概要
-c大文字を含める
-A大文字を含めない
-n数字を含める
-0数字を含めない
-y記号を含める
-s複雑化する
-B曖昧な文字を含めない
-hヘルプを表示
-Hハッシュファイルを指定
-C表形式で表示
-11行ずつで表示
-v母音を使用しない

おわりに

今回は、「macで色々な条件付きランダムパスワードを生成する方法」の紹介をしました。

パスワード生成をするときに是非本記事を役に立ててみてください\(^o^)/

コメント

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