@GeorgyPy

Как сделать генерацию паролей на python?

Доброго времени суток! Как сделать генерацию паролей на python?
Я делаю программу подбора паролей и мне нужно генерировать пароль от 8 до 16 символов в длину

Что мне нужно?
  • Указывать через input() сколько паролей мне нужно сгенерировать
  • Генерировать пароли длиною от 8 до 16 символов
  • Записывать в file.txt


Еще обязательно мне надо чтоб при генерации пароли не повторялись!
  • Вопрос задан
  • 125 просмотров
Пригласить эксперта
Ответы на вопрос 2
Vindicar
@Vindicar
RTFM!
itertools.product() позволит перебрать все сочетания символов. Поиграв с параметрами, можно даже задать правила вида "первый символ - согласная, второй - цифра, ..." . Но для брутфорса обычно лучше словарная атака.
Ответ написан
Комментировать
@donkol
import random
import string

def generate_password(length):
    characters = string.ascii_letters + string.digits + string.punctuation  # Все символы
    password = ''.join(random.choice(characters) for i in range(length))
    return password

num_passwords = int(input("Введите количество паролей для генерации: "))

generated_passwords = set()
while len(generated_passwords) < num_passwords:
    length = random.randint(8, 16)
    password = generate_password(length)
    generated_passwords.add(password)

with open('file.txt', 'w') as file:
    for password in generated_passwords:
        file.write(password + '\n')

print(f'Сгенерированные пароли записаны в file.txt')
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы