VBS 十六進(jìn)制異或加密實(shí)現(xiàn)代碼

代碼都封裝成函數(shù)了,方便調(diào)用:
Key = "www-enun-net" '不要用數(shù)字
Wscript.echo now & ", 加密: "
MyData = ReadBin("test.jpg")
EnData = Encoder(MyData)
WriteBin "E_test.jpg", EnData
Wscript.echo now & ", 加密: "
Wscript.echo now & ", 解密: "
MyData = ReadBin("E_test.jpg")
UnData = Uncoder(MyData)
WriteBin "U_test.jpg", UnData
Wscript.echo now & ", 解密: "
Function ReadBin(FileName)
Dim Stream, ObjXML, MyNode
Set ObjXML = CreateObject("Microsoft.XMLDOM")
Set MyNode = ObjXML.CreateElement("binary")
Set Stream = CreateObject("ADODB.Stream")
MyNode.DataType = "bin.hex"
Stream.Type = 1
Stream.Open
Stream.LoadFromFile FileName
MyNode.NodeTypedValue = Stream.Read
Stream.Close
ReadBin = MyNode.Text
Set MyNode = Nothing
Set Stream = Nothing
Set ObjXML = Nothing
End Function
Function WriteBin(FileName, BufferData)
Dim Stream, ObjXML, MyNode
Set ObjXML = CreateObject("Microsoft.XMLDOM")
Set MyNode = ObjXML.CreateElement("binary")
Set Stream = CreateObject("ADODB.Stream")
MyNode.DataType = "bin.hex"
MyNode.Text = BufferData
Stream.Type = 1
Stream.Open
Stream.Write MyNode.NodeTypedValue
Stream.SaveToFile FileName, 2
Stream.Close
Set stream = Nothing
Set MyNode = Nothing
Set ObjXML = Nothing
End Function
Function Encoder(Data)
Dim K, M
For n = 0 To Len(Key)-1
K = K & Asc(Left(Right(key, Len(Key)-n), 1)) & "#"
Next
Data = UCase(Data)
For i = 0 To Len(Data)-1
M = Left(Right(Mid(Data, i+1, 1), Len(Data)-i), 1)
For j = 0 To Len(Key)-1
If i Mod Len(Key) = j Then
Encoder = Encoder & Hex((Asc(M) Xor Split(K, "#")(j)))
End If
Next
Next
End Function
Function Uncoder(Data)
Dim K
For n = 0 To Len(Key)-1
K = K & "#" & Asc(Left(Right(key, Len(Key)-n), 1)) & "#X"
Next
K = K & K
Data = UCase(Data)
For i = 1 To Len(Data) Step 2
For j = 1 To Len(Key) * 2
If i Mod Len(Key)*2 = j Then
Uncoder = Uncoder & Chr(Split(K, "#")(j) Xor ("&H" & Mid(Data, i, 2)))
End If
Next
Next
End Function
相關(guān)文章
VBS 批量Ping的項(xiàng)目實(shí)現(xiàn)
本文主要介紹了VBS批量Ping的項(xiàng)目實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-04-04VBS 硬盤讀寫統(tǒng)計(jì)(分區(qū)讀寫統(tǒng)計(jì))
用vbs實(shí)現(xiàn)的硬盤讀寫統(tǒng)計(jì)(分區(qū)讀寫統(tǒng)計(jì))的實(shí)現(xiàn)代碼,想學(xué)習(xí)vbs的朋友可以參考下2013-01-01一個把任何文件轉(zhuǎn)成批處理的vbs腳本Any2Bat.vbs
一個把任何文件轉(zhuǎn)成批處理的vbs腳本Any2Bat.vbs...2007-04-04VBS基礎(chǔ)篇 - vbscript常用函數(shù)及功能
這篇文章主要介紹了VBS基礎(chǔ)篇 - vbscript常用函數(shù),需要的朋友可以參考下2018-06-06VBS合并一個文件夾里的TXT的實(shí)現(xiàn)代碼
有時(shí)從網(wǎng)上的電子書網(wǎng)站上下載解壓后。得到的是多個TXT文本。有沒有辦法把多個TXT合在一起看呢?寫了個代碼。不是很完美,歡迎高手批評指教。 我只是個菜鳥,需要大家的關(guān)懷才能進(jìn)步哇2013-01-01