79997296

В этой статье мы создадим генератор паролей, который поможет нам быстро генерировать случайные и надежные пароли. Зачем нам нужен генератор паролей? Потому что мы не можем мгновенно придумать различные шаблоны паролей.

Но это не то же самое, что в случае с компьютерами. Компьютеры могут генерировать случайные и надежные пароли на основе наших настроек за считанные секунды. Существует множество доступных генераторов паролей. Можем ли мы создать свои собственные настройки с теми настройками, которые нам нравятся? Да, мы определенно можем его создать. И здесь мы покажем вам, как это сделать. Давайте создадим генератор паролей.

Генератор паролей

Самое лучшее в создании нашего собственного генератора паролей-это то, что мы можем настроить его так, как нам нравится. Сначала мы создадим генератор паролей, который запрашивает длину пароля и генерирует случайный пароль, содержащий цифры, алфавиты и специальные символы.

Затем мы улучшим его, задав количество символов каждого типа, например количество цифр, алфавитов и специальных символов. Итак, без лишних слов, давайте рассмотрим шаги по созданию генератора паролей с помощью Python.

Шаги

  • Сохраните все символы в виде списка. Мы можем использовать строковый модуль Python или ввести их все.
  • Попросите пользователя ввести длину пароля.
  • Перемешайте символы с помощью этого random.shuffleметода.
  • Инициализируйте пустой список для хранения пароля.
  • Напишите цикл, который повторяется lengthнесколько раз.
  • Выберите случайный символ из всех символов, используя этот random.choiceметод.
  • Добавьте случайный символ к паролю.
  • Перетасуйте полученный список паролей, чтобы сделать его более случайным.
  • Преобразуйте список паролей в строку с помощью этого joinметода.
  • Распечатайте пароль.

Выполните описанные выше действия и попробуйте написать код. Не волнуйтесь, даже если вы не в состоянии написать код. Проверьте код ниже.

Код

  • import string
  • import random
  • ## characters to generate password from
  • characters = list(string.ascii_letters + string.digits + "[email protected]#$%^&*()")
  • def generate_random_password():
  • ## length of password from the user
  • length = int(input("Enter password length: "))
  • ## shuffling the characters
  • random.shuffle(characters)
  • ## picking random characters from the list
  • password = []
  • for i in range(length):
  • password.append(random.choice(characters))
  • ## shuffling the resultant password
  • random.shuffle(password)
  • ## converting the list to string
  • ## printing the list
  • print("".join(password))
  • ## invoking the function
  • generate_random_password()

Приведенный выше код не требует пояснений. Мы только что выполнили описанные действия по написанию кода. Таким образом, вы не обнаружите никаких проблем с пониманием кода, если прочтете инструкции. Теперь запустите код и сгенерируйте пароль. Пример вывода будет выглядеть следующим образом.

  • Enter password length: 10
  • d&amIzK%d)

Соблюдайте пароль в приведенном выше выводе. Есть ли какая-нибудь цифра? Нет. Потому что нет никакой гарантии, что программа будет включать цифры. Затем мы пытаемся гарантировать, что программа будет включать цифры и специальные символы, попросив пользователя ввести количество цифр, алфавитов и специальных символов, которые они хотят.

Когда пользователь вводит количество символов для каждого типа, программа включит в пароль соответствующее количество типов символов. Давайте посмотрим код, который принимает количество символов для каждого типа и генерирует пароль.

  • import string
  • import random
  • ## characters to generate password from
  • alphabets = list(string.ascii_letters)
  • digits = list(string.digits)
  • special_characters = list("[email protected]#$%^&*()")
  • characters = list(string.ascii_letters + string.digits + "[email protected]#$%^&*()")
  • def generate_random_password():
  • ## length of password from the user
  • length = int(input("Enter password length: "))
  • ## number of character types
  • alphabets_count = int(input("Enter alphabets count in password: "))
  • digits_count = int(input("Enter digits count in password: "))
  • special_characters_count = int(input("Enter special characters count in password: "))
  • characters_count = alphabets_count + digits_count + special_characters_count
  • ## check the total length with characters sum count
  • ## print not valid if the sum is greater than length
  • if characters_count > length:
  • print("Characters total count is greater than the password length")
  • return
  • ## initializing the password
  • password = []
  • ## picking random alphabets
  • for i in range(alphabets_count):
  • password.append(random.choice(alphabets))
  • ## picking random digits
  • for i in range(digits_count):
  • password.append(random.choice(digits))
  • ## picking random alphabets
  • for i in range(special_characters_count):
  • password.append(random.choice(special_characters))
  • ## if the total characters count is less than the password length
  • ## add random characters to make it equal to the length
  • if characters_count < length:
  • random.shuffle(characters)
  • for i in range(length - characters_count):
  • password.append(random.choice(characters))
  • ## shuffling the resultant password
  • random.shuffle(password)
  • ## converting the list to string
  • ## printing the list
  • print("".join(password))
  • ## invoking the function
  • generate_random_password()

Итак, в чем разница между предыдущим кодом и этим кодом?

  • Мы написали отдельные циклы для каждого типа символов, чтобы добавить их в пароль.
  • Существует две условные проверки для проверки общего количества символов с длиной пароля.
Мы добавили несколько дополнительных кодов. Но шаблон аналогичен предыдущему коду. Таким образом, вы не найдете никаких трудностей в его понимании. Теперь пришло время выполнить и проверить вывод. Посмотрите на следующий тестовый запуск.

  • Enter password length: 10
  • Enter alphabets count in password: 3
  • Enter digits count in password: 2
  • Enter special characters count in password: 3
  • V2(&#XlQq1

Если вы видите пароль, сгенерированный на этот раз, он содержит минимальное количество символов, которое требуется пользователю. И программа включила еще 2 случайных символа, чтобы длина пароля была равна вводу пользователем. Ура! у нас есть полный надежный генератор паролей.

Вывод

Мы видели, как создать генератор паролей с нуля. Можем ли мы добавить в него дополнительные функции? Да, мы можем добавить столько, сколько захотим. Но убедитесь, что полученный пароль достаточно надежен. Сгенерируйте пароли из кода и используйте их для своей следующей онлайн-учетной записи.

"Вся Информация Размещенная В Блоге "Septem Plus" Несет Ознакомительно-Информационный Характер И Не Принуждает К Каким Либо Действиям Пользователей Блога. Блог "Septem Plus" Не Несет Ответственности За Действия Пользователей После Посещения Блога "Septem Plus"."

Так же прочитайте наши другие статьи: 4 Простых Способа Скрыть Свой IP-Адрес! и 6 Компиляторов Python Для Запуска Кода!, а так же Как Настроить Безопасность На Телефоне Android?! и получайте полезную информацию вместе с нами!) Так же не забывайте подписаться на нас в соц сетях , что бы не пропустить новые и полезные статьи)