Hab hier ein kleines snippet für euch, dass ich mir mal gebastelt hab.
Vielleicht nützt es ja jemanden was.
Die Funktion überprüft ob der Hash aus 32 Zeichen Hexcode besteht. Also 0-9 und a-f.
Ist also eigentlich für MD5 gedacht.
Was aber nicht bedeuted, dass der Hash dann nur ausschließlich ein MD5 sein kann.
Auch MD2/MD4 haben 32 Zeichen (128Bit).
Die Wahrscheinlichkeit ist aber sehr hoch das es MD5 ist.
[code]
' ===========================
' Code by ZiG for vb-x.org
' ===========================
Option Explicit
Public Function check_hash(ByVal Hash As String) As Boolean
Dim i As Integer, x As Long, bol As Boolean
If Len(Hash) = 32 Then
For i = 1 To 32
x = Asc(Mid(Hash, i, 1))
Select Case (x)
Case 48 To 57
bol = True
Case 97 To 102
bol = True
Case Else
bol = False
Exit For
End Select
Next i
Else
bol = False
End If
check_hash = bol
End Function
[/code]
Nutzen könnt ihr die Funktion so:
[code]
If check_hash("EuerHash") = True then
'Hash ist gültig.
Else
'Kein gültiger Hash
End if
[/code]
Falls ihr z.B. Sha1 Hashes überprüfen lassen wollt, dann müßt die Schleife von 1 bis 40 laufen lassen und die Überprüfung der Länge des Hashes auf 40 setzen.
hf, ZiG _________________ Wer nicht auf seine Weise denkt, denkt überhaupt nicht. (Oscar Wilde)