在存储介质上记录数据或从其再现数据的装置和方法

文档序号:6756241阅读:177来源:国知局
专利名称:在存储介质上记录数据或从其再现数据的装置和方法
技术领域
本发明涉及一种用于将数据记录在存储介质上或从存储介质再现数据的装置,并且更具体地,涉及一种能够在提供安全性的同时使应用软件基于盘信息和设备信息执行适当操作的存储介质记录/再现方法和装置。
背景技术
通常,被开发为大容量记录媒体的光盘被分类为用于存储音乐数据的致密盘(CD)、用于存储计算机数据的CD只读存储器(CD-ROM)、以及用于存储视频数据的数字多功能盘(DVD)。
存储在诸如光盘的存储介质中的诸如视频和/或音频数据的内容的类型需要版权保护。使用加密技术可以获得这样内容的版权保护,所述的加密技术使用包括加密内容数据和用于解密所加密的内容数据的密钥信息的控制数据。例如,密钥信息还被记录在用于存储所加密的内容数据的只读光盘上。当使用再现装置从只读光盘再现所加密的内容数据时,再现装置首先再现密钥信息,然后基于所再现的密钥信息解密所加密的内容数据。
图1说明了包括传统内容保护系统的光盘系统。图1的光盘系统包括存储介质10和记录/再现装置20。通过应用软件100将数据记录在存储介质10上或从存储介质10再现数据。
记录/再现装置20是包括媒体密钥生成单元110、密钥生成单元40、加密单元50、和解密单元60的内容保护系统。记录/再现装置20还包括用于识别记录/再现装置20的设备标识符115、以及防止数据被授权的记录/再现装置非法无效(revoke)的设备密钥组116。
媒体密钥生成单元110使用从存储介质10读取的媒体密钥块111、安装在记录/再现装置中的设备标识符115和设备密钥组116生成媒体密钥118。密钥生成单元40使用所生成的媒体密钥118、从存储介质10中读取的盘标识符112、以及与存储介质10和记录/再现装置20相关的其它信息113和117来生成加密密钥41或解密密钥42。当将使用对称密钥结构作为加密/解密算法时,加密密钥41与解密密钥42是等价的。加密单元50使用加密密钥41加密用户数据119并且将所加密的用户数据119存储在存储介质10中。解密单元60解密存储在存储介质10中的用户数据114并且读取所解密的用户数据114。
用于生成加密密钥41和解密密钥42的密钥生成信息包括设备标识符115、盘标识符112、设备密钥组116、以及媒体密钥118。尽管密钥生成信息对于内容保护非常重要,但是图1的传统内容保护系统不允许应用软件100直接地访问密钥生成信息,从而保护它不受未授权用户的侵害(hack)。
因此,存在开发允许直接地访问密钥生成信息的新应用软件的强烈的需要,以便例如基于密钥生成信息加密用户口令、将用户口令记录在存储介质上、以及解密所加密的并且存储在存储介质中的信息。然而,传统内容保护系统不允许这样的新应用软件访问密钥生成信息。

发明内容
技术方案本发明提供了一种在保护密钥生成信息的同时允许应用软件访问存储在存储介质或记录/再现装置中的密钥生成信息的记录/再现装置和方法。
优点如上所述,本发明的记录/再现方法和装置在提供记录/再现装置的安全性的同时允许应用软件基于盘信息和设备信息处理数据。


图1说明了包括传统内容保护系统的光盘系统;图2说明了根据本发明的示例实施例的记录/再现装置的内部结构;图3是说明根据本发明的示例实施例使用验证单元来验证主机的方法的流程图;图4说明了根据本发明的示例实施例在主机和记录/再现装置之间的相互验证;图5是说明工作模块的操作的图;图6是说明根据本发明的示例实施例使用工作模块将用户数据记录在存储介质上的应用软件的操作的图;
图7是说明根据本发明的示例实施例使用工作模块从存储介质读取用户数据的应用软件的操作的图;以及图8是说明记录/再现数据的方法的流程图。
具体实施例方式
最优模式根据本发明的示例实施例,提供了一种用于将预定数据记录在存储介质上的装置,该装置包括验证单元,用于验证主机以证实主机是否可信,所述主机向装置发送写入命令;至少一个工作模块,用于响应于写入命令,基于存储在存储介质中的盘信息和存储在装置中的设备信息,通过处理包括在写入命令中的用户数据而生成输出信息;模块选择单元,当主机被确定为可信时,基于模块选择信息选择工作模块,并向所选择的工作模块发送写入命令,模块选择信息被包括在写入命令中并且指定工作模块;以及记录单元,其将输出信息记录在存储介质上。
根据本发明的另一示例实施例,提供了一种用于从存储介质再现预定数据的装置,该装置包括验证单元,用于验证主机以证实主机可信,所述主机向装置发送读取命令;读取单元,当确定主机可信时,其从存储介质中读取在读取命令中指示的用户数据;以及至少一个工作模块,用于基于存储在存储介质中的盘信息和存储在装置中的设备信息,通过处理所读取的用户数据而生成输出信息,并且向主机发送输出信息;以及模块选择单元,其基于模块选择信息选择工作模块,并且向所选择的工作模块发送读取命令,模块选择信息被包括在读取命令中并且指定工作模块。
根据本发明的另一示例实施例,提供了一种用于将预定数据记录在存储介质上的方法,该方法包括验证主机以证实主机是否可信,所述主机向记录装置发送写入命令;当确定主机可信时,基于模块选择信息而选择工作模块,模块选择信息被包括在写入命令中并且指定所选择的工作模块;基于存储在存储介质中的盘信息和存储在记录装置中的设备信息,响应于写入命令,通过使用所选择的工作模块处理用户数据而生成输出信息,所述用户数据被包括在写入命令中;以及将输出信息记录在存储介质上。
根据本发明的另一示例实施例,提供了一种用于从存储介质再现预定数据的方法,该方法包括验证主机以证实主机是否可信,所述主机向再现装置发送读取命令;当确定主机可信时,基于模块选择信息而选择工作模块,所述模块选择信息被包括在读取命令中并且指定工作模块;从存储介质中读取在读取命令中指示的用户数据;以及基于存储在存储介质中的盘信息和存储在再现装置中的设备信息,通过使用所选择的工作模块处理用户数据而生成输出信息。
本发明的实施例在下文中,将参考附图详细地描述本发明的示例实施例。在整个附图中,相同的参考数字表示相同的元件。
参考图2,根据本发明的示例实施例的记录/再现装置200包括密钥生成单元40、加密单元50、解密单元60、验证单元210、模块选择单元220、以及工作模块231、232、233......。盘信息11包括诸如媒体密钥块和盘标识符的信息,其分别对应于图1的媒体密钥块111和盘标识符112。设备信息21包括诸如设备标识符和设备密钥组的信息,其分别对应于图1的设备标识符115和设备密钥组116。
验证单元210验证主机30,以确定主机30是否可信并且通知主机30它是可信的。主机30可以是允许加载到主机30中的应用软件将写入/读取命令35发送到记录/再现装置200的任何类型的装置,所述写入/读取命令35指令向存储介质10中写入数据或从存储介质10中读取数据。
图3是用于说明图2的验证单元210的操作流程图,所述的验证单元210验证图2的主机30。当验证单元210从主机30接收写入/读取命令35时,验证单元210开始验证。更具体地,验证单元210从主机30接收主机标识符ID_host和主机公共密钥Key_pub_host(操作310)。在接收这样的信息之前,必须由验证授权手段(authentication authority)来验证发送主机标识符ID_host的主机30生成的主机公共密钥Key_pub_host。
然后,验证单元210确定所接收的主机标识符ID_host是否列在无效主机标识符列表中(操作320),该无效主机标识符列表包括在预定无效信息中。
如果在操作320中确定所接收的主机标识符ID_host被列在无效信息中,则验证单元210认为所连接的主机30是未授权主机,拒绝主机30的验证,并且不从主机30接收写入/读取命令35(操作380)。然而,如果在操作320中确定所接收的主机标识符ID_host未被列在无效信息中,则验证单元210执行附加验证操作330至360。在操作310和320中,只检查主机标识符ID_host是否包括在无效信息中,而在操作330至360中,确定主机标识符ID_host是否与当前所连接的主机30相关。
更具体地,当主机标识符ID_host未被列在无效信息中时,验证单元210生成设备随机号RN_dev,并且将它发给主机30(操作330)。然后,主机30使用它的专用密钥Key_pri_host加密所接收的随机号RN_dev,以获得加密的随机号E(Key_pri_host,RN_dev),并且将它发给记录/再现装置20。然后,验证单元210接收加密的随机号E(Key_pri_host,RN_dev)(操作340),并且使用在操作310所接收的主机公共密钥Key_pub_host对其进行解密,以获得解密的随机号D{E(Key_pri_host,RN_dev)}(操作350)。
然后,验证单元210将在操作350获得的解密随机号D{E(Key_pri_host,RN_dev)}与在操作330中所获得的随机号RN_dev进行比较(操作360)。使用主机公共密钥Key_pub_host来对使用主机专用密钥Key_pri_host所加密的加密随机号E(Key_pri_host,RN_dev)进行解密,并且在操作310中由验证授权手段对与主机30相关的主机公共密钥Key_pub_host进行验证。因而,验证单元210能够确定所连接的主机30是否具有主机标识符ID_host。
如果在操作360中确定解密随机号D{E(Key_pri_host,RN_dev)}与随机号RN_dev等价,则认为验证单元210确定主机30是可信的,并且记录/再现装置200从主机30接收写入/读取命令35(操作370)。否则,验证单元210确定主机30是不可信的(操作380)。
类似地,主机30可以确定记录/再现装置200是否是可信的装置,并且基于确定结果允许或拒绝记录/再现装置200的验证,从而防止应用软件被诸如非法无效装置的未授权装置访问。在这种情况下,验证单元210从记录/再现装置200接收设备标识符,并且使用操作310至380确定它是否可以被验证。
图4说明了根据本发明的示例实施例在主机30和记录/再现装置200之间的相互验证。在图4的相互验证中,同时做出对于主机30和记录/再现装置200两者的验证。
参考图4,验证单元210经由操作②、③、④、⑥、和⑦验证主机30。详细而言,主机30向验证单元210发送主机公共密钥Key_pub_host和主机标识符ID_host(操作②),验证单元210将主机标识符ID_host与无效信息进行比较(操作③),验证单元210生成设备随机号RN_dev,并且将其发送到主机30(操作④),主机30向记录/再现装置200发送加密的随机号E(Key_pri_host,RN_dev)(操作⑥),并且验证单元210解密随机号RN_dev,将其与解密的随机号D{E(Key_pri_host,RN_dev)}进行比较(操作⑦)。
同样,验证单元210经由操作①、②、④、⑤、⑧、和⑨验证记录/再现单元200。详细而言,验证单元210生成主机随机号RN_host(操作①),验证单元210向记录/再现装置200发送主机随机号RN_host(操作②),记录/再现单元200向验证单元210发送设备公共密钥Key_pub_dev和设备标识符ID_dev(操作④),验证单元210将设备标识符ID_dev与无效信息进行比较(操作⑤),记录/再现装置200加密随机号RN_host以获得加密的随机号E(Key_pri_dev,RN_host),并且将它发送到验证单元210(操作⑧),以及验证单元210解密加密的随机号E(Key_pri_dev,RN_host),并且将它与主机随机号RN_host进行比较(操作⑨)。
返回图2,在主机30和记录/再现装置200之间的相互验证之后,验证单元210响应于从主机30输入的写入/读取命令35而向模块选择单元220发送用户数据211和模块选择信息212。包括在写入/读取命令35中的用户数据211通过写入/读取命令35被记录在存储介质上或从存储介质中再现,并且模块选择信息212包括由应用软件指定的模块编号,所述应用软件指示主机30发送写入/读取命令35。
模块选择单元211基于模块选择信息212选择工作模块231、232、233......中的一个,并且使用从工作模块231、232、233......中选择的一个工作模块发送用户数据211。假定模块选择单元211选择了工作模块231。
图5是用于说明工作模块231的操作的图。参考图5,工作模块231使用盘信息11以及设备信息21处理用户数据,并且输出该处理结果作为输出信息。使用记录单元(未示出)将输出信息物理地记录在存储介质10上,或使用读取单元(未示出)从存储介质10中读取输出信息。
在写入模式下,向工作模块231发送包括在从主机30输入的写入命令中的用户数据31。尽管在图中未示出,但是沿着发送用户数据31的路径而安装验证单元210和模块选择单元220。工作模块231基于图2的盘信息11和图2的设备信息21通过处理用户数据33而生成输出信息32。可以通过记录单元将输出信息34记录在存储介质上,或通过再现单元从存储介质中读取输出信息。可以使用密钥生成单元40、加密单元50、以及解密单元60处理用户数据32。即,工作模块231响应于写入命令向密钥生成单元40发送盘信息11、设备信息21、以及用户数据33,从密钥生成单元40接收输出值,并且基于该输出值处理用户数据33。
在读取操作中,响应于从主机30输入的读取命令,从存储介质10中读取用户数据33。向工作模块231输入所读取的用户数据33,并且工作模块231基于盘信息11和设备信息21通过处理用户数据33而生成输出信息34。类似地,在写入操作中,可以使用密钥生成单元40、加密单元50、以及解密单元60处理用户数据34。
图6说明了根据本发明的示例实施例的使用工作模块231将用户数据记录在存储介质10上的应用软件100的操作。使用验证单元210的验证以及使用模块选择单元220选择工作模块231如上所述,并且因此在这里省略了它们的描述。
应用软件100对作为用户数据的例子的用户口令PW进行加密,并且将加密结果存储在存储介质10中。工作模块231从应用软件100中接收用户口令PW作为用户数据,并且将其功能值A设为PW。然后,工作模块231使用密钥生成单元40,基于包括在设备信息21中的媒体密钥Km和包括在盘信息11中的盘标识符ID_disc来生成加密密钥K。然后,工作模块231使用加密密钥K加密用户口令PW,并且生成输出信息。使用记录单元(未示出)将所加密的口令PW存储在存储介质10中。
图7是用于说明根据本发明的示例实施例的使用工作模块231从存储介质10中读取用户数据的应用软件100的操作的图。使用验证单元210的验证以及使用模块选择单元220选择工作模块231如上所述,并且因此在这里省略了它们的描述。
应用软件100从存储介质10中读取作为用户数据的另一例子的附单(coupon)标识符Coupon_ID。附单标识符Coupon_ID被加密并且被存储在存储介质10中。读取单元(未示出)从存储介质10中读取所加密的附单标识符E(K,Coupon_ID),并且将其发送到工作模块231。接下来,工作模块231将它的功能值A设置为Coupon_ID。然后,工作模块231使用密钥生成单元40,基于媒体密钥Km和盘标识符ID_disc生成解密密钥K。同样,工作模块231使用解密密钥K通过解密所加密的附单标识符E(K,Coupon_ID)而生成输出信息。经由主机30向应用软件100发送所解密的附单标识符Coupon ID。
图8是用于说明根据本发明的示例实施例的记录/再现数据的方法的流程图。参考图8,应用软件100生成用于指令用户数据将被记录在存储介质10上或将从存储介质10中再现的写入/读取命令(操作810)。写入/读取命令包括指定要被选择的工作模块231的模块选择信息。
然后,经由主机30向记录/再现装置200发送写入/读取命令(操作820)。
然后,包括在记录/再现装置200中的验证单元210执行主机30与记录/再现装置200之间的相互验证(操作830)。通过相互验证,确认主机30和记录/再现装置200是否是可信的。
然后,模块选择单元220基于模块选择信息选择工作模块231,并且响应于写入/读取命令发送用户数据(操作840)。
然后,工作模块231接收用户数据、处理它、并且生成输出信息(操作850)。当向工作模块231输入读取命令时,从存储介质10中读取用户数据,并且将其发送到工作模块231。当向工作模块231输入写入命令时,向工作模块231发送用户数据。这里,使用存储在记录/再现装置200中的设备信息和存储在存储介质10中的盘信息来处理用户数据。
输出信息被记录在存储介质10上,或被发送到主机30(操作860)。
虽然已参考其示例实施例具体示出和描述了本发明,但是本领域的技术人员将理解,在没有背离由所附权利要求书所定义的本发明的精神和范围的情况下,可以在形式和细节上做出各种改变。
权利要求
1.一种用于将预定数据记录在存储介质上的装置,该装置包括验证主机的验证单元,用于验证所述主机是否可信,所述主机向所述装置发送写入命令;至少一个工作模块,其响应于写入命令,基于存储在存储介质中的盘信息和存储在所述装置中的设备信息,通过处理包括在写入命令中的用户数据而生成输出信息;模块选择单元,其基于模块选择信息选择工作模块,并且向工作模块发送写入命令,如果主机被确定为是可信的,则所述模块选择信息被包括在写入命令中并且指定工作模块;以及记录单元,其将输出信息记录在存储介质上。
2.如权利要求1所述的装置,其中,所述盘信息包括使能识别存储介质的盘标识符和防止所述装置被非法无效的媒体密钥块。
3.如权利要求1所述的装置,其中,所述设备信息包括使能识别该装置的设备标识符、向该装置提供的用于防止该装置被非法无效的设备密钥组、以及基于媒体密钥块和设备密钥组所生成的并存储在该装置中的媒体密钥。
4.如权利要求1所述的装置,还包括加密密钥生成单元,其使用存储在存储介质中的盘信息和存储在所述装置中的设备信息生成加密密钥;以及加密单元,其使用加密密钥对从主机输入的数据进行加密,其中,所述工作模块使用加密密钥生成单元和加密单元所生成的输出值生成输出信息。
5.如权利要求4所述的装置,其中,所述工作模块使用加密单元加密来自于主机的数据。
6.如权利要求1所述的装置,其中,所述验证单元通过将用于识别主机的从主机发送的主机标识符与列出无效主机标识符的预定无效信息进行比较而验证主机。
7.如权利要求6所述的装置,其中,所述验证单元从主机接收主机标识符与主机公共密钥,并且通过验证授权手段验证由主机生成的主机标识符和主机公共密钥。
8.如权利要求7所述的装置,其中,所述验证单元验证主机是通过生成并向主机发送设备随机号;从主机接收加密的随机号,其由主机使用与主机公共密钥对应的专用密钥加密;使用主机公共密钥解密所加密的随机号;以及确定所解密的随机号是否与设备随机号等价。
9.一种用于从存储介质中再现预定数据的装置,该装置包括验证主机的验证单元,用于验证该主机是否可信,所述主机向所述装置发送读取命令;读取单元,当确定主机被确定为是可信的时,其从存储介质中读取在读取命令中指示的用户数据;以及至少一个工作模块,其基于存储在存储介质中的盘信息和存储在所述装置中的设备信息,通过处理从存储介质所读取的用户数据而生成输出信息,并且向主机发送该输出信息;以及模块选择单元,其基于模块选择信息选择工作模块,并且向工作模块发送读取命令,所述模块选择信息被包括在读命令中并且指定工作模块。
10.如权利要求9所述的装置,其中,所述盘信息包括使能识别存储介质的盘标识符和防止装置被非法无效的媒体密钥块。
11.如权利要求9所述的装置,其中,所述设备信息包括使能识别该装置的设备标识符、防止该装置被非法无效的设备密钥组、以及基于媒体密钥块和设备密钥组所生成的媒体密钥。
12.如权利要求9所述的装置,还包括加密密钥生成单元,其使用存储在存储介质中的盘信息和存储在所述装置中的设备信息生成加密密钥;以及加密单元,其使用加密密钥加密从主机输入的数据,其中,所述工作模块使用加密密钥生成单元以及加密单元所生成的输出值生成输出信息。
13.如权利要求12所述的装置,其中,所述工作模块使用加密单元加密用户数据。
14.如权利要求9所述的装置,其中,所述验证单元通过将用于识别主机的从主机发送的主机标识符与列出无效主机标识符的预定无效信息进行比较而验证主机。
15.如权利要求14所述的装置,其中,所述验证单元从主机接收主机标识符与主机公共密钥,并且通过验证授权手段来验证由主机生成的主机标识符和主机公共密钥。
16.如权利要求15所述的装置,其中,所述验证单元验证主机是通过生成并向主机发送设备随机号;从主机接收加密的随机号,其由主机使用与主机公共密钥对应的专用密钥加密;使用主机公共密钥解密所加密的随机号;以及确定所解密的随机号是否与设备随机号等价。
17.一种用于将预定数据记录在存储介质上的方法,该方法包括验证主机以验证主机是否可信,所述主机向记录装置发送写入命令;如果确定主机可信,则基于模块选择信息选择工作模块,所述模块选择信息被包括在写入命令中并且指定工作模块;基于存储在存储介质中的盘信息和存储在记录装置中的设备信息,响应于写入命令,通过使用工作模块处理用户数据而生成输出信息,所述用户数据被包括在写入命令中,以及将输出信息记录在存储介质上。
18.如权利要求17所述的方法,其中,所述盘信息包括使能识别存储介质的盘标识符以及防止记录装置被非法无效的媒体密钥块。
19.如权利要求17所述的方法,其中,所述设备信息包括使能识别记录装置的设备标识符、防止记录装置被非法无效的设备密钥组、以及基于媒体密钥块和设备密钥组所生成的并存储在记录装置的媒体密钥。
20.如权利要求17所述的方法,其中,所述生成输出信息包括使用存储在存储介质中的盘信息和存储在记录装置中的设备信息生成加密密钥;并且使用加密密钥加密从主机输入的数据。
21.如权利要求17所述的方法,其中,所述验证主机包括将列出无效主机标识符的预定无效信息与用于识别主机的从主机发送的主机标识符进行比较。
22.如权利要求21所述的方法,其中,所述主机标识符与主机公共密钥一起被发送,并且通过验证授权手段来验证由主机生成的主机标识符和主机公共密钥。
23.如权利要求21所述的方法,其中,所述验证主机包括向主机发送由记录装置生成的设备随机号以及使能识别记录装置的设备标识符;使用主机公共密钥解密设备随机号,所述设备随机号是由主机使用与主机公共密钥对应的专用密钥加密的;并且确定所加密的设备随机号是否与设备随机号等价。
24.一种用于从存储介质中再现预定数据的方法,该方法包括验证主机以验证主机是否可信,所述主机向再现装置发送读取命令;当确定主机为可信时,基于模块选择信息选择工作模块,所述模块选择信息被包括在读命令中并且指定工作模块;从存储介质中读取在读取命令中指示的用户数据;以及基于存储在存储介质中的盘信息和存储在再现装置中的设备信息,通过使用所选择的工作模块处理用户数据而生成输出信息。
25.如权利要求24所述的方法,其中,所述盘信息包括使能识别存储介质的盘标识符以及防止记录装置被非法无效的媒体密钥块。
26.如权利要求24所述的方法,其中,所述设备信息包括使能识别再现装置的设备标识符、防止再现装置被非法无效的设备密钥组、以及基于媒体密钥块和设备密钥组所生成的并存储在再现装置中的媒体密钥。
27.如权利要求24所述的方法,其中,所述生成输出信息包括基于存储在存储介质中的盘信息和存储在再现装置中的设备信息生成解密密钥;并且使用加密密钥解密用户数据。
28.如权利要求24所述的方法,其中,验证主机包括将列出无效主机标识符的预定无效信息与用于识别主机的、从主机发送的主机标识符进行比较。
29.如权利要求27所述的方法,其中,所述主机标识符与所述主机公共密钥一起被发送,并且通过验证授权手段来验证由主机生成的主机标识符和主机公共密钥。
30.如权利要求29所述的方法,其中,所述验证主机包括向主机发送由再现装置生成的设备随机号以及使能识别再现装置的设备标识符;使用主机公共密钥解密设备随机号,所述设备随机号是由主机使用与主机公共密钥对应的专用密钥加密的;并且确定所解密的随机号是否与设备随机号等价。
全文摘要
提供了一种用于将数据记录在存储介质上和/或从存储介质中再现数据的方法和装置。所述记录装置包括验证单元,用于验证主机以证实主机是否可信,所述主机向装置发送写入命令;至少一个工作模块,用于响应于写入命令,基于存储在存储介质中的盘信息和存储在装置中的设备信息,通过处理包括在写入命令中的用户数据而生成输出信息;模块选择单元,当主机被确定为可信时,其基于模块选择信息选择工作模块,并向所选择的工作模块发送写入命令,模块选择信息被包括在写入命令中并且指定工作模块;以及记录单元,其将输出信息记录在存储介质上。
文档编号G11B20/00GK1914680SQ200480041214
公开日2007年2月14日 申请日期2004年12月22日 优先权日2003年12月24日
发明者韩声休, 金润相, 崔良林, 刘容国, 韩熙喆 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1