阅读:1268回复:11
xuAmigo,问个问题
我现在想做个东西,实现这样的功能:
当用户把文件写到U盘时,加密。 我在IRP WRITE中通过判断FILE_DEVICE_DISK和FILE_REMOVABLE_MEDIA决定是否要加密。 但是出现一个不可挽救的错误,我插上U盘以后,所有文件好象全部做了相对的处理,文件名全部加密了,而且大不开了。 这是怎么回事?你遇到吗? |
|
沙发#
发布于:2005-05-31 11:27
这以前我遇到过,你要跟下程序看下流程,你对写到U盘的文件加密,其实可以不用加FILE_DEVICE_DISK和FILE_REMOVABLE_MEDIA这些标记的,因为sfilter会对mount的文件系统进行处理的,U盘插上后就被mount了,文件不管写到哪,都会被加密
|
|
板凳#
发布于:2005-05-31 11:53
这个我知道,
但是现在我想只对USB移动设备进行加密,不对本地硬盘进行加密。 后来你怎么解决的? |
|
地板#
发布于:2005-05-31 14:24
我插上U盘以后,所有文件好象全部做了相对的处理,文件名全部加密了
//////////////////////////////////////////////////// 这句话你指的是U盘上的所有文件被处理了,还是U盘以及本地磁盘都被处理了,这个问题主要是你程序的逻辑没处理好,至少我遇到的是这样的,你还是跟程序吧,没代码看,我也不能具体指出哪错呀 |
|
地下室#
发布于:2005-05-31 15:00
U盘上的文件都被加密了。我去跟踪一下。
我以前是判断目录的,现在把判断目录那里改成判断是不是FILE_REMOVABLE_MEDIA。 另外:FILE_REMOVABLE_MEDIA这个方法判断移动硬盘你测试了吗? 我这里没有这个条件。 你的问题怎么样了? |
|
5楼#
发布于:2005-05-31 15:29
呵呵,好了。
自己发了个傻。 |
|
6楼#
发布于:2005-06-01 14:43
出现一个新问题:
如果盘上面既有被加密的文件,也有没有被加密的文件。 解密的时候如何做判断呢? 如果在密文的文件开头加暗号,必然会改变文件的SIZE,这样会比较麻烦。 如果遇到这个问题,你怎么处理呢? |
|
7楼#
发布于:2005-06-04 10:33
出现一个新问题: 可不可以先解密,然后验证CRC |
|
|
8楼#
发布于:2005-06-04 13:50
我是通过改变文件的长度来做的,在文件开始添加了一个标记,这种方法的缺点是:对与TXT文件在解密是读到那个标记就跳过然后解密能够正确解出原文,但对与DOC文档按同样的方法就解不出来。
|
|
9楼#
发布于:2005-06-04 23:13
那你最后使用什么方法了?
总不能把这样一个软件发布出去吧??? |
|
10楼#
发布于:2005-06-06 09:26
我想通过改名的方法来实现
|
|
11楼#
发布于:2005-06-06 09:41
改名这个方法也不行,容易被知道是动过手脚的文件
|
|