Generator haseł Python

Generator haseł Python
Hasło jest używane w dowolnej aplikacji do uwierzytelnienia. Tworzenie silnego hasła jest bardzo ważne, aby zapewnić bezpieczeństwo konta użytkownika. Każde konto można łatwo zhakować, jeśli dla konta używane jest bardzo proste hasło, takie jak 12345 lub nazwa użytkownika. Silne hasło można utworzyć, łącząc wielką literę, małą literę, cyfry i symbole specjalne. Generator haseł to program używany do generowania losowych haseł. Hasło wygenerowane przez tę aplikację jest bardzo silne i haker nie może go łatwo odgadnąć. Lepiej jest użyć hasła wygenerowanego z generatora haseł dla każdego konta normalnego lub administracyjnego, aby zapewnić bezpieczeństwo konta. Program generatora haseł można zaimplementować na różne sposoby za pomocą skryptu Pythona pokazanego w tym samouczku.

Zainstaluj moduł niezbędny:

Moduł PyperClip jest używany w tym samouczku do kopiowania losowo wygenerowanego hasła, aby go gdzieś używać. Uruchom następujące polecenie, aby zainstalować PyperClip.

$ pip instaluj PyperClip

Przykład-1: zaimplementuj prosty generator haseł

Prosty sposób utworzenia generatora haseł pokazano w następującym skrypcie. Dużo zadeklarowano duży tekst znaków mieszanych. Długość hasła zostanie pobrana od użytkownika. próbka() funkcja losowy Moduł został użyty do wyboru postaci z tekstu i połączenia się losowo. Losowo wygenerowane hasło zostanie wydrukowane później.

# Importuj moduł losowy
Import losowy
# Ustaw listę znaków do generowania hasła
znaki = "01234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ &*() [] |/\?!@#$%^ABCDEFGHIJKLMNOPQRSTUVWXYZ "
# Weź długość hasła od użytkownika
hasło_length = int (input ('wprowadź długość hasła:'))
# Wygeneruj hasło
hasło = "".dołącz (losowe.próbka (znaki, hasło_ength))
# Wydrukuj wygenerowane hasło
Drukuj („Gernered Haslate: %s” %hasło)

Wyjście:

12 dało jako wartość długości hasła, a po wykonaniu skryptu wygenerowano hasło 12 znaków.

Przykład-2: Wdrożenie generatora haseł z GUI

Aplikacja generatora haseł opartych na GUI jest pomocna dla użytkownika w celu wygenerowania losowego hasła. Tkinter Moduł został zaimportowany do skryptu, aby utworzyć przyjazną dla użytkownika aplikację generatora hasła. Losowy I strunowy Moduły zostały zaimportowane w celu wygenerowania losowego hasła poprzez wymieszanie znaków wielkimi, małymi literami, cyframi i znakami specjalnymi. Pyperclip Moduł służy do kopiowania wygenerowanego hasła do tworzenia różnych rodzajów kont użytkowników. Generator hasła() funkcja zdefiniowała, aby wygenerować hasło i przechowywać je w hasło zmienny. Copypassword () Funkcja zdefiniowała kopiowanie wygenerowanego hasła po wygenerowaniu hasła. Obiekt tkinter został zadeklarowany w celu zdefiniowania okna aplikacji, w którym zostaną dodane wymagane widżety do projektowania aplikacji generatora hasła. Pierwszy widżet etykiety zdefiniował ustawienie etykiety dla widżetu skrzynki spinowej, aby wprowadzić długość hasła. Drugi widżet etykiety zdefiniował etykietę widżetu pola tekstowego, w którym wyświetlone zostanie wygenerowane hasło. Widget z dwoma przyciskami zostały zdefiniowane w celu wygenerowania hasła i skopiowania hasła. Kiedy 'Wygeneruj hasło ' przycisk jest naciśnięty, Generator hasła() Funkcja zostanie wywołana, a losowo wygenerowane hasło zostanie wyświetlone w polu tekstowym. Po wygenerowaniu hasła, jeśli 'Kopiuj' przycisk zostanie naciśnięty, a następnie Copypassword () Funkcja zostanie wywołana w celu skopiowania hasła i tekstu 'Skopiowane hasło„Będzie pokazany nad przyciskami.

# Importuj moduł tkinter
import tkinter
# Importuj moduły losowe i łańcuchowe
Importuj losowy, ciąg
# Importuj moduł PyperClip
Importuj PyperClip
# Zdefiniuj funkcję, aby wygenerować losowe hasło
def hasło_generator ():
hasło = "
dla n w zasięgu (LenPassword.Dostawać()):
hasło = hasło+losowe.wybór (ciąg.ASCII_UPMPERCASE + String.ASCII_LOWERCASE + String.cyfry + ciąg.interpunkcja)
Strapsword.Ustaw hasło)
# Zdefiniuj funkcję, aby skopiować wygenerowane hasło
def copypassword ():
Jeśli Strapsword.Dostawać() != ":
Pyperclip.Kopia (Strapsword.Dostawać())
lblmsg2 = tkinter.Etykieta (Win, text = 'hasło kopiowane', czcionka = „Ubuntu 12 Bold”, szerokość = 15)
LBLMSG2.miejsce (x = 105, y = 120)
w przeciwnym razie:
lblmsg2 = tkinter.Etykieta (Win, text = „Nic do kopiowania”, czcionka = „Ubuntu 12 Bold”, szerokość = 15)
LBLMSG2.miejsce (x = 105, y = 120)
# Zdefiniuj obiekt, aby wyświetlić główne okno aplikacji
Win = tkinter.Tk ()
# Ustaw tytuł głównego okna
wygrać.Tytuł („Losowy generator haseł”)
# Ustaw wysokość i szerokość okna głównego
wygrać.Geometria („350x220”)
# Ustaw pozycję okna
wygrać.eval ('tk :: placewindow . Centrum')
# Ustaw etykietę dla długości hasła
lblPassword = tkinter.Etykieta (WIN, Text = 'Set Hasło Long', Font = 'Ubuntu 15 Bold')
lblPassword.Pakiet()
# Ustaw typ danych długości hasła
LenPassword = tkinter.Intvar ()
# Ustaw limit wartości długości
długość = tkinter.Spinbox (Win, from_ = 6, TO_ = 16, TextVariable = LenPassword, szerokość = 2)
długość.pakiet (Pady = 10)
# Ustaw etykietę pola hasła
lblmsg1 = tkinter.Etykieta (WIN, text = „generowane hasło”, czcionka = „Ubuntu 12”)
LBLMSG1.Pakiet()
# Ustaw typ danych pola hasła
Strapsword = tkinter.StringVar ()
# Zdefiniuj zmienną dla pola hasła
TextData = tkinter.Entry (Win, TextVariable = Strapsword, szerokość = 15)
TextData.Pakiet()
# Zdefiniuj przycisk, aby wywołać funkcję, aby wygenerować losowe hasło
BtnPassword = tkinter.Przycisk (WIN, text = "generuj hasło", command = Password_Generator)
BtnPassword.pakiet (padx = 50, pady = 5, strona = tkinter.LEWY)
# Zdefiniuj przycisk, aby wywołać funkcję, aby skopiować hasło
btncopy = tkinter.Button (Win, text = 'copy', command = copypassword)
Btncopy.paczka (strona = tkinter.LEWY)
# Zadzwoń do MainLoop of Tkinter, aby otworzyć okno główne
wygrać.główna pętla()

Wyjście:

Poniższe okno pojawi się po wykonaniu skryptu. 6 zostało ustawione jako domyślna wartość długości hasła. Użytkownik może zwiększyć lub zmniejszyć wartość przed wygenerowaniem hasła.

Hasło 8 znaków zostało wygenerowane po ustawieniu wartości długości na 8 i naciśnięciu Wygenerować hasło przycisk.

Skopiowane hasło Wiadomość pojawiła się po naciśnięciu Kopiuj przycisk. Teraz to hasło może być używane w innych aplikacjach do utworzenia konta użytkownika.

Wniosek:

W tym samouczku wyjaśniono dwa różne sposoby tworzenia losowych haseł. Pierwszy przykład można użyć, jeśli chcesz utworzyć generator haseł oparty na tekst, a drugi przykład można użyć, jeśli chcesz utworzyć generator haseł oparty na GUI.