阅读:1673回复:4
读解密问题?请等各位大大进来看看
翻看了版上的一些贴子,已经讨论的比较多了,可是有些问题还是没有搞明白,请各位大大再帮帮忙
做加解密FILTER,先用notepad和*.txt作为测试目标,基本的操作都已经完成了,可是还留下一个问题: 当用notepad把明文读出来后,明文就一直存在缓冲里了,其他程序读时也能看到明文,也能把明文拷贝出去了,而我们暂时确无能为力,请问大大我应该怎么把这个缓冲里的内容冲掉,或者把这个缓冲DEL了。 用 CcFlushCache MmFlushImageSection CcPurgeCacheSection 好象能把缓冲去掉,可是我找不到在那做这个操作合适 而且对notepad的IRP_MJ_CREATE,IRP_MJ_READ,IRP_MJ_WRITE调用CcIsFileCached都返回是false notepad是用内存映射的方式读写的吗?这种方式到最后是都变成pading io的方式吗?这个pading io是由那个进程发出的呢?explorer??system?? 我都蒙了,请各位大大一定要帮帮忙 |
|
沙发#
发布于:2004-06-13 10:51
不好意思各位,本来想发到别处的,不小心发错了,请斑竹删了把
|
|
板凳#
发布于:2004-06-13 17:29
不好意思各位,本来想发到别处的,不小心发错了,请斑竹删了把 兄弟本来想发到什么地方? 这里不对口吗? 为什么一定要干掉,OS文件使用高速缓冲就是为了提高速度的呀。 当然你这样可能满足了其他应用得到加密后的信息,但你是否测试过,这些缓冲实际是要被更新(就是当你对新文件操作后,缓冲会交换/或者说失效)的你。 |
|
|
地板#
发布于:2004-06-14 13:33
大哥,我想您现在已经知道我这张贴是发错地方了
还是讨论技术问题吧 如果只做读操作是不会的,起码很长一段时间内不会,这个我还是做了实验的,而且,只是单纯把对这些页面修改,系统也只会用一个线程去把胀页面写到硬盘,而不会轻易的使这些缓冲失效,除非缓冲已经满了 |
|
地下室#
发布于:2004-07-08 22:05
能不能得到对应的缓冲区的地址?
如果能的话, 能不能将其锁定,禁止其他进程访问? 酱紫可能会出问题,不过可以试试看:) |
|
|