Oggi vedremo come calcolare il codice HASH (MD5 o SHA1) di una stringa in ambiente Windows Mobile utilizzando il linguaggio Visual Basic .NET. Scriveremo una funzione che, passati per parametro il testo da convertire e il tipo di conversione da eseguire, ci restituirà l’equivalente della stringa secondo l’algoritmo di conversione scelto.
Creiamo un nuovo progetto Windows Mobile e salviamolo da qualche parte.
Successivamente, nella finestra del codice della form, immettere il seguente listato:
Public Class FormPrincipale
‘Tipo di codice HASH da calcolare
Public Enum HashType As Integer
MD5 = 1
SHA1 = 2
End EnumPublic Function GetHASH(ByVal Stringa As String, ByVal Tipo As HashType)
‘Creo un oggetto Codifica affinchè sia possibile usare
‘il metodo GetBytes per ottenere matrici di byte
Dim uEncode As New System.Text.UnicodeEncodingDim ByteMatrix() As Byte = uEncode.GetBytes(Stringa)
Dim Hash() As ByteSelect Case Tipo
Case HashType.MD5
Dim MD5 As New Security.Cryptography.MD5CryptoServiceProvider
Hash = MD5.ComputeHash(ByteMatrix)Case HashType.SHA1
Dim SHA1 As New Security.Cryptography.SHA1CryptoServiceProvider
Hash = SHA1.ComputeHash(ByteMatrix)End Select
Return Convert.ToBase64String(Hash)
End Function
End Class
Utilizzo:
Dim MyHASH As String = GetHASH(”Testo di prova”, HashType.MD5/ HashType.SHA1)


