復(fù)制代碼 代碼如下:
Function fDecode(sStringToDecode)
'This function will decode a Base64 encoded string and returns the decoded string.
'This becomes usefull when attempting to hide passwords from prying eyes.
Const CharList = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
Dim iDataLength, sOutputString, iGroupInitialCharacter
sStringToDecode = Replace(Replace(Replace(sStringToDecode, vbCrLf, ""), vbTab, ""), " ", "")
iDataLength = Len(sStringToDecode)
If iDataLength Mod 4 > 0 Then
fDecode = "Bad string passed to fDecode() function."
Exit Function
End If
For iGroupInitialCharacter = 1 To iDataLength Step 4
Dim iDataByteCount, iCharacterCounter, sCharacter, iData, iGroup, sPreliminaryOutString
iDataByteCount = 3
iGroup = 0
For iCharacterCounter = 0 To 3
sCharacter = Mid(sStringToDecode, iGroupInitialCharacter + iCharacterCounter, 1)
If sCharacter = "=" Then
iDataByteCount = iDataByteCount - 1
iData = 0
Else
iData = InStr(1, CharList, sCharacter, 0) - 1
If iData = -1 Then
fDecode = "Bad string passed to fDecode() function."
Exit Function
End If
End If
iGroup = 64 * iGroup + iData
Next
iGroup = Hex(iGroup)
iGroup = String(6 - Len(iGroup), "0") iGroup
sPreliminaryOutString = Chr(CByte("H" Mid(iGroup, 1, 2))) Chr(CByte("H" Mid(iGroup, 3, 2))) Chr(CByte("H" Mid(iGroup, 5, 2)))
sOutputString = sOutputString Left(sPreliminaryOutString, iDataByteCount)
Next
fDecode = sOutputString
End Function
base64 測(cè)試代碼:
復(fù)制代碼 代碼如下:
Function fDecode(sStringToDecode)
'This function will decode a Base64 encoded string and returns the decoded string.
'This becomes usefull when attempting to hide passwords from prying eyes.
Const CharList = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
Dim iDataLength, sOutputString, iGroupInitialCharacter
sStringToDecode = Replace(Replace(Replace(sStringToDecode, vbCrLf, ""), vbTab, ""), " ", "")
iDataLength = Len(sStringToDecode)
If iDataLength Mod 4 > 0 Then
fDecode = "Bad string passed to fDecode() function."
Exit Function
End If
For iGroupInitialCharacter = 1 To iDataLength Step 4
Dim iDataByteCount, iCharacterCounter, sCharacter, iData, iGroup, sPreliminaryOutString
iDataByteCount = 3
iGroup = 0
For iCharacterCounter = 0 To 3
sCharacter = Mid(sStringToDecode, iGroupInitialCharacter + iCharacterCounter, 1)
If sCharacter = "=" Then
iDataByteCount = iDataByteCount - 1
iData = 0
Else
iData = InStr(1, CharList, sCharacter, 0) - 1
If iData = -1 Then
fDecode = "Bad string passed to fDecode() function."
Exit Function
End If
End If
iGroup = 64 * iGroup + iData
Next
iGroup = Hex(iGroup)
iGroup = String(6 - Len(iGroup), "0") iGroup
sPreliminaryOutString = Chr(CByte("H" Mid(iGroup, 1, 2))) Chr(CByte("H" Mid(iGroup, 3, 2))) Chr(CByte("H" Mid(iGroup, 5, 2)))
sOutputString = sOutputString Left(sPreliminaryOutString, iDataByteCount)
Next
fDecode = sOutputString
End Function
msgbox fDecode("d3d3LmpiNTEubmV0")
需要測(cè)試加密的代碼的朋友可以訪問 https://www.jb51.net/tools/base64.htm
您可能感興趣的文章:- Base64在線編碼解碼實(shí)現(xiàn)代碼 演示與下載
- asp base64加解密函數(shù)代碼
- vbs版的解密base64加密的腳本
- 關(guān)于加密解密 Base64 and URL and Hex Encoding and Decoding
- 關(guān)于base64加密/解密
- JavaScript Base64編碼和解碼,實(shí)現(xiàn)URL參數(shù)傳遞。
- Javascript base64編碼實(shí)現(xiàn)代碼