aidamin
驱动小牛
驱动小牛
  • 注册日期2004-02-13
  • 最后登录2009-06-15
  • 粉丝0
  • 关注0
  • 积分964分
  • 威望98点
  • 贡献值0点
  • 好评度90点
  • 原创分0分
  • 专家分0分
阅读:1944回复:5

filedisk中如何将密钥从应用程序传入驱动程序??

楼主#
更多 发布于:2004-02-27 12:45
各位大虾,我在filedisk中加上了加解密代码,密钥固定,工作正常,但是,如果我想将密钥从应用程序中传入驱动程序之中,完成加密和解密的工作,请问如何实现这一点,烦请高人指教。谢谢
[color=red] QQ 18918737[/color]
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
沙发#
发布于:2004-03-09 13:15
直接传入RING0后,放到设备扩展即可。
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
he_x_p
驱动小牛
驱动小牛
  • 注册日期2002-11-15
  • 最后登录2005-07-30
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-03-09 12:46
这应当不是什么密密吧,在MSDN中查找DeviceIoControl的用法或者看几个相关例子即可。
乘着梦的翅膀, 借助黎明时柔和的阳光, 化着一只自由自在的冲天鸟, 在有梦的地方潇洒地飞翔......
aidamin
驱动小牛
驱动小牛
  • 注册日期2004-02-13
  • 最后登录2009-06-15
  • 粉丝0
  • 关注0
  • 积分964分
  • 威望98点
  • 贡献值0点
  • 好评度90点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-02-28 23:54
he_x_p 兄可否说得具体一些?我想实现的就是由应用程序向驱动程序的加解密函数中传递一个szKey密钥,谢谢。

我修改了应用程序的OPEN_FILE_INFORMATION:
typedef struct _OPEN_FILE_INFORMATION {
    LARGE_INTEGER   FileSize;
    BOOLEAN         ReadOnly;
    USHORT          FileNameLength;
    UCHAR           FileName[1];
    UCHAR           mKey[8];                                   //增加
} OPEN_FILE_INFORMATION, *POPEN_FILE_INFORMATION;

驱动程序中的加解密函数:

void crypt(PVOID pBuf,ULONG Len)
{
unsigned char *sbuf;
rc4_key key;
UCHAR szKey[8] = {0x21,0x32,0x23,0x34,0x25,0x36,0x27,0x38}; //szKey密钥需改
sbuf=ExAllocatePool(NonPagedPool,Len);

RtlCopyMemory(sbuf,pBuf,Len);
prepare_key(szKey,8,&key);
rc4((unsigned char *)sbuf,Len,&key);
RtlCopyMemory(pBuf,sbuf,Len);
ExFreePool(sbuf);
}
[color=red] QQ 18918737[/color]
chinasunjava
驱动牛犊
驱动牛犊
  • 注册日期2003-10-23
  • 最后登录2011-10-21
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望4点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-02-28 13:39
有人知道,如果我真在读文件,这时如何卸载 filedisk呢
一般卸不了,怎么强行关闭所以对虚拟盘读写的程序呢,
很郁闷,搞好久了,还是没搞定
des,aes,rsa,ecc,pki
he_x_p
驱动小牛
驱动小牛
  • 注册日期2002-11-15
  • 最后登录2005-07-30
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-02-28 10:01
代在Driver中留下IoCtrl接口,然后在应用程序中先用CreateFile(...)打开驱动程序句柄,再用DeviceIoControl进行通信即可。
乘着梦的翅膀, 借助黎明时柔和的阳光, 化着一只自由自在的冲天鸟, 在有梦的地方潇洒地飞翔......
游客

返回顶部