liuxingxx
驱动牛犊
驱动牛犊
  • 注册日期2007-06-12
  • 最后登录2008-11-17
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望37点
  • 贡献值0点
  • 好评度28点
  • 原创分0分
  • 专家分0分
阅读:1890回复:4

CDROM刻录加、解密遇到的问题

楼主#
更多 发布于:2007-10-18 18:48
首先,请大家告诉我怎么给分,我找不到帖子上的“管理”。谢谢
进入主题:
    本人在研究对光盘刻录进行加解密,经过调测发现,在scsiop_write处直接进行加密操作,会导致整个光盘全盘加密,然而读盘时对_read,read_toc解密后,读盘时显示为空 。自己觉得如果在以下方面改进会更好,但能力有限,希望大家帮忙:
1、如果在write时可以确定数据区的偏移量,读盘时是否只需要对read作complete即可?请问如何确定这两部分数据区的偏移量?如果是偏移扇区的话,如何获取每扇区字节数?
2、如果仍然坚持全盘加密,请问读盘时还需要对那些scsi指令进行数据恢复操作?

此外,对于一些STRUCT,哪里能找到对其参数的定义,我只得是参数的具体意义?
for example:
STRUCT  SCSI_REQUEST_BLOCK  中的 UCHAR Cdb[16],每一位都是什么意思,可以直接使用CDB10或CDB6之类的结构体套用马?

谢谢!
piggy
驱动牛犊
驱动牛犊
  • 注册日期2001-08-24
  • 最后登录2012-01-14
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望27点
  • 贡献值0点
  • 好评度16点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-10-19 00:27
其实对CD-ROM的加解密很容易做, 我用了一个半星期做了个CD-ROM设备的lower filter, 实现了全盘加密. 目前运行很好, 支持Nero, Roxio等大部分目前流行的刻录软件. 可用来刻录audio, vedio和一般的数据CD,DVD.

建议你先看一下SCSI-2协议和Multi-Media Commands - 6 (MMC-6).
piggy
驱动牛犊
驱动牛犊
  • 注册日期2001-08-24
  • 最后登录2012-01-14
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望27点
  • 贡献值0点
  • 好评度16点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-10-19 00:47
还有就是你不用对READ_TOC解密. 注意不同的刻录软件会用不同的方法刻录. 你的FILTER中要处理SCSI_PASSTHROUGH和InternalDeviceIoControl(也就是IRP_MJ_SCSI).

好好的看看我推荐给你的两个规范
liuxingxx
驱动牛犊
驱动牛犊
  • 注册日期2007-06-12
  • 最后登录2008-11-17
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望37点
  • 贡献值0点
  • 好评度28点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-10-19 09:39
谢谢piggy
我是对SCSI_PASS_THROUGH_DIRECT和InternalDeviceIoControl进行的lowerfilter,在InternalDeviceIoControl中只对read解密时,光盘打开后是空白的
我会去看一下你推荐的两部分,也希望你能继续帮助我
再次感谢你
还有,麻烦你告诉我怎么能给你加分?


引用第2楼piggy于2007-10-19 00:47发表的  :
还有就是你不用对READ_TOC解密. 注意不同的刻录软件会用不同的方法刻录. 你的FILTER中要处理SCSI_PASSTHROUGH和InternalDeviceIoControl(也就是IRP_MJ_SCSI).

好好的看看我推荐给你的两个规范
Coder
驱动牛犊
驱动牛犊
  • 注册日期2002-11-18
  • 最后登录2011-03-09
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望34点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-11-15 22:50
在cdrom的lowerfilter中能够截获到刻录软件的write数据吗?我想实现禁止刻录功能,上次测试了好久都没有找到相应的Irp,请问,禁止哪些功能码就能禁止刻录呢?谢谢。
游客

返回顶部