Курс 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. Блок else в циклах.
  3. Утечки переменных цикла в Python 3.x
  4. Принципы LSP и ISP в Python
  5. Сохранение Unicode в JSON
  6. Декораторы в Python
  7. Python: динамическая типизация и проверка типов
  8. Обход дочерних элементов BeautifulSoup
  9. Разбиение строки в Python
  10. Установка и загрузка Instaloader
  11. Извлечение данных из JSON
  12. f-строки в формате строк
  13. Асинхронный код в Python
  14. Итераторы с потерямиZIP
  15. Переворот строки с использованием цикла
  16. Генераторы списков в Python
  17. Изменение логики работы с временем
  18. Работа с географическими данными в Python
  19. Переопределение унарных операторов
  20. Преобразование списка в словарь через генератор
  21. Python OrderedDict и fromkeys() — работа с словарями
  22. Удаление специальных символов с помощью re.sub
  23. Поиск с библиотекой Google
  24. Распаковка с оператором *
  25. Принципы программирования
  26. Проверка наличия элемента в списке
  27. Делегирование в Python
  28. Округление чисел с помощью round
  29. Проверка кортежей.
  30. Оформление кода на Python
  31. Создание генераторов
  32. Python Translator: создание локальных переводчиков
  33. Преобразование чисел в слова
  34. Удаление ресурса в Python
  35. Экспорт функций в Python
  36. Удаление дубликатов в pandas
  37. TypedDict для kwargs в Python 3.12
  38. Обратное распространение ошибки
  39. Оператор += для объединения строк
  40. Многоточие в Python
  41. Извлечение аудио из видео
  42. Разделение строк методом split()
  43. Проверка на палиндром
  44. Реализация операции -= для пользовательского класса
  45. Многострочные комментарии в Python
  46. Протокол управления контекстом

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