• 企业400电话
  • 网络优化推广
  • AI电话机器人
  • 呼叫中心
  • 全 部 栏 目

    网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    VBS 十六进制异或加密实现代码
    POST TIME:2021-10-18 11:39
    效果图:



    代码都封装成函数了,方便调用:

    复制代码 代码如下:

    Key = "www-enun-net" '不要用数字

    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

    上一篇:VBE decoder
    下一篇:VBS 提取狗狗影视中的ED2K连接的实现代码
  • 相关文章
  • 

    关于我们 | 付款方式 | 荣誉资质 | 业务提交 | 代理合作


    © 2016-2020 巨人网络通讯

    时间:9:00-21:00 (节假日不休)

    地址:江苏信息产业基地11号楼四层

    《增值电信业务经营许可证》 苏B2-20120278

    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信