Курс 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. Поиск анаграмм с Counter
  2. Философия Python
  3. Генераторные функции в Python
  4. Оптимизация создания строк
  5. Подсчет элементов в списке с Counter
  6. Удаление ссылок в Python
  7. Считывание бинарного файла в Python
  8. Форматирование строк в Python
  9. Копирование в Python
  10. Применение функции к каждому элементу списка
  11. Транспонирование матрицы
  12. Принципы SRP и OCP
  13. Создание директории в Python
  14. Поиск HTML-элементов с BeautifulSoup
  15. Работа с комплексными числами
  16. Регулярные выражения: метод match
  17. Метод gt в Python
  18. Импорт модулей в Python 3.12
  19. Объединение множеств в Python
  20. Получение списка кортежей из словаря
  21. Возврат нескольких значений
  22. Проверка однородности элементов списка
  23. Замена переменных в Python
  24. Декоратор защиты анонимных пользователей
  25. Метод rpow в Python
  26. Метаклассы в Python
  27. Метод lt для сортировки объектов
  28. Блок else в обработке исключений
  29. Конкатенация строк с помощью join()
  30. Работа с GitHub в Telegram
  31. Декоратор Ajax required
  32. Очистка данных с Pandas
  33. Объединение списков с использованием itertools.chain
  34. Счетчик в Python: most_common()
  35. Сортировка с помощью key
  36. Списковые включения в Python
  37. Подсчет элементов с помощью Counter
  38. Замеры производительности в Python
  39. Использование двоеточия в Python
  40. Python Поверхностное Копирование
  41. Переопределение метода
  42. Python reversed() функция
  43. Обратное распространение ошибки
  44. Названия столбцов в Python таблицах

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