Når du krypterer en adgangskode på internettet eller offline, du normalt skal bruge MD5 hashing funktion, der giver dig mulighed for at kryptere passwords og matche hash med input gives fra en bruger forsøger at logge i. En hash dybest set repræsenterer en enhed af data af variabel størrelse konverteres til et fast beløb af tegn i en sekvens. For at udføre denne proces , skal du placere en MD5 anvendelighed i samme mappe som din VBS -fil, så scriptet kan udføre nytte og generere en MD5 hash værdi fra det. Instruktioner
1
Gå til FourmiLab hjemmeside og downloade " ZIP " fil for MD5 kommandolinje utility . Åbn Zip-fil , hvorfra du har hentet den og udpakke indholdet til mappen af VBS -fil, du vil kryptere med .
2
Åbn din VBS fil i en kode editor.
< Br >
3
Indsæt følgende kode i dit script : Hej
Public Function MD5Hash ( sFileName )
' Dette script leveres under Creative Commons licens placeret
< p > ' på http://creativecommons.org/licenses/by-nc/2.5/. Det er måske ikke
«anvendes til kommercielle formål uden udtrykkelig skriftlig tilladelse
" af NateRice.com
Const OpenAsDefault = -2
Const FailIfNotExist = 0
Const ForReading = 1
Dim oMD5CmdShell , oMD5CmdFSO , Stemp , sTempFile , fMD5CmdFile , Späth
Dim fResultsFile , sResults
Set oMD5CmdShell = CreateObject ( " WScript.Shell " )
Set oMD5CmdFSO = CreateObject ( " Scripting.FileSystemObject " )
Stemp = oMD5CmdShell.ExpandEnvironmentStrings ( "% TEMP % " )
sTempFile = Stemp & "\\ " & oMD5CmdFSO.GetTempName
' ------ Kontroller Input File eXISTANCE -----
p Hvis ikke oMD5CmdFSO.FileExists ( sFileName ) Så
MD5Hash = " Failed : . Invalid Input File "
Else
Set fMD5CmdFile = oMD5CmdFSO.GetFile ( sFileName )
Späth = fMD5CmdFile.ShortPath
< p> sFileName = Späth
Set fMD5CmdFile = Nothing
End If
' -------------------- ------------------
oMD5CmdShell.Run "% comspec % /c md5.exe -n " & sFileName & _
" > "& sTempFile , 0, Sand
Set fResultsFile = _
oMD5CmdFSO.OpenTextFile ( sTempFile , ForReading , FailIfNotExist , OpenAsDefault )
sResults = fResultsFile.ReadAll < br >
sResults = trim (Erstat ( sResults , vbCrLf , "" ) )
fResultsFile.Close
oMD5CmdFSO.DeleteFile sTempFile
p Hvis len ( sResults ) = 32 og IsHex ( sResults ) Så
MD5Hash = sResults
Else
MD5Hash = "Kunne ikke . "
End If
Set oMD5CmdShell = Nothing
Set oMD5CmdFSO = Nothing
End Function
Private Function IsHex ( sHexCheck )
' Dette script leveres under Creative Commons placeret licens < br >
' på http://creativecommons.org/licenses/by-nc/2.5/. Det er måske ikke
«anvendes til kommercielle formål uden udtrykkelig skriftlig tilladelse
" af NateRice.com
Dim SX, bCharCheck , sHexValue , sHexValues , aHexValues < br >
sHexCheck = ucase ( sHexCheck )
sHexValues = " 0,1,2,3,4,5,6,7,8,9 , A, B , C, D , E, F " Salg
aHexValues = Split ( sHexValues , ", ")
sX = 1 Til Len ( sHexCheck )
bCharCheck = False
For Each sHexValue i aHexValues
p Hvis UCase ( Mid ( sHexCheck , SX, 1 )) = sHexValue Så
bCharCheck = Sand
Exit For
End If < br >
Næste
p Hvis bCharCheck < > Ægte Så
IsHex = False
Exit Function
End If
Næste
IsHex = Sand
End Function
4
Rul ned til det område i din kode, som du gerne vil kryptere dine passwords. Dette kan synes efter at brugeren af din ansøgning giver input om brugernavn og adgangskode . Du kan endda bruge en tilfældig del af din VBS koden bare for at teste funktionen . Indtast følgende: Dim strHash As String = MD5Hash ( "C: \\ password.ini "). Dette umiddelbart gør en hash af din adgangskode fil og holder hash inde i en værdi, der hedder " strHash ". Du kan ændre dette til dine præferencer. Erstat " C: \\ password.ini " . Med stien til den password -filen