Feedback

C# - SHA512 Hashfunktion

Veröffentlicht von am 3/14/2011
(3 Bewertungen)
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();

2 Kommentare zum Snippet

Scavanger schrieb am 3/15/2011:
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.
Boas Enkler schrieb am 7/3/2012:
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
 

Logge dich ein, um hier zu kommentieren!