Store passwords securely | Python

  Рет қаралды 14,683

The Morpheus Tutorials

The Morpheus Tutorials

Күн бұрын

Пікірлер: 64
@rektaltotal
@rektaltotal 3 жыл бұрын
Wird durch den vorherigen SHA nicht die Security-Stärke des Ergebnis Hashes reduziert? Es wird ja einfach die Stellenzahl das PWD reduziert? Bei wiederkehrenden Muster n die über die maximale Länge gehen dürfte das die Wahrscheinlichkeit, dass 2 PWD's den selben Hash haben erhöhen, in Summe aber die Verschlüsselungs-Stärke der Methode reduzieren. Rein so mit Wahrscheinlichkeiten überschlagen. Habe es nicht gerechnet. ;) Grübel? Grübel?
@lerneninverschiedenenforme7513
@lerneninverschiedenenforme7513 3 жыл бұрын
Würde mich auch interessieren
@TheMorpheusTutorials
@TheMorpheusTutorials 3 жыл бұрын
Ja, die Stellenanzahl könnte reduziert werden, aber dafür ist der Wert komplett unvorhersehbar, sprich die Entropie, der echte Zufall, ist deutlich höher. Es gibt auch für Sha noch keine Möglichkeit herauszufinden, welcher Wert durch das hashen entsteht, außer brute force, daher in der Theorie ja, aber nur für perfekte Passwörter - welche tatsächlich ohnehin nicht geknackt werden könnten
@Gabriel-ur2xu
@Gabriel-ur2xu 3 жыл бұрын
Rein theoretisch könnte es dann aber durch das Pre-Hashing sein, dass es einen Pre-Hash A gibt dessen 72 erste Zeichen denen von einem x beliebigen anderen Pre-Hash B entsprechen, es also quasi eine, wie schon bemerkt rein theoretische, erhöhte Kollisions"gefahr" gibt. Oder übersehe ich da etwas?
@ignvqm
@ignvqm 3 жыл бұрын
Aber der Pre-Hash hat doch den Sinn, dass der zu Bearbeitende String maximal 72 Zeichen ist. Zudem muss man fürs Pre-Hashen natürlich einen Algorithmus nehmen, der zurzeit Kollisionsresistent ist. Da sollte also bei richtiger Wahl des Pre-Hash-Algorithmus keine erhöhte Gefahr bestehen.
@cubiksyoutube
@cubiksyoutube 2 жыл бұрын
man kann das gehashde passwort einfach nochmal hashen? 7:20
@WahreZocker
@WahreZocker 2 жыл бұрын
Das ist wirklich sehr interessant und es funktioniert bei mir einwandfrei. Ich würde dieses System gerne in meinen passwordmanager als Masterkey integrieren, nur verstehe ich nicht so ganz, wie das funktionieren soll, wenn der Hash sich immer verändert. Bitte um Rückmeldung :D
@jungermeister4940
@jungermeister4940 3 жыл бұрын
Aber wieso muss ich mir gedanken machen über mein Passwort wenn die Firma / Website wo ich das speichere in einen Hash umwandelt kann ja nichts dran ändern (schonmal vorab ich bin Neueinsteiger in der IT)?
@TheMorpheusTutorials
@TheMorpheusTutorials 3 жыл бұрын
also für den User gilt immer noch: Wenn das Passwort zu leicht ist, kann man's brute forcen. Das Tutorial hier ist allerdings eher für Webseiten-Betreiber gedacht^^
@jungermeister4940
@jungermeister4940 3 жыл бұрын
@@TheMorpheusTutorials Ok danke und ich danke dir auch für alle Videos, die du online stellst, sind nämlich sehr informativ und interessant :)
@thepaulcraft957
@thepaulcraft957 3 жыл бұрын
Ich baue gerade ne blog app, wo ich die technik benutze
@-awwolf-
@-awwolf- 3 жыл бұрын
Verstehe ich das richtig, das bcrypt im Prinzip nur die Rechenzeit anhebt um ein BruteForce zu erschweren? Weil rein technisch wäre noch ein Salt+PW in SHAxx sonst auch sicher?
@frankhelferichbonn
@frankhelferichbonn 3 жыл бұрын
"Sicher" ist nicht binär. In der Praxis geht es immer darum, den Aufwand so astronomisch hoch zu machen, dass der Angreifer es sein lässt. Von daher ist "nur die Rechenzeit" das falsche Argument, weil es hier die Metrik für das Sicherheitsniveau ist. In Zeiten von Cloud sollte man aber nicht mehr in Rechenzeit sondern in (Strom-)Kosten rechnen.
@jonathan-._.-
@jonathan-._.- 3 жыл бұрын
und auch ganz wichtig : soweit möglich niee authentication selber implementieren
@SuperTruperHans
@SuperTruperHans 3 жыл бұрын
Wie kommst du darauf dass nach dem ersten Mal abc mit MD5 das Gleiche herauskommt wenn du den MD5 String noch mal hascht? 05:30
@FluffelBuff
@FluffelBuff 3 жыл бұрын
Warum SHA-2-256 ? Wenn bcrypt nur 72 Zeichen (bytes) kann, dann kann man doch auch SHA-2-512 nehmen ? Wäre eine Kombi aus SHA-2 und SHA-3 vorher nicht noch Sicherer ?
@ignvqm
@ignvqm 3 жыл бұрын
Kann man auch machen, SHA256 wurde aber noch nicht gebrochen, also ist es auch nutzbar. Der Sicherheitsaspekt hier ist aber der Bcrypt-Algorithmus, nicht der SHA-2 bzw wie du dir überlegt hast SHA-3 oder eine Kombi. Zudem soll SHA-3 nur eine alternative zu SHA-2 sein, kein Ersatz. Man kanns natürlich implementieren wie man möchte.
@TheMorpheusTutorials
@TheMorpheusTutorials 3 жыл бұрын
Kannst du natürlich machen, aber Sha2 hat vor allem das Problem, schnell zu sein, welches hier irrelevant ist. Die größere Länge ist aber natürlich not bad
@FluffelBuff
@FluffelBuff 3 жыл бұрын
@@TheMorpheusTutorials du hast ja mal ein Video zu XOR gemacht, wenn ich jetzt einen SHA3 und SHA2 Hash XORe, also z.b den SHA2 Hash als Key und den SHA3 Hash als Wert, erhöhe ich damit die Sicherheit oder schaffe ich neue Angriffsmöglichkeiten?
@dragonheart9617
@dragonheart9617 3 жыл бұрын
Aber reicht es dann nicht den sha256 Hash zu brutforcen und anstatt dem 500-Zeichen Passwort? Das wäre dann, wenn das so ist, eine Schwachstelle, da es wesentlich einfacher ist ein 128 Zeichen "Passwort", das nur Kleinbuchstaben und Zahlen hat, zu brutforcen als ein 500-Zeichen Passwort mit allen nur erdenklichen Zeichen. (sha256sum gibt 128 Zeichen aus, obwohl 256-Bit doch 32 Zeichen entsprechen müssten?¿?¿?) Des weiteren kann es so doch auch passieren, dass es für den gleichen Hash mehrere mögliche Passwörter geben kann, wenn der nur 256-bit lang ist, oder?
@patrick6567
@patrick6567 3 жыл бұрын
Theoretisch ist dies richtig, praktisch müsstest du die Routine als Angreifer verändern, weil der Pre-Hash Teil der Funktion ist. Was dich vor ernsthafte Schwierigkeiten stellt.
@dragonheart9617
@dragonheart9617 3 жыл бұрын
@@patrick6567 Und wenn man die Routine als Angreifer verändern kann, kann man auch praktisch direkt "return True" ausgeben lassen, ohne das Passwort eingeben zu müssen... I guess I see the problem.
@patrick6567
@patrick6567 3 жыл бұрын
@@dragonheart9617 Wenn man die Schritte aufteilt und auf verschiedene Routinen aufteilt, hast du absolut recht…so wie im Video ist das schon eine sehr gute und sichere Möglichkeit. Das bedeutet die beste Lösung, kann durch schlechte Umsetzung noch weitere Schwachstellen generieren.
@ignvqm
@ignvqm 3 жыл бұрын
Der Bcrypt Algorithmus ist aber sehr langsam, wenn man die richtige "Stufe" wählt. Deswegen dauert allein das Probieren der ganzen Möglichkeiten bei nur 128 Zeichen mit Kleinbuchstaben und Zahlen schon ewig lange, das spielt dann keine Rolle mehr. Aber theoretisch hast du recht.
@TheMorpheusTutorials
@TheMorpheusTutorials 3 жыл бұрын
Dazu kommt noch, dass es ja keine Patterns gibt, jeder hash wäre gültig und damit hast du Rechenzeiten von Millionen Jahren
@jonni9300
@jonni9300 3 жыл бұрын
Sehr gutes Video, wie immer
@AddGaming.
@AddGaming. 3 жыл бұрын
Das Video kommt wie gerufen. Hab mir die letzte Woche den Kopf drüber zerbrochen, wie ich gescheit salze.
@NinjBee
@NinjBee 3 жыл бұрын
Welches Programm nutzt du zum Python schreiben?
@vawvaw7084
@vawvaw7084 3 жыл бұрын
PyCharm
@NinjBee
@NinjBee 3 жыл бұрын
@@vawvaw7084 Danke
@BigDvsRL
@BigDvsRL 3 жыл бұрын
Könnte man es dem Hacker noch weiter erschweren wenn man das Passwort erst mit Sha verschlüsselt und das dann noch durch Bcrypt laufen lässt? Oder is das dann relativ unsinnig
@TheMorpheusTutorials
@TheMorpheusTutorials 3 жыл бұрын
Erschweren nicht wirklich, dann eher die Runden hoch stellen 😊
@BigDvsRL
@BigDvsRL 3 жыл бұрын
@@TheMorpheusTutorials schade, hatte gehofft, dann wir das es dezent schwerer für den Hacker :(
@treppenlift
@treppenlift 2 жыл бұрын
Du klingst echt wie Stefan Raab 😀
@20erchickenwing77
@20erchickenwing77 3 жыл бұрын
Kannst du mal Zeigen wie man einen Algorithmus in Python schreibt der den User "zwingt" ein sicheres Password zunehmen? Liebe Grüße
@N1CK145
@N1CK145 3 жыл бұрын
Teste einfach mit dem Klartext Passwort die Kriterien. Also Länge, ist ein groß, ein klein, ein Sonderzeichen, eine Zahl enthalten? Wenn nein, aktzeptiere das nicht.
@Manic97LP
@Manic97LP Жыл бұрын
Bcrypt ist extrem veraltet. Für das hashen von Passwörtern ist einzig und allein Argon2 zulässig, alles andere ist nicht „State of the art“ und widerspricht allen Vorgaben der Cybersecurity.
@elonhusk1924
@elonhusk1924 3 жыл бұрын
Kannst du mal ein Tutorial dazu machen, wie man .py zu .exe konvertiert?
@JohnWick-pr8oh
@JohnWick-pr8oh 2 жыл бұрын
Gibs tools für. Eigentlich aber garnicht, weil python wird interpretiert und nicht kompiliert. Gibt tools die machen das umständlich, funktioniert aber nicht immer und teilweise nur semi-gut.
@claascode6593
@claascode6593 3 жыл бұрын
Danke für das Tutorial
@N1CK145
@N1CK145 3 жыл бұрын
Super Video. Hast du ein Video wo das mit dem Salt noch Mal ein bisschen besser erklärt wird? Ich hab nicht verstanden, wie der das Passwort ohne Salt wieder "Zurück hashen" kann.
@LB-qr7nv
@LB-qr7nv 3 жыл бұрын
Wenn "Passwort" als Passwort benutzt, ist man sicher nicht der einzige auf der Welt. Wenn man alle häufigen Passwörter sammelt, kann man sie hashen und in eine Rainbow-Tabelle packen. Wenn dann der Hacker den hash von "Passwort" erbeutet hat, braucht er nur in so einer Tabelle nachzuschauen und findet ihn und das dazugehörige Klartextpasswort. Den Salt(z.B. "mysalt") hängt man beim sicheren speichern an "Passwort" hinten an, nimmt also für "Passwortmysalt" den hash, der sich in keiner normalen Rainbow-Tabelle finden wird, wenn der Salt zufällig gewählt wird
@N1CK145
@N1CK145 3 жыл бұрын
@@LB-qr7nv aber der Salt wird doch jedes Mal neu generiert. Wir kann man das dann vergleichen?
@LB-qr7nv
@LB-qr7nv 3 жыл бұрын
@@N1CK145 das hat mich auch gewundert. Vielleicht habe ich was falsch verstanden, aber eigentlich sollte er im Klartext gespeichert werden müssen
@N1CK145
@N1CK145 3 жыл бұрын
@@LB-qr7nv so wie du es erklärt hattest, kannte ich das auch ^^
@einniki
@einniki 3 жыл бұрын
Hi ich habe ein Problem beim bot coden in Vs Studio codes mit js kanst du mir bitte helfen
@einniki
@einniki 3 жыл бұрын
@Mr.G ja
@einniki
@einniki 3 жыл бұрын
@Mr.G ok ich habe danach gesucht aber nichst gefunden
@einniki
@einniki 3 жыл бұрын
@Mr.G wenn ich versuche den bot zu starten kommt ein Fehler raus und den finde ich nicht im internet
@einniki
@einniki 3 жыл бұрын
@Mr.G das weiß ich nicht
@einniki
@einniki 3 жыл бұрын
Hast du dc das ich dir das Bild schicken kann ?
@Markx-kf6tw
@Markx-kf6tw 3 жыл бұрын
Super hilfreich!
@FedoraRose
@FedoraRose 3 жыл бұрын
Sehr interessant
@Jo-go3px
@Jo-go3px 3 жыл бұрын
Kannst du auch Videos zum Scripting mit PowerShell machen?
@DnalorGames
@DnalorGames 3 жыл бұрын
Werde das zwar nicht coden & kenne mich ned mit python aus aber ich liebe es dir zuzuschauen
@ahr0cdovlzk3my1lahqtbmftdw7
@ahr0cdovlzk3my1lahqtbmftdw7 3 жыл бұрын
Übernimmt das nicht das dbms? Und wer speichert local Passwörter auf dem dem pc? Ist doch überflüssig. Vorallem mit dem selben script mit dem man es dekodieren/entschlüsseln kann? Mh
@TheMorpheusTutorials
@TheMorpheusTutorials 3 жыл бұрын
Das ist für das DBMS bzw das Backend 😅 eine Datenbank verschlüsselt normalerweise nicht
@N1CK145
@N1CK145 3 жыл бұрын
​@@TheMorpheusTutorials MariaDB hat aber doch z.B. eine password funktion die automatisch Verschlüsselt. MSSQL hat auch was mit Symetrischer und ASymetrischer Verschlüsselung. Ist das was er meint? Finde die Python Lösung aber VIEL besser und nicht so kompliziert.
@frankhelferichbonn
@frankhelferichbonn 3 жыл бұрын
Kleiner Denkfehler. Das Hashen von Kennworten dient dazu, dass nicht mal eine Admin den Klartext für das Kennwort sehen kann (und damit auch kein Hacker, der sowohl Datenbank wie Programm lesen könnte.) Datenbankverschlüsselung bezieht sich nur auf die physische Schicht, die Daten sind für die Anwendung natürlich lesbar, sonst macht es keinen Sinn.
@Leon-rq6nc
@Leon-rq6nc 3 жыл бұрын
Mein eigenes hashprogramm als ich mit dem programmieren angefangen hab xD: pw = "test" pw = pw.replace("",'@#@') pw-list = pw.split('@#@') for i in range(1, len(pw-list)-1): pwd = pwd + str(ord(pw)) hash = int(pwd) ** z.B. 7 xD return hash I waz an intelligent little scheißer Lul :3
@1996Pinocchio
@1996Pinocchio 3 жыл бұрын
Security by secrecy funktioniert meistens nicht. Wenn jemand an diese Funktion kommt, kann er deine hash-funktion zurückrechnen, wodurch es keine hashfunktion mehr ist.
@Leon-rq6nc
@Leon-rq6nc 3 жыл бұрын
@@1996Pinocchio mittlerweile weiß ich das ja xD
Make text "Clean" | Python
25:31
The Morpheus Tutorials
Рет қаралды 8 М.
Sending files over the network with Python [Sockets].
19:25
The Morpheus Tutorials
Рет қаралды 17 М.
BAYGUYSTAN | 1 СЕРИЯ | bayGUYS
36:55
bayGUYS
Рет қаралды 1,9 МЛН
Quando A Diferença De Altura É Muito Grande 😲😂
00:12
Mari Maria
Рет қаралды 45 МЛН
Chain Game Strong ⛓️
00:21
Anwar Jibawi
Рет қаралды 41 МЛН
Password Manager - Why you should use one and which one I use
19:15
The Morpheus Tutorials
Рет қаралды 116 М.
Why Software Feels More Broken Than Ever
20:55
The Morpheus Tutorials
Рет қаралды 14 М.
Password Sicherheit mit Hashfunktionen und Salt
12:09
Eric Amberg
Рет қаралды 2,4 М.
Password Storage Tier List: encryption, hashing, salting, bcrypt, and beyond
10:16
Encrypting files with Python [PyCryptodome]
30:16
The Morpheus Tutorials
Рет қаралды 12 М.
Are Programmers Becoming Obsolete? My 3-Year Insight
47:24
The Morpheus Tutorials
Рет қаралды 78 М.
Passwort-Manager: Benutzen oder nicht? | Netzkenner Jörg Schieb
8:20
Netzkenner Jörg Schieb
Рет қаралды 9 М.
Ich habe einen PASSWORT MANAGER programmiert!
20:29
Florian Dalwigk
Рет қаралды 8 М.
HACKEN LERNEN: Passwörter knacken (Tutorial & Challenge)
15:09
Programmieren lernen
Рет қаралды 639 М.
Veracrypt: create encrypted USB sticks and files with secret compartment
28:06
The Morpheus Tutorials
Рет қаралды 33 М.
BAYGUYSTAN | 1 СЕРИЯ | bayGUYS
36:55
bayGUYS
Рет қаралды 1,9 МЛН