imabc
驱动牛犊
驱动牛犊
  • 注册日期2004-04-09
  • 最后登录2005-09-26
  • 粉丝0
  • 关注0
  • 积分17分
  • 威望4点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1890回复:13

加密u盘读写数据的问题(送50分)

楼主#
更多 发布于:2005-06-09 17:09
  各位大侠,我现在写了一个u盘的过滤驱动,对往u盘写的数据加密,读数据的时候进行解密,目前出现的问题是往u盘写数据没问题,但是读的时候有时候可以,但很多情况下都是显示乱码,或是提示文件破坏无法读取,但如果写数据后,将u盘拔出再插上的话,又能看到文件图标,但是无法打开文件。我是在dispatch中处理写数据,在完成例程中处理读数据,加解密算法应该没错,不知道问题出在哪,请指点,谢谢!

最新喜欢:

tigerLtigerL
zhjie374
驱动小牛
驱动小牛
  • 注册日期2004-10-27
  • 最后登录2012-01-17
  • 粉丝2
  • 关注1
  • 积分17分
  • 威望144点
  • 贡献值1点
  • 好评度21点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-06-10 17:19
在硬件过滤上写加密比较危险.
因为很多时候写下去的并不时文件内容,而是分区表等等.

一般会在文件系统中做
zhangshengyu
驱动老牛
驱动老牛
  • 注册日期2003-10-03
  • 最后登录2016-07-26
  • 粉丝0
  • 关注0
  • 积分792分
  • 威望696点
  • 贡献值41点
  • 好评度499点
  • 原创分0分
  • 专家分0分
  • 社区居民
板凳#
发布于:2005-06-10 17:33
在硬件过滤上写加密比较危险.
因为很多时候写下去的并不时文件内容,而是分区表等等.

一般会在文件系统中做

还没听说过
---内核开发合作或提供基础技术服务QQ:22863668 ---
zhangshengyu
驱动老牛
驱动老牛
  • 注册日期2003-10-03
  • 最后登录2016-07-26
  • 粉丝0
  • 关注0
  • 积分792分
  • 威望696点
  • 贡献值41点
  • 好评度499点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2005-06-10 17:39
根据READCAPS中设备声明的块大小,按那个大小为分组进行加密,一般是512

从文件系统做会玩死你,嘿嘿。
---内核开发合作或提供基础技术服务QQ:22863668 ---
imabc
驱动牛犊
驱动牛犊
  • 注册日期2004-04-09
  • 最后登录2005-09-26
  • 粉丝0
  • 关注0
  • 积分17分
  • 威望4点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2005-06-10 19:24
  我是按每8个字节进行加密的,应该对分区表没有影响,不知道在同一个diapatch中同时处理读和写(根据SRB的操作码),会不会发生冲突,需不需要进行排队,请指点!
zhangshengyu
驱动老牛
驱动老牛
  • 注册日期2003-10-03
  • 最后登录2016-07-26
  • 粉丝0
  • 关注0
  • 积分792分
  • 威望696点
  • 贡献值41点
  • 好评度499点
  • 原创分0分
  • 专家分0分
  • 社区居民
5楼#
发布于:2005-06-12 09:26
 我是按每8个字节进行加密的,应该对分区表没有影响,不知道在同一个diapatch中同时处理读和写(根据SRB的操作码),会不会发生冲突,需不需要进行排队,请指点!

应该对分区表有影响,设备接入系统,系统就会写一下,但是只要读和写加解密透明就没有问题。不用排队,它是一个一个处理的。
---内核开发合作或提供基础技术服务QQ:22863668 ---
imabc
驱动牛犊
驱动牛犊
  • 注册日期2004-04-09
  • 最后登录2005-09-26
  • 粉丝0
  • 关注0
  • 积分17分
  • 威望4点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2005-06-13 09:00
  在u盘初始化时,写MBR,分区表时都是加密后写进去的,所以插上设备后,系统能够看到盘符,双击u盘也能够打开,显示的容量也是对的,但是写一个文件进去后,刷新一下,很多情况就出现乱码了或者打开时显示文件已破坏无法读出,有时也能正确显示出来。关键是在这一点上不知道是哪里出了问题,希望能得到大家帮助,谢谢!
zhangshengyu
驱动老牛
驱动老牛
  • 注册日期2003-10-03
  • 最后登录2016-07-26
  • 粉丝0
  • 关注0
  • 积分792分
  • 威望696点
  • 贡献值41点
  • 好评度499点
  • 原创分0分
  • 专家分0分
  • 社区居民
7楼#
发布于:2005-06-13 18:21
 在u盘初始化时,写MBR,分区表时都是加密后写进去的,所以插上设备后,系统能够看到盘符,双击u盘也能够打开,显示的容量也是对的,但是写一个文件进去后,刷新一下,很多情况就出现乱码了或者打开时显示文件已破坏无法读出,有时也能正确显示出来。关键是在这一点上不知道是哪里出了问题,希望能得到大家帮助,谢谢!

估计要么是加解密没弄对 要不就是原来存在明文数据
创建文件得时候要修改目录表,估计目录表在加密得时候坏了。
---内核开发合作或提供基础技术服务QQ:22863668 ---
imabc
驱动牛犊
驱动牛犊
  • 注册日期2004-04-09
  • 最后登录2005-09-26
  • 粉丝0
  • 关注0
  • 积分17分
  • 威望4点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2005-06-15 10:14
  谢谢zhangshengyu大哥指点,小弟目前还是在这里一筹莫展,如果说是加解密没弄对,那我用bushound监测,加密数据是对的,我猜想,是不是有可能某些数据没有经过filter呢?
  小弟放分了!
zhangshengyu
驱动老牛
驱动老牛
  • 注册日期2003-10-03
  • 最后登录2016-07-26
  • 粉丝0
  • 关注0
  • 积分792分
  • 威望696点
  • 贡献值41点
  • 好评度499点
  • 原创分0分
  • 专家分0分
  • 社区居民
9楼#
发布于:2005-06-15 12:47
 是不是有可能某些数据没有经过filter呢?

很有可能,因为有缓存,但是如果点击安全删除图标进行删除的话,在U盘移除的时候 缓存会把所有未写入的数据写进去。
---内核开发合作或提供基础技术服务QQ:22863668 ---
imabc
驱动牛犊
驱动牛犊
  • 注册日期2004-04-09
  • 最后登录2005-09-26
  • 粉丝0
  • 关注0
  • 积分17分
  • 威望4点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2005-06-17 09:41
  如果从缓存读取数据,那这个缓存是用户缓冲还是内核缓冲呢?
不知道谁有这方面的资料或者能够在方法上提供些指导,谢谢!
yuanyuan
驱动大牛
驱动大牛
  • 注册日期2003-01-15
  • 最后登录2010-08-04
  • 粉丝0
  • 关注0
  • 积分1025分
  • 威望300点
  • 贡献值0点
  • 好评度232点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2005-06-20 13:35
我从文件系统做的,效果还不错
imabc
驱动牛犊
驱动牛犊
  • 注册日期2004-04-09
  • 最后登录2005-09-26
  • 粉丝0
  • 关注0
  • 积分17分
  • 威望4点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2005-06-20 18:36
往u盘写数据的时候,加密数据写入cache中,能否在写数据后再次解密cache,这样系统读数据的时候就不会出现乱码了,不知这种方法能否实现呢?
imabc
驱动牛犊
驱动牛犊
  • 注册日期2004-04-09
  • 最后登录2005-09-26
  • 粉丝0
  • 关注0
  • 积分17分
  • 威望4点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2005-06-20 18:37
往u盘写数据的时候,加密数据写入cache中,能否在写数据后再次解密cache,这样系统读数据的时候就不会出现乱码了,不知这种方法能否实现呢?
游客

返回顶部