パスワードジェネレーター
カスタマイズ可能なオプションで強力なパスワードを生成。
6128
パスワードジェネレーターは、ブラウザに内蔵された乱数ジェネレーター(Web Crypto API)を使用して暗号的に安全なランダムパスワードを生成します。パスワードは完全にデバイス上で生成され、ネットワーク経由で送信されたり、どこにも保存されたりしないため、非常に機密性の高いアカウントにも安全に使用できます。
長さ(8〜128文字)と文字セットを、アカウントを作成するサービスの要件に合わせて設定します。ほとんどのセキュリティ専門家は、大文字、小文字、数字、記号を混ぜた少なくとも16文字のパスワードを推奨しています。
パスワードマネージャーはパスワードジェネレーターの最良のパートナーです。Bitwarden、1Password、KeePassなどのツールを使用すると、すべてのサイトに固有のランダムパスワードを生成・保存でき、覚える必要がありません。複数のサービスでパスワードを再利用しないでください。
よくある質問
コード実装
import secrets
import string
def generate_password(
length: int = 16,
use_upper: bool = True,
use_lower: bool = True,
use_digits: bool = True,
use_symbols: bool = True,
) -> str:
"""Generate a cryptographically secure random password."""
charset = ""
required = []
if use_lower:
charset += string.ascii_lowercase
required.append(secrets.choice(string.ascii_lowercase))
if use_upper:
charset += string.ascii_uppercase
required.append(secrets.choice(string.ascii_uppercase))
if use_digits:
charset += string.digits
required.append(secrets.choice(string.digits))
if use_symbols:
symbols = "!@#$%^&*()-_=+[]{}|;:,.<>?"
charset += symbols
required.append(secrets.choice(symbols))
if not charset:
raise ValueError("At least one character type must be selected")
# Fill the rest of the password
remaining = [secrets.choice(charset) for _ in range(length - len(required))]
password_list = required + remaining
# Shuffle to avoid predictable positions
secrets.SystemRandom().shuffle(password_list)
return "".join(password_list)
# Examples
print(generate_password(16))
print(generate_password(24, use_symbols=False))
print(generate_password(8, use_upper=False, use_symbols=False))Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.