Passwort in Python generieren
- Passwort in Python generieren
- Generieren Sie ein Passwort mit dem Random-Modul in Python
- Generieren Sie ein Passwort mit dem Secrets-Modul in Python
- Abschluss
Wir hören oft von Datenschutzverletzungen, Cyber-Bedrohungen und Cyber-Angriffen auf Systeme; Daher sind die Sicherheit und Vertraulichkeit der Daten zu einem sehr wichtigen Teil unseres Lebens geworden. Nun, eine Möglichkeit, die Daten zu sichern, besteht darin, sie mit Passwörtern zu sichern.
In diesem Artikel werden wir die Passwortgenerierung in Python besprechen.
Passwort in Python generieren
Passwörter kommen oft ins Spiel, wenn wir über Sicherheit sprechen. Da diese Passwörter verwendet werden, um so viele wichtige Daten zu sichern, müssen sie für Hacker schwer zu knacken sein.
Die Angreifer versuchen oft, solche Passwörter zu knacken, indem sie wahllos verschiedene Zeichenkombinationen ausprobieren und das richtige Passwort erraten.
Wenn wir Menschen Passwörter manuell generieren, sind sie oft leicht zu knacken. Viele versuchen, ihre Namen mit Zahlen und Symbolen zu kombinieren, die für Hacker ein Kinderspiel sind.
Daher sollten diese Passwörter so erstellt werden, dass sie nicht leicht zu knacken sind. Wir haben einige Methoden zur Passwortgenerierung in Python, die schwer zu knacken und einfach zu erstellen sind.
Lassen Sie uns nun einige von ihnen im Detail besprechen.
Generieren Sie ein Passwort mit dem Random-Modul in Python
Das random
-Modul in Python generiert zufällige Elemente aus einer Liste. Außerdem verwenden wir die Methode choice()
aus dem Modul random
von Python.
Die Methode choice()
wählt die zufälligen Elemente aus einer Liste aus. Daher wird die Methode random.choice()
unser Hauptfang bei der Generierung eines Passworts mit dieser Methode sein.
Jetzt müssen Sie sich jedoch fragen, was diese Liste ist, über die wir sprechen. Die Liste, aus der die Methode random.choice()
auswählt, enthält also alle Klein- und Großbuchstaben, Ziffern und Satzzeichen.
Daher enthalten die generierten Passwörter eine zufällige Reihenfolge dieser Zeichen, die schwer zu knacken wäre.
Jetzt verwenden wir das Modul string
in Python, um alle Kleinbuchstaben, Großbuchstaben, Ziffern und Satzzeichen zu erhalten. Die Methode ascii.lowercase
des Moduls string
wird verwendet, um alle Kleinbuchstaben des englischen Alphabets zu erhalten, und ascii.uppercase
wird verwendet, um alle Großbuchstaben des englischen Alphabets zu erhalten.
Um die Ziffern und Satzzeichen zu erhalten, verwenden wir die Methoden string.digits
bzw. string.punctuation
aus dem string
-Modul in Python.
Sehen wir uns den Code zum Generieren eines Passworts mit den Modulen random
und string
in Python an.
import random
import string
def passwordGen(length):
lower = string.ascii_lowercase
upper = string.ascii_uppercase
digits = string.digits
symbols = string.punctuation
comb = lower + upper + digits + symbols
result_str = "".join(random.choice(comb) for i in range(length))
print("Password of length ", length, "is:", result_str)
passwordGen(12)
passwordGen(10)
passwordGen(5)
Ausgang:
Password of length 12 is: ^)n34W6~0Wdx
Password of length 10 is: g&#'G-T\vn
Password of length 5 is: &g/S3
Wie Sie in der obigen Ausgabe sehen können, haben wir daher drei Passwörter unterschiedlicher Länge, die einzigartig und schwer zu knacken sind.
Allerdings haben wir im Codebeispiel das random
und das string
Modul importiert. Danach haben wir eine Funktion passwordGen
erstellt, die eine Länge als Parameter nimmt und ein Passwort dieser bestimmten Länge ausgibt.
Innerhalb der Funktion haben wir alle Buchstaben, Ziffern und Symbole in verschiedenen Variablen gespeichert. Nun haben wir all diese Zeichen zu einem einzigen String zusammengefasst und in einer Variablen comb
gespeichert.
Nun haben wir mit random.choice(comb)
zufällig Zeichen aus dem String comb
für jeden Index bis zur angegebenen Länge ausgewählt und dann die Ergebnisse ausgegeben.
Generieren Sie ein Passwort mit dem Secrets-Modul in Python
Ein weiteres Modul in Python wird verwendet, um aus Sicherheitsgründen starke kryptografische Zufallszahlen zu generieren. Dieses Modul ist als Geheimnis
-Modul bekannt; Dieses Modul ist jedoch ab Python-Version 3.6 verfügbar.
Dieses Geheimnis
-Modul bietet die sicherste Zufälligkeitsquelle eines Betriebssystems; Daher sind die generierten Passwörter sicherer und effektiver. Lassen Sie uns nun das Programm zum Generieren des Passworts mit Pythons secrets
-Modul besprechen.
Das Programm ähnelt dem zuvor besprochenen, aber die Verwendung des Moduls Geheimnisse
ist sicherer und effektiver bei der Sicherung unserer Systeme.
import string
import secrets
def passwordGen(len):
combination = string.ascii_letters + string.digits + string.punctuation
password = "".join(secrets.choice(combination) for i in range(len))
print("Password is: ", password)
passwordGen(12)
passwordGen(8)
Ausgang:
Password is: Gz!*j3p4xd$Z
Password is: 5#;CSIa7
Daher haben wir, wie Sie in der Ausgabe sehen können, eine Methode passwordGen
erstellt, in der wir eine Variable combination
haben, die alle Buchstaben, Ziffern und Satzzeichen kombiniert, um ein Passwort mit den Methoden der string
zu erstellen. Modul in Python.
Danach haben wir die Methode secrets.choice(combination)
verwendet und ihr alle Zeichen zur Auswahl gegeben, um ein Passwort mit einer bestimmten Länge von len
zu erstellen und es dann zu drucken. Daher führen wir die Passwortgenerierung in Python mit dem Modul secrets
durch.
Abschluss
In diesem Artikel haben wir besprochen, wie man Passwörter in Python generiert. Da Sicherheit in dieser Zeit eine wichtige Anforderung ist, ist die Generierung von sicheren und geschützten Passwörtern sehr wichtig.
Python hat zu diesem Zweck zwei Module, nämlich random
und secrets
, die helfen, schwierige und nicht so einfach zu knackende Passwörter zu generieren. Beide Module nehmen jedoch Hilfe vom Modul string
, um eine Kombination von Zeichen zur Auswahl aufzunehmen.
Das Modul secrets
ist jedoch ab Python Version 3.6 implementiert, gilt aber immer noch als sicherer Weg, um Passwörter zu generieren.
Verwandter Artikel - Python String
- Entfernen Kommas aus String in Python
- Wie man prüft, ob eine Zeichenkette auf pythonische Weise leer ist
- Konvertieren einer Zeichenkette in einen Variablennamen in Python
- Wie man Leerzeichen in einem String in Python entfernt
- Wie man in Python Zahlen aus einer Zeichenkette extrahiert
- Wie man in Python String in datetime konvertiert