パスワード自動生成 (Password Generator)

以下の条件で、パスワードを自動生成しています。

文字数は16文字または20文字

英数字記号

混同しやすい文字は省きました(oO0 Il1 gq9 UV)

使用した記号 +-*/~!#$%_=&()[]{},.?

20文字

// password char $password_chars = 'ABCDEFGHJKLMNPQRSTWXYZabcdefhijkmnprstuvwxyz2345678+-*/~!#$%_=&()[]{},.?'; $password_chars_count = strlen($password_chars); $size=20; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

こちらは英数字のみ

// password char $password_chars = 'ABCDEFGHJKLMNPQRSTWXYZabcdefhijkmnprstuvwxyz2345678'; $password_chars_count = strlen($password_chars); $size=20; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

こちらは英数字(大文字)のみ

// password char $password_chars = 'ABCDEFGHJKLMNPQRSTWXYZ2345678'; $password_chars_count = strlen($password_chars); $size=20; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

こちらは英数字(小文字)のみ

// password char $password_chars = 'abcdefhijkmnprstuvwxyz2345678'; $password_chars_count = strlen($password_chars); $size=20; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

こちらは数字のみ

// password char $password_chars = '0123456789'; $password_chars_count = strlen($password_chars); $size=20; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

16文字

// password char $password_chars = 'ABCDEFGHJKLMNPQRSTWXYZabcdefhijkmnprstuvwxyz2345678+-*/~!#$%_=&()[]{},.?'; $password_chars_count = strlen($password_chars); $size=16; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

こちらは英数字のみ

// password char $password_chars = 'ABCDEFGHJKLMNPQRSTWXYZabcdefhijkmnprstuvwxyz2345678'; $password_chars_count = strlen($password_chars); $size=16; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

こちらは英数字(大文字)のみ

// password char $password_chars = 'ABCDEFGHJKLMNPQRSTWXYZ2345678'; $password_chars_count = strlen($password_chars); $size=16; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

こちらは英数字(小文字)のみ

// password char $password_chars = 'abcdefhijkmnprstuvwxyz2345678'; $password_chars_count = strlen($password_chars); $size=16; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

こちらは数字のみ

// password char $password_chars = '0123456789'; $password_chars_count = strlen($password_chars); $size=16; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

24文字

// password char $password_chars = 'ABCDEFGHJKLMNPQRSTWXYZabcdefhijkmnprstuvwxyz2345678+-*/~!#$%_=&()[]{},.?'; $password_chars_count = strlen($password_chars); $size=24; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

こちらは英数字のみ

// password char $password_chars = 'ABCDEFGHJKLMNPQRSTWXYZabcdefhijkmnprstuvwxyz2345678'; $password_chars_count = strlen($password_chars); $size=24; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

こちらは英数字(大文字)のみ

// password char $password_chars = 'ABCDEFGHJKLMNPQRSTWXYZ2345678'; $password_chars_count = strlen($password_chars); $size=24; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

こちらは英数字(小文字)のみ

// password char $password_chars = 'abcdefhijkmnprstuvwxyz2345678'; $password_chars_count = strlen($password_chars); $size=24; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }

こちらは数字のみ

// password char $password_chars = '0123456789'; $password_chars_count = strlen($password_chars); $size=24; // generate 5 password // $size:length for ($i=1; $i <= 5; $i++) { $data = mcrypt_create_iv($size, MCRYPT_DEV_URANDOM); $pin = ''; for ($n = 0; $n < $size; $n ++) { $pin .= substr($password_chars, ord(substr($data, $n, 1)) % $password_chars_count, 1); } echo $pin; echo '<BR/>'; }