编写简单的文本文件加密程序

2025-09-27 04:11:52

1、一般编写一个软件需要特定的编程和编译运行环境,此处使用VBS(Microsoft Visual Basic Script Edition),微软可视化Basic编程语言脚本版,Windows支持该脚本,因此可以使用VBS编写一个脚本程序直接在Windows上运行(这与Linux环境下编写和运行shell脚本类似)。

2、使用Windows自带的“记事本”编辑如下程序代码(可以直接拷贝粘贴,也可以在网盘中下载已经编辑好的vbs脚本:http://pan.baidu.com/s/1i39WUrz):

'On Error Resume Next

'1打开文件

do

  strLoadFile = BrowseForFile()

  if strLoadFile <> "" then

    WScript.Echo strLoadFile

    exit do

  else

k=msgbox("您未选中任何文件,重新选择吗?",vbYesNo,"vbs代码加密工具")

    if k=vbno then wscript.quit

  end if

loop

'2 打开选择的文件

set fso = CreateObject("Scripting.FileSystemObject")

set ws = createobject("wscript.shell")

set f=fso.getfile(strLoadFile)

path=f.parentfolder

name=f.name

set fr=fso.opentextfile(strLoadFile)

set fw=fso.createtextfile("加密" +name,2)

'3 加密过程

do while fr.atendofstream=false

  line=fr.readline

  dow=""

  for i=1 to len(line)   

    achar=mid(line,i,1)

'----------------加密算法,可以修改-------------------------

'--将下面的123换成0~255的任何值,则对应不同的加密算法-----

bchar=chr(asc(achar) Xor 123)

dow=dow & (bchar)

'dow=dow & (achar)

next

fw.write dow

loop

fr.close

fw.close

'4 运行结束弹出提示对话框

ws.popup "加密成功!",3

'VBS打开选择文件对话框,适用于Windows7

Function BrowseForFile()

    Dim shell : Set shell = CreateObject("WScript.Shell")

    Dim fso : Set fso = CreateObject("Scripting.FileSystemObject")

    Dim tempFolder : Set tempFolder = fso.GetSpecialFolder(2)

    Dim tempName : tempName = fso.GetTempName()

    Dim tempFile : Set tempFile = tempFolder.CreateTextFile(tempName & ".hta")

    tempFile.Write _

    "<html>" & _

    "<head>" & _

    "<title>Browse</title>" & _

    "</head>" & _

    "<body>" & _

    "<input type='file' id='f' />" & _

    "<script type='text/javascript'>" & _

    "var f = document.getElementById('f');" & _

    "f.click();" & _

    "var shell = new ActiveXObject('WScript.Shell');" & _

    "shell.RegWrite('HKEY_CURRENT_USER\\Volatile Environment\\MsgResp', f.value);" & _

    "window.close();" & _

    "</script>" & _

    "</body>" & _

    "</html>"

    tempFile.Close

    shell.Run tempFolder & "\" & tempName & ".hta", 0, True

    BrowseForFile = shell.RegRead("HKEY_CURRENT_USER\Volatile Environment\MsgResp")

    shell.RegDelete "HKEY_CURRENT_USER\Volatile Environment\MsgResp"

End Function

3、将文件保存为vbs类型,即在记事本另存为时,在“保存类型”中选择“所有文件”,将文件名写为“filename.vbs”

编写简单的文本文件加密程序

4、双击运行vbs文件,弹出文件选择对话框,选择需要加密的txt文件,打开,确定之后弹出加密成功对话框,在同一文件夹下出现加密后的文件,文件名为“加密filename.txt”

编写简单的文本文件加密程序

编写简单的文本文件加密程序

5、加密后的文件内容如下所示

编写简单的文本文件加密程序

6、重复上述步骤,使用vbs脚本对加密后的文件再一次加密则重现原文件内容(两次加密相当于解密)。加密后的文件名总是为“加密”+原文件名,这个可以在加密脚本中修改

编写简单的文本文件加密程序

1、该加密程序使用异或(xor)操作作为加密算法,异或操作有一个特点:一个数连续与另一个数进行两次异或则结果等于其自身,因此进行一次加密(异或)得到密文,再异或一次得到原文。

修改参与异或操作的数据数值则可以形成不同的加密算法。

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