游戏辅助制作 :用按键精灵解决用户密码泄露

2025-11-20 02:37:36

1、如何保护自己的账号密码安全?

加密/解密原理:

通过一段加密/解密代码,将我们的密码,加密后存储到uservar.ini配置文件中。这样,别人通过uservar.ini配置文件查到的我们的用户名密码,其实是假的。而需要读取uservar.ini中用户名密码的时候,我们再通过解密代码,读取到真实的密码。

我们今天介绍的转变,则是通过调用Rnd函数,产生的伪随机数列进行加密/解密。

2、下面针对加解密的代码详细讲解:

Function 加解密(源文件, 秘钥)

    Dim Z, i

    Dim A, B, C

    加解密 = ""

    If Len(源文件) = 0 Then’如果密码为空,则初始化为空

        加解密 = ""

        Exit Function

    End If

    '调用Rnd函数使以后Rnd函数所产生的Rnd为相同的伪随机数列

    Z = Rnd(-秘钥)

    For i = 1 To Len(源文件)’将密码字符串一个一个字符通过加密,转换成另一个字符

        C = Mid(源文件, i, 1)

        A = Asc(C)

        B = Int(126 * Rnd) And&H7F’这里的&H7F,是指生成的伪随机代码,只取7位,以免数据溢出

        A = A Xor B’Xor是可逆的,第一次运行时是得到加密后的数据,再运行一次是得到解密后的数据

        C = Chr(A)

        加解密 = 加解密 + C

  Next

End Function

3、举个小QUI的例子吧~

Function 加解密(源文件, 秘钥)

    Dim Z, i

    Dim A, B, C

    加解密 = ""

    If Len(源文件) = 0 Then

        加解密 = ""

        Exit Function

    End If

    '调用Rnd函数使以后Rnd函数所产生的Rnd为相同的伪随机数列

    Z = Rnd(-密钥)

    For i = 1 To Len(源文件)

        C = Mid(源文件, i, 1)

        A = Asc(C)

        B = Int(126 * Rnd) And&H7F

        A = A Xor B

        C = Chr(A)

        加解密 = 加解密 + C

    Next

End Function

Event Form1.Load        

    //获取小节名(如"e1df741f-d5ec-4ad7-969d-adb139c6a24f"),同一个Q文件生成的小节名不变

    a = GetMacroID()//获取到当前脚本/小精灵de ID

    加密文件=Plugin.File.ReadINI("e1df741f-d5ec-4ad7-969d-adb139c6a24f","Form1.InputBox2.Text", ".\uservar.ini")

    解密文件 = 加解密(加密文件, 1234567890)'这里的1234567890是假使的密钥,可以修改,注意保密

    Form1.InputBox2.Text = 解密文件

End Event

//写入密码信息

源文件 = Form1.InputBox2.Text    

加密文件 = 加解密(源文件, 1234567890)   

CallPlugin.File.WriteINI("e1df741f-d5ec-4ad7-969d-adb139c6a24f","Form1.InputBox2.Text", 加密文件, ".\uservar.ini")

//输出信息

RunApp "notepad.exe"

SayString Form1.InputBox1.Text

KeyPress "Enter", 1

SayString 源文件

   

         经过加密之后呢,我所看到的uservar.ini中的用户名密码呢,已经是加密过的了

 不过熊孩纸们,要注意保护咱自己的密钥和加密代码,如果别人知道了你的加密过程,相对应的也就能倒退逆序算出你的解密过程。没有一个加密是万无一失的,当然如果你能保护好自己的密钥和加密代码,别人来破解你加密后的内容,困难就更大了。

游戏辅助制作 :用按键精灵解决用户密码泄露

4、作者大大有话说:

脚本必须做到三个功能,一是用户任何时候打开ini文件都看不到真正密码,二是用户关闭小精灵,下次再开启时,不需要再次输入密码,所以ini不能删除,三是用户可以在QUI界面随时删除个别密码字符而正常使用,所以用MD5不太好实现这一点。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢