请问各位老师,"高强度文件夹加密大师"这个软件的加密原理
请问各位老师,"高强度文件夹加密大师"这个软件的加密原理
谢谢
分数不多请原谅(本人的分马上就没了)实在抱歉,但还想多学习技术
问题点数:40、回复次数:12Top
1 楼ccrun(老妖)(www.ccrun.com)回复于 2005-04-05 09:41:47 得分 30
高什么强什么度什么文件夹嘛.
我专门去下载了一番,安装,运行,用C:\123目录做了个Test,经过"高强度加密"以后,发现原来那个目录不存在了,多了一个与目录名同名的文件123.mem,这是"高强度加密"的自定义格式,具体是什么内容无需管他.好了,现在开始进回收站(通常所谓的加密专家,加密大师之类的名声很"响"的加密软件,都是通过回收站暂时存储数据的),在控制台模式下进入C:\recycled,然后dir/ah,嘿嘿嘿嘿,发现一个极其古怪的目录名:由9个ASCII码为0x7F的字符组成的目录,普通的复制方式是不太容易复制地,这个并不难,用Dir/ah>1.bat,然后用edit 1.bat编辑这个文件,将其内容改为cd空格后面加那9个怪字符,然后存盘退出,运行1.bat,进入到怪目录中,再dir一下,呵呵呵呵,123目录出现了,再进去123目录看看,文件原封不动的存在着.
所以,基本原理整理一下:
用户选择了要加密的文件夹以后,比如C:\123,将该目录剪切到回收站中的怪目录中,这个怪目录由程序员自己定义,越怪越好.
然后在原文件夹存在的目录中,创建一个与目录名同名的.mem文件,这个文件用来存储原文件夹此时在回收站中目录和用户的加密密码.
设置与.mem文件的关联,当用户双击这个文件以后,弹出对话框要求密码确认,如果密码正确,就转向正确的目录,否则就拒绝.
大致原理是个这样子,当然和这个程序的原设计思路可能有出入.明白大概的原理就行了.Top
2 楼ccrun(老妖)(www.ccrun.com)回复于 2005-04-05 09:53:43 得分 0
更正一下,他不是将原文件夹剪切,而是用Rename,哈哈,方便快捷.解密的时候也是,直接将回收站中的文件夹改名为原文件夹名就行了.Top
3 楼happyct(绿叶对大树的情怀)回复于 2005-04-05 09:59:03 得分 0
老妖不厚道,这个东西怎么能去研究!Top
4 楼lkk2000(果酱)回复于 2005-04-05 10:07:14 得分 0
老妖真的不厚道!
自己研究就好了!
在这里又发了一次彪!Top
5 楼constantine(飘遥的安吉儿)回复于 2005-04-05 10:20:05 得分 0
老妖不厚道!
不过我喜欢
学习了Top
6 楼oldtab(汇铁)回复于 2005-04-05 10:37:41 得分 1
也应该表扬楼主,题出得好。Top
7 楼andanyueguang(随便了)回复于 2005-04-05 12:11:42 得分 0
如果加密的文件夹大小超过回收站的容量呢?Top
8 楼constantine(飘遥的安吉儿)回复于 2005-04-05 12:44:05 得分 1
如果加密的文件夹大小超过回收站的容量呢?
或许他改了回收站的空间大小为100%,不就没有这个问题了吗Top
9 楼cczlp(不惑)回复于 2005-04-05 13:57:18 得分 0
很多“隐藏大师”都是这样,曾经花一天时间下载所有隐藏文件的软件,可惜还没有在我面前隐藏超3分钟的。Top
10 楼myy()回复于 2005-04-05 14:23:50 得分 8
高什么强什么度什么文件夹嘛.
------------------------------
同意,唬小孩的。
如果加密的文件夹大小超过回收站的容量呢?
------------------------------
这样做其实与回收站的空间一点关系也没有的。
甚至,2000下,如果没有回收站文件夹,可以自己造一个:
if(!DirectoryExists("C:\\Recycled"))
{
TStringList *ss=NULL;
try
{
if(CreateDir("C:\\Recycled"))
{
FileSetAttr("C:\\Recycled",0x02|0x04);
ss=new TStringList();
ss->Add("[.ShellClassInfo]");
ss->Add("CLSID={645FF040-5081-101B-9F08-00AA002F954E}");
ss->SaveToFile("C:\\Recycled\\desktop.ini");
FileSetAttr("C:\\Recycled\\desktop.ini",0x02|0x04);
delete ss; ss=NULL;
}
}
catch(...)
{
delete ss; ss=NULL;
}
}
Top
11 楼setcdq9801(蓝鸽@我是你.net)回复于 2005-08-07 13:21:47 得分 0
mark一下,一会过来看Top
12 楼test1234()回复于 2005-08-13 11:36:01 得分 0
我靠,不厚道,居然已经结贴了!Top





