Sprache: C#
Eine kryptologische Hashfunktion ist eine spezielle Form der Hashfunktion, welche die besondere Eigenschaft einer Einwegfunktion besitzt.
http://de.wikipedia.org/wiki/Kryptologische_Hashfunktion
SHA512 shaM = new SHA512Managed();
string SHA512 = BitConverter.ToString(shaM.ComputeHash(Encoding.ASCII.GetBytes("My text"))).Replace("-", "").ToLower();
SHA512 shaM = new SHA512Managed();
string SHA512 = BitConverter.ToString(shaM.ComputeHash(Encoding.ASCII.GetBytes("My text"))).Replace("-", "").ToLower();
Alte URL:
/snippet/sha512-hashfunktion/1509
Encoding.ASCII sollte durch Encoding.Default ersetzt werden, sonst wird für Strings mit Umlauten (und alle anderen Zeichen die nicht in ASCII codiert werden können) der falsche Hash berechnet.
Ansonsten netter Snippet.
Afaik müsste in oberer Konstellation sogar Encoding.Unicode.GetBytes stehen, da ein .net string als parameter angegeben wird und dieser ein Unicode (UTF-16) string ist.
Encoding.Default Interpretiert die zeichen anhand der aktuellen nicht unicode codepage
„Die UTF-16-Codierung wird von der Common Language Runtime zur Darstellung von Char-Werten und String-Werten und vom Windows-Betriebssystem zur Darstellung von WCHAR-Werten verwendet.“
s. http://msdn.microsoft.com/de-de/library/ms404377#encodings