Nwlapcug.com


Come crittografare una Password nello Script VBS

Quando si crittografa una password sul Web o non in linea, è solitamente necessario utilizzare la funzione di hashing MD5 che consente di crittografare le password e corrisponde all'hash con input fornito da un utente che tenta l'accesso. Un hash fondamentalmente rappresenta un'unità di dati di dimensione variabile, convertiti in un importo fisso di caratteri in una sequenza. Al fine di realizzare questo processo, è necessario inserire un'utility MD5 nella stessa directory come file VBS quindi lo script può eseguire l'utilità e generare un valore hash MD5 da esso.

Istruzioni

1

Andare sul sito FourmiLab e scaricare il file "ZIP" per l'utilità della riga di comando MD5. Aprire il file Zip da dove hai scaricato ed estrarre il contenuto nella directory del file VBS che si desidera crittografare con.

2

Aprire il tuo file VBS in un editor di codice.

3

Incollare il seguente codice nello script:

Public Function MD5Hash(sFileName)

' Questo script è fornito sotto la licenza Creative Commons si trova

' a http://creativecommons.org/licenses/by-nc/2.5/. Essa non può

' essere utilizzato per scopi commerciali con fuori l'espresso consenso scritto

' di NateRice.com

Const OpenAsDefault = -2

Const FailIfNotExist = 0

Const ForReading = 1

Dim oMD5CmdShell, oMD5CmdFSO, sTemp, sTempFile, fMD5CmdFile, sPath

Dim fResultsFile, sResults

Set oMD5CmdShell = CreateObject

Impostare oMD5CmdFSO = CreateObject("Scripting.FileSystemObject")

sTemp = oMD5CmdShell.ExpandEnvironmentStrings("%TEMP%")

sTempFile = sTemp & "\" & oMD5CmdFSO.GetTempName

'---Verificare l'esistenza di File di Input--

Se non oMD5CmdFSO.FileExists(sFileName) poi

MD5Hash = "Failed: Invalid Input File."

Altro

Set fMD5CmdFile = oMD5CmdFSO.GetFile(sFileName)

sPath = fMD5CmdFile.ShortPath

sFileName = sPath

Set fMD5CmdFile = Nothing

End If

'--------------------------------------

oMD5CmdShell.Run "% comspec % /c md5.exe - n" & sFileName & _

">" & sTempFile, 0, True

Impostare fResultsFile = _

oMD5CmdFSO.OpenTextFile (sTempFile, ForReading, FailIfNotExist, OpenAsDefault)

sResults = fResultsFile.ReadAll

sResults = trim (sostituire (sResults, vbCRLF,""))

fResultsFile.Close

oMD5CmdFSO.DeleteFile sTempFile

Se len(sResults) = 32 e IsHex(sResults) poi

MD5Hash = sResults

Altro

MD5Hash = "Failed."

End If

Impostare oMD5CmdShell = Nothing

Impostare oMD5CmdFSO = Nothing

End Function

Privato funzione IsHex(sHexCheck)

' Questo script è fornito sotto la licenza Creative Commons si trova

' a http://creativecommons.org/licenses/by-nc/2.5/. Essa non può

' essere utilizzato per scopi commerciali con fuori l'espresso consenso scritto

' di NateRice.com

Dim sX, bCharCheck, sHexValue, sHexValues, aHexValues

sHexCheck = UCase(sHexCheck)

sHexValues = "0,1,2,3,4,5,6,7,8,9, A, B, C, D, E, F"

aHexValues = Split (sHexValues, ",")

Per sX = 1 To Len(sHexCheck)

bCharCheck = False

For Each sHexValue In aHexValues

If UCase(Mid(sHexCheck,sX,1)) = sHexValue Then

bCharCheck = True

Exit For

End If

Next

If bCharCheck <> True Then

IsHex = False

Exit Function

End If

Successivo

IsHex = True

End Function

4

Scorri fino all'area del codice che si desidera crittografare le password. Questo potrebbe apparire dopo che l'utente dell'applicazione fornisce input per quanto riguarda il nome utente e la password. Si può anche utilizzare una parte casuale del codice VBS solo per testare la funzione. Digitare il comando seguente: Dim strHash As String = MD5Hash("C:\password.ini"). Questo immediatamente rende un hash del file di password e mantiene l'hash all'interno di un valore denominato "strHash." È possibile modificare questo per la vostra preferenza. Sostituire "C:\password.ini" con il percorso del file delle password.