2017-08-09 2 views
-1

Ich habe eine Spalte mit password_hash in diesem wenn Benutzer etwas in Textbox von Seite eingeben, dann diese in das Formular in der SQL Server-Tabelle konvertieren.Passwort-Hash in SQL Server

Zum Beispiel, wenn der Benutzer 4512 eintritt, dann wird es in dieser Form umgewandelt:

90 119 218 156 223 147 36 245 171 86 241 32 174 66 192 226 34 75 

Wie entschlüsseln wir dies mit einer T-SQL-Abfrage?

Irgendeine Lösung?

+5

Sie können Hash nicht entschlüsseln (es ist Einwegfunktion). Natürlich könntest du versuchen, es brutal zu erzwingen. Bitte beschreiben Sie, was Sie erreichen wollen (vergleichen Sie Hashes/Originalwert extrahieren/...) – lad2025

+0

Ich erreiche 4512 Wert von Hash, die ich erwähnte durch SQL-Abfrage –

+1

Wenn es wirklich Hash (MD5, SHA ...) Sie einfach ist wird es nicht können. – lad2025

Antwort

1

wirklich Sie können nicht, aber wenn Sie wollen, um zu versuchen und denke, es verwenden:

SELECT name FROM sys.sql_logins 
WHERE PWDCOMPARE('EnterPasswordHere', password_hash) = 1 ; 

Es gibt nur die mit diesem Passwort.

1

any possibilities ? and i am using Dim sha As SHA256.... < = Nein, der Zweck eines Hash ist One Way Verschlüsselung bereitzustellen. Sie verschlüsseln, können aber nicht entschlüsseln. Siehe auch SO - Fundamental difference between Hashing and Encryption algorithms

Eigentlich möchten Sie einen Hash des eingegebenen Kennworts erstellen und diesen mit dem gespeicherten Kennwort-Hash vergleichen, um festzustellen, ob sie identisch sind. Dann wissen Sie, ob das eingegebene Passwort mit dem gespeicherten Passwort übereinstimmt.