Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Private Shared Function ComputeHashValue(ByVal Data As String) As String
- Dim HashAlgorithm As SHA512 = SHA512.Create
- Dim HashValue() As Byte = HashAlgorithm.ComputeHash(Encoding.ASCII.GetBytes(Data))
- ' Looping over the array and ANDing each byte with 0111111
- For i As Integer = 0 To HashValue.Length - 1
- HashValue(i) = HashValue(i) And Convert.ToByte(127)
- Next
- Return Encoding.ASCII.GetString(HashValue)
- End Function
- Private Shared Function AreByteArraysEqual(ByVal array1 As Byte(), ByVal array2 As Byte()) As Boolean
- If array1.Length <> array2.Length Then Return False
- For i As Integer = 0 To array1.Length - 1
- If array1(i) <> array2(i) Then Return False
- Next
- Return True
- End Function
- Private Shared Sub SomeMethod()
- Dim t_prvBytes() As Byte = New Byte() {SOME VALUES} 'Previously computed HASH
- Dim t_dllStream As New IO.FileStream("C:myfile.txt", IO.FileMode.Open, IO.FileAccess.Read, IO.FileShare.Read)
- Dim t_reader As New IO.StreamReader(t_dllStream)
- Dim t_dllHash() As Byte = System.Text.Encoding.Unicode.GetBytes(ComputeHashValue(t_reader.ReadToEnd))
- MsgBox(AreByteArraysEqual(t_dllHash, t_prvBytes))
- t_dllStream.Close()
- End Function
Add Comment
Please, Sign In to add comment