Oh MyUtils

パスワード生成器 - 強力なランダムパスワード&パスフレーズ オンライン

強力で安全なランダムパスワードと覚えやすいパスフレーズを生成。長さ、文字、複雑さをカスタマイズ — 100%クライアント、保存なし。

4128

パスワード強度

強い103.4 ビット
文字プール: 88 文字推定解読時間: 2.1e+3 billion years

一括生成

件数

よくある質問

パスワード生成ツールとは?

パスワード生成ツールは、暗号学的に安全な乱数生成を使用して、ランダムで予測不可能なパスワードを作成するツールです。人間が作成するパスワード(パターンに従いがちで予測可能)とは異なり、生成されたパスワードは利用可能な文字セットから最大限のランダム性を使用し、ブルートフォース攻撃、辞書攻撃、ソーシャルエンジニアリングに対して極めて強力です。

このパスワード生成ツールの使い方は?

モードを選択してください:パスワード(ランダム文字)またはパスフレーズ(ランダム単語)。長さスライダーで希望のパスワード長を設定(16文字以上推奨)。文字タイプのオン・オフを切り替え。設定変更時にパスワードが自動生成されます。強度メーターを確認し、コピーボタンをクリックしてください。

パスワードデータは安全ですか?

パスワードは100%安全で、ブラウザから外に出ることはありません。このツールはWeb Crypto API(crypto.getRandomValues())を使用してデバイス上で完全にパスワードを生成します。パスワードデータはサーバーに送信されることも、データベースに保存されることも、どこにも記録されることもありません。

パスワードエントロピーとは?

エントロピーはパスワードのランダム性と予測不可能性をビット単位で測定します。エントロピーが高いほど、ブルートフォース攻撃で解読が困難になります。E = L × log₂(C)で計算されます(L=パスワード長、C=文字プールサイズ)。セキュリティ専門家は標準アカウントに60ビット以上、高セキュリティアプリケーションに120ビット以上を推奨しています。

パスワードとパスフレーズの違いは?

パスワードはランダムな文字列(例:K9$mPq2#vL7n)、パスフレーズはランダムな単語の連続(例:correct-horse-battery-staple)です。パスフレーズは高いエントロピーを維持しながら覚えやすい傾向があります。

なぜMath.random()ではなくcrypto.getRandomValues()を使うのか?

Math.random()は決定論的アルゴリズムを使用する擬似乱数生成器(PRNG)です。crypto.getRandomValues()はOSのエントロピーソースに基づく暗号学的に安全なPRNG(CSPRNG)で、パスワード生成のようなセキュリティに敏感なアプリケーションに適しています。

コード例

// Secure password generator using Web Crypto API
function generatePassword(length = 16, options = {}) {
  const { uppercase = true, lowercase = true, numbers = true, symbols = true } = options;

  let charset = '';
  if (uppercase) charset += 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
  if (lowercase) charset += 'abcdefghijklmnopqrstuvwxyz';
  if (numbers) charset += '0123456789';
  if (symbols) charset += '!@#$%^&*()_+-=[]{}|;:,.<>?';

  const array = new Uint32Array(length);
  crypto.getRandomValues(array);

  let password = '';
  for (let i = 0; i < length; i++) {
    password += charset[array[i] % charset.length];
  }
  return password;
}

const pwd = generatePassword(20);
console.log(pwd);
console.log('Entropy:', (20 * Math.log2(90)).toFixed(1), 'bits');

関連ツール