![]() |
MD5-Hash mit MD5CryptoServiceProvider berechnen?
Hallo DP'ler :),
ich habe schon ein wenig mit dem MD5CryptoServiceProvider rumprobiert und bin auch zu einem Ergebnis gekommen:
Delphi-Quellcode:
Z.B. von der MySQL-Funktion md5 bin ich nur Zahlen und Buchstaben von a bis z gewohnt. Diese Funktion liefert z.B. für "hallo" (ohne Anführungsstriche) "YL a¸"£2…eÂ_|".
class function TUtils.CreateMD5Hash(s : String) : String;
var MD5CryptoServiceProvider : System.Security.Cryptography.MD5CryptoServiceProvider; begin MD5CryptoServiceProvider := System.Security.Cryptography.MD5CryptoServiceProvider.Create; Result := System.Text.Encoding.Default.GetString(MD5CryptoServiceProvider.ComputeHash(System.Text.Encoding.Default.GetBytes(s))); end; Kann man den MD5CryptoServiceProvider auch zu solch einem Format überreden? Es muss nicht der gleiche Hash wie bei MySQL rauskommen, zumindest sollten aber die verwendeten Zeichen auf 0-9 und a-z beschränkt werden. Ist das irgendwie möglich? |
Re: MD5-Hash mit MD5CryptoServiceProvider berechnen?
Code:
so habs ich gemacht..
MD5 md5 = new MD5CryptoServiceProvider();
md5.Initialize(); byte[] hash = md5.ComputeHash(File.ReadAllBytes(args[0])); string orgHash = ""; foreach(byte piece in hash) { orgHash += piece.ToString("x2"); } |
Re: MD5-Hash mit MD5CryptoServiceProvider berechnen?
a bis z :shock: ? Sicher, dass du nicht die Hexadezimaldarstellung meinst :) ? Das ganze ist ja nur eine 128-Bit-Zahl, die direkte Umwandlung in einen String ergibt eben meistens nur Zeichensalat.
Die Umwandlung könntest du von Hand schreiben oder du benutzt das ultimative ![]()
Code:
FormsAuthentication.HashPasswordForStoringInConfigFile()
|
Re: MD5-Hash mit MD5CryptoServiceProvider berechnen?
HashPasswordForStoringInConfigFile ist natürlich sehr cool :).
Hat das eigentlich irgendwelche Konsequenzen, dass FormsAuthentication in System.Web liegt? (Ist ja keine Web-App mit ASP.NET). Ich schätze aber, dass ist ein Namespace wie jeder andere auch :). Nech? (Erscheint mir eigentlich als eine sehr dumme Frage :oops:) Vielen Dank euch beiden, Alexander |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:25 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz