技術ブログ

プログラミング、IT関連の記事中心

JavaScriptでパスワードを自動生成する方法(記号を含めたパスワード、記号を含めないパスワード)

目次

利用用途

自分で生成したパスワードで各サイトのパスワードを設定しても良いですが、
システム的には、パスワードを生成してメールを送信し、ユーザーが自分でパスワードを変更したいなどで利用するケースがあります。

ここでは、JavaScriptだけを使用した簡単なパスワード生成方法を記載します。
乱数で文字列を取得して返却するだけのものです。

8文字で、アルファベットの大/小文字と数字のパスワード生成

一般的によくある8文字で、アルファベットの大/小文字と数字組み合わせのパスワード生成は以下です。

const createPassword = () => {
    var alphabet = 'abcdefghijklmnopqrstuvwxyz';
    var alphabetUpper = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
    var numbers = '0123456789';

    var passBase  = alphabet + alphabetUpper + numbers;

    var len = 8; // 8桁
    var password='';

    for (var i = 0; i < len; i++) {
        password += passBase.charAt(Math.floor(Math.random() * passBase.length));
    }

    return password;
}

console.log(createPassword());

記号を含めたパスワード生成

記号を含めたパスワード生成は以下です。

const createPassword = () => {
    var alphabet = 'abcdefghijklmnopqrstuvwxyz';
    var alphabetUpper = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
    var symbol = '!#$%()=-^¥[@]:;{}_/.'
    var numbers = '0123456789';

    var passBase  = alphabet + alphabetUpper + numbers + symbol;

    var len = 8; // 8桁
    var password='';

    for (var i = 0; i < len; i++) {
        password += passBase.charAt(Math.floor(Math.random() * passBase.length));
    }

    return password;
}

console.log(createPassword());