中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-07-27 08:41
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [原创][讨论]非编译型批处理加密方案与代码 精华I 查看 112,744 回复 364
346 发表于 2008-09-17 15:29 ·  中国 辽宁 沈阳 联通
新手上路
积分 4
发帖 2
注册 2008-09-17 14:21
17年会员
UID 125862
性别 男
状态 离线
看一看,试一试
347 方法很好,但续集呢……? 发表于 2008-09-27 14:31 ·  中国 贵州 黔东南苗族侗族自治州 凯里市 电信
新手上路
积分 2
发帖 1
注册 2008-09-25 02:47
17年会员
UID 126555
性别 男
状态 离线
方法很好,但续集呢……?期待中……
348 发表于 2008-09-28 13:03 ·  中国 江苏 苏州 电信
初级用户
积分 56
发帖 21
注册 2007-02-01 13:46
19年会员
UID 78326
性别 男
状态 离线
我都不敢用啊!!!!!!
349 发表于 2008-10-03 01:07 ·  中国 广东 电信
新手上路
积分 9
发帖 5
注册 2007-05-04 21:32
19年会员
UID 87489
性别 男
状态 离线
想不到一次偶然的机会会让我看到这么多的好东西
350 发表于 2008-10-05 14:38 ·  中国 山东 淄博 电信
初级用户
积分 63
发帖 37
注册 2008-08-09 11:46
17年会员
UID 123026
性别 男
状态 离线
强烈支持,相见恨晚。。。。
351 发表于 2008-10-18 16:22 ·  中国 河南 郑州 联通
贫困用户
积分 -1
发帖 1
注册 2008-05-30 13:32
18年会员
UID 120087
性别 男
状态 离线
不错!!!
352 发表于 2008-10-18 18:23 ·  中国 四川 成都 电信
初级用户
积分 21
发帖 21
注册 2008-10-18 17:51
17年会员
UID 128679
性别 男
状态 离线
真是长见识了,学习学习^_^
353 发表于 2008-10-18 22:36 ·  中国 上海 电信
新手上路
积分 11
发帖 7
注册 2007-09-16 17:03
18年会员
UID 97544
性别 男
状态 离线
学习中ing....
354 我的法子 发表于 2008-10-18 23:33 ·  中国 湖南 衡阳 电信
初级用户
★★
积分 149
发帖 57
注册 2006-10-26 11:39
19年会员
UID 68362
性别 男
来自 湖南
状态 离线
1.新建一个文本“a.txt”,打开,按住alt键再输入159,松开alt键就会出现字符“Ÿ”,保存此文本编码为unicode.
2.在要加密的批处理文件代码前空几行,否则就会出错。
3.cmd命令:copy /a a.txt + /b b.bat = c.bat
此方法很管用,大家试试。
355 发表于 2008-10-19 00:30 ·  中国 江西 联通
初级用户
积分 41
发帖 32
注册 2008-10-16 00:11
17年会员
UID 128490
性别 男
状态 离线
学习中.
356 发表于 2008-10-30 14:38 ·  中国 广东 广州 海珠区 电信
新手上路
积分 2
发帖 2
注册 2008-10-30 12:32
17年会员
UID 129539
性别 男
状态 离线
好东西
357 发表于 2008-10-30 14:38 ·  中国 广东 广州 海珠区 电信
新手上路
积分 2
发帖 2
注册 2008-10-30 12:32
17年会员
UID 129539
性别 男
状态 离线
好东西
358 发表于 2008-10-31 01:46 ·  中国 北京 鹏博士BGP
高级用户
★★★
据说是李先生
积分 609
发帖 400
注册 2008-04-23 15:55
18年会员
UID 116706
性别 男
状态 离线
很收益!
我也要写一个加密器
359 我编写的使用超方便的VBS脚本 发表于 2008-10-31 03:51 ·  中国 北京 鹏博士BGP
高级用户
★★★
据说是李先生
积分 609
发帖 400
注册 2008-04-23 15:55
18年会员
UID 116706
性别 男
状态 离线
使用方法:
将需要加密的文件用鼠标托到本程序上,就会在当前文件夹自动生成加密文件。

说明:
感谢 willsort、zh159、xjj2007 等提供的原理。后来我经过很多次测试发现:
只要是以二进制方式将ASCII编码的文件附加到UNICODE编码的文件末尾,就会使后面的内容显示为乱码。
因此我写的程序实际执行的并不是上面几位提到的方法,而是使用VBSCRIPT直接创建一个UNICODE编码的文件头(可以是任何内容,详情见源代码中的注释),然后将它与我们要加密的文件合并。

特点:
文件名和文件路径中包含空格或者其他特殊字符都不会产生错误。
有些地方可以自己修改的更个性化(参见源代码中的注释)

注意事项:
1. 原BAT文件必须是 ASCII 编码的。否则不成功
2. 此程序生成的加密文件比原文件大,具体大多少取决于 创建 UNICODE 编码的文件头 时 tmpstr.WriteLine 语句写了多少东西进去,你可以自己定义的。
3.提供的附件“BAT加密器VBS版.vbs ” 与 “BAT加密器保持版权版.vbs” 功能完全相同,由兴趣的可以用记事本打开看看有何不同,呵呵。。。
4.BUG : 由于删除文件的代码是用的CMD命令,目前发现当且仅当文件在磁盘根目录时会无法删除,但不影响正常使用,可手动删除,由于时间有限就不修正了。

VBSCRIPT 脚本 源代码:
'''''''''''''''''''''''''''''''''''
'' (P)2008 Jv Ching (qinchun36) ''
'' Powed by 中国DOS联盟 ''
'' http://www.cn-dos.net/forum/ ''
'''''''''''''''''''''''''''''''''''
on error resume next
if Wscript.Arguments(0)="" then
msgbox "用鼠标把目标文件拖到我上面来!!!",16,"使用方法"
else

dim origfile,tmpstr,ching,fso,orig,fname,fpath
origfile=Wscript.Arguments(0)
Set fso=CreateObject("Scripting.FileSystemObject")
set ching=wscript.createobject("wscript.shell")
set tmpstr=fso.getfile(origfile)
fpath=tmpstr.parentfolder&"\"

fname="new_"&tmpstr.name '定义加密后的文件名为 new_原文件 ,你可以改成其他。

'如果已经存在 new_原文件 ,则删除之。
if (fso.fileexists(fpath&fname)) then
Set tmpstr=fso.getfile(fpath&fname)
tmpstr.Delete
end if

'创建 UNICODE 编码的文件头。在WINDOWS中用记事本打开会看到只有这些不是乱码。
Set tmpstr=fso.CreateTextFile(fpath&"unihead.txt",1,-1)
tmpstr.WriteLine "草,看他吗毛啊,老子都被qinchun36搞成乱码了!" '你可以在前面的双引号里任意写东西
tmpstr.close

'在被转换的文件头部加上两个空行和CLS清屏语句
Set tmpstr=fso.CreateTextFile(fpath&"bathead.txt",1)
tmpstr.writeBlankLines 2
tmpstr.writeline("cls") '清除开始时的错误信息,你也可以去掉这一行。
tmpstr.close

'为了简便,调用 CMD 命令合并文件并删除过度文件
tmpstr="cmd /c copy /b "&chr(34)&fpath&"unihead.txt"&chr(34)&"+"&chr(34)&fpath&"bathead.txt"&chr(34)&"+"&chr(34)&origfile&chr(34)&" "&chr(34)&fpath&fname&chr(34)&chr(38)&"del "&chr(34)&fpath&"unihead.txt"&chr(34)&chr(38)&"del "&chr(34)&fpath&"bathead.txt"&chr(34)
ching.run tmpstr,0

msgbox "加密后的文件是:"&chr(13)&chr(13)&fpath&fname,64,"Mr. Ching 提示你"

end if


[ Last edited by qinchun36 on 2008-11-1 at 21:59 ]
附件
BAT加密器VBS版.rar (2.13 KiB, 下载次数: 53)
360 发表于 2008-11-04 23:54 ·  中国 广东 中山 电信
新手上路
积分 12
发帖 12
注册 2008-11-04 22:48
17年会员
UID 130007
性别 男
状态 离线
好东东!谢谢!!!
论坛跳转: