Inhaltsverzeichnis
Was ist Passwort-Hashing?
Schritte zur Verwendung
Schritt 1: Erstellen Sie Funktionen für verschiedene Hashing-Methoden
Grammatik
Algorithmus
Beispiel
Ausgabe
Schritt 2: Holen Sie sich die vom Benutzer eingegebene Passwortzeichenfolge
Schritt 3: Akzeptieren Sie Benutzereingaben, um die Hashing-Methode auszuwählen
Fazit
Heim Backend-Entwicklung Python-Tutorial Was ist das coolste Programm, das Sie jemals in Python gemacht haben?

Was ist das coolste Programm, das Sie jemals in Python gemacht haben?

Sep 08, 2023 pm 09:21 PM
verschachtelte Funktionen Iteratoren Dekorateure

Was ist das coolste Programm, das Sie jemals in Python gemacht haben?

Das coolste Python-Programm, das ich je gemacht habe, ist der Python-Passwort-Hasher. Lassen Sie uns zunächst verstehen, was Python-Passwort-Hashing ist.

Was ist Passwort-Hashing?

Python-Passwort-Hashing ist eine fortschrittliche Form der Verschlüsselung, mit der Passwörter sicher online gespeichert werden können. In der heutigen vernetzten Welt gehören Benutzerkennwörter zu den vertraulichsten Informationen im Internet. Wandeln Sie eine Passwortzeichenfolge mithilfe verschiedener Hashing-Algorithmen, die in meinem Programm verwendet werden, in eine Zeichenfolge aus zufälligen Zeichen um. Der Benutzer wird angewiesen, eine Passwortzeichenfolge einzugeben und dann den entsprechenden zu verwendenden Hashing-Algorithmus auszuwählen. Anschließend wird der Ausgabe-Hash angezeigt, der online gespeichert werden kann.

Schritte zur Verwendung

  • Erstellen Sie Funktionen für verschiedene Hashing-Methoden

  • Akzeptiert die vom Benutzer eingegebene Passwortzeichenfolge

  • Benutzereingaben akzeptieren, um die Hashing-Methode auszuwählen

  • Zeichenfolge konvertieren und Ausgabe bereitstellen

Schritt 1: Erstellen Sie Funktionen für verschiedene Hashing-Methoden

Zuerst erstellen wir verschiedene Funktionen, die die Passwortzeichenfolge als Parameter verwenden und sie in Chiffretextform umwandeln. Der Chiffretext ist eigentlich die gehashte Form der Daten. Verschiedene Funktionen enthalten unterschiedliche Hashing-Algorithmen.

Grammatik

def hash_with_MD5(message):
   print ("MD5:", hashlib.md5(message).hexdigest()) 
Nach dem Login kopieren

Diese Funktion nimmt eine Nachricht als Parameter und wandelt sie mithilfe des MD5-Hashing-Algorithmus in Chiffretext um. Drucken Sie dann den Hash-Digest für den Benutzer aus. Wenn Sie statt MD5 einen anderen Hash-Algorithmus verwenden, ist die Syntax dieselbe, nur der Aufruf der Hash-Funktion ändert sich.

Algorithmus

Schritt 1 – Definieren Sie verschiedene Funktionen für verschiedene Hashing-Algorithmen

Schritt 2 – Verwenden Sie die vom Benutzer eingegebene Zeichenfolge als Parameter der Funktion

Schritt 3 – Drucken Sie im Hauptteil der Funktion den Hex-Digest des gehashten Passworts aus

Beispiel

def hash_with_MD5(message):
   encoded=message.encode()
   print ("Hashed with MD5:", hashlib.md5(encoded).hexdigest())
def hash_with_SHA(message):
   encoded=message.encode()
   print ("Hashed with SHA:", hashlib.sha256(encoded).hexdigest())
def hash_with_blake(message):
   encoded=message.encode()
   print ("Hashed with blake2b:",   hashlib.blake2b(encoded).hexdigest())
message='tutorialspoint'
hash_with_MD5(message)
hash_with_SHA(message)
hash_with_blake(message)
Nach dem Login kopieren

Ausgabe

Hashed with MD5: 6c60b3cfe5124f982eb629e00a98f01f
Hashed with SHA:
15e6e9ddbe43d9fe5745a1348bf1535b0456956d18473f5a3d14d6ab06737770
Hashed with blake2b:
109f6f017d7a77bcf57e4b48e9c744280ae7f836477c16464b27a3fe62e1353c70ec4c7f938080
60ee7c311094eede0235a43151c3d2b7401a3cb5a8f8ab3fbb 
Nach dem Login kopieren

Schritt 2: Holen Sie sich die vom Benutzer eingegebene Passwortzeichenfolge

Der nächste Schritt besteht darin, vom Benutzer Eingaben für das zu speichernde Passwort einzuholen. Aus Sicherheitsgründen muss das zu speichernde Passwort gehasht werden und das vom Benutzer eingegebene Passwort muss vor dem Hashing verschlüsselt werden, um sicherzustellen, dass es für die Weitergabe an die Hash-Funktion geeignet ist. Dieser Codierungsvorgang wird von der Funktion encode() ausgeführt.

Grammatik

password=input("message").encode()
Nach dem Login kopieren

Das Passwort, das wir vom Benutzer über die Funktion input() erhalten, kann nicht zum Hashing verwendet werden, daher wird es mit der Funktion encode() codiert. Diese beiden Schritte werden hier zur einfacheren Codierung und Vereinfachung in einem Befehl zusammengefasst.

Algorithmus

Schritt 1 – Verwenden Sie die Funktion input(), um Benutzereingaben zu empfangen

Schritt 2 – Eingabe in codiertes Format konvertieren

Beispiel

password=input(“Enter the password for hashing: ”).encode()
Nach dem Login kopieren

Ausgabe

Enter the password for hashing: Python 
Nach dem Login kopieren

Schritt 3: Akzeptieren Sie Benutzereingaben, um die Hashing-Methode auszuwählen

Wir geben Benutzern die Möglichkeit zu entscheiden, welchen Hashing-Algorithmus wir zum sicheren Hashen von Passwörtern verwenden. Verschiedene Methoden haben unterschiedliche Vor- und Nachteile. Deshalb lassen wir Benutzer die Methode auswählen, die für ein bestimmtes Passwort am besten funktioniert. Hier verwenden wir eine einfache If-else-Struktur, um die vom Benutzer eingegebene Auswahl zu bestimmen.

Grammatik

while True:
   choice = input("Enter choice(1/2/3): ")
      if choice in ('1', '2', '3'):
      try:
      ………………… 
Nach dem Login kopieren

Hier fragen wir den Benutzer, welche Art von Hash er durchgeführt hat, zusammen mit einer Liste von Optionen. Die Eingabe wird dann mit einer Liste gültiger Eingaben verglichen und bei „true“ wird die erforderliche Aktion ausgeführt. Andernfalls bricht die Programmsteuerung aus der Schleife aus.

Algorithmus

Schritt 1 − Bitten Sie den Benutzer um Eingabe

Schritt 2 – Überprüfen Sie, ob die Benutzereingabe gültig ist

Schritt 3 – Ausgewählte Aktion ausführen

Schritt 4 – Fragen Sie, ob Sie mehr tun möchten

Beispiel

import hashlib
def hash_with_MD5(password):
   
   #encoded=password.encode()
   print ("Hashed with MD5:", hashlib.md5(password).hexdigest())
def hash_with_SHA(password):
   
   #encoded=password.encode()
   print ("Hashed with SHA:", hashlib.sha256(password).hexdigest())
def hash_with_blake(password):
   
   #encoded=password.encode()
   print ("Hashed with blake2b:", hashlib.blake2b(password).hexdigest())
print("Select hashing operation.") 
print("1.MD5")
print("2.SHA")
print("3.blake")
while True:
   
   # take input from the user
   choice = input("Enter choice(1/2/3): ")
   
   # check if choice is one of the four options
   if choice in ('1', '2', '3'):
      try:
         password=input('Enter the password for hashing: ').encode()
      except ValueError:
         print("Invalid input. Please enter a string.")
         continue
      if choice == '1':
         hash_with_MD5(password)
      elif choice == '2':
         hash_with_SHA(password)
      elif choice == '3':
         hash_with_blake(password)
            
            # checking if user wants another calculation
      # break the while loop if answer is no
      next_calculation = input("Let's do next calculation? (yes/no): ")
      if next_calculation == "no":
         break
      else:
         print("Invalid Input")
Nach dem Login kopieren

Ausgabe

Select hashing operation.
1.MD5
2.SHA
3.blake
Enter choice(1/2/3): 2
Enter the password for hashing:Python
Hashed with SHA:
18885f27b5af9012df19e496460f9294d5ab76128824c6f993787004f6d9a7db
Let's do next calculation? (yes/no): yes
Enter choice(1/2/3): 1
Enter the password for hashing:Tutorialspoint 
Hashed with MD5: da653faa9f00528be9a57f3474f0e437
Let's do next calculation? (yes/no): no 
Nach dem Login kopieren

Fazit

Hier erstellen wir also ein Programm, um Benutzerpasswörter zu hashen und zur sicheren Speicherung zurückzugeben. Das Programm läuft erfolgreich und erfüllt einen wichtigen Zweck. Weitere Änderungen können vorgenommen werden, um neuere Funktionen zu implementieren, was wir später tun werden.

Das obige ist der detaillierte Inhalt vonWas ist das coolste Programm, das Sie jemals in Python gemacht haben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie löste ich das Problem der Berechtigungen beim Betrachten der Python -Version in Linux Terminal? Wie löste ich das Problem der Berechtigungen beim Betrachten der Python -Version in Linux Terminal? Apr 01, 2025 pm 05:09 PM

Lösung für Erlaubnisprobleme beim Betrachten der Python -Version in Linux Terminal Wenn Sie versuchen, die Python -Version in Linux Terminal anzuzeigen, geben Sie Python ein ...

Wie lehre ich innerhalb von 10 Stunden die Grundlagen für Computer-Anfänger-Programmierbasis in Projekt- und problemorientierten Methoden? Wie lehre ich innerhalb von 10 Stunden die Grundlagen für Computer-Anfänger-Programmierbasis in Projekt- und problemorientierten Methoden? Apr 02, 2025 am 07:18 AM

Wie lehre ich innerhalb von 10 Stunden die Grundlagen für Computer -Anfänger für Programmierungen? Wenn Sie nur 10 Stunden Zeit haben, um Computer -Anfänger zu unterrichten, was Sie mit Programmierkenntnissen unterrichten möchten, was würden Sie dann beibringen ...

Wie kann ich die gesamte Spalte eines Datenrahmens effizient in einen anderen Datenrahmen mit verschiedenen Strukturen in Python kopieren? Wie kann ich die gesamte Spalte eines Datenrahmens effizient in einen anderen Datenrahmen mit verschiedenen Strukturen in Python kopieren? Apr 01, 2025 pm 11:15 PM

Bei der Verwendung von Pythons Pandas -Bibliothek ist das Kopieren von ganzen Spalten zwischen zwei Datenrahmen mit unterschiedlichen Strukturen ein häufiges Problem. Angenommen, wir haben zwei Daten ...

Wie kann man vom Browser vermeiden, wenn man überall Fiddler für das Lesen des Menschen in der Mitte verwendet? Wie kann man vom Browser vermeiden, wenn man überall Fiddler für das Lesen des Menschen in der Mitte verwendet? Apr 02, 2025 am 07:15 AM

Wie kann man nicht erkannt werden, wenn Sie Fiddlereverywhere für Man-in-the-Middle-Lesungen verwenden, wenn Sie FiddLereverywhere verwenden ...

Was sind reguläre Ausdrücke? Was sind reguläre Ausdrücke? Mar 20, 2025 pm 06:25 PM

Regelmäßige Ausdrücke sind leistungsstarke Tools für Musteranpassung und Textmanipulation in der Programmierung, wodurch die Effizienz bei der Textverarbeitung in verschiedenen Anwendungen verbessert wird.

Wie hört Uvicorn kontinuierlich auf HTTP -Anfragen ohne Serving_forver () an? Wie hört Uvicorn kontinuierlich auf HTTP -Anfragen ohne Serving_forver () an? Apr 01, 2025 pm 10:51 PM

Wie hört Uvicorn kontinuierlich auf HTTP -Anfragen an? Uvicorn ist ein leichter Webserver, der auf ASGI basiert. Eine seiner Kernfunktionen ist es, auf HTTP -Anfragen zu hören und weiterzumachen ...

Was sind einige beliebte Python -Bibliotheken und ihre Verwendung? Was sind einige beliebte Python -Bibliotheken und ihre Verwendung? Mar 21, 2025 pm 06:46 PM

In dem Artikel werden beliebte Python-Bibliotheken wie Numpy, Pandas, Matplotlib, Scikit-Learn, TensorFlow, Django, Flask und Anfragen erörtert, die ihre Verwendung in wissenschaftlichen Computing, Datenanalyse, Visualisierung, maschinellem Lernen, Webentwicklung und h beschreiben

Wie erstelle ich dynamisch ein Objekt über eine Zeichenfolge und rufe seine Methoden in Python auf? Wie erstelle ich dynamisch ein Objekt über eine Zeichenfolge und rufe seine Methoden in Python auf? Apr 01, 2025 pm 11:18 PM

Wie erstellt in Python ein Objekt dynamisch über eine Zeichenfolge und ruft seine Methoden auf? Dies ist eine häufige Programmieranforderung, insbesondere wenn sie konfiguriert oder ausgeführt werden muss ...

See all articles