Python 随机密码生成器

在 Python 中生成安全的随机密码。学习使用 random 模块和字符串常量来构建强大的安全工具。

在编辑器中尝试

概述

密码生成器需要访问随机数函数并将它们映射到 ASCII 字符集。

Python 标准库提供了“random”和“secrets”来执行无偏随机选择。

对于加密或高安全性需求,Python 的“secrets”模块比“random”模块更受青睐,因为它在加密方面很强大。

代码和执行输出

组合大写、小写、数字和符号以输出 16 个字符的安全字符串。

password_gen.py
在编辑器中尝试
import random
import string

def generate_password(length=12):
    # Combine all character sets
    characters = string.ascii_letters + string.digits + string.punctuation
    
    # Randomly select characters until the desired length
    password = ''.join(random.choice(characters) for _ in range(length))
    return password

print("Generating 3 secure passwords:")
for i in range(3):
    print(f"Password {i+1}: {generate_password(16)}")
端子输出
Generating 3 secure passwords:
Password 1: a!7T#nP@zQ8k*L1w
Password 2: xY9^vB4$mC2&pR5j
Password 3: dF3%hK6*tW9@nM1q
(Output will be random during real execution)

逐步实施

  • 自动分配用户凭证
  • 为渗透测试套件生成模拟数据
  • 用于服务器部署的系统管理实用程序脚本

常见问题解答

“随机”模块对于真实密码安全吗?

“random”模块是伪随机的。为了在生产中生成实际的安全密码,您应该使用 Python 的“secrets”模块,该模块利用操作系统级安全熵。

相关主题