私はパスワード「HelloWorld」をMD5にハッシュしたいと思う。以下のコードはGenerating the hash value of a fileの抜粋です。問題は、提示されたコードで、パスワードをハッシュする前にファイルに保存する必要があるということです。どのように私はメモリにそれを渡すことができますか?私はVBで非常に不快であると感じています、私を許してください。私はどのような種類のバイナリがVBにあるのかわかりません。ファイルからメモリの代わりにテキストをハッシュする
Option Explicit
MsgBox("Md5 Hash for 'HelloWorld': " & GenerateMD5("HelloWorld"))
Public Function GenerateMD5(ByRef hashInput)
'hashInput is the plain text hash algorithm input
Dim oMD5 : Set oMD5 = CreateObject("System.Security.Cryptography.MD5CryptoServiceProvider")
oMD5.Initialize()
Dim baHash : baHash = oMD5.ComputeHash_2(GetBinaryFile("D:/HASHINPUT.txt"))
GenerateMD5 = ByteArrayToHexStr(baHash)
End Function
Private Function ByteArrayToHexStr(ByVal fByteArray)
Dim k
ByteArrayToHexStr = ""
For k = 1 To Lenb(fByteArray)
ByteArrayToHexStr = ByteArrayToHexStr & Right("0" & Hex(Ascb(Midb(fByteArray, k, 1))), 2)
Next
End Function
Private Function GetBinaryFile(filename)
Dim oStream: Set oStream = CreateObject("ADODB.Stream")
oStream.Type = 1 'adTypeBinary
oStream.Open
oStream.LoadFromFile filename
GetBinaryFile = oStream.Read
oStream.Close
Set oStream = Nothing
End Function
MD5ハッシュ文字列(パスワード)またはファイルですか?それはわかりません –
パスワード。 – user2366975