![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-08 05:59 |
共 48,041 主题排行 / 350,128 发帖 / 今日 3 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » (原创)批处理加密+解密(感谢namejm和bjsh版主!) |
| 可打印版本 2,242 / 22 |
| 第1楼 bat-zw | 发表于 2008-03-29 18:12 |
| 金牌会员 发帖 1,276 积分 3,105 | |
|
(原创)批处理加密+解密(感谢namejm和bjsh版主!) 经本处理后处理后的批处理要经过加密和解密两个过程才能运行,同时经过加解密过程后使每行后增加了18位空字符,现已解决。
相信经过本批处理加密的文件很难被破解,可以便于大家将不经常使用的批处理都转换成文本文件收藏起来,要用的时候再解密出来就可以了,这也是本人花这么大心思的初衷。 为了便于分类保管,特别加入人工选择输出文件名功能。 友情提示:请大家小心使用变量延迟,在本P中就遇到了处理特殊字符"!"的问题,真的不瞒大家,我为这个是费尽了心力(出现的问题本人在9楼做了详细说明)。 感谢namejm的共享资料解决了关键问题,脱去因解决特殊字符"!"替换时生成的前后双引号(本人在16楼贴出了其原文,大家可以去学习学习以少走弯路),本批处理已修改如下: [ Last edited by zw19750516 on 2008-3-31 at 01:14 PM ] |
|
| 第2楼 luckboy45 | 发表于 2008-03-29 19:19 |
| 中级用户 发帖 212 积分 487 | |
|
呵呵,想法不错,支持楼主,顺便学习下!~
|
|
| 第3楼 beeny | 发表于 2008-03-29 20:45 |
| 初级用户 发帖 49 积分 136 | |
|
呵呵不错!就是好像不能再执行吧!
|
|
| 第4楼 bat-zw | 发表于 2008-03-29 20:50 |
| 金牌会员 发帖 1,276 积分 3,105 | |
|
我测试了可以的: 但对于"!"有点感冒!!!
|
|
| 第5楼 ZJHJ | 发表于 2008-03-30 00:24 |
| 高级用户 发帖 374 积分 609 | |
|
我测试了
这种替换后不能运行了,也不支持中文.必须解密后才能运行的 |
|
| 第6楼 HAT | 发表于 2008-03-30 01:45 |
| 版主 发帖 5,017 积分 9,023 | |
|
继续加油
|
|
| 第7楼 plp626 | 发表于 2008-03-30 01:55 |
| 银牌会员 发帖 1,020 积分 2,278 | |
|
有个问题:
for 可以精简重复的任务,但就是不能精简多次set赋值这样的操作, 就像: set str=!str:a=犇! set str=!str:b=猋! set str=!str:c=骉! set str=!str:d=蟲! set str=!str:e=麤! set str=!str:f=毳! set str=!str:g=淼! set str=!str:h=掱! set str=!str:i=焱! set str=!str:j=垚! set str=!str:k=煊! set str=!str:l=烜! set str=!str:m=煐! set str=!str:n=焓! set str=!str:o=烓! set str=!str:p=焺! set str=!str:q=瓛! set str=!str:r=炜! set str=!str:s=翙! set str=!str:t=燚! set str=!str:u=焜! set str=!str:v=琰! set str=!str:w=燊! set str=!str:x=眚! set str=!str:y=奡! set str=!str:z=慤! 这样的代码,总是不能精简,这和指针有关吗? |
|
| 第8楼 bat-zw | 发表于 2008-03-30 11:44 |
| 金牌会员 发帖 1,276 积分 3,105 | |
|
友情提示: 批处理加密后是不能运行的,想恢复只要把原来加密时生成的chang.txt放进去解密还原成back.bat就可以运行了。同时,不好意思,发贴时没有写好说明,在这里补上了。
|
|
| 第9楼 bat-zw | 发表于 2008-03-30 12:05 |
| 金牌会员 发帖 1,276 积分 3,105 | |
|
关于处理特殊字符"和! !的疑惑: 本加解密工具现在有个最大的问题没有得到解决,如果被处理的批处理中含有"! !"的话,所有的"! !"将不被处理。
我做了大量的处理和测试,只要加入set str="!str:^!=^!!"(也试着加入call,set str=!str:^!=^!!不起作用)进for循环中进可以解决"! !"不被处理的问题。rem实际上只要加入双引号就可以了,根本不要对!进行替换处理,以前我是没搞清楚,导致写入无效命令。 但随之出现的新的问题更叫人头痛,大家注意到在for循环中加入str="!str:^!=^!!"实际同时给每个%str%前后都加上了字符",原本简单的以为把echo !str:~,-18! >>%c%.bat修改下就可以解决了。但当我修改成echo !str:~2,--20! >>%c%.bat 后却发现解密出来的文件各行中有的""被处理掉了,有的前面的"还在,肯定会导致 不能运行,这就表明在每行前后增加的"字符导致增加的字符数并不一样 真的是叫人头痛啊,同样是前后增加的字符"但为什么会出现各行前后增加的字符数不一样的情况啊,望高人指点啊。 对了,问题比较复杂,不知道我说清楚了没有,版主可不要扣我分啊。 =============================================== 本问题已在16楼得到解决,在此再次感谢namejm和bjsh版主。 [ Last edited by zw19750516 on 2008-3-31 at 01:16 PM ] |
|
| 第10楼 bat-zw | 发表于 2008-03-30 13:28 |
| 金牌会员 发帖 1,276 积分 3,105 | |
|
为了解决问题得到提高: 为了解决问题得到提高,自己顶一下了。
|
|
| 第11楼 terse | 发表于 2008-03-30 13:38 |
| 银牌会员 发帖 946 积分 2,404 | |
|
你所加密后文件并不能运行
搜索一下s11ss的发贴 应该有收获的 用变量替换就可以 |
|
| 第12楼 bat-zw | 发表于 2008-03-30 15:30 |
| 金牌会员 发帖 1,276 积分 3,105 | |
|
再顶: 问题没解决啊,高手们给点建议啊,急啊!!!!!!!!!!!!!!!!!
|
|
| 第13楼 zh159 | 发表于 2008-03-30 16:13 |
| 金牌会员 发帖 1,467 积分 3,687 | |
|
含有特殊字符的处理建议还是使用VBS的好
|
|
| 第14楼 knoppix7 | 发表于 2008-03-30 21:09 |
| 银牌会员 发帖 634 积分 1,287 来自 cmd.exe | |
|
.这样的解/加密太容易露馅了.论坛上还有其他的方法。自己看看把.
|
|
| 第15楼 bat-zw | 发表于 2008-03-30 22:58 |
| 金牌会员 发帖 1,276 积分 3,105 | |
|
继续顶: 怎么没人来帮我解决我在9楼提出的问题啊,我都搜遍了论坛了,还是不知所以然!急啊!
|
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |