Курс Python → Генератор надежных паролей

Генератор паролей — это проект на Python, который позволяет создавать надежные и безопасные пароли с использованием модулей string и secrets. Модуль string предоставляет нам доступ ко всем возможным символам, которые могут быть использованы в пароле, включая буквы, цифры и специальные символы. Модуль secrets, в свою очередь, используется для генерации криптографически безопасных паролей, что обеспечивает высокий уровень защиты от взлома.

Для создания генератора паролей вам понадобится написать код, который будет использовать цикл для непрерывной генерации паролей до тех пор, пока не будут выполнены определенные условия. Например, можно задать условие, что пароль должен содержать хотя бы один специальный символ и две цифры. Таким образом, каждый сгенерированный пароль будет соответствовать заданным требованиям безопасности.


import string
import secrets

def generate_password():
    special_chars = string.punctuation
    digits = string.digits
    
    password = ''
    while True:
        password = ''.join(secrets.choice(string.ascii_letters + digits + special_chars) for i in range(8))
        if any(c in special_chars for c in password) and sum(c.isdigit() for c in password) >= 2:
            break
    
    return password

print(generate_password())

Приведенный выше пример кода демонстрирует функцию generate_password(), которая генерирует случайный пароль из букв, цифр и специальных символов. Цикл while используется для непрерывной генерации паролей до тех пор, пока не будет найден пароль, удовлетворяющий заданным условиям безопасности. После этого пароль выводится на экран.

Таким образом, создание генератора паролей на Python с использованием модулей string и secrets позволяет создавать надежные и безопасные пароли, которые соответствуют определенным требованиям безопасности. Этот проект представляет собой простой и эффективный способ генерации уникальных паролей для защиты ваших данных и аккаунтов от несанкционированного доступа.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Ветвление выражения в Python
  2. Библиотека sh: использование команд bash в Python
  3. Изменение IP-адреса в Python
  4. Работа со словарями
  5. Оператор break в Python
  6. Модуль xkcd: загрузка комиксов
  7. Применение промокода в Много лосося
  8. Объединение объектов в Python
  9. Изменение переменной в Python: nonlocal
  10. Работа с базами данных SQLite
  11. Шаблоны Flask: условия и циклы
  12. Философия Python
  13. Progress с библиотекой tqdm
  14. Генерация случайных чисел Python
  15. Получение пути к текущему скрипту с помощью os
  16. Оператор assert в Python
  17. Преобразование числа в восьмеричную строку
  18. Установка переменной среды в Python
  19. Создание инструмента обнаружения плагиата
  20. Работа с датами в Python
  21. Оптимизация памяти с __slots__
  22. Подсчет элементов в Python
  23. Генерация UUID в Python
  24. Оператор in для проверки наличия элемента
  25. Измерение времени выполнения кода с помощью time
  26. Список и кортеж в Python
  27. Python Аргументы по умолчанию
  28. Курс Data Scientist в медицине
  29. Преобразование многоуровневого словаря
  30. Функции-генераторы в Python
  31. Сортировка и разворот списка
  32. Форматирование объектов с модулем pprint
  33. Фильтрация списка чисел
  34. Вывод букв строки в Python
  35. Разработка Telegram-ботов
  36. Исправление ошибки NameError
  37. Форматирование строк в Python
  38. Использование эмодзи в Python
  39. Частичное совпадение пользовательского ввода в Python 3.10
  40. Подсчет количества элементов в списке
  41. Сортировка с параметром key
  42. Метод split() в Python
  43. Объединение списков с помощью zip
  44. Отладка производительности Python
  45. Работа со стеком в Python
  46. Генерация фальшивых данных с Faker

Marketello читают маркетологи из крутых компаний