阅读:1890回复:4
CDROM刻录加、解密遇到的问题
首先,请大家告诉我怎么给分,我找不到帖子上的“管理”。谢谢
进入主题: 本人在研究对光盘刻录进行加解密,经过调测发现,在scsiop_write处直接进行加密操作,会导致整个光盘全盘加密,然而读盘时对_read,read_toc解密后,读盘时显示为空 。自己觉得如果在以下方面改进会更好,但能力有限,希望大家帮忙: 1、如果在write时可以确定数据区的偏移量,读盘时是否只需要对read作complete即可?请问如何确定这两部分数据区的偏移量?如果是偏移扇区的话,如何获取每扇区字节数? 2、如果仍然坚持全盘加密,请问读盘时还需要对那些scsi指令进行数据恢复操作? 此外,对于一些STRUCT,哪里能找到对其参数的定义,我只得是参数的具体意义? for example: STRUCT SCSI_REQUEST_BLOCK 中的 UCHAR Cdb[16],每一位都是什么意思,可以直接使用CDB10或CDB6之类的结构体套用马? 谢谢! |
|
沙发#
发布于: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). |
|
板凳#
发布于:2007-10-19 00:47
还有就是你不用对READ_TOC解密. 注意不同的刻录软件会用不同的方法刻录. 你的FILTER中要处理SCSI_PASSTHROUGH和InternalDeviceIoControl(也就是IRP_MJ_SCSI).
好好的看看我推荐给你的两个规范 |
|
地板#
发布于:2007-10-19 09:39
谢谢piggy
我是对SCSI_PASS_THROUGH_DIRECT和InternalDeviceIoControl进行的lowerfilter,在InternalDeviceIoControl中只对read解密时,光盘打开后是空白的 我会去看一下你推荐的两部分,也希望你能继续帮助我 再次感谢你 还有,麻烦你告诉我怎么能给你加分? 引用第2楼piggy于2007-10-19 00:47发表的 : |
|
地下室#
发布于:2007-11-15 22:50
在cdrom的lowerfilter中能够截获到刻录软件的write数据吗?我想实现禁止刻录功能,上次测试了好久都没有找到相应的Irp,请问,禁止哪些功能码就能禁止刻录呢?谢谢。
|
|