Курс 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. Введение в PyTorch
  4. CSV строка разделение в Python
  5. Блок else в циклах.
  6. Создание вложенных циклов for
  7. Запуск внешних программ с subprocess
  8. Печать календаря
  9. Слияние словарей в Python 3.9
  10. Строковое представление объектов
  11. Подсчет элементов с помощью Counter
  12. Итерация по итерируемым объектам
  13. Операторы сравнения в Python
  14. Работа с набором данных CIFAR10 в PyTorch
  15. Проверка файла .py на синтаксис.
  16. Отправка HTTP-запросов с User-Agent
  17. Комментарии в Python
  18. Непрерывная проверка в Python
  19. Комментарии в Python
  20. Список методов и атрибутов
  21. Метод ifloordiv для пользовательских классов
  22. Экспорт внешнего файла с помощью writefile
  23. Копирование объектов в Python
  24. Создание пустых функций и классов в Python
  25. Перезагрузка оператора в Python
  26. Извлечение новостей с newspaper3k
  27. Работа с часовыми поясами в Python.
  28. Форматирование даты с strftime()
  29. Работа с CSV файлами в Python
  30. Функция zip() для объединения списков
  31. Проблемы с именами переменных
  32. Регулярные выражения: метод match
  33. Подсчет элементов в Python
  34. Метод __int__ в Python
  35. GitHub в Telegram: подписка на уведомления
  36. Работа с collections в Python
  37. Упрощенный вывод данных в Python
  38. Компиляция регулярных выражений
  39. Работа с географическими данными.
  40. Склеивание строк без циклов
  41. Обработка ошибок в JSON данных
  42. Работа с itertools
  43. Удаление элементов во время итерации
  44. Встраивание HTML в Jupyter Notebook
  45. Преобразование чисел в слова

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