This class implements the IHasher interface that you can find here.
''' ''' SHA256 hash class from Satal Keto's library ''' https://samjenkins.com ''' Version 1.0.0.1 ''' Imports System.IO Imports System.Security.Cryptography Namespace Security.Hash Public Class SHA256Hash Implements IHasher Public Function hashOfFile(ByVal fileToHash As String) As String Implements IHasher.hashOfFile Dim rdr As FileStream Dim sha As New SHA256CryptoServiceProvider Dim bytes() As Byte Dim rtn As String = "" If File.Exists(fileToHash) Then rdr = New FileStream(fileToHash, FileMode.Open, FileAccess.Read) bytes = sha.ComputeHash(rdr) rtn = ByteArrayToString(bytes) End If Return rtn End Function Public Function hashOfString(ByVal stringToHash As String) As String Implements IHasher.hashOfString Dim sha As New SHA256CryptoServiceProvider Dim bytesToHash() As Byte = System.Text.Encoding.ASCII.GetBytes(stringToHash) bytesToHash = sha.ComputeHash(bytesToHash) Dim strResult As String = "" For Each b As Byte In bytesToHash strResult += b.ToString("x2") Next Return strResult End Function Private Function ByteArrayToString(ByVal arrInput() As Byte) As String Dim sb As New System.Text.StringBuilder(arrInput.Length * 2) For i As Integer = 0 To arrInput.Length - 1 sb.Append(arrInput(i).ToString("X2")) Next Return sb.ToString().ToLower End Function End Class End Namespace
Calculate SHA256 hash of string or file