Första träffen på Google förklarar väldigt utförligt med kommenterat kodexempel i både C# och VB.NET:
http://www.obviex.com/samples/hash.aspx
Sökresultatet: http://www.google.com/search?q=md5+hash+vb.net
3 svar · 564 visningar · startad av Cale
hej :)
jag har kliat mig i huvudet ett bra tag nu.
jag vill hasha lösenord innan de skrivs in i databasen.
Jag hittar inga exempel som gör att jag verkligen förstår vad som händer.
salt förstår jag vad det är till för men inte hur jag ska göra för att få med det i hashen..
någon som känner för att förklara grundligt eller har en länk till en sida som får mig att förstå? :q
Första träffen på Google förklarar väldigt utförligt med kommenterat kodexempel i både C# och VB.NET:
http://www.obviex.com/samples/hash.aspx
Sökresultatet: http://www.google.com/search?q=md5+hash+vb.net
Imports System.text
Imports System.Security.Cryptography
Function CalculateMD5(ByVal strPlainText As String) As String
Dim b As Integer
Dim hashedDataBytes As Byte()
Dim strResult As String
Dim encoder As New UTF8Encoding
Dim md5Hasher As New MD5CryptoServiceProvider
hashedDataBytes = md5Hasher.ComputeHash(encoder.GetBytes(strPlainText))
For Each b In hashedDataBytes
strResult &= String.Format("{0:X2}", b)
Next
Return strResult
End Function
För att skapa en hash är det bara att skicka in den textsträng som du vill att hashen ska beräknas ifrån, exempelvis:
CalculateMD5("Här kan man skriva en hel roman")
Ett salt är ju bara en "hemlig" sträng som du lägger till efter textsträngen som du sedan skickar in i md5 funktionen. Exempel:
myPassword = "här är nisses password"
salt = "MiNxx99HemligGGGaS1A2L3T"
CalculateMD5(MyPassword & salt)
...detta värde kan du spara i ett fält i databasen. NÄr du sedan ska kolla om en person har angivit rätt password så är det bara att lägga på saltet en gång till:
if CalculateMD5(AngivetPassword & salt) = PasswordFrånDatabas then
...
end if
Ett tips på en hash-generator i c# som även stödjer sha:
http://www.swesecure.com/?ID=ee61e315-01fa-40f5-970e-5fa642893452&IID=21e1741a-2967-439c-a8a4-012f7babfcc9
På http://www.swesecure.com finns även många artiklar och exempel på andra hash och krypterings funktioner.