CN101458946B - 信息处理装置、盘、信息处理方法和程序 - Google Patents
信息处理装置、盘、信息处理方法和程序 Download PDFInfo
- Publication number
- CN101458946B CN101458946B CN2008101846303A CN200810184630A CN101458946B CN 101458946 B CN101458946 B CN 101458946B CN 2008101846303 A CN2008101846303 A CN 2008101846303A CN 200810184630 A CN200810184630 A CN 200810184630A CN 101458946 B CN101458946 B CN 101458946B
- Authority
- CN
- China
- Prior art keywords
- driver
- district
- group
- programming interface
- dish
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00094—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers
- G11B20/00115—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers wherein the record carrier stores a unique medium identifier
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0021—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0021—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
- G11B20/00217—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
- G11B20/00253—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier
- G11B20/0026—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier the key being stored as a barcode
- G11B20/00268—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier the key being stored as a barcode said barcode being recorded in a burst cutting area [BCA]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0021—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
- G11B20/0042—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the copy protection scheme being related to a specific access protection standard
- G11B20/00427—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the copy protection scheme being related to a specific access protection standard advanced access content system [AACS]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00855—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a step of exchanging information with a remote server
- G11B20/00862—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a step of exchanging information with a remote server wherein the remote server can grant the permission to use a content
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B2020/10833—Copying or moving data from one record carrier to another
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
- G11B2220/25—Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
- G11B2220/2537—Optical discs
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及信息处理装置、盘、信息处理方法和程序。提供了一种使用记录在盘中的内容的信息处理装置,该装置包括:应用程序执行单元,用于执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及BCA(群刻区)驱动程序执行单元,用于执行BCA驱动程序,该BCA驱动程序是用于指示驱动装置执行读取在盘的BCA区域中记录的介质ID的处理的程序,其中,BCA驱动程序执行单元响应于来自应用程序执行单元的第一API(应用编程接口)调用,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二API的指针的处理。
Description
相关申请的交叉引用
本发明包含于2007年12月14提交到日本专利局的日本专利申请JP2007-323510的主题,通过引用将该申请的全部内容纳入于此。
技术领域
本发明涉及一种信息处理装置、盘、信息处理方法和程序。更具体地讲,本发明涉及一种控制对存储在信息记录介质中的内容的访问的信息处理装置、盘、信息处理方法和程序。
背景技术
诸如DVD(数字多功能盘)和蓝光盘(注册商标)的盘被用作内容记录介质。例如,电影内容等被记录在盘(例如,ROM盘)中并且提供给用户。这些盘记录的内容大部分是其版权、发行权等由创作者或发行人所拥有的内容。这些内容受到访问控制,用于例如防止未授权拷贝(复制)等。
内容版权保护的标准之一是AACS(Advanced Access ContentSystem,高级访问内容系统)。AACS定义了基于高级公共密钥密码术(AES密码术)的版权保护技术。在AACS的定义中,当执行例如从盘再现内容的内容访问处理或内容拷贝记录处理时,需要读取记录在盘中的识别信息,例如作为盘唯一识别信息(介质ID)的PMSN(预记录介质序列号),并且根据在AACS中定义的序列执行诸如认证处理或加密处理的处理。针对根据AACS定义的内容存储盘,作为盘唯一识别信息的PMSN被记录在盘的BCA(BurstCutting Area,群刻区)中。
BCA区域与正常的数据记录区域不同,数据是通过与正常数据记录模式不同的机械切割记录的。因此,难以在BCA区域中重写入记录数据。同样在再现处理中,需要一种与正常数据再现处理不同的特殊读取处理。
图1是示出在记录有内容的盘(信息记录介质)100中的记录数据的视图。盘100例如是DVD(数字多功能盘)、蓝光盘(注册商标)等,并且诸如电影的内容被记录在数据记录区域中。
盘100包括数据记录区域110和BCA区域(群刻区)120,其中,在该记录区域110中记录内容等,在该BCA区域(群刻区)120中记录作为盘唯一识别信息的介质ID(例如,PMSN:预记录介质序列号)121。
例如,下面的数据被记录在盘100的数据记录区域110中。例如,记录的数据包括:诸如电影的内容111;应用程序112,其是用于执行诸如再现或拷贝内容的处理的内容访问控制的程序;和BCA驱动程序113,其是用于执行从BCA区域120读取介质ID的处理的程序。要注意,BCA驱动程序113与从该盘读取数据的驱动装置执行认证处理从而验证驱动装置的合法性,并且仅当驱动装置的合法性得到验证时,BCA驱动程序113才指示驱动装置读取介质ID(PMSN)。BCA驱动程序包含在认证处理中使用的密钥114。
作为盘唯一识别信息的介质ID(PMSN)121被记录在盘100的BCA区域120中。如上所述,BCA区域与正常数据记录区域不同,并且数据是通过与正常数据记录模式不同的机械切割记录的。因此,难以在BCA区域中重写入记录数据。同样在再现处理中,需要一种与正常数据再现处理不同的特殊读取处理。
根据AACS的一个定义,当将记录在盘记录区域110中的内容111拷贝到诸如硬盘或便携式装置的另一个介质时,需要从外部管理服务器获取拷贝许可信息。为了获取拷贝许可信息,需要将介质ID121发送给管理服务器。
然而,可以仅仅由符合AACS定义的BCA驱动程序113执行从BCA区域120读取介质ID121的处理。BCA驱动程序113根据AACS定义,与装载了盘100的驱动装置执行相互认证,验证驱动装置和BCA驱动程序两者的合法性,读取介质ID121,然后将获取的介质ID提供给应用程序。
将参照图2描述这个处理序列的例子。图2示出了应用程序112和BCA驱动程序113。诸如用于再现盘的PC或再现装置的信息处理装置从盘100读取并执行应用程序112和BCA驱动程序113。
要注意,BCA驱动程序113是根据AACS定义产生的程序,并且执行根据AACS定义的认证处理以及来自BCA区域的介质ID的读取。另一方面,应用程序112是可由第三方任意创建的程序。因此,应用程序112可能是恶意程序,例如为了骗取介质ID信息而产生的程序。
应用程序112从BCA驱动程序113调用API(应用编程接口)。该API包括要求BCA驱动程序获取介质ID的函数。该API是公开的并且可由第三方使用。
在步骤S11中,BCA驱动程序113响应于来自应用程序112的API调用而启动提供介质ID的处理的一系列处理。首先,在步骤S12中,BCA驱动程序113与从盘读取数据的驱动装置执行认证处理,以检查驱动装置和BCA驱动程序的合法性。根据AACS定义执行认证处理。
在步骤S13中,当没有得到认证并且双方的合法性没有得到验证时,向应用程序112发送错误通知,并且该处理结束而不读取介质ID。
另一方面,在步骤S13中,当得到认证并且双方的合法性得到验证时,在步骤S14中,指示驱动装置从BCA区域读取介质ID,并且该读取的介质ID被提供给应用程序112。
然后,应用程序112将从BCA驱动程序113获取的介质ID发送给管理服务器,然后接收内容拷贝许可信息或其它服务信息。
在以上的一系列处理中,存在如下问题:应用程序112是可由第三方任意创建的程序并且它可能是诸如为骗取介质ID信息而产生的程序的恶意程序。在图2所示的序列中,即使当使用恶意应用程序时,利用公开的API也能够容易地从BCA驱动程序获取介质ID。因此,存在介质ID会被骗取或者可以利用骗取的介质ID欺骗性地使用内容的可能性。
发明内容
需要提供一种防止盘的介质ID被骗取并且实现对内容的严格访问控制的信息处理装置、盘、信息处理方法和程序。
根据本发明的第一实施例,提供了一种信息处理装置,其使用记录在盘中的内容,所述信息处理装置包括:应用程序执行单元,用于执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及BCA(群刻区)驱动程序执行单元,用于执行BCA驱动程序,该BCA驱动程序是用于指示驱动装置执行读取在盘的BCA区域中记录的介质ID的处理的程序,其中,所述BCA驱动程序执行单元响应于来自所述应用程序执行单元的第一API(应用编程接口)调用,对所述BCA驱动程序执行篡改校验处理,并且当验证了在所述BCA驱动程序中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二API的指针的处理。
在根据本发明一个实施例的信息处理装置中,第一API是对第三方公开的公开API,并且第二API是对第三方不公开的私有API。
在根据本发明一个实施例的信息处理装置中,所述BCA驱动程序执行单元响应于来自所述应用程序的第二API调用,与所述驱动装置执行认证处理,并且当验证了所述BCA驱动程序和所述驱动装置的相互的合法性时,指示所述驱动装置读取所述介质ID。
在根据本发明一个实施例的信息处理装置中,所述BCA驱动程序执行单元响应于来自所述应用程序的第二API调用,对所述BCA驱动程序执行篡改校验处理,并且当验证了在所述BCA驱动程序中不存在篡改时,与所述驱动装置执行认证处理。
在根据本发明一个实施例的信息处理装置中,每当所述BCA驱动程序执行一个步骤时,所述BCA驱动程序执行单元对所述BCA驱动程序执行篡改校验处理。
在根据本发明一个实施例的信息处理装置中,所述BCA驱动程序执行单元执行向所述应用程序执行单元提供混合了伪指针和指向所述第二API的指针的数据的处理。
在根据本发明一个实施例的信息处理装置中,所述应用程序和所述BCA驱动程序被记录在盘中,并且所述应用程序执行单元和所述BCA驱动程序执行单元分别读取和执行记录在盘中的所述应用程序和所述BCA驱动程序。
根据本发明的第二实施例,提供了一种信息处理装置,其使用记录在盘中的内容,所述信息处理装置包括:应用程序执行单元,用于执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及BCA(群刻区)驱动程序执行单元,用于执行BCA驱动程序,该BCA驱动程序是用于指示驱动装置执行读取在盘的BCA区域中记录的介质ID的处理的程序,其中,所述BCA驱动程序包括篡改校验数据,并且其中,所述BCA驱动程序执行单元响应于来自所述应用程序执行单元的第一API(应用编程接口)调用,通过应用所述篡改校验数据对所述BCA驱动程序执行篡改校验处理,并且当验证了在所述BCA驱动程序中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二API的指针的处理。
根据本发明的第三实施例,提供了一种信息处理装置,其使用记录在盘中的内容,所述信息处理装置包括:应用程序执行单元,用于执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及BCA(群刻区)驱动程序执行单元,用于执行BCA驱动程序,该BCA驱动程序是用于指示驱动装置执行读取在盘的BCA区域中记录的介质ID的处理的程序,其中,所述BCA驱动程序包括通过以预定数据单位将构成所述BCA驱动程序的数据的数值相加而获得的、作为篡改校验数据的校验和数据,并且其中,所述BCA驱动程序执行单元响应于来自所述应用程序执行单元的第一API(应用编程接口)调用,通过应用所述校验和数据对所述BCA驱动程序执行篡改校验处理,并且当验证了在所述BCA驱动程序中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二API的指针的处理。
根据本发明的第四实施例,提供了一种信息处理装置,其使用记录在盘中的内容,所述信息处理装置包括:应用程序执行单元,用于执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及BCA(群刻区)驱动程序执行单元,用于执行BCA驱动程序,该BCA驱动程序是用于指示驱动装置执行读取在盘的BCA区域中记录的介质ID的处理的程序,其中,所述BCA驱动程序包括篡改校验数据和所述篡改校验数据的哈希值,并且其中,所述BCA驱动程序执行单元响应于来自所述应用程序执行单元的第一API(应用编程接口)调用,通过应用所述篡改校验数据对所述BCA驱动程序执行篡改校验处理,并且通过应用所述哈希值对所述篡改校验数据执行篡改校验处理,并且当验证了在所述BCA驱动程序中不存在篡改并且在所述篡改校验数据中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二API的指针的处理。
根据本发明的第五实施例,提供了一种信息处理装置,其使用记录在盘中的内容,所述信息处理装置包括:应用程序执行单元,用于执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及BCA(群刻区)驱动程序执行单元,用于执行BCA驱动程序,该BCA驱动程序是用于指示驱动装置执行读取在盘的BCA区域中记录的介质ID的处理的程序,其中,所述BCA驱动程序执行单元响应于来自所述应用程序执行单元的第一API(应用编程接口)调用,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二API的指针的处理。
根据本发明的第六实施例,提供了一种盘,包括:内容;应用程序,其是用于利用所述内容的程序;介质ID,其记录在设置在盘中的BCA(群刻区)区域中;以及BCA驱动程序,包括用于指示驱动装置执行读取所述介质ID的处理的程序、该程序的篡改校验数据和所述应用程序能够访问的API,其中,在利用所述内容的信息处理装置中,所述BCA驱动程序响应于来自所述应用程序的第一API(应用编程接口)调用,对应用了所述篡改校验数据的BCA驱动程序执行篡改校验,并且当验证了不存在篡改时,执行向所述应用程序提供指向用于执行所述介质ID的读取的第二API的指针的处理。
在根据本发明一个实施例的盘中,第一API是对第三方公开的公开API,并且第二API是对第三方不公开的私有API。
根据本发明的第七实施例,提供了一种在利用记录在盘中的内容的信息处理装置中执行的信息处理方法,包括如下步骤:由应用程序执行单元执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及由BCA(群刻区)驱动程序执行单元执行BCA驱动程序,该BCA驱动程序是用于指示驱动装置执行读取在盘的BCA区域中记录的介质ID的处理的程序,其中,当所述BCA驱动程序被执行时,响应于来自所述应用程序执行单元的第一API(应用编程接口)调用,对所述BCA驱动程序执行篡改校验处理,并且当验证了在所述BCA驱动程序中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二API的指针的处理。
在根据本发明一个实施例的信息处理方法中,第一API是对第三方公开的公开API,并且第二API是对第三方不公开的私有API。
在根据本发明一个实施例的信息处理方法中,当所述BCA驱动程序被执行时,响应于来自所述应用程序的第二API调用,与所述驱动装置执行认证处理,并且当验证了所述BCA驱动程序和所述驱动装置的相互的合法性时,指示所述驱动装置读取所述介质ID。
在根据本发明一个实施例的信息处理方法中,当所述BCA驱动程序被执行时,响应于来自所述应用程序的第二API调用,对所述BCA驱动程序执行篡改校验处理,并且当验证了在所述BCA驱动程序中不存在篡改时,与所述驱动装置执行认证处理。
在根据本发明一个实施例的信息处理方法中,当所述BCA驱动程序被执行时,每当所述BCA驱动程序执行一个步骤时,对所述BCA驱动程序执行篡改校验处理。
在根据本发明一个实施例的信息处理方法中,当所述BCA驱动程序被执行时,执行向所述应用程序执行单元提供混合了伪指针和指向所述第二API的指针的数据的处理。
根据本发明的第八实施例,提供了一种在利用记录在盘中的内容的信息处理装置中执行的信息处理方法,包括如下步骤:由应用程序执行单元执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及由BCA(群刻区)驱动程序执行单元执行BCA驱动程序,该BCA驱动程序是用于指示驱动装置执行读取在盘的BCA区域中记录的介质ID的处理的程序,其中,所述BCA驱动程序包括篡改校验数据,并且其中,当所述BCA驱动程序被执行时,响应于来自所述应用程序执行单元的第一API(应用编程接口)调用,通过应用所述篡改校验数据对所述BCA驱动程序执行篡改校验处理,并且当验证了在所述BCA驱动程序中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二API的指针的处理。
根据本发明的第九实施例,提供了一种在利用记录在盘中的内容的信息处理装置中执行的信息处理方法,包括如下步骤:由应用程序执行单元执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及由BCA(群刻区)驱动程序执行单元执行BCA驱动程序,该BCA驱动程序是用于指示驱动装置执行读取在盘的BCA区域中记录的介质ID的处理的程序,其中,所述BCA驱动程序包括通过以预定数据单位将构成所述BCA驱动程序的数据的数值相加而获得的、作为篡改校验数据的校验和数据,并且其中,当所述BCA驱动程序被执行时,响应于来自所述应用程序执行单元的第一API(应用编程接口)调用,通过应用所述校验和数据对所述BCA驱动程序执行篡改校验处理,并且当验证了在所述BCA驱动程序中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二API的指针的处理。
根据本发明的第十实施例,提供了一种在利用记录在盘中的内容的信息处理装置中执行的信息处理方法,包括如下步骤:由应用程序执行单元执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及由BCA(群刻区)驱动程序执行单元执行BCA驱动程序,该BCA驱动程序是用于指示驱动装置执行读取在盘的BCA区域中记录的介质ID的处理的程序,其中,所述BCA驱动程序包括篡改校验数据和所述篡改校验数据的哈希值,并且其中,当所述BCA驱动程序被执行时,响应于来自所述应用程序执行单元的第一API(应用编程接口)调用,通过应用所述篡改校验数据对所述BCA驱动程序执行篡改校验处理,并且通过应用所述哈希值对所述篡改校验数据执行篡改校验处理,并且当验证了在所述BCA驱动程序中不存在篡改并且在所述篡改校验数据中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二API的指针的处理。
根据本发明的第十一实施例,提供了一种在利用记录在盘中的内容的信息处理装置中执行的信息处理方法,包括如下步骤:由应用程序执行单元执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及由BCA(群刻区)驱动程序执行单元执行BCA驱动程序,该BCA驱动程序是用于指示驱动装置执行读取在盘的BCA区域中记录的介质ID的处理的程序,其中,当所述BCA驱动程序被执行时,响应于来自所述应用程序执行单元的第一API(应用编程接口)调用,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二API的指针的处理。
根据本发明的第十二实施例,提供了一种程序,用于在利用记录在盘中的内容的信息处理装置中执行信息处理,所述程序包括如下步骤:由应用程序执行单元执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及由BCA(群刻区)驱动程序执行单元执行BCA驱动程序,该BCA驱动程序是用于指示驱动装置执行读取在盘中设置的BCA区域中记录的介质ID的处理的程序,其中,当所述BCA驱动程序被执行时,响应于来自所述应用程序执行单元的第一API(应用编程接口)调用,对所述BCA驱动程序执行篡改校验处理,并且当验证了在所述BCA驱动程序中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二API的指针的处理。
要注意,根据本发明实施例的程序例如可以通过记录介质或通信介质以计算机可读格式提供给能够执行各种程序代码的通用系统。通过提供计算机可读格式的上述程序,可以在计算机系统上执行根据这些程序的处理。
基于本发明实施例和附图进行更加详细的描述,本发明的其它方面、特征和优点将变得清楚。要注意,本说明书中的系统是多个装置的逻辑集成结构,并且不限于每个结构的装置置于同一壳体内的系统。
附图说明
图1是示出记录在盘中的数据的例子的图;
图2是示出读取记录在盘中的介质ID的序列的图;
图3是示出制造盘的处理和访问盘的处理的概要的图;
图4是示出记录在根据本发明实施例的盘中的数据的例子的图;
图5是示出记录在盘中的介质ID的读取和访问处理序列的图;
图6是示出读取记录在盘中的介质ID的处理序列的图;
图7是示出根据本发明实施例的应用程序与BCA驱动程序之间的处理序列的图;
图8是示出根据本发明实施例的BCA驱动程序的篡改校验数据的设置结构的图;
图9是示出根据本发明实施例的BCA驱动程序的篡改校验序列的图;
图10是示出根据本发明实施例的BCA驱动程序的篡改校验数据的设置结构的图;
图11是示出从BCA驱动程序提供给应用程序的混合了私有API指针和伪指针的数据的例子的图;以及
图12是示出根据本发明实施例的应用程序与BCA驱动程序之间的处理序列的流程图。
具体实施方式
在下文中,将参照附图更加详细地描述根据本发明的实施例的信息处理装置、盘、信息处理方法和程序。
首先,将参照图3描述记录有作为盘唯一识别信息的介质ID(PMSN:预记录介质序列号)的盘的制造以及访问处理的概要。
在创作工作室130中初始创建诸如电影的要记录在盘中的内容,作为用于盘记录的创作内容。然后,在盘工厂140中,执行预主录(pre-mastering)处理(S101),该预主录处理(S101)是产生用于盘记录的数据的处理,例如根据AACS定义的内容加密处理。然后,执行主录处理(S102),该主录处理(S102)是基于记录在盘中的数据的母盘生产处理,然后利用生产的母盘生产大量的盘,也就是说,执行复制处理(S103)。
当通过复制处理生产盘时,对于每个盘而言唯一的识别信息(即介质ID(PMSN))被记录在每个盘的BCA区域中。例如,由16字节×4块即64字节数据形成的介质ID被记录在每个盘的BCA区域中。
如上所述,BCA区域与正常数据记录区域不同,数据是通过与正常数据记录模式不同的机械切割记录的。因此,难以将记录数据重写入BCA区域中。同样在再现处理中,需要一种与正常数据再现处理不同的特殊读取处理。
用户购买按以上方式生产的盘200,将它放置在诸如用户的PC或再现装置的信息处理装置160中,然后对盘200进行诸如再现内容或拷贝内容的内容访问处理。为了拷贝内容,需要将记录在盘中的介质ID发送到管理服务器170(S151),并且从管理服务器170获取诸如拷贝许可信息的访问许可信息(S152)。此外,同样当从管理服务器170接收另一个服务时,会被要求向管理服务器170发送介质ID。
将参照图4描述根据本发明的实施例的盘的结构的例子。图4是示出在记录有内容的盘(信息记录介质)200中记录的数据的视图。盘200例如是DVD(数字多功能盘)、蓝光盘(注册商标)等等,并且诸如电影的内容被记录在数据记录区域中。
盘200包括数据记录区域210和BCA区域(群刻区)220,其中,在该数据记录区域210中记录了内容等,在该BCA区域(群刻区)220中记录了作为盘唯一识别信息的介质ID221(例如,PMSN:预记录介质序列号)。
例如,下面的数据被记录在盘200的数据记录区域210中。例如,记录的数据包括:诸如电影的内容211;应用程序212,其是用于执行诸如再现或拷贝内容的处理的内容访问控制的程序;和BCA驱动程序213,其是用于执行从BCA区域220读取介质ID的处理的程序。要注意,BCA驱动程序213与从该盘读取数据的驱动装置执行认证处理从而检查驱动装置的合法性,并且仅当驱动装置的合法性得到验证时,BCA驱动程序213才指示驱动装置读取介质ID(PMSN)。BCA驱动程序包含在认证处理中使用的密钥214。要注意,篡改校验数据被加入到记录在根据本发明的实施例的盘200中的BCA驱动程序213。将在以后描述访问该数据的处理。
另外,作为盘唯一识别信息的介质ID(PMSN)221被记录在盘200的BCA区域220中。
接下来,将参照图5描述将记录在盘200中的内容拷贝到例如信息处理装置的硬盘或者外部便携式装置的另一个装置的处理序列。
在步骤S201中,用户启动诸如PC或再现装置的放置有盘200的信息处理装置160,并且运行用于执行再现内容的处理或者拷贝内容的处理的应用程序212。然后,当用户向应用程序212输入拷贝请求时,应用程序212请求BCA驱动程序213获取介质ID。
在步骤S202中,从应用程序212接收到获取介质ID的请求的BCA驱动程序执行与驱动装置300的认证处理。要注意,驱动装置300可以与信息处理装置160形成为一体,或者可以独立形成并且经由USB线缆等连接到信息处理装置160。根据AACS定义执行步骤S202中的认证处理。认证处理利用包括在BCA驱动程序213中的密钥214和包括在驱动装置300中的密钥301。将在以后描述该处理的细节。
当通过根据AACS定义的认证验证了BCA驱动程序213和驱动装置300的合法性时,BCA驱动程序213指示驱动装置300从BCA区域读取介质ID由此获取介质ID。在步骤S203中,BCA驱动程序213向应用程序212提供介质ID。
在步骤S204中,应用程序212将从BCA驱动程序213接收到的介质ID发送给管理服务器170。在步骤S205中,管理服务器170响应于介质ID的接收,将诸如拷贝许可信息的访问许可信息发送给信息处理装置160。
在步骤S206中,当从管理服务器170接收到拷贝许可信息时,应用程序212可以将存储在盘200中的内容拷贝到外部装置350。
在图6所示的序列中简单描述了应用程序从BCA驱动程序获取介质ID的一系列处理。图6示出了(1)应用程序212,(2)BCA驱动程序213和(3)驱动装置300。在诸如PC或再现装置的信息处理装置上执行应用程序212和BCA驱动程序213。BCA驱动程序213包括执行根据AACS定义的认证处理的AACS认证模块215,并且还包括用于认证处理的密钥214。驱动装置300还包括用于认证处理的密钥301。
在步骤S301中,应用程序212向BCA驱动程序213请求介质ID。接下来,在步骤S302中,BCA驱动程序213利用AACS认证模块与驱动装置300执行认证处理。在根据AACS定义的序列中执行以上认证处理。
当没有得到认证时,该处理在此中断。当得到认证并且BCA驱动程序213和驱动装置300的合法性得到验证时,接下来,在步骤S303中,驱动装置300从盘200的BCA区域读取介质ID,并且在步骤S304中,向BCA驱动程序213提供读取的介质ID。在步骤S305中,BCA驱动程序213向应用程序212提供介质ID。
接下来,将参照图7描述根据本发明实施例的应用程序与BCA驱动程序之间的处理序列,即,响应于来自应用程序的请求BCA驱动程序获取介质ID并且向应用程序提供介质ID的序列。
图7示出了应用程序212和BCA驱动程序213。诸如PC或再现装置的用于再现盘的信息处理装置从盘200读取应用程序212和BCA驱动程序213并且在诸如CPU的程序执行单元中执行它们。
也就是说,在包括装载有盘的驱动装置的信息处理装置上或者在例如经由USB线缆与驱动装置连接的信息处理装置上执行应用程序212和BCA驱动程序213。具体地讲,在信息处理装置的应用程序执行单元中执行应用程序212,并且在信息处理装置的BCA执行单元中执行BCA驱动程序213。
如上所述,从盘的BCA区域读取介质ID(PMSN)的处理可以由BCA驱动程序根据AACS定义执行。BCA驱动程序根据AACS定义与装载有盘的驱动装置执行相互认证,检查驱动装置和BCA驱动程序的合法性,读取介质ID,然后向应用程序提供介质ID。
要注意,BCA驱动程序213是根据AACS定义产生的程序,并且根据AACS定义执行认证处理以及从BCA区域读取介质ID。另一方面,应用程序212是可由第三方任意创建的程序。因此,应用程序112可能是恶意程序,例如为骗取介质ID信息而产生的程序。
应用程序212对BCA驱动程序213调用API(应用编程接口)。该API是公开的并且可由第三方使用。
该公开API不包括请求BCA驱动程序获取介质ID的函数,但是包括请求BCA驱动程序获取指向私有API的指针的函数。在本发明的实施例的配置中,指示BCA驱动程序获取介质ID的API被设置为私有API。
也就是说,在本发明的实施例的配置中,仅有用于获取指针的API是公开的,并且这个公开API可由创建该应用程序的第三方使用,然而,指示BCA驱动程序获取介质ID的API被设置为私有API。因此,第三方不能够创建调用私有API的应用程序。
当应用程序212执行调用公开API的处理时,在步骤S501中,BCA驱动程序213响应于来自应用程序212的API调用,根据公开API启动一系列处理。
首先,在步骤S502中,利用设置在BCA驱动程序中的验证数据执行验证BCA驱动程序自身的处理。
图8示出了根据本发明实施例的配置的盘200中记录的BCA驱动程序213的例子。如图8所示,BCA驱动程序的所有数据的篡改校验数据(校验和)401被预先设置在BCA驱动程序213中。篡改校验数据(校验和)401被设置为例如通过从BCA驱动程序的映像的起始地址开始逐字节地作为数值将数据相加而获得的总计值。
在图7所示的流程的步骤S502中,设置在BCA驱动程序中的验证数据(例如,图8所示的篡改校验数据(校验和)401)被用于执行对BCA驱动程序自身的验证处理。将参照图9所示的流程图描述该验证处理的详细序列。
图9的流程图中所示的处理是BCA驱动程序对BCA驱动程序自身执行篡改校验的序列。首先,在步骤S601中,计算BCA驱动程序的全部结构的校验和。例如,计算通过从BCA驱动程序的映像的起始地址开始逐字节地作为数值将数据相加而获得的总计值。
接下来,在步骤S602中,针对验证数据,校验计算出的校验和。该验证数据是图8所示的篡改校验数据(校验和)401。在步骤S603中,确定是否满足计算出的结果等于验证数据(固定值)。如果满足,则验证完成,即确定了没有篡改,并且该处理进行到步骤S604,之后该处理继续进行。另一方面,如果计算出的结果等于验证数据(固定值)没有得到满足,则验证以失败结束,即确定了存在篡改,并且该处理进行到步骤S611,之后该处理中断并且错误通知被提供给应用程序。
返回参照图7,将继续描述应用程序与BCA驱动程序之间的处理序列。在步骤S502中,在BCA驱动程序上执行参照图9描述的篡改校验,并且如果确定存在篡改,则该处理中断并且错误通知被提供给应用程序。如果确定不存在篡改,则该处理进行到步骤S503。
在步骤S503中,私有API指针,即指定执行从盘的BCA区域读取介质ID的处理的函数的API指针,被存储在可由应用程序访问的缓冲器(请求源缓冲器)中。另外,在步骤S504中,BCA驱动程序对BCA驱动程序执行篡改校验,即与步骤S502相似并且参照图9描述的处理。在本实施例中,BCA驱动程序被构造为每当执行处理时对BCA驱动程序执行参照图9所述的篡改校验。这样,通过执行篡改校验而顺序地确定该处理的继续或中断,可以防止来自外部的各种攻击。
在步骤S504中的验证处理中,如果确定了存在篡改,则该处理中断,并且错误通知被提供给应用程序。如果确定不存在篡改,则经由缓冲器将私有API指针提供给应用程序212。
应用程序212利用经由缓冲器从BCA驱动程序接收的私有API指针来调用私有API。在步骤S511中,BCA驱动程序213根据私有API启动处理。私有API被应用于获取介质ID的处理。
另外,在步骤S512中,BCA驱动程序213对BCA驱动程序执行篡改校验,即与步骤S502相似并且参照图9描述的处理。在步骤S512的验证处理中,如果确定存在篡改,则该处理中断,并且错误通知被提供给应用程序。如果确定不存在篡改,在该处理进行到步骤S513,并且执行与从盘读取数据的驱动装置的认证处理,由此检查驱动装置和BCA驱动程序的合法性。例如,根据AACS定义执行该认证处理。
如果在步骤S514中认证以失败结束,也就是说,如果驱动装置和BCA驱动程序中的至少任何一个的合法性没有得到验证,则错误通知被提供给应用程序212,然后,该处理结束而不读取介质ID。
另一方面,如果在步骤S514中完成了认证并且驱动装置和BCA驱动程序的合法性都得到验证,则在步骤S515中,BCA驱动程序213还对BCA驱动程序执行篡改校验,即与步骤S502相似并且参照图9描述的处理。在步骤S515中的验证处理中,如果确定存在篡改,则该处理中断,并且错误通知被提供给应用程序。如果确定不存在篡改,则该处理进行到步骤S516并且指示驱动装置从BCA区域读取介质ID,然后,读取的介质ID被提供给应用程序212。
然后,应用程序212将从BCA驱动程序213获取的介质ID发送给管理服务器,然后接收内容拷贝许可信息或其它服务信息。
如图7所示,每当执行处理时BCA驱动程序执行参照图9所述的对BCA驱动程序的篡改校验。以这种方式,通过执行篡改校验而顺序地确定该处理的继续或中断,可以防止来自外部的各种攻击。如图9所示,预先在BCA驱动程序213中设置BCA驱动程序的所有数据的篡改校验数据(校验和)401。BCA驱动程序使用上述数据顺序地执行篡改校验。
通过重复地执行篡改校验,例如可以检查修补攻击(patching
attack)或者代码的修改,还可以检查软侵入(Int3),该软侵入(Int3)是许多黑客使用的黑客程序。此外,可以有效地防止注入(恶意代码注入)等等。
要注意,如图8所示,验证数据与BCA驱动程序记录在一起作为附属数据,并且为了避免校验和部分的改变,期望利用用于产生BCA驱动程序的专用工具嵌入校验和。此外,验证数据(校验和)不限于如下的配置,即数据被设置为通过从BCA驱动程序的映像的起始地址开始逐字节地作为数值将数据相加而获得的总计值。例如,可以基于核心数据而非基于整个BCA驱动程序来设置验证数据。
另外,可以构造为设置用于检测验证数据自身的篡改的哈希值。例如,如图10所示,基于验证数据401的验证数据哈希值402被产生并且记录为附于BCA驱动程序213的数据。
通过以上配置,在验证BCA驱动程序的过程(例如图7的步骤S502)中,除了利用验证数据401对BCA驱动程序进行篡改校验以外,利用验证数据哈希值402执行验证数据401自身的篡改验证。
要注意,如参照图7所述,在本发明的实施例的配置中,应用程序利用公开API以使得可以执行获取指向私有API的指针的处理,并且应用程序利用获取的私有API指针来指示BCA驱动程序获取介质ID。另外,对于私有API指针,可以构造为不是仅向应用程序提供一个指针,而是向应用程序提供混合了一个正确指针和多个伪(dummy)指针的数据。
图11示出了指针数据的结构的例子。例如,如图11所示,先前产生的混合了伪指针和正确指针的数据被提供给应用程序。也就是说,PVOID Dummy1[n]和PVOID Dummy2[n′]是伪指针,并且PVOID pGetBCAID是正确指针。伪指针中的n和n′是数值数据。私有API具有如图11所示的使正确指针夹在伪指针之间的结构,并且这种夹心结构也是私有的。因此,可以进一步防止针对BCA驱动程序的各种攻击。
应用程序需要从这多个指针中选择一个正确指针。例如,将指针选择信息或者指针选择工具仅提供给先前授权的应用程序创作者。因此,可以有效地排除利用恶意应用程序的指针获取。
图12是示出根据本发明实施例的应用程序和BCA驱动程序的主处理序列的流程图。该序列是更加详细地示出图7的流程中的步骤S501到S504的处理的流程。
首先,在步骤S701中,应用程序调用公开API函数。该公开API是用于获取指向私有API的指针的API。接下来,在步骤S702中,对BCA驱动程序执行篡改校验处理。具体地讲,计算与BCA驱动程序对应的整个DLL(动态链接库)的校验和。也就是说,在BCA驱动程序中设置的验证数据(例如,图8所示的篡改校验数据(校验和)401)被用于执行对BCA驱动程序自身的验证处理。
也就是说,计算BCA驱动程序的整个结构的校验和。例如,计算通过从BCA驱动程序的映像的起始地址开始逐字节地作为数值将数据相加而获得的总计值,并且在步骤S703中,针对验证数据校验计算出的校验和。验证数据是图8所示的篡改校验数据(校验和)401。在步骤S703中,如果满足计算出的结果等于验证数据(固定值),则验证完成,即确定不存在篡改,并且该处理进行到步骤S704,然后,该处理继续。另一方面,如果不满足计算出的结果等于验证数据(固定值),则验证以失败结束,即确定存在篡改,并且该处理进行到步骤S711,然后,该处理中断并且错误通知被提供给应用程序。
在步骤S704中,私有API指针,即指定用于执行从盘的BCA区域读取介质ID的处理的函数的API指针,被存储在可由应用程序访问的缓冲器(请求源缓冲器)中。另外,在步骤S705中,BCA驱动程序计算与BCA驱动程序对应的整个DLL的校验和。也就是说,设置在BCA驱动程序中的验证数据(例如,图8所示的篡改校验数据(校验和)401)被用于执行对BCA驱动程序自身的验证处理。
在步骤S706中,如果确定在BCA驱动程序中存在篡改,则该处理进行到步骤S711并中断,然后,错误通知被提供给应用程序。如果确定不存在篡改,则该处理进行到步骤S707。在步骤S707中,私有API指针经由缓冲器被提供给应用程序212。
应用程序212利用经由缓冲器从BCA驱动程序接收的私有API指针来调用私有API。下面的处理是图7的步骤S511之后的处理。
如上所述,在本发明的实施例的配置中,用于执行获取介质ID的处理的API被设置为私有API,并且可由应用程序访问的公开API被设置为指向用于执行获取介质ID的处理的私有API的指针,并且当调用该公开API时,在执行这些处理的步骤之前,BCA驱动程序对BCA驱动程序执行篡改校验。
利用以上配置,例如,如果恶意应用程序调用公开API而要从BCA驱动程序获取介质ID,则当该恶意应用程序以各种方式攻击BCA驱动程序即篡改BCA驱动程序时,在获取私有API之前,BCA驱动程序能够在篡改校验中检测到篡改,立即中断该处理并且停止向恶意应用程序提供私有API。因此,可以防止恶意应用程序骗取介质ID。
如上所述,将参照特定示例实施例更加详细地描述本发明的实施例。对于本领域技术人员明显的是,在不脱离本发明的范围的情况下,可以修改或替换该示例实施例。也就是说,上述的本发明是说明性的,并且不应被解释为限制性的。应该参照所附权利要求来确定本发明的范围。
另外,可以通过硬件、软件或者它们的复合结构来执行在该说明书中描述的一系列处理。当通过软件执行该处理时,可以执行安装或拷贝到装配到专用硬件的计算机内部的存储器的包含该处理序列的程序或者可以执行安装或拷贝到能够执行各种处理的通用计算机的程序。例如,该程序可以预先记录在记录介质中。该程序不仅可以从记录介质安装或拷贝到计算机,还可以经由诸如LAN(局域网)或互联网的网络进行接收,然后安装或拷贝到诸如内部硬盘的记录介质中。要注意,在以上实施例中描述的BCA驱动程序的文件格式不限于DLL文件,它可以是诸如EXE文件的格式。
要注意,在说明书中描述的各种处理不限于根据说明的时间顺序对来执行它们,取决于执行这些处理的装置的性能或者当需要时,可以并行或单独地执行这些处理。此外,本说明书中的系统是多个装置的逻辑集成结构,并且不限于每个结构的装置置于同一壳体内的系统。
Claims (18)
1.一种信息处理装置,其使用记录在盘中的内容,所述信息处理装置包括:
应用程序执行单元,用于执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及
群刻区驱动程序执行单元,用于执行群刻区驱动程序,该群刻区驱动程序是用于指示驱动装置执行读取在盘的群刻区区域中记录的介质ID的处理的程序,其中,
当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元响应于来自所述应用程序执行单元的第一应用编程接口调用,对所述群刻区驱动程序执行篡改校验处理,并且当验证了在所述群刻区驱动程序中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二应用编程接口的指针的处理,其中,所述第一应用编程接口是对第三方公开的公开应用编程接口,并且所述第二应用编程接口是对第三方不公开的私有应用编程接口。
2.如权利要求1所述的信息处理装置,其中,当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元响应于来自所述应用程序的第二应用编程接口调用,与所述驱动装置执行认证处理,并且当验证了所述群刻区驱动程序和所述驱动装置的相互的合法性时,指示所述驱动装置读取所述介质ID。
3.如权利要求2所述的信息处理装置,其中,当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元响应于来自所述应用程序的第二应用编程接口调用,对所述群刻区驱动程序执行篡改校验处理,并且当验证了在所述群刻区驱动程序中不存在篡改时,与所述驱动装置执行认证处理。
4.如权利要求1所述的信息处理装置,其中,每当所述群刻区驱动程序执行处理时,所述群刻区驱动程序执行单元对所述群刻区驱动程序执行篡改校验处理。
5.如权利要求1所述的信息处理装置,其中,当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元执行向所述应用程序执行单元提供混合了伪指针和指向所述第二应用编程接口的指针的数据的处理。
6.如权利要求1所述的信息处理装置,其中,所述应用程序和所述群刻区驱动程序被记录在盘中,并且所述应用程序执行单元和所述群刻区驱动程序执行单元分别读取和执行记录在盘中的所述应用程序和所述群刻区驱动程序。
7.一种信息处理装置,其使用记录在盘中的内容,所述信息处理装置包括:
应用程序执行单元,用于执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及
群刻区驱动程序执行单元,用于执行群刻区驱动程序,该群刻区驱动程序是用于指示驱动装置执行读取在盘的群刻区区域中记录的介质ID的处理的程序,其中,
所述群刻区驱动程序包括篡改校验数据,并且其中,
当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元响应于来自所述应用程序执行单元的第一应用编程接口调用,通过应用所述篡改校验数据对所述群刻区驱动程序执行篡改校验处理,并且当验证了在所述群刻区驱动程序中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二应用编程接口的指针的处理,
其中,所述第一应用编程接口是对第三方公开的公开应用编程接口,并且所述第二应用编程接口是对第三方不公开的私有应用编程接口。
8.一种信息处理装置,其使用记录在盘中的内容,所述信息处理装置包括:
应用程序执行单元,用于执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及
群刻区驱动程序执行单元,用于执行群刻区驱动程序,该群刻区驱动程序是用于指示驱动装置执行读取在盘的群刻区区域中记录的介质ID的处理的程序,其中,
所述群刻区驱动程序包括通过以预定数据单位将构成所述群刻区驱动程序的数据的数值相加而获得的、作为篡改校验数据的校验和数据,并且其中,
当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元响应于来自所述应用程序执行单元的第一应用编程接口调用,通过应用所述校验和数据对所述群刻区驱动程序执行篡改校验处理,并且当验证了在所述群刻区驱动程序中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二应用编程接口的指针的处理,
其中,所述第一应用编程接口是对第三方公开的公开应用编程接口,并且所述第二应用编程接口是对第三方不公开的私有应用编程接口。
9.一种信息处理装置,其使用记录在盘中的内容,所述信息处理装置包括:
应用程序执行单元,用于执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及
群刻区驱动程序执行单元,用于执行群刻区驱动程序,该群刻区驱动程序是用于指示驱动装置执行读取在盘的群刻区区域中记录的介质ID的处理的程序,其中,
所述群刻区驱动程序包括篡改校验数据和所述篡改校验数据的哈希值,并且其中,
当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元响应于来自所述应用程序执行单元的第一应用编程接口调用,通过应用所述篡改校验数据对所述群刻区驱动程序执行篡改校验处理,并且通过应用所述哈希值对所述篡改校验数据执行篡改校验处理,并且当验证了在所述群刻区驱动程序中不存在篡改并且在所述篡改校验数据中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二应用编程接口的指针的处理,
其中,所述第一应用编程接口是对第三方公开的公开应用编程接口,并且所述第二应用编程接口是对第三方不公开的私有应用编程接口。
10.一种信息处理方法,其使用记录在盘中的内容,所述信息处理方法包括如下步骤:
由应用程序执行单元执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及
由群刻区驱动程序执行单元执行群刻区驱动程序,该群刻区驱动程序是用于指示驱动装置执行读取在盘的群刻区区域中记录的介质ID的处理的程序,其中,
当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元响应于来自所述应用程序执行单元的第一应用编程接口调用,对所述群刻区驱动程序执行篡改校验处理,并且当验证了在所述群刻区驱动程序中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二应用编程接口的指针的处理,其中,所述第一应用编程接口是对第三方公开的公开应用编程接口,并且所述第二应用编程接口是对第三方不公开的私有应用编程接口。
11.如权利要求10所述的信息处理方法,其中,当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元响应于来自所述应用程序的第二应用编程接口调用,与所述驱动装置执行认证处理,并且当验证了所述群刻区驱动程序和所述驱动装置的相互的合法性时,指示所述驱动装置读取所述介质ID。
12.如权利要求11所述的信息处理方法,其中,当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元响应于来自所述应用程序的第二应用编程接口调用,对所述群刻区驱动程序执行篡改校验处理,并且当验证了在所述群刻区驱动程序中不存在篡改时,与所述驱动装置执行认证处理。
13.如权利要求10所述的信息处理方法,其中,每当所述群刻区驱动程序执行处理时,所述群刻区驱动程序执行单元对所述群刻区驱动程序执行篡改校验处理。
14.如权利要求10所述的信息处理方法,其中,当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元执行向所述应用程序执行单元提供混合了伪指针和指向所述第二应用编程接口的指针的数据的处理。
15.如权利要求10所述的信息处理方法,其中,所述应用程序和所述群刻区驱动程序被记录在盘中,并且所述应用程序执行单元和所述群刻区驱动程序执行单元分别读取和执行记录在盘中的所述应用程序和所述群刻区驱动程序。
16.一种信息处理方法,其使用记录在盘中的内容,所述信息处理方法包括如下步骤:
由应用程序执行单元执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及
由群刻区驱动程序执行单元执行群刻区驱动程序,该群刻区驱动程序是用于指示驱动装置执行读取在盘的群刻区区域中记录的介质ID的处理的程序,其中,
所述群刻区驱动程序包括篡改校验数据,并且其中,
当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元响应于来自所述应用程序执行单元的第一应用编程接口调用,通过应用所述篡改校验数据对所述群刻区驱动程序执行篡改校验处理,并且当验证了在所述群刻区驱动程序中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二应用编程接口的指针的处理,
其中,所述第一应用编程接口是对第三方公开的公开应用编程接口,并且所述第二应用编程接口是对第三方不公开的私有应用编程接口。
17.一种信息处理方法,其使用记录在盘中的内容,所述信息处理方法包括如下步骤:
由应用程序执行单元执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及
由群刻区驱动程序执行单元执行群刻区驱动程序,该群刻区驱动程序是用于指示驱动装置执行读取在盘的群刻区区域中记录的介质ID的处理的程序,其中,
所述群刻区驱动程序包括通过以预定数据单位将构成所述群刻区驱动程序的数据的数值相加而获得的、作为篡改校验数据的校验和数据,并且其中,
当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元响应于来自所述应用程序执行单元的第一应用编程接口调用,通过应用所述校验和数据对所述群刻区驱动程序执行篡改校验处理,并且当验证了在所述群刻区驱动程序中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二应用编程接口的指针的处理,
其中,所述第一应用编程接口是对第三方公开的公开应用编程接口,并且所述第二应用编程接口是对第三方不公开的私有应用编程接口。
18.一种信息处理方法,其使用记录在盘中的内容,所述信息处理方法包括如下步骤:
由应用程序执行单元执行应用程序,该应用程序是用于利用记录在盘中的内容的程序;以及
由群刻区驱动程序执行单元执行群刻区驱动程序,该群刻区驱动程序是用于指示驱动装置执行读取在盘的群刻区区域中记录的介质ID的处理的程序,其中,
所述群刻区驱动程序包括篡改校验数据和所述篡改校验数据的哈希值,并且其中,
当所述群刻区驱动程序被执行时,所述群刻区驱动程序执行单元响应于来自所述应用程序执行单元的第一应用编程接口调用,通过应用所述篡改校验数据对所述群刻区驱动程序执行篡改校验处理,并且通过应用所述哈希值对所述篡改校验数据执行篡改校验处理,并且当验证了在所述群刻区驱动程序中不存在篡改并且在所述篡改校验数据中不存在篡改时,执行向所述应用程序执行单元提供指向用于执行读取介质ID的处理的第二应用编程接口的指针的处理,
其中,所述第一应用编程接口是对第三方公开的公开应用编程接口,并且所述第二应用编程接口是对第三方不公开的私有应用编程接口。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007323510 | 2007-12-14 | ||
JP2007323510A JP5034921B2 (ja) | 2007-12-14 | 2007-12-14 | 情報処理装置、ディスク、および情報処理方法、並びにプログラム |
JP2007-323510 | 2007-12-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101458946A CN101458946A (zh) | 2009-06-17 |
CN101458946B true CN101458946B (zh) | 2011-09-07 |
Family
ID=40347828
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101846303A Expired - Fee Related CN101458946B (zh) | 2007-12-14 | 2008-12-11 | 信息处理装置、盘、信息处理方法和程序 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8270275B2 (zh) |
EP (1) | EP2071571A1 (zh) |
JP (1) | JP5034921B2 (zh) |
CN (1) | CN101458946B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8984296B1 (en) * | 2009-03-29 | 2015-03-17 | Cypress Semiconductor Corporation | Device driver self authentication method and system |
KR101664973B1 (ko) | 2009-06-19 | 2016-10-19 | 가부시키가이샤 케이씨엠 | 작업 차량의 제어장치 |
JP5873671B2 (ja) * | 2011-09-16 | 2016-03-01 | 大和ハウス工業株式会社 | エネルギー管理システム |
JP5958896B2 (ja) * | 2012-04-27 | 2016-08-02 | Kddi株式会社 | 情報処理装置およびプログラム |
EP3241302B1 (en) * | 2014-12-29 | 2020-11-04 | Visa International Service Association | Authorizing access to an application library |
US20160253501A1 (en) * | 2015-02-26 | 2016-09-01 | Dell Products, Lp | Method for Detecting a Unified Extensible Firmware Interface Protocol Reload Attack and System Therefor |
JP6255070B1 (ja) * | 2016-08-22 | 2017-12-27 | 株式会社 みずほ銀行 | 銀行サービスシステム及び銀行サービス方法 |
AU2018313753B2 (en) * | 2017-08-10 | 2022-01-13 | ShardSecure, Inc., A Delaware, US Corporation | Method for securing data utilizing microshard™ fragmentation |
CN107919960A (zh) * | 2017-12-04 | 2018-04-17 | 北京深思数盾科技股份有限公司 | 一种应用程序的认证方法和系统 |
EP3748528A4 (en) * | 2018-02-02 | 2020-12-09 | NEC Corporation | INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD AND RECORDING MEDIUM |
US10503566B2 (en) | 2018-04-16 | 2019-12-10 | Chicago Mercantile Exchange Inc. | Conservation of electronic communications resources and computing resources via selective processing of substantially continuously updated data |
KR102428652B1 (ko) * | 2020-09-18 | 2022-08-04 | (재)예수병원유지재단 | 마이크로소프트 엑셀을 이용한 문자정보처리시스템 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7191154B2 (en) * | 1995-10-09 | 2007-03-13 | Matsushita Electric Industrial Co., Ltd. | Apparatus for encrypting and recording received content information on a recording medium using both medium identification information and a cipher key for encryption |
JP3521723B2 (ja) * | 1998-01-23 | 2004-04-19 | セイコーエプソン株式会社 | デジタルカメラおよびそれを用いた画像認証システム |
JP2000251395A (ja) * | 1999-02-26 | 2000-09-14 | Matsushita Electric Ind Co Ltd | 記録媒体、記録装置及び再生装置 |
US6665489B2 (en) * | 1999-04-21 | 2003-12-16 | Research Investment Network, Inc. | System, method and article of manufacturing for authorizing the use of electronic content utilizing a laser-centric medium and a network server |
JP4177517B2 (ja) * | 1999-05-21 | 2008-11-05 | 株式会社東芝 | コンテンツ処理システムおよびコンテンツ保護方法 |
JP2001216148A (ja) * | 2000-01-31 | 2001-08-10 | Fuji Magnedisk Kk | 不正に複製されたプログラムまたはデータがコンピュータで使用されるのを防止する記録媒体 |
JP4548758B2 (ja) * | 2000-09-05 | 2010-09-22 | 大日本印刷株式会社 | 共有アクセス管理機能を備えた携帯可能な情報処理装置 |
JP2003337629A (ja) * | 2002-05-18 | 2003-11-28 | Mitsuko Miyaji | プログラム難読化方法及び装置 |
JP4600042B2 (ja) * | 2002-12-06 | 2010-12-15 | ソニー株式会社 | 記録再生装置およびデータ処理装置 |
CA2487406C (en) * | 2003-01-23 | 2012-02-21 | Lg Electronics Inc. | Recording medium with copy protection information formed in intermittent or alternate wobbled pits and apparatus and methods for forming, recording, and reproducing the recording medium |
WO2005036404A2 (en) | 2003-10-13 | 2005-04-21 | Koninklijke Philips Electronics N.V. | Storage allocation per application |
JP2005276282A (ja) * | 2004-03-24 | 2005-10-06 | Sony Corp | 情報記録再生装置、コンテンツ管理方法およびコンテンツ管理プログラム |
JP2007226277A (ja) * | 2004-04-02 | 2007-09-06 | Matsushita Electric Ind Co Ltd | 仮想マシン改ざん検査方法、および仮想マシン改ざん検査装置 |
JP4241485B2 (ja) | 2004-04-15 | 2009-03-18 | ソニー株式会社 | 情報処理装置および情報処理方法、並びにプログラムおよび記録媒体 |
JP2006004376A (ja) * | 2004-06-21 | 2006-01-05 | Ricoh Co Ltd | 情報再生装置 |
CN101814310B (zh) * | 2004-07-22 | 2012-11-28 | 松下电器产业株式会社 | 重放装置和重放方法 |
KR100603250B1 (ko) * | 2004-10-28 | 2006-07-24 | 삼성전자주식회사 | 광디스크의 bca 정보 독출방법 및 그 방법을 사용하는광디스크장치 |
US7739721B2 (en) * | 2005-07-11 | 2010-06-15 | Microsoft Corporation | Per-user and system granular audit policy implementation |
CN101243513A (zh) | 2005-08-23 | 2008-08-13 | 皇家飞利浦电子股份有限公司 | 使用物理单向函数的信息载体鉴别 |
JP4898306B2 (ja) | 2006-06-02 | 2012-03-14 | 三菱重工業株式会社 | 流路網の計算方法 |
-
2007
- 2007-12-14 JP JP2007323510A patent/JP5034921B2/ja not_active Expired - Fee Related
-
2008
- 2008-11-14 US US12/271,442 patent/US8270275B2/en not_active Expired - Fee Related
- 2008-12-11 CN CN2008101846303A patent/CN101458946B/zh not_active Expired - Fee Related
- 2008-12-12 EP EP08171470A patent/EP2071571A1/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
CN101458946A (zh) | 2009-06-17 |
US20090154314A1 (en) | 2009-06-18 |
JP2009146199A (ja) | 2009-07-02 |
EP2071571A1 (en) | 2009-06-17 |
JP5034921B2 (ja) | 2012-09-26 |
US8270275B2 (en) | 2012-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101458946B (zh) | 信息处理装置、盘、信息处理方法和程序 | |
CN1331125C (zh) | 用于控制在可移动媒体上分发的数字内容的使用和复制的方法 | |
US9734342B2 (en) | Method and device for supplying of a data set stored in a database | |
RU2473116C2 (ru) | Использование устройства флэш-памяти для препятствования несанкционированному использованию программного обеспечения | |
KR101301332B1 (ko) | 보안 기계 카운팅 | |
US8844049B2 (en) | Method for generating a cryptographic key for a protected digital data object on the basis of current components of a computer | |
JP4889638B2 (ja) | 検証方法、検証プログラム、記録媒体、情報処理装置、集積回路 | |
JP2002319230A (ja) | 記録媒体、情報処理装置、コンテンツ配信サーバ、方法、プログラム、その記録媒体 | |
KR20080013940A (ko) | 전자기기, 갱신 서버장치, 키 갱신장치 | |
JP2009504026A (ja) | デジタルコンテンツに関連付けられた検証用来歴データ | |
CN101615231A (zh) | 记录媒体、许可管理装置、和记录及回放装置 | |
US20050177823A1 (en) | License management | |
CN104054300A (zh) | 信息存储装置、信息处理系统、信息处理方法和程序 | |
JP2009272002A (ja) | 情報処理装置、ディスク、および情報処理方法、並びにプログラム | |
JP5874200B2 (ja) | 情報処理装置、および情報処理方法、並びにプログラム | |
TWI222818B (en) | Software protection method and device | |
CN101167296A (zh) | 受保护计算环境的可更新和可个性化元件 | |
KR102026634B1 (ko) | 컨텐츠 재생 시스템의 인증 방법 | |
JP2007249333A (ja) | インストール方法、インストール制御プログラム、及び記憶媒体 | |
JP4597651B2 (ja) | メディア内のデータのリッピングを制御するための情報処理ユニット、方法及びプログラム | |
JP2003005855A (ja) | ライセンス管理方法および記録媒体 | |
JP2007310732A (ja) | データ処理装置、データ処理方法、およびデータ処理プログラム | |
CN116127500A (zh) | Linux下移动存储介质的文件管控方法、系统及介质 | |
KR20170004043A (ko) | 운영체제 불법 복제 방지 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110907 Termination date: 20131211 |