Курс 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. Отправка POST запроса на сервер.
  2. Преобразование многоуровневого словаря
  3. Логирование в Python
  4. Измерение времени выполнения кода
  5. Проверка строки на палиндром
  6. Обработка исключений в Python
  7. Удаление элементов по срезу
  8. Отправка POST-запроса в REST API
  9. Функции map, filter и reduce
  10. Импорт объектов из модулей
  11. Класс UserDict: дополнительная функциональность
  12. Удаление файлов и папок в Python
  13. Создание словарей и множеств в Python.
  14. Каналы Senior: Python, Java, Frontend, SQL, C++
  15. Декоратор Ajax required
  16. Тестирование времени с Freezegun
  17. lru_cache оптимизация функций
  18. Определение индекса элемента списка
  19. Идентификатор объекта в Python
  20. Условные выражения в Python
  21. Удаление элемента по индексу в Python
  22. Декораторы для регистрации функций
  23. Названия столбцов в Python таблицах
  24. Установка и использование howdoi
  25. Импорт модулей в Python 3.12
  26. TON Smart Challenge #2: участие и подготовка
  27. Работа с YAML в Python
  28. Многопоточность и асинхронное программирование в Python
  29. Регистрация на курсы SF Education
  30. Создание словарей в Python
  31. Печать в одной строке
  32. Работа с deque из collections
  33. Объединение словарей в Python
  34. Вставка переменных в шаблоны Flask
  35. Активация Matplotlib в Jupyter
  36. Вывод баннеров
  37. Метод join для объединения строк
  38. Добавление Progressbar в Python
  39. Работа с библиотекой xkcd
  40. Повторение элементов списков
  41. Python Метод del.
  42. Использование defaultdict в Python
  43. split() без разделителя

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