Курс 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. Метод ipow для возведения в степень
  2. Установка и использование TensorFlow
  3. Разделение строки на подстроки в Python
  4. Оператор объединения словарей
  5. Переменные в Python
  6. Блок try-except-else
  7. Повторение элементов в Python
  8. Получение идентификатора объекта в памяти
  9. Удаление файлов и папок в Python
  10. Оформление кода на Python
  11. Быстрый поиск кода
  12. Возврат нескольких значений из функции
  13. Расчет времени выполнения
  14. Распаковка аргументов в Python
  15. Перевод двоичного кода в целое число
  16. Лямбда-функции в Python
  17. Функция reduce() в Python
  18. Фильтрация входных данных в Python
  19. Поиск индексов подстроки
  20. Логирование с Logzero: ротация файла
  21. Тест скорости набора текста на Python
  22. Создание треугольника Паскаля
  23. Измерение времени выполнения кода с помощью time
  24. Генераторы в Python
  25. Оператор @ для умножения матриц
  26. Переворот строки с использованием цикла
  27. Функция map() и ленивая оценка
  28. Структурирование именованных констант
  29. Переопределение метода __pow__
  30. PrettyTable: создание таблицы
  31. Инверсия списка/строки в Python
  32. Преобразование PowerPoint в PDF.
  33. Добавление вложенных списков
  34. Оператор «моржа» (Walrus Operator)
  35. Возвращение нескольких значений через кортеж или класс
  36. Циклы в Python
  37. Работа с временем в Python
  38. Распаковка значений в Python
  39. Оптимизация памяти в Python
  40. Работа с базами данных SQLite
  41. Методы shutil для работы с файлами
  42. Работа с множествами в Python
  43. Перевод эмодзи и эмотиконов.
  44. Дизассемблирование Python кода

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