VB 异或(Xor)字符串的方法

这篇博客介绍了如何在VB中进行异或(Xor)字符串操作,包括两种方法:一种是逐字符异或,另一种是直接使用Xor运算符。作者还分享了在逆向UltraISO过程中遇到的异或算法,并给出了具体的VB代码实现。
摘要由CSDN通过智能技术生成

VB 异或(Xor)字符串的方法

关键字:VB,VBA,异或,Xor,字符串


前言

简介:大家都知道,异或(Xor)是最常用的加密方式,在学习逆向时,经常会见到异或(Xor)操作。最近研究 UltraISO 8.6.5.2140 版的算法,里面全是异或(Xor)操作,就试着用VB写了一下它的加密程序,用C语言写起来感觉很简单,但用VB确不会做,网上搜了一下,也没有详尽的教学,只好自己琢磨,别说,虽然走了一些弯路,但总算搞明白了,分享给大家,希望能帮到需要的人。


第一天晚上做出了“方法一”,后来,又到另一台电脑写同样的程序时,就出现了“方法二”。

一、方法一,比较笨。

第一个strXor1函数:

Function strXor1(s1 As String, s2 As String)
    Dim m1 As Double, m2 As Double
    m1 = Val(s1)
    m2 = Val(s2)
    strXor1 = Hex(s1 Xor s2)
End Function

说明:函数接收两个十六进制字符串s1和s2,先用Val()函数将十六进制转成十进制后,再做异或操作,再用Hex()函数转回成十六进制返回。在传递参数之前,s1和s1必须在前面加上“&H",看下面调用代码:

Sub test1()
    Dim s1 As String, s2 As String
    Dim s3 As String, s4 As String, Str As String
    Dim x As Integer
    s1 = "3E76F499"
    s2 = "20020920"
    For x = 1 To Len(s1
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦田(wanao)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值