Курс 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-dateutil
  3. Создание списка через цикл
  4. Методы работы со списками
  5. Просмотр файла в Jupyter Noteboo
  6. Шаблоны и наследование в Flask
  7. Расчет времени выполнения кода
  8. Многострочные строки в Python
  9. Проверка строки на палиндром
  10. Объединение списков с помощью zip
  11. Получение имени функции с помощью inspect
  12. Работа с OpenCV
  13. Поиск элементов BeautifulSoup
  14. Конкатенация строковых литералов
  15. Ошибка NotImplemented в Python
  16. Оператор == в Python
  17. Итерация по копии коллекции
  18. Dict Comprehension в Python
  19. Настройка логгера Logzero
  20. Изменение переменной в Python: nonlocal
  21. Гибкие функции Python
  22. Python itertools combinations() — группировка элементов
  23. Участие в сообществе @selectel
  24. Проверка версии Python
  25. Библиотека schedule: планировщик задач
  26. ROT13 Шифр Цезаря в Python
  27. Комментарии в Python.
  28. Создание Radio кнопок в tkinter
  29. Оператор распаковки в Python
  30. JMESPath в Python
  31. Копирование файлов с shutil()
  32. Метод rename() для переименования файлов и каталогов
  33. Блок else в обработке исключений
  34. Установка и использование Logzero
  35. Подсказки при вводе данных в Python
  36. Объединение множеств в Python
  37. Работа с *args и **kwargs в Python
  38. Генерация QR-кодов с Python
  39. Создание лямбда-функций
  40. Фильтрация входных данных в Python
  41. Форматирование вывода списков
  42. Проблемы с именами переменных
  43. Выход из профиля в Django
  44. Метод init в Python
  45. Экспорт функций в Python
  46. Переопределение метода __lshift__
  47. Работа с итераторами в Python

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