Курс 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. Объединение коллекций в Python
  3. Python и Юникод: работа с цифрами
  4. Переопределение метода __lshift__
  5. Переменная с нижним подчеркиванием
  6. Шаблоны и наследование в Flask
  7. Оператор морж в Python 3.8
  8. Логические операторы в Python
  9. Настройка вывода NumPy
  10. F-строки в Python 3.8
  11. Преобразование многоуровневого словаря
  12. Работа со строками в Python
  13. Проекты на Python
  14. Модуль Antigravity в Python 3
  15. Экспорт данных в файл.
  16. Область видимости переменных
  17. Работа с timedelta в Python
  18. Реализация метода __abs__ в Python
  19. Комплексные числа в Python
  20. Каналы Senior: Python, Java, Frontend, SQL, C++
  21. Управление фоновыми задачами в Python
  22. Поиск шаблона в строке
  23. Структурирование данных с Pydantic
  24. Управление виртуальными средами в Python
  25. Удаление знаков препинания в Python
  26. Округление дробей в Python
  27. Проектирование Singleton с метаклассом
  28. Быстрый поиск кода
  29. Сортировка HTML по CSS-селектору
  30. Работа с переменными в Python
  31. Генераторные функции в Python
  32. Очистка данных в Python
  33. Установка и использование pyshorteners
  34. Python: возвращение нескольких значений
  35. Добавление вложенных списков
  36. Запуск внешних программ с subprocess
  37. IPython и Jupyter Notebook: руководство
  38. Получение ID текущего процесса
  39. Пропуск строк в файле с itertools
  40. Основы Python за 14 дней
  41. Возврат нескольких значений
  42. Настройка Cron
  43. Нахождение разницы между списками в Python
  44. Класс Counter() для подсчета элементов
  45. Переопределение метода __or__()
  46. Мощь вложенных функций в Python
  47. Математические функции в Python

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