Курс 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. Функция map() и ленивая оценка
  2. Повторение элементов списков
  3. Поиск анаграмм с Counter
  4. Декораторы в Python
  5. Работа с модулем glob в Python
  6. Множественные конструкторы в Python
  7. Получение атрибутов и методов класса
  8. Работа со строками в Python
  9. Выражения-генераторы в Python
  10. Работа с временем в Python
  11. Удаление дубликатов из списка
  12. Конкатенация строк с join() в Python
  13. Инверсия списка и строки в Python
  14. Удаление URL-адресов в Python
  15. Особенности ключей словаря в Python
  16. Нахождение отличий в списках
  17. Форматирование строк в Python
  18. Иерархия классов в Python
  19. Отступы в Python
  20. Создание инструмента обнаружения плагиата
  21. Многострочные комментарии в Python
  22. Библиотека Rich: форматирование текста
  23. Склеивание строк без циклов
  24. Python itertools combinations() — группировка элементов
  25. Работа со временем в Python
  26. Импортирование в Python
  27. Гибкие функции Python
  28. Экспорт внешнего файла с помощью writefile
  29. split() без разделителя
  30. Игра «Камень, ножницы, бумага» — Python
  31. Доступ к локальным переменным
  32. Синхронизация доступа к ресурсам
  33. CLI-инструмент howdoi
  34. Функция findall() для поиска вхождений строки
  35. Ускорение выполнения кода в Python
  36. Работа с срезами в Numpy
  37. Оператор умножения для вектора
  38. Enum в Python
  39. Поток данных в Python
  40. Работа с enumerate()
  41. Отладка в Python
  42. Замена текста с помощью sub
  43. Оператор @ для умножения матриц

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