Курс 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. Класс Counter() для подсчета элементов
  3. Модуль math: основные функции
  4. Метод __call__ в Python
  5. Импорт с альтернативным именем
  6. Метод eq для сравнения объектов
  7. Руководство по использованию Colorama
  8. Извлечение статей с newspaper3k
  9. Создание новых списков
  10. Частичное применение функций в Python
  11. Лямбда-функции в цикле
  12. Объединение списков в Python.
  13. Создание словарей и множеств в Python.
  14. Оптимизация гиперпараметров в Python
  15. Создание спинбокса в tkinter
  16. Создание словарей с defaultdict()
  17. Работа с NumPy массивами
  18. Псевдонимы в Python
  19. Преобразование текста в речь с Python
  20. Поиск всех индексов подстроки
  21. Нахождение хеша для бесконечности и NaN в Python
  22. Поиск самого частого элемента
  23. Python UserString — создание подклассов строк
  24. Обмен переменными в Jupyter
  25. Встроенные функции Python
  26. Автоматизация с Python
  27. Проверка ввода с помощью isdigit
  28. Создание генераторов в Python
  29. Работа с WindowsPath()
  30. Кортеж в Python: создание, доступ, изменение
  31. Сортировка с параметром key
  32. Поиск подстроки в строке
  33. Перебор элементов списка в Python
  34. Структурирование данных с Pydantic
  35. Декоратор Ajax required
  36. Принципы SRP и OCP
  37. Аннотации типов в Python
  38. Модуль future Python
  39. Решатель судоку на Python с pygame
  40. Изменение объектов в Python
  41. Хэш-функции и метод цепочек
  42. Декораторы в Python
  43. Настройка вывода в Numpy
  44. Python: Splat-оператор и splatty-splat
  45. Список переменных в Python

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