CN102750467A - 信息处理设备、信息处理方法和计算机程序 - Google Patents
信息处理设备、信息处理方法和计算机程序 Download PDFInfo
- Publication number
- CN102750467A CN102750467A CN201210123935XA CN201210123935A CN102750467A CN 102750467 A CN102750467 A CN 102750467A CN 201210123935X A CN201210123935X A CN 201210123935XA CN 201210123935 A CN201210123935 A CN 201210123935A CN 102750467 A CN102750467 A CN 102750467A
- Authority
- CN
- China
- Prior art keywords
- register
- unit
- information processing
- security information
- message
- 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.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本发明提供了一种信息处理设备,用于执行来自信息记录介质的内容再现处理,包括安全信息处理单元,用于基于内容再现序列中的安全检查信息确定输出消息,并将伴随输出消息的选择信息的消息输出命令输出到用户接口处理单元;和用户信息处理单元,用于基于从所述安全信息处理单元输入的选择信息获取消息信息,并将其输出到显示单元。
Description
本申请为同一申请人于2006年8月25日提交的申请号为200610126216.8、发明名称为“信息处理设备,信息记录介质,信息处理方法,和计算机程序”的中国专利申请的分案申请。
相关申请的交叉引用
本申请要求2005年10月11日提交的美国临时专利申请60/724,780的优先权。
本发明包含涉及2005年8月26日向日本专利局提交的日本专利申请JP 2005-245943的主题,该申请的全部内容在此被引入作为参考。
技术领域
本发明涉及信息处理设备、信息记录介质、信息处理方法、和计算机程序。具体来讲,本发明尤其涉及信息处理设备、信息记录介质、信息处理方法、和计算机程序,其中通过对需要内容使用管理的各种内容执行数据传输处理来排除未授权的内容使用,由此实现严格的内容使用管理,并进一步实现消息-诸如内容的使用暂停状态和用户确认-的显示。
背景技术
各类软件数据(以下称为“内容”)-诸如音乐等音频数据、电影等图像数据、游戏程序、各类应用程序等等-可以作为数字数据被存储在记录介质-例如使用蓝色激光的蓝光光盘、或DVD(数字多用盘)、MD(小型盘)、和CD(压缩光盘)。特别地,使用蓝色激光的蓝光光盘是高密度可记录盘,并且能够将巨量图片内容等记录为高图像质量的数据。
数字内容被存储在这多种类型的信息记录介质(记录介质)中,以便提供给用户。用户在用户所拥有的再现设备-诸如PC(个人计算机)、光盘播放器等-上再现并使用该内容。
通常,很多内容-诸如音乐数据、图像数据等-的发布权等归其创作者或销售商所有。因此,在发布内容时,通常进行设置,其中设置某些使用限制,即,只允许授权用户使用内容,而防止未授权的再现等。
使用数字记录设备和记录介质,可以在例如不导致例如图像或音频质量下降的情况下重复记录和再现,但是也存在问题,诸如,非法拷贝内容在因特网上的发布、复制到CD-R等上的内容的所谓盗版光盘的发布、存储在个人计算机等的硬盘上的复制内容的使用的激增。
大容量记录介质-诸如DVD、使用近年所开发的蓝色激光的记录介质等-能够将大量数据-例如一部到几部电影-作为数字信息记录在单个盘上。这种将图片信息等记录为数字信息的能力使防止未授权复制以保护版权持有人成为非常重要的问题。到最近为止,已经实行了多种技术来防止未授权地复制到数字记录设备和记录介质上,以便防止对数字数据的这种未授权的复制。
例如,对于DVD播放器,使用内容扰乱系统。通过内容扰乱系统,在其中视频数据、音频数据等以加密形式被记录在例如DVD-ROM(只读存储器)中的配置中,可以通过对扰乱进行解扰而再现内容。
解扰处理需要执行应用特定数据-诸如提供给经许可的DVD播放器的密钥等-的处理。许可被提供给被设计以遵守预定操作规则-诸如不进行未授权复制等等-的DVD播放器。因此,对于经许可的DVD播放器,利用为其提供的特定数据-诸如密钥-对记录在DVD-ROM中的数据进行解扰就使得能够从DVD-ROM中再现图像和音频。
另一方面,未经许可的DVD播放器不具有被应用到对已经过扰乱处理的数据的解扰处理的特殊数据-诸如密钥,并因此不能再现记录在DVD-ROM中的数据。因此,通过内容扰乱系统配置,不满足获取许可时所需条件的DVD播放器不能再现存储数字数据的DVD-ROM,从而防止未授权复制。
发明内容
但是,这种内容扰乱系统存在这样的问题,即在作为执行再现处理的用户设备的信息处理设备侧上的处理负荷非常大。而且,也有大量现有扰乱系统的解扰机制已经被破译,并且破译方法正通过通信媒介-诸如因特网-被传播。这样,一旦扰乱机制被破译,内容就被以未授权的方式再现或复制,从而产生侵犯内容版权和使用权的问题。
除扰乱技术外,人们正在通过各种内容保护技术提出用于禁止没有适当内容使用权的用户和再现设备进行再现的配置。例如,日本未审专利申请公开No.10-41934中公开了通过执行利用虚拟机解密加密数据的程序而添加加密算法的技术。但是,实际上,如果不是在这种内容保护机制下进行内容再现,则用户不能获取关于内容为什么不能被再现的原因或如何使用该内容的解决方案,因此这种配置不足以满足希望获取适当权利并使用内容的用户的要求。
同样,还存在这样的问题,即到目前为止,内容保护机制通常是主要用于保护AV流形式的大内容-诸如某些电影-的配置,而对除电影等之外的小内容-诸如由例如Java(注册商标)的程序所处理的内容-的保护还没有被更多地考虑。
因此,人们已经发现需要提供一种信息处理设备、信息记录介质、信息处理方法、和计算机程序,其中,如果内容再现不是基于内容保护机制执行的,则可以为用户提供状态、提供解决方法,并且可以进行用户确认。还希望提供一种信息处理设备、信息记录介质、信息处理方法、和计算机程序,其中式以与AV流数据相同的方式为除AV流数据-诸如电影等-的小内容设置内容使用限制,从而实现严格的内容保护。
根据本发明一个实施例的信息处理设备用于执行从信息记录介质再现内容的处理,并且包括:安全信息处理单元,用于基于内容再现序列中的安全检查信息确定输出消息,并将伴随输出消息的选择信息的消息输出命令输出到用户接口处理单元;和用户接口处理单元,用于基于从安全信息处理单元输入的选择信息获取消息信息,并输出到显示单元。注意,用于来自用户接口的输出的显示单元可以属于该信息处理设备,或者可以是到外部显示设备所具有的显示单元的输出端。
安全信息处理单元可以是用于执行下列处理的配置:基于安全检查信息确定输出消息内容、基于内容再现播放器信息确定输出消息语言、和将用于根据该确定信息进行选择的消息选择信息输出到用户接口处理单元。
用户接口处理单元可以是用于执行下列处理的配置:接收与显示单元上所显示的信息相对应的用户输入、和将所接收的用户输入信息输出到安全信息处理单元。
用户接口处理单元可以被配置为屏上显示功能执行单元,其中安全信息处理单元被配置为基于OSD调用(OSD_CALL),执行伴随输出消息的选择信息的消息输出命令。
另外,安全信息处理单元可以被配置为虚拟机,用于获取记录在信息记录介质中的命令代码,并根据命令代码执行数据处理。
根据本发明另一实施例的信息处理设备用于执行从内容记录介质再现内容的处理,并且包括:安全信息处理单元,用于执行获取对应于内容再现序列中安全检查信息的错误代码的处理,并将错误代码写入寄存器或存储器;和应用执行单元,用于从寄存器或存储器中获取错误代码,获取与所得到的错误代码相对应的消息信息,并将所获得的消息输出在显示单元上。
应用执行单元可以是用于执行下列处理的配置:接收与显示单元上所显示的消息相对应的用户输入,并将所接收的用户输入信息写入寄存器或存储器;其中安全信息处理单元是用于执行获取被写入到寄存器或存储器的用户输入信息的处理的配置。
安全信息处理单元可以具有配置,用于将执行应用转换命令输出到应用执行单元,使得基于应用转换命令,应用执行单元执行转换到经由寄存器或存储器执行与安全信息处理单元的数据传送处理的应用,并将消息输出到显示单元。
安全信息处理单元和应用执行单元可以将指示处理状态的状态值写入寄存器或存储器,其中安全信息处理单元和应用执行单元被配置为读取被写入寄存器或存储器的指示处理状态的状态值,并执行处理状态的确认。
安全信息处理单元和应用执行单元可以是用于通过应用寄存器或存储器的数据传送处理执行相互可靠性确认处理的配置。
安全信息处理单元可以被配置为虚拟机,虚拟机获取记录在信息记录介质中的命令代码,并根据命令代码进行数据处理。
另外,根据本发明再一实施例的信息处理设备包括:应用执行单元,用于执行存储在信息记录介质中的应用程序;和安全信息处理单元,用于执行将在应用执行单元处执行或继续应用程序所需的参数写入寄存器或存储器的处理;其中应用执行单元被配置为从寄存器或存储器获取安全信息处理单元已经写入的参数,并执行通过应用该参数的计算处理或加密处理或继续应用程序所需的数据处理,从而执行或继续应用程序。
另外,根据本发明的信息处理设备的一个实施例,寄存器或存储器是播放器状态寄存器,并且具有第一播放器状态寄存器,其中安全信息处理单元执行写操作,而应用执行单元执行读操作;并且具有第二播放器状态寄存器,其中应用执行单元执行写操作,安全信息处理单元执行读操作。
另外,安全信息处理单元可以是用来执行将不同参数顺序写入寄存器或存储器的处理的配置,而应用执行单元可以被配置为从寄存器或存储器顺序获取安全信息处理单元顺序写入的不同参数,并执行应用顺序的不同参数的计算处理或加密处理,从而执行或继续应用程序。
应用执行单元可以是通过执行应用从寄存器或存储器所获取的参数的计算处理或加密处理来执行输出数据的生成处理的配置。
另外,应用执行单元可以被配置为通过应用从寄存器或存储器所获取的参数的异或运算处理、或使用该参数的加密处理、或利用由应用该参数的加密处理所生成的加密密钥的解密处理,执行输出数据的生成处理。
另外,根据本发明的一个实施例的信息记录介质用来存储包括由虚拟机执行的代码信息的应用程序和内容作为作为被记录数据,其中应用程序是包含用于寄存器或存储器的定期参考处理的执行例程的程序,并且代码信息被配置为包含用于执行将所获取的错误代码作为安全检查结果写入寄存器或存储器的处理的命令的信息。
另外,根据本发明一个实施例的信息处理方法用于执行从记录介质再现内容的处理,并且包括以下步骤:在安全信息处理单元处执行的安全信息处理,用于基于内容再现序列中的安全检查信息确定输出消息,并将伴随输出消息的选择信息的消息输出命令输出到用户接口处理单元;在用户接口处理单元处执行的用户接口处理,用于基于从安全信息处理单元输入的选择信息获取消息信息,并输出到显示单元。
另外,在安全信息处理中,可以执行用来基于安全检查信息确定输出消息内容的处理,和基于内容再现播放器信息确定输出消息语言的处理,并且还执行将用来根据该确定信息进行选择的消息选择信息输出到用户接口处理单元的处理。
另外,信息处理方法可以进一步包括以下步骤,即在用户接口处理单元处,接收与显示单元上所显示的消息相对应的用户输入,并将所接收的用户输入信息输出到安全信息处理单元。
另外,用户接口处理单元可以被配置为屏上显示(OSD)功能执行单元,其中,在安全信息处理中,基于OSD调用(OSD_CALL)执行伴随输出消息的选择信息的消息输出命令的运行.
另外,根据本发明的另一实施例的信息处理方法,用来执行从信息记录介质再现内容的处理,并且包括下列步骤:在安全信息处理单元处执行的安全信息处理,用于执行获取对应于内容再现序列中的安全检查信息的错误代码的处理,并将错误代码写入寄存器或存储器;和在应用执行单元处执行的应用程序运行,用于从寄存器或存储器获取错误代码,获取与所获取的错误代码相对应的消息信息,并将所获取的消息输出在显示单元上。
另外,信息处理方法可以进一步包括下列步骤:在应用执行单元处执行的执行处理,用于接收与显示单元上所显示的消息相对应的用户输入,并将所接收的用户输入信息写入寄存器或存储器;和在安全信息处理单元处执行的运行处理,用于获取写入寄存器或存储器的用户输入信息。
另外,信息处理方法可以进一步包含下列步骤:在安全信息处理单元处执行的将执行应用转换命令输出到应用执行单元;和执行转换到经由寄存器或存储器执行与安全信息处理单元的数据传送处理的应用程序,并在应用执行单元处,基于应用转换命令将消息输出到显示单元。
另外,信息处理方法进一步包括下列步骤:在安全信息处理单元和应用执行单元处,将指示处理状态的状态值写入寄存器或存储器;和在安全信息处理单元和应用执行单元处,读取写入寄存器或存储器的指示处理状态的状态值,并执行处理状态的确认。
另外,信息处理方法可以进一步包括在安全信息处理单元和应用执行单元处执行的步骤,用于通过应用寄存器或存储器的数据传送处理执行相互可靠性确认处理。
另外,根据本发明的另一实施例的信息处理方法可以包括下列步骤:在应用执行单元处执行应用程序执行,用于执行存储在信息记录介质中的应用程序;在安全信息处理单元处执行参数写入,用于执行将在应用执行单元处执行或继续应用程序所需的参数写入寄存器或存储器的处理;从寄存器或存储器处获取安全信息处理单元写入的参数,并在应用执行单元处,通过应用该参数的计算处理或加密处理执行应用程序的执行或继续所需的数据处理,从而执行或继续该应用程序。
另外,参数写入可以在安全信息处理单元处执行,用于执行将不同参数顺序写入寄存器或存储器的处理;其中应用执行单元顺序地从寄存器或存储器获取安全信息处理单元顺序写入的不同参数,并执行应用顺序的不同参数的计算处理或加密处理,从而执行或继续该应用程序。
另外,应用执行单元可以通过执行应用从寄存器或存储器所获取的参数的计算处理或加密处理,执行生成输入数据的处理。
另外,应用执行单元可以被配置为通过应用从寄存器或存储器所获取的参数的异或操作处理、或使用该参数的加密处理、或利用由应用该参数的加密处理所生成的加密密钥的解密处理,执行生成输出数据的处理。
另外,根据本发明另一实施例的计算机程序用来执行再现记录在信息处理设备上的信息记录介质中的内容的处理,并且程序包括用于下列步骤的代码:在安全信息处理单元处执行安全信息处理,用于基于内容再现序列中的安全检查信息确定输出消息,并将伴随输出消息的选择信息的消息输出命令输出到用户接口处理单元;和在用户接口处理单元处执行用户接口处理,用于基于从安全信息处理单元所输入的选择信息获取消息信息,并输出到显示单元。
另外,根据本发明另一实施例的计算机程序用来执行再现记录在信息处理设备上的信息记录介质中的内容的处理,程序包括:在安全信息处理单元处执行安全信息处理,用于执行与内容再现序列中的安全检查信息相对应的错误代码的处理,并将错误代码写入寄存器或存储器;在应用执行单元执行应用程序执行,用于从寄存器或存储器获取错误代码,获取对应于所获得的错误代码的消息信息,并将所获取的消息输出在显示单元上。
另外,根据本发明再一实施例的计算机程序用于执行再现记录在信息处理设备上的信息记录介质中的内容的处理,程序包括下列步骤:在应用执行单元处执行应用程序执行,用于执行存储在信息记录介质中的应用程序;在安全信息处理单元处执行参数写入,用于执行将在应用执行单元处执行或继续应用程序所需的参数写入寄存器或存储器的处理;并在应用执行单元处,从寄存器或存储器获取安全信息处理单元写入的参数,并通过应用参数的计算处理或加密处理执行应用程序的执行或继续所需的数据处理,从而执行或继续应用程序。
注意,根据本发明的计算机程序是,例如能够使计算机系统能够通过能以计算机可读形式提供的存储介质或通信媒介-例如诸如CD、FD、MO等的记录介质,或诸如网络等的通信媒介-执行各类程序代码的计算机程序。提供这种可机可读格式的程序实现了与计算机系统上的程序相对应的处理。
通过对稍后描述的本发明的实施例和附图进一步详细说明,可以清晰地了解本发明的其它目标、特征和优点。注意,本说明中所使用的术语“系统”指的是多个设备的逻辑组合装置,并不局限于所有零件设备安装在一个机箱中的装置。
根据本发明一个实施例的配置,一个配置被执行,其中,在再现存储在信息记录介质中的内容时,允许基于适当的内容使用权的内容使用,另外,如果已经基于安全检查确定未授权的内容使用,那么可以显示关于内容再现已经暂停的原因的消息,并且可以接受对显示消息的用户响应,从而可以实现向用户描述情况的处理,并接受用户的确认和提议。
而且,根据本发明一个实施例的配置,经由寄存器或存储器,在应用执行单元与安全VM之间传送数据,从而实现对内容使用的控制,其中应用执行单元执行内容,包括诸如Java(注册商标)和HDMV的小内容,安全VM用作为安全信息处理单元。
附图说明
图1是描述存储在信息记录介质中的数据的配置和处理、和驱动设备和信息处理设备的图;
图2是描述用于对存储在信息记录介质中的数据进行设置的内容管理单元的设置示例的图;
图3是描述用于对存储在信息记录介质中的数据进行设置的内容管理单元与单元密钥之间的相关性的图;
图4是描述关于存储在信息记录介质中的内容的目录配置设置的图;
图5是描述修补表(fix-up table)和数据转换处理程序目录配置的图;
图6是图解内容再现处理示例1的图;
图7是描述驱动器和主机之间的相互验证序列的图;
图8是描述内容再现时所执行的转换数据应用处理的图;
图9是描述存储在信息记录介质中的修补表的数据配置的图;
图10是图解内容再现处理示例2的图;
图11是描述用于执行通过安全VM将消息显示到显示单元的配置的图;
图12是描述消息数据文件目录设置示例的图;
图13是描述与在OSD功能下应用到消息显示处理的OSD调用(CALL_OSD)相对应的命令的配置的图;
图14是图解显示单元上消息显示示例的图;
图15是图解用于利用寄存器实现消息显示处理、并进一步实现内容使用控制处理的基本配置的图;
图16是描述使用寄存器的消息显示处理的处理序列的图;
图17是描述使用寄存器、应用标题转换处理的消息显示处理的处理序列的图;
图18是描述使用寄存器的使用控制处理的处理序列的图;
图19是描述通过使用应用执行单元所使用的寄存器在安全VM与应用执行单元之间的数据传送的配置示例的图;
图20是描述通过使用应用执行单元所使用的寄存器在安全VM与应用执行单元之间的数据传送处理序列的图;
图21是描述安全VM与应用执行单元之间执行的可靠性确认处理序列的图;
图22是描述通过使用应用执行单元所使用的寄存器在安全VM与应用执行单元之间的数据传送的配置示例的图;
图23是描述通过使用应用执行单元所使用的寄存器在安全VM与应用执行单元之间的数据传送处理序列的图;
图24是描述安全VM与应用执行单元之间执行的可靠性确认处理序列的图;
图25是描述利用共享存储空间实现消息显示处理、并进一步实现内容使用控制处理的基本配置的图;
图26是描述内容创作过程和信息记录介质制造过程的图;
图27是描述内容创作过程和信息记录介质制造过程的图;和
图28是描述作为主机执行应用程序的信息处理设备的硬件配置示例的图。
具体实施方式
下面将参照附图详细描述根据本发明的信息处理设备、信息记录介质、信息处理方法、和计算机程序。注意,文中将根据下列项目作出说明。
1.存储在信息记录介质中的数据的概观,和驱动器与主机处的处理
2.关于内容管理单元(CPS单元)
3.内容再现处理
(3.1)内容再现处理示例1
(3.2)内容再现处理示例2
4.消息显示和内容使用控制处理
(4.1)使用UI(用户接口)处理单元的消息显示
(4.2)使用寄存器的消息显示和内容使用控制处理
(4.2.1)使用寄存器的UI功能提供应用程序的运行示例
(4.2.2)使用寄存器和标题转换器的UI功能提供示例
(4.2.3)使用寄存器的内容使用控制示例
(4.2.4)使用应用执行单元所使用的寄存器的处理示例1
(4.2.5)使用应用执行单元所使用的寄存器的处理示例2
(4.3)使用共享存储空间的消息显示和内容使用控制
(4.4)关于创作过程
5.信息处理设备的配置
1.存储在信息记录介质中的数据的概观,和驱动器与主机的处理
首先,介绍存储在信息记录介质中的数据的概观和在驱动器和主机处的处理。图1图解了其中存储有内容的信息记录介质110、驱动器120和主机150的配置。主机150是例如在诸如PC等的信息处理设备上运行的数据再现(或记录)应用程序,并根据预定的数据处理序列,零利用诸如PC等的信息处理设备的硬件执行处理。
信息记录介质100是诸如例如蓝光光盘、DVD等的信息记录介质,并且是存储授权内容的、在所谓的内容权利持有人许可下在光盘制造厂中制造的、具有适当的内容权利或发布权的信息记录介质(ROM盘等),或能够记录数据的信息记录介质(RE盘等等)。注意,在以下实施例中,盘形介质将用作为描述信息记录介质的示例,但本发明能够被应用于使用各种类型信息记录介质的配置。
如图1所示,信息记录介质100存储已经过数据的加密处理和部分替换的修正内容101、作为基于被称为一种广播加密方法的树型结构密钥分配方法所生成的加密密钥块的MKB(媒体密钥块)102、配置了其中对要被应用于内容解密处理的标题密钥进行加密(加密CPS单元密钥)等的数据的标题密钥文件103、包括用作为内容的复制/再现控制信息的CCI(复制控制信息)等的使用规则104、其中登记了与内容内预定区域处的替换数据相对应的转换数据的修补表105、包括用于利用修补表105的登记数据执行数据变换处理的处理命令的数据变换处理程序106、和消息数据文件107,其存储在内容再现已经暂停的情况下要显示在显示器上的显示数据,诸如消息数据,例如错误消息等等。注意,图中示出的数据示例只是示例而已,并且所存储的数据根据光盘类型的不同有或多或少的差别。下面将描述每个类型信息的概要。
(1)加密内容101
各类内容被存储在信息记录介质100中。内容的示例包括运动图像内容的AV(视听)流,诸如高清晰度运动图像数据的HD(高清晰度)电影内容,内容的示例还包括具有特定标准规定的格式的游戏程序、图像文件、音频数据、文本数据等等。这些内容是规定为特定AV格式的数据,并且根据该特定AV数据格式被存储。特别地,其例如根据蓝光光盘ROM标准格式被存储,作为蓝光光盘ROM标准数据。
另外,在一些情形中,游戏程序、图像文件、音频数据、文本数据等等被存储作为例如服务数据。还有一些情形中,这些内容被存储作为数据格式不遵守该特定AV数据格式的数据。
内容的类型包括各种内容,诸如音乐数据、运动图像、静止图像、和类图像数据、以及游戏程序、网络内容等等,并且各种形式的信息被包含在这些内容中,诸如只能被来自信息记录介质100的数据使用的内容信息、能通过将来自信息记录介质100的数据和从连接到网络的服务器所提供的数据结合来使用的内容信息,等等。存储在信息记录介质中的内容被加密地存储,具有适于每段内容的不同密钥(CPS单元密钥或单元密钥(或者可以被称为标题密钥)),以实现对每段内容的不同使用控制。一个单元密钥适用的每个单元被称为内容管理单元(CPS单元)。另外,内容的配置数据被设置为中断数据(brokendata),其中其一部分被与来自正确内容数据不同的数据代替,因此单独的解密处理不再现正确内容,而为了执行再现,用修补表中所登记的数据代替中断数据的处理是必须的。下文中将会对该处理做详细描述。
(2)MKB
MKB(媒体密钥块)102是基于被称为一种广播加密方法的树型结构密钥分配方法所生成的加密密钥块。MKB 102是密钥信息块,其支持获取解密内容所需的媒体密钥[Km],只用于基于存储在拥有有效许可的用户的信息处理设备上的设备密钥[kd]的处理(解密)。这是遵守所谓的分层树型结构的信息分配方法的一个应用,使得只有在用户设备(信息处理设备)具有有效许可的情况下才能获取媒体密钥[Km],而被无效(撤消处理)的用户设备不能获取媒体密钥[Km]。
作为许可实体的管理中心可以通过改变用于解密存储在MKB中的密钥信息的设备密钥来生成具有不能用存储在某用户设备上的设备密钥解密的结构的MKB,即,其中不能获取内容解密所需的媒体密钥。因此,可以在任意时刻撤消未授权设备,从而只向具有有效许可的设备提供能够解密的加密内容。稍后将描述内容解密处理。
(3)标题密钥文件
如上所述,每个内容或多个内容组成的组都经过应用用于每个的单独加密密钥(标题密钥(CPS单元密钥)的加密处理用于内容管理,并被存储在信息记录介质100中。也就是说,构成内容的AV(视听)流、音乐数据、运动图像、静止图像、和类图像数据、游戏程序、网络内容等等需要被分割成管理内容使用的单元,其中为每个分割单元生成不同的标题密钥,从而执行解密处理。用于生成这些标题密钥的信息是标题密钥数据,并且通过用例如由媒体密钥等所生成的密钥对加密的标题密钥进行解密而获得标题密钥。利用标题密钥数据根据预定的加密密钥生成序列生成与每个单元相对应的标题密钥,并执行内容解密。
(4)使用规则
使用规则包括例如复制/再现控制信息(CCI)。这是用于与存储在信息记录介质100中的加密内容101相对应的使用控制的复制限制信息和再现限制信息。对于复制/再现控制信息(CCI)有各种设置,诸如作为用于被设置为内容管理单元的各个CPS单元的信息的情形、被设置与多个CPS单元相对应的情形等等。
(5)修补表
如上所述,存储在信息记录介质100中的加密内容101已经经过预定的加密,并且一部分内容配置数据被配置为与正确数据不同的中断数据。为了再现内容,需要进行数据覆写处理,其中中断数据被作为正确内容数据的变换数据代替。登记变换数据的表是修补表105。大量中断数据被设置散布在整个内容上,并且在再现内容的时候,需要进行用登记在修补表中的变换数据代替(覆写)多片中断数据的处理。应用该变换数据指的是,例如,即使在由于加密密钥泄漏而执行未授权的内容解密的情况下,也不可能只通过内容解密而再现正确内容,这是因为存在被代替的数据,从而能够防止未授权的内容使用。
除了常规变换数据外,修补表105还包括支持分析数据识别信息配置位以识别内容再现设备或内容再现应用程序的变换数据。特别地,例如,这包括作为播放器(用于执行主机应用程序的设备)的识别数据的播放器ID,或“包括识别标志的变换数据”,其中记录了基于播放器ID所生成的识别信息。包括识别标志的变换数据是其中正确内容数据的比特值(bit value)已经发生轻微改变、但其改变程度不影响内容再现的数据。稍后将描述使用这种变换数据的处理的细节。
虽然图1图解了修补表105被设置为独立数据文件的示例,但是也可以进行这样的配置,其中修补表不是独立文件,而是散布在加密内容101的整个配置包中。稍后会描述这些配置和处理。
(6)数据变换处理程序
数据变换处理程序106是包括用于通过修补表105中的登记数据执行数据变换处理的处理命令的程序,并且被再现内容的主机使用。这在图1所示的主机100的数据变换处理单元154处执行。
在主机处,设置了用于执行数据变换处理的虚拟机(VM),从信息记录介质100读出的数据变换处理程序106在虚拟机(VM)处被执行,应用修补表105中的登记数据,并且对于解密内容执行部分配置数据的数据变换处理。稍后将详细描述这一处理。
(7)消息数据文件
消息数据文件是存储在内容再现已经被暂停的情况下要显示在显示器上的显示数据-诸如消息数据-的文件,诸如根据错误和语言类型包含多组数据的错误消息。例如,在内容再现由于安全问题而暂停的情形中,适当的消息被从消息数据文件中选择出,并被显示在显示器上。用户可以基于显示在显示器上的信息确认错误状态和处理信息。稍后在[4.消息显示和内容使用控制处理]一段中将描述这一处理的细节。
接下来将参照图1描述主机150和驱动器120的配置及处理概观。在数据通过驱动器120被传送到主机150时执行存储在信息记录介质100中的内容的再现处理。在使用内容之前,在驱动器120与主机150之间执行相互验证处理,并且在通过建立该验证处理而确认双方的有效性之后,加密内容被从驱动器传送到主机,在主机侧执行内容解密处理,并且执行上述通过修补表的数据变换处理,从而执行内容再现。
对于在主机150与驱动器120之间执行的相互验证,无论每个设备或应用程序是否被登记为未授权设备或应用程序,用于确定有效性的处理都通过参照管理中心所发布的撤消(无效)列表执行。
驱动器120具有存储主机CRL(证明撤消列表)的存储器122,主机CRL存储主机证明(公共密钥证明)的撤消(无效)信息。另一方面,主机150具有用于存储驱动器CRL(证明撤消列表)的存储器152,驱动器CRL存储驱动器证明(公共密钥证明)的撤消(无效)信息。存储器是非易失性存储器(NVRAM),并且例如如果从信息记录介质100中所读出的CRL是更新的版本,则它们各自的数据处理单元121和151执行用于将新版本的主机CRL或驱动器CRL存储在存储器122和152中的更新处理。
诸如主机CRL或驱动器CRL的CRL被管理中心不断更新。也就是说,如果新发现了未授权设备,则发布更新的CRL,其中添加被发布给未授权设备或设备ID等的证明ID作为新条目。每个CRL被提供有版本号,并且具有其中可以比较其新程度的配置。例如,如果从装入驱动器的信息记录介质中所读出的CRL比存储在驱动器内存储器122中的CRL更新,则驱动器执行CRL更新处理。主机150也以相同方式执行驱动器CRL更新。
除了这个CRL更新处理外,驱动器120的数据处理单元121执行与在使用内容时被运行的主机的验证处理,并进一步执行从信息记录介质中读取数据并将数据传送到主机的处理。
如上所述,主机150的再现(播放器)应用程序150是在诸如例如PC的信息处理设备上所执行的数据再现(或记录)应用程序,并且按照预定的数据处理序列,利用诸如PC等的信息处理设备的硬件执行处理。
主机150具有用于执行与驱动器120的相互验证处理、数据传输控制等的数据处理单元151;用于执行对加密内容的解密处理的解密处理单元153;用于基于前述修补表105中的登记数据执行数据变换处理的数据变换处理单元154和用于执行解码(例如,MPEG解码)处理的解码处理单元155。
数据处理单元151执行主机与驱动器之间的验证处理,并且在验证处理中,参照存储在是非易失性存储器(MVRAM)的存储器a152中的驱动器CRL,以确认驱动器不是已经被撤消的驱动器。主机也执行更新处理,以便将新版本的驱动器CRL存储在存储器a152中。
解密处理单元153利用存储在存储器b156中的各种类型的信息和从信息记录介质100中所读取的数据、执行加密内容101的解密处理,而生成要应用于内容解密的密钥。数据变换处理单元154应用从信息记录介质100中所获取的修补表中所登记的变换数据,根据从信息记录介质100中所获取的数据变换处理程序,执行内容配置数据的替换处理(覆写)。解码处理单元155执行解码(例如,MPEG解码)处理。
信息处理设备150的存储器b156存储设备密钥:Kd、要应用于相互验证处理的密钥信息、要应用于解密的密钥信息等等。稍后将描述内容解密处理的细节。设备密钥:Kd是要应用于上述MKB处理的密钥。MKB是密钥信息块,其使得只能通过基于存储在具有有效许可的用户的信息处理设备中的设备密钥[Kd]的处理(解密)获取作为解密内容所需密钥的媒体密钥[Km],并且在对加密内容进行解密时,信息处理设备150应用存储在存储器b156中的设备密钥:Kd,以执行MKB处理。稍后将描述内容解密处理的细节。
2.关于内容管理单元(CPS单元)
如上所述,存储在信息记录介质中的内容经过解密处理,并以适于每个单元的不同密钥被存储,以便实现对每个单元的不同的使用控制。也就是说,内容被分割成内容管理单元(CPS单元),执行单独的解密处理,并进行单独的使用管理。
在使用内容时,首先,需要获取适于每个单元的CPS单元密钥(也称为标题密钥),并且,通过基于预先确定的解密处理序列执行数据处理,应用其它必要的密钥、密钥生成信息等,从而执行再现。稍后将参照图2描述内容管理单元(CPS单元)的设置。
如图2所示,内容具有分层配置:(A)索引210,(B)电影对象220,(C)播放列表230和(D)剪辑240。例如,指定将被再现应用程序访问的索引、诸如标题就指定了与标题相关的再现程序,并且根据已经指定的再现程序的程序信息选择规定再现内容的次序的播放列表。
播放项作为将被再现的数据的信息被包含在播放列表中。通过由包含在播放列表中的播放项所规定的再现段的剪辑信息,选择性地读出作为内容的实际数据的AV流、或命令,并执行AV流的再现和命令的执行处理。注意,存在大量播放列表和播放项,并且每个都具有相应的播放列表ID和播放项ID作为识别信息。
图2图解了两个CPS单元。它们构成存储在信息记录介质中的内容的一部分。CPS单元1271和CPS单元2272中的每一个都是已经被设置为包含用作为索引的标题、作为再现程序文件的电影对象、播放列表和包括作为实际内容数据的AV流文件的剪辑的单元的CPS单元。
内容管理单元(CPS单元)1271包含标题1211和标题2212、再现程序221和222、播放列表231和232、剪辑241和剪辑242,并且作为包含在两个剪辑241和242中的内容的实际数据的AV流数据文件261和262至少是加密的对象数据,并相应地被设置为应用标题密钥(Kt1)加密的数据,其中标题密钥(Kt1)是与内容管理单元(CPS单元)1271相对应地设置为规则的加密密钥(也称为CPS单元密钥)。
内容管理单元(CPS)2271包括作为索引的应用程序1213、再现程序224、播放列表233、和剪辑243,并且作为包含在剪辑243中的内容的实际数据的AV流数据文件263被应用标题密钥(Kt2)加密,其中标题密钥(Kt2)是与内容管理单元(CPS单元)2272相对应地设置的加密密钥。
例如,为了使用户执行与内容管理单元1271相对应的应用程序文件或内容再现处理,需要获取用作为被设置以与内容管理单元(CPS单元)1271相关的加密密钥的标题密钥:Kt1,并对其进行解密处理。为了使用户执行与内容管理单元2272相对应的应用程序文件或内容再现处理,需要获取用作为被设置以与内容管理单元(CPS单元)2272相关的加密密钥的标题密钥:Kt2,并对其进行解密处理。
图3示出CPS单元设置配置,和相应标题密钥的示例。图3示出CPS单元设置单元与可应用到每个CPS单元的标题密钥(CPS单元密钥)之间的相互关系,其中CPS单元设置单元是用于管理存储在信息记录介质中的加密内容的使用的单元。注意,用于稍后出现的数据的CPS单元和标题密钥可以被预先存储和设置。例如,数据单元281是用于稍后出现的数据的条目。
CPS单元设置单元以广泛的多样性出现,诸如内容标题、应用程序、数据组等等,并且每个CPS单元管理表具有设置在其中的CPS单元ID,用作为与每个CPS单元相对应的标识符。
图3中,例如,标题1是CPS单元1,并且在对属于CPS单元1的加密内容进行解密时,需要生成标题密钥Kt1,并基于所生成的标题密钥Kt1执行解密处理。
这样,存储在信息记录介质100中的内容被以已经用适于每个单元的不同加密密钥对其进行加密处理的方式被存储,以便实现对每个单元不同的使用控制。设置每个内容管理单元(CPS单元)的UR(使用规则),用于对每个内容管理单元(CPS单元)的单独使用管理。如上所述,使用规则是包含例如内容的复制/再现控制信息(CCI)的信息,并且是包含在每个内容管理单元(CPS单元)中的加密内容的复制限制信息或再现限制信息。
对于生成标题密钥,应用存储在信息记录介质中的各种类型信息的数据处理是必需的。稍后将详细描述这种处理的具体示例。
接下来,将参照图4描述与具有图2所示的分层结构的内容相对应的目录配置。
(A)图2中的索引210是图4中目录中的index.bdmv文件。
(B)图2中的电影对象220是图4中目录中的MovieObjet.bdmv文件。
(C)图2中的播放列表230是图4中目录中PLAYLIST目录下的文件。
(D)图2中的剪辑240对应于图4中目录中CLIPINF目录和STREAM目录下具有相同文件号的文件。
如上所述,存储在信息记录介质中的内容的部分配置数据被设置为被不同于正确内容数据的数据替换的中断数据,因此单独的解密处理不再现正确内容,并且为了执行再现,用修补表中所登记的数据替换中断数据的处理是必需的。存储在信息记录介质中的数据变换处理程序106被应用于该替换处理,并且执行使用修补表105中的登记数据的数据变换处理。
如上所述,修补表105和数据变换处理程序106被记录在信息记录介质中。图5示出了与具有图4所示的目录配置的内容相对应的修补表的目录配置,和数据变换处理程序。图5是对于具有图4所示的目录结构的AV内容所创建的数据变换处理程序的目录配制、和修补表。
图5中示出的[ContentCode.svm]是数据变换处理程序,而图5中示出的[FixUpXXXXX.tb1]是为每个剪辑定义的修补表(XXXXX与剪辑信息文件的文件号相匹配)。
3.内容再现处理
下面描述执行驱动器与主机之间的相互验证的情形的多个处理示例,并且在建立了确认的情况下,存储在装入驱动器中的信息记录介质中的内容被从驱动器传送到主机,并执行内容再现处理。
(3.1)内容再现处理示例1
首先,将参照图6描述内容再现处理示例1。图6从左侧开始图解了存储加密内容的信息记录介质310、将信息记录介质310置入其中以执行数据读取的驱动器330、和与驱动器相连以便能够进行数据通信并且通过驱动器330获取存储在信息记录介质310中的内容并执行运行其再现处理的再现应用程序的主机350。通过诸如例如PC的信息处理设备执行主机350。
信息记录介质310存储MKB(媒体密钥块)311、标题密钥文件312、加密内容313、修补表314、和数据变换处理程序315。主机350持有要被应用到MKB处理的设备密钥351。
下面将描述处理序列,其中图6中所示的主机350通过驱动器330获取并再现存储在信息记录介质310中的内容。首先,在读出存储在信息记录介质310中的内容之前,主机350和驱动器330在步骤S101执行相互验证。该相互验证是用于确认主机和驱动器都是授权设备或应用软件的处理。可以将各类处理应用于该相互验证处理序列。其示例将参照图7进行描述。
图7是根据公共密钥方法的相互验证序列的一个示例。首先,在步骤S121,驱动器330将其本身存储器(NVRAM)中所存储的驱动器公共密钥证明和任意生成的随机数发送给主机。在步骤S122,主机350也将其本身存储器(NVRAM)中所存储的主机公共密钥证明和任意生成的随机数发送给驱动器。
在步骤S123,驱动器330基于主机证明撤消列表(主机CRL:证明撤销列表)检验从主机所接收的主机公共密钥证明的正确性和主机的撤消状态。在步骤S123,驱动器330首先执行对设置给主机公共密钥证明的签名的检验。图7中所示的ECDSA_V指示执行基于椭圆曲线加密的签名检验。通过应用与密钥管理实体的保密密钥相对应的公共密钥,执行该签名检验。驱动器持有用于存储器(NVRAM)中的签名检验的密钥管理实体的公共密钥,并使用其进行签名检验。签名检验被用来确认主机公共密钥证明还没有被篡改。如果已经根据签名检验确定主机公共密钥证明被篡改,责取消处理。
另外,驱动器330基于显然没有被篡改的主机公共密钥证明,参照主机CRL,以确认证明还没有被撤消(无效)。主机CRL是关于已经发布给主机的公共密钥证明的无效证明的ID的列表。主机CRL被从驱动器中的存储器或信息记录介质获取。
驱动器330从明显没有篡改的主机公共密钥证明中获取ID,并确定ID是否与主机CRL中登记的ID匹配。如果主机CRL中存在匹配的ID,则确定主机是已经被撤消(无效)的主机,并且随后的处理被取消。如果从主机公共密钥证明中所获取的ID没有被记录在主机CRL中,则确定主机有效并且没有被撤消,并且处理继续。
另一方面,在步骤S124中,主机350也执行驱动器公共密钥证明(篡改检验)的有效性确认和应用驱动CRL基于从驱动器330所接收的驱动器公共密钥证明确定驱动器是否已经被撤消。只有在确认驱动器公共密钥证明有效并且还没有被撤消的情况下,处理才继续。驱动器CRL被从主机的存储器或信息记录介质中获取。
接下来,驱动器330和主机350分别以驱动器响应(S125)和主机响应(S126)的形式通知其验证结果。在通知验证结果时,双方都生成ECDH(椭圆曲线Diffie Hellman)值作为应用椭圆曲线加密的值,并通知对方。
在从主机350接收驱动器验证结果和ECDH值后,驱动器330应用所接收的ECDH值在步骤S127检查主机响应,确认驱动器验证的建立,并生成用作为共享密钥的会话密钥。而且,在从驱动器330接收主机验证结果和ECDH值后,主机350基于所接收的ECDH值在步骤S128检查驱动器响应,确认主机验证的建立,并生成用作为共享密钥的会话密钥。
通过这种相互验证处理,驱动器330和主机350共享会话密钥作为共享密钥。
让我们返回图6以继续介绍内容使用处理序列。在步骤S101,在主机和驱动器之间执行相互验证并共享会话密钥(Ks)之后,主机350在步骤S102中获取由驱动器记录在信息记录介质310中的MKB311,应用存储在存储器中的设备密钥351执行MKB 311的处理,并从MKB获取媒体密钥(Km)。
如上所述,MKB(媒体密钥块)311是基于被称为一种广播加密方法的树型结构密钥分配系统所生成的加密密钥块,并且是使得只能通过基于存储在具有有效许可的设备中的设备密钥(Kd)的处理(解密)获取作为内容解密所需的密钥的媒体密钥(Km)的密钥信息块。
接下来,在步骤S103,将在步骤S102中通过MKB处理所获取的媒体密钥(Km)应用于执行对从信息记录介质310所读取的标题密钥文件的解密,从而获取标题密钥(Kt)。存储在信息记录介质310中的标题密钥文件是包括被媒体密钥加密的数据的文件,并且用于内容解密的标题密钥(Kt)可以通过应用媒体密钥的处理获取。注意,步骤S103中的解密处理应用例如AES加密算法。
下一步,主机350通过驱动器330读出存储在信息记录介质310中的加密内容313,将所读出的内容存储在磁道缓冲器352中,在步骤S104中应用标题密钥(Kt)执行对存储在缓冲器中的内容的解密处理,并获取解密后的内容。
解密后的内容被存储在明文TS缓冲器353中。(Plain TS)指的是解密后的明文传输流。现在,存储在明文TS缓冲器353中的解密后内容是包含上述中断数据的内容,其不能被再现为其本身那样,并且需要执行预定数据变换(通过覆写的数据替换)。
图6中的区块371示出该数据变换处理。图6中的区块371与通过图1所示的主机150的数据变换处理单元154所执行的处理等效。稍后将参照图8描述该数据变换处理的概观。
图6中所示的加密内容313是存储在信息记录介质中的加密内容,该加密内容暂时存储在主机侧的磁道缓冲器352中。这是图8(1)所示的存储在磁道缓冲器中的数据401。
对作为磁道缓冲器所存储的数据401的加密内容的解密通过主机侧解密处理执行,并且解密结果数据被存储在明文TS缓冲器353中。这是图8(2)所示的解密结果数据402。
解密结果数据402包括不是正确内容配置数据的中断数据403。主机的数据变换处理单元执行用变换数据404替换该中断数据403的处理,其中变换数据404是从记录在图6所示的信息记录介质310中的修补表314所获取的正确内容配置数据。该替换处理例如作为对写入明文TS缓冲器353的数据进行的部分数据重写(覆写)处理而被执行。
另外,如图8所示,主机所执行的数据变换处理不只是用作为正常内容数据的变换数据替换中断数据的处理,而也执行用包含识别标记的变换数据405替换解密结果数据402中部分配置数据的处理。
识别标记是支持使内容再现设备或内容再现应用程序可识别的识别信息的配置位的数据。一个具体示例是用作为执行主机应用程序的播放器的信息处理设备的识别信息(播放器ID)的配置数据,或基于播放器ID所生成的识别标记。如上所述,标识符-设置变换数据是这样一种数据,其中正确内容数据的比特值已经发生轻微改变,但其改变程度不影响内容的再现。
在内容内设置包含识别标记的大量变换数据405,并且例如,收集并分析多组包含识别标记的变换数据405就确定播放器ID。包含识别标记的变换数据405是这样一种数据,其中正常内容数据的配置位已经在一定程度内被改变,其中在该程度内,能够进行正常再现为内容,并且通过MPEG比特流分析能够进行该数据内的比特(识别标记配置位)确定。
图8中所示包含识别标记的大量变换数据404和变换数据405被登记在修补表中,该修补表被存储在信息记录介质中,并且对它们的写位置信息进行登记。基于存储在修补表中的信息执行数据变换处理以采用图8(3)所示的变换后数据406替换存储在明文TS缓冲器353中的数据。
返回图6,将描述虚线块371中的处理,即,主机侧数据变换处理。数据变换处理例如由被设置为主机内虚拟机的安全VM 356执行。虚拟机(VM)是直接解释和执行中间语言、并且不依赖于平台地解释和执行中间语言的命令代码信息的虚拟计算机。
安全VM 356执行从信息记录介质310中读出包括命令代码信息的数据变换处理程序315的处理,并执行该程序。安全VM 356受到事件处理器354的处理控制,还输入执行主机应用程序的播放器(信息处理设备)的ID信息作为播放器信息355,并且从信息记录介质310中所获取的数据变换处理程序315被执行,其中运行主机应用程序的播放器(信息处理设备)的ID信息作为播放器信息355被输入。事件处理器354执行处理监督。关于安全VM 356所执行的处理是否正在正确地执行的仿真器校验、以及其它主机应用程序和用作为主机应用程序执行设备的播放器(信息处理设备)的处理和状态受到监控,并且如果检测到处理错误或未授权处理等等,则安全VM 356的数据变换处理被取消。
安全VM 356应用从信息记录介质310中所读出的修补表来执行存储在明文TS缓冲器353中的数据的变换处理。也就是说,这是图6所示的步骤S105的数据变换处理,其中利用图8所示的解密结果数据402,中断数据403被变换数据404替换,变换数据404是正确的内容配置数据,并且还有数据覆写处理,用于用内容的部分数据替换包含识别标记的变换数据405,从而将存储在明文TS缓冲器353中的数据变为变换后的数据406。
随后,变换后的TS(传输流)通过网络等被外部地输出,并在外部再现装置上被再现。或者,在步骤S106,通过多路分配器的处理执行从传输流(TS)到基本流(ES)的变换,并进一步,在解码处理(步骤S107)之后,通过显示器和扬声器被再现。
下面将参照图9描述记录在信息记录介质中的数据修补表的数据配置。记录在信息记录介质中的数据修补表具有例如图9所示的数据配置。即,其具有以下数据。
修补条目号:修补数据条目号(修补条目号)
修补条目长度:单个修补数据条目中的字节数量(一个修补条目的字节长度()=(N+6))
SPN(源分组号):从AV流文件的起始位置开始数的分组号,其中变换数据被写入其中的分组位于AV流文件的起始位置处(从AV流文件的开始处开始的绝对变换后的分组号)
字节偏移:指示在由SPN指定的分组中开始写变换数据的地方的字节偏移(转换后的数据在分组中的起始字节)
播放器_id_位_位置:识别标记(播放器ID等)的位地址(用于辩论的(for forensic)播放器ID的指示位地址)
修补数据:变换覆写数据(要被覆写的值(在一个TS分组中变换N字节))
大量中断数据散布于一个内容上,并且记录在修补表中的变换数据被覆写在中断数据的位置处。而且,对于具有诸如播放器ID等的识别标记的变换数据,大量写位置被设置在一个内容中。修补表被设置为记录“变换覆写数据”的表,用作为
(a)变换数据
(b)带有识别标记的变换数据
的实体数据和数据的写位置指定信息。
虽然可以对要多频繁地设置变换数据(包含带有识别标记的变换数据)替换区域、和变换数据的大小进行各种设置,但修补表的大小根据设置的不同而不同。例如,在要每1配置MPEG内容的GOP(图片分组)设置两组变换数据或带有识别标记的变换数据的配置中,例如如果变换数据(包括带有识别标记的变换数据)是8字节,那么表格大小将在400KB左右,而在16字节的情形中,表格将在600KB左右。
而且,对于其中要每1配置MPEG内容的GOP(图片分组)设置五组变换数据或带有识别标记的变换数据的配置,如果变换数据(包括带有识别标记的变换数据)是8字节,则表格的大小为1MB左右,而在16字节的情形中,表格的大小为1.5MB左右。
根据记录在信息记录介质310中的修补表314,主机350的安全VM执行用于将
(a)变换数据
(b)带有识别标记的变换数据
写到修补表中指定位置的处理。数据写入被执行作为将变换数据或带有识别标记的变换数据写到存储在明文TS缓冲器253中的数据上的处理,并且作为该处理的结果,存储在明文TS缓冲器253中的数据被之前描述的图8(3)中的数据替换。
内容从安装主机的播放器(信息处理设备,诸如PC)外部输出或内容再现被执行为如图8(3)中所示的基于变换后数据的处理。
变换数据是正确内容配置数据,并且带有识别标记的变换数据也是被应用于再现正确内容的数据,因此,通过基于这些数据解码再现来支持正确内容再现。而且,如果例如以未授权的方式复制该内容,并且复制的数据大量泄漏,则分析带有识别标记的变换数据就能够获取播放器ID,从而能够查明未授权内容数据的来源。
(3.2)内容再现处理示例2
接下来,将参照图10描述内容再现处理示例2。图10从左侧开始图解了存储加密内容的信息记录介质310、将信息记录介质310置入其中以执行数据读取的驱动器330、和与驱动器相连以便能够进行数据通信、并通过驱动器330获取存储在信息记录介质310中的内容并执行进行其再现处理的再现应用程序的主机350。例如,通过信息处理设备-诸如PC-执行主机350。
图10中省略了记录在信息记录介质310中的MKB(媒体密钥块)和标题密钥文件。主机350持有要被应用于MKB处理的设备密钥,并且标题密钥(Kt)是通过应用记录在信息记录介质310中的MKB(媒体密钥块)和标题密钥文件精确执行与参照图6描述的相同的处理而计算出来的。该处理在图10中也被省略了。信息记录介质进一步存储加密内容313、修补表314、和数据变换处理程序315。
在图10所示的内容再现处理示例2中,其特征是,用虚线框指示的区块381的处理作为实时处理执行,而区块382的处理在再现或输出内容之前作为批处理执行。也就是说,安全VM 356在开始内容再现或内容的外部输出之前,从信息记录介质310读出包括命令代码信息的数据变换处理程序315,并在事件处理器354的控制下,基于播放器信息355的输入,执行对从信息记录介质310所读出的修补表314的解密处理。
记录在信息记录介质310中的修补表314经过模糊处理(obfuscation processing),通过例如AES加密、异或操作、或其它类似计算,并且安全VM 356在数据变换处理程序315之后执行解密处理或预定的计算处理,从而获取作为明文数据的修补表。到目前为止的处理在开始内容再现或内容外部输出之前作为批处理被执行。
其后的处理作为与内容再现或内容的外部输出处理并行执行的实时处理被执行。也就是说,步骤S201中的内容解密处理、步骤S202中的数据变换处理,即用于将记录在信息记录介质310中的修补表中所记录的变换数据-即
(a)变换数据
(b)带有识别标记的变换数据
-写到记录在修补表314中的指定位置的数据变换处理,另外还有,步骤S203中变换后的TS(传输流)的外部输出处理或多路分配器处理,即从传输流(TS)到基本流(ES)的转化,和步骤S204中的解码处理,都作为与内容再现或内容的外部输出处理并行的实时处理被执行。
通过这种处理序列,即使在安全VM 356的修补表314的处理耗费时间的情况下,也实现实时处理,而不影响内容的再现和外部输出。
4.消息显示和内容使用控制处理
如上所述,对于其中包括与正确内容配置数据不同的中断数据的内容被存储在信息记录介质中,并且作为要被中断数据代替的正确内容配置数据的变换数据、和记录关于内容的变换数据的设置位置信息的修补表被记录在信息记录介质中的配置,以及其中根据记录在信息记录介质中的修补表,内容配置数据在内容再现处理时被变换数据替换的配置,即使与记录在信息记录介质中的加密内容相对应的保密密钥泄漏,在不能获取变换数据的设备上也不执行内容再现,从而防止内容的未授权使用。
而且,包含关于能够分析哪些支持识别内容再现设备或内容再现应用程序的识别信息的配置位的数据的变换数据被作为变换数据应用,所以即使在未授权内容泄漏的情况下,分析变换数据也使得能够确定未授权内容的来源。
因此,可以实现严格的内容使用限制。但是,另一方面,如果内容的再现被上述内容保护功能禁止,则试图再现或使用内容的用户无法知道内容不被再现的原因,也无法知道再现内容的解决方案。用户可能会认为原因是设备故障或磁盘有缺陷。
而且,应用上述数据变换的内容保护机制主要被配置为用于大内容-诸如某些电影等-的AV流的保护机制,并且存在这样的问题,即对于不是这种大内容的由程序-诸如Java(注册商标)-处理的小内容,用于设置变换数据的处理负荷非常大。
接下来描述一种配置示例,其支持将消息提供给用户并输入来自用户的确认,作为处理以下情况的方式,其中已经执行了内容再现禁止处理,和对于由例如Java(注册商标)所处理的小内容的简单内容使用限制配置,作为用于解决这种问题的配置。
(4.1)使用UI(用户接口)处理单元的消息显示
首先,将描述使用UI(用户接口)处理单元的消息显示处理示例。图11从左侧开始图解了存储加密内容的信息记录介质310、信息记录介质310被置入其中以执行数据读取的驱动器330、和与驱动器相连以便能够进行数据通信、并通过驱动器330获取存储在信息记录介质310中的内容、并执行用于执行其再现处理的再现应用程序的主机350。例如主机350是通过信息处理设备-诸如PC-执行的。
在图11中,消息显示处理功能已经添加到参照图6所描述的内容再现处理配置示例中。也就是说,与图6的区别是这样的配置,其中消息数据文件316被存储在信息记录介质310中,并且主机侧350处的安全VM 356使用UI(用户接口)处理单元391将消息显示在显示单元392上。
具有有效内容使用权的主机将成功解密加密内容313,并且正确内容再现将通过应用从修补表314所获取的变换数据的数据变换被执行。而且,没有有效内容使用权的主机不能实现内容解密处理或基于变换数据的数据变换处理中至少一个,并因此不能执行正确内容再现。这些处理与先前参照图6所描述的处理相同。
对于本实施例,安全VM 356用作为安全信息处理单元,基于内容再现序列中的安全检查信息确定输出消息,并将伴随输出消息选择信息的消息输出命令输出到UI(用户接口)处理单元391。
UI(用户接口)处理单元391基于从安全信息处理单元的安全VM 356所输入的选择信息,从信息记录介质310的消息数据文件316中获取消息信息,并将其输出(显示)到显示单元392上,其中显示单元392是执行主机的PC等的显示器。显示单元392显示UI(用户接口)处理单元391所输出的消息。该显示例如被执行为叠放在再现内容上的显示。
UI(用户接口)处理单元391例如可以被构造以具有应用OSD(屏上显示)功能的配置。OSD具有执行叠放在显示单元392上所显示的显示信息上的警告消息、显示调整屏幕等的中断显示的功能。该处理与主机350的处理无关地被并行执行,并且消息显示可以在显示单元392上执行,并还通过未示出的输入单元接收用户输入。对于本实施例,用户输入是从UI(用户接口)处理单元391输入到安全VM356。
下面将描述一个具体实施例。安全VM 356基于内容再现序列中的安全检查信息确定输出消息,并将伴随输出消息的选择信息的消息输出命令输出到UI(用户接口)处理单元391。UI(用户接口)处理单元391从信息记录介质310的消息数据文件316中基于选择信息获取消息信息,并将其输出(显示)到显示单元392,其中显示单元是执行主机的PC等的显示器。
图12示出了记录在信息记录介质上的包括消息数据文件401到404的目录。如图12所示,多个内容和语言的消息数据文件401到404被存储在信息记录介质上。
如上所述,安全VM 356输入执行主机应用程序的播放器(信息处理设备)的ID信息等作为播放器信息355,并且还输入来自事件处理器354的监控信息。事件处理器354执行关于安全VM 356所执行的处理是否正被适当执行的仿真器校验,并且其它主机应用程序和用作为主机应用程序执行设备的播放器(信息处理设备)的处理和状态被监控,并且如果检测到处理错误或未授权处理等,则监控信息被输入到安全VM,并且在需要的情况下,取消安全VM 356的数据变换处理。
例如,基于播放器信息355,安全VM 356确定将被输出的消息的语言,并还执行用于基于来自事件处理器354的监控信息确定将被输出的消息的内容的处理。与具有这样确定的语言和内容的消息数据文件相对应的消息选择信息被确定,并被输出到UI(用户接口)处理单元391。
基于该选择信息,UI(用户接口)处理单元391从信息记录介质310中的消息数据文件316中选择并获取消息数据,并将其输出(显示)在显示单元392上,其中显示单元是执行主机的PC等的显示器。
如果将OSD(屏上显示)功能作为UI(用户接口)处理单元391应用,则OSD调用(CALL_OSD)功能被用于从用作为安全信息处理单元的安全VM 356到UI(用户接口)处理单元391的、伴随消息选择信息的消息显示命令。OSD调用(CALL_OSD)功能被定义为具有下列(a)和(b)这两个指定信息的命令:
(a)用于指定消息数据文件(num)的号指定信息,和
(b)指定用户输入信息(opID)的操作ID。
下面将参照图13描述使用OSD调用(CALL_OSD)的消息显示处理的一个具体实施例。例如,为与OSD调用(CALL_OSD)相对应的命令411设置指定信息
(a)用于指定消息数据文件(num)的号指定信息,和
(b)指定用户输入信息(opID)的操作ID。
如上参照图13所述,号指定信息(num)被用作为用于存储在信息记录介质中的消息数据文件的指定信息。而且,操作ID(opID)被用作为用于显示的设置信息,作为用户输入单元的一部分,
仅显示[OK]
显示[OK],[Cancel]
显示[Yes],[No]
显示[Yes],[No],[Cancel]
根据如图14所示的每个ID,或设置简单连续性,以只显示消息。
图14示出消息显示示例,其中[OK]被显示为用户输入单元。如果将OSD(屏上显示)功能应用作为UI(用户接口)处理单元391,则,例如如图14所示的消息数据被显示在显示单元392的前面。
通过用户使用鼠标例如点击显示消息的[OK]键,输入信息被通过OSD检测到,并被输入到安全VM 356。注意,可以进行一种布置,其中在显示消息中提供内容提供服务器或内容管理服务器等的URL,使得用户能够通过点击URL访问服务器。
即使例如在不能执行内容解密或内容数据变换,使得内容不能被正确再现的情况下,执行这种消息显示就使得安全VM能够根据情况输出适当的消息到显示单元,即用户能够了解情况,并且也可以提供信息,诸如内容再现所需的步骤。
而且,可以进行这样一种配置,其中用户输入信息不是简单数据,诸如参照图13和图14所描述的[OK]、[Cancel]、[Yes]、[No],而是其中输入数字或文本串,诸如某个密码,安全VM 356接收输入值,通过密码确认处理执行关于其是否满足再现条件的判定,并且如果确定其满足再现条件,则处理被执行以使得能够进行再现等。
(4.2)使用寄存器的消息显示和内容使用控制处理
接下来,将描述使用寄存器的消息显示示例和内容使用控制处理示例。
图15图解了用于实现使用寄存器的消息显示处理和内容使用控制处理的基本配置。图15所示的安全VM 356是与参照图6、图10和图11所描述的相同的安全VM 356。也就是说,这是设置在主机中作为虚拟机用于执行数据变换处理的安全VM 356,用作为安全信息处理单元。
如参照图6和其它附图所描述的那样,用作为安全信息处理单元的安全VM 356执行从信息记录介质310读取包括命令代码信息的数据变换处理程序315,并执行该程序的处理。另外,安全VM 356输入执行主机应用程序的播放器(信息处理设备)的ID信息作为播放器信息355,并输入来自事件处理器的监控信息。事件处理器354执行关于安全VM 356所执行的处理是否正被适当地执行的仿真器校验,其它主机应用程序和用作为主机应用程序执行设备的播放器(信息处理设备)受到监控,并且如果检测到处理错误或未授权处理,则监控信息被输入到安全VM 356,并且在需要的情况下,安全VM 356的数据变换处理被取消。
对于本处理示例,利用寄存器在用作为安全信息处理单元的安全VM 356与应用执行单元501之间传输消息、命令、参数、数据等等。应用执行单元501是在应用层(或也称为AV层)的数据处理执行单元,其中执行各种类型数据处理的应用处理被包含在该应用执行单元501处所执行的应用程序中。
通过参照图6、图10和图11所描述的用于执行主机350的内容再现处理的信息处理设备、诸如PC等,可以执行各类应用程序。例如,执行如先前在(4.1)段中所描述的、用于将UI功能提供给诸如PC这样的信息处理设备的显示单元以显示各类消息并接收用户输入的UI功能提供程序;用于执行存储在信息记录介质中的Java(注册商标)或HDMV内容的应用程序等等。注意,这些应用程序可以是信息处理设备预先存储在硬盘等上的程序,或者是从信息记录介质中读出的程序。
例如,与存储AV流-诸如电影等-一起,信息记录介质还可以在免费内容等的设置等下,存储小内容,诸如游戏、图片、运动图像内容等。许多这种内容被记录为Java(注册商标)或HDMV内容。与经过前述加密处理或数据变换处理的AV内容不同,这些小内容很少受到内容保护,诸如加密处理或数据变换处理。
但是,即使对这种小内容,也不希望未授权复制或使用。通过本处理示例,如图15所示,应用使用寄存器的配置,也为这样的内容实现内容使用控制。
如图15所示,利用寄存器511和512,在安全VM 356与应用执行单元501之间传输消息、命令、参数、数据等等。在图15所示的示例中,示出了一个示例,其中寄存器(PSR)511被用作为用于安全VM 356的写寄存器和用于应用执行单元501的读寄存器,而寄存器(GPR)512被用作为用于安全VM 356的读寄存器和用于应用执行单元501的写寄存器。已可用的寄存器被用在该配置中,其中寄存器(PSR)511是播放器状态寄存器,而寄存器(GPR)512是通用寄存器。注意,所示的寄存器的使用配置只是一个示例,并且只要能够在安全VM 356与应用执行单元501之间交换数据,就可以应用任何寄存器。
(4.2.1)使用寄存器的UI功能提供应用程序的执行示例
首先,将参照图16描述用于这样一种情形的处理示例,在该情形中,将在应用层执行的应用程序被设置为图15所示的寄存器使用配置中的UI功能提供应用程序。
在应用层正常执行的应用程序是用于执行例如存储在信息记录介质中的Java(注册商标)或HDMV内容的应用程序。在本处理示例中,这些应用程序用来执行UI功能。也就是说,在应用层执行的应用程序被设置为UI功能提供应用执行单元521。
图16图解了用作为安全信息处理单元的安全VM 356、UI功能提供应用执行单元521、和寄存器511、512,示出安全VM 356和UI功能提供应用执行单元521执行的处理步骤S201到S207。下面将描述每一步的处理。
首先,我们假设安全VM 356已经在步骤S201中在内容再现处理中检测到某种安全问题。如先前参照图6和其它附图描述的那样,安全VM 356从事件处理器354接收监控信息,并且在检测到处理错误或未授权处理等的情况下,这样的信息被输入到安全VM 356。
如果在内容再现处理中检测到错误,诸如一些安全问题,则安全VM 356在步骤S202中将预先设置对应于每个错误的错误代码设置写入寄存器(PSR)511。
接下来,在步骤S203,UI功能提供应用执行单元521获取写入寄存器(PSR)511的错误代码。UI功能提供应用执行单元521例如以预先设置的时间间隔执行参照寄存器(PSR)511的处理。在获取写入寄存器(PSR)511的错误代码后,UI功能提供应用执行单元521在步骤S204将与所获取的错误代码相对应地设置的消息输出到显示单元。
例如,如先前参照图14所描述的,显示在显示单元上的消息数据是其中已经设置了消息和用户输入单元的显示数据。在步骤S205,在UI功能提供应用执行单元521检测到用户输入后,在步骤S206,UI功能提供应用执行单元521将用户输入信息写入寄存器(GPR)512。进一步,在步骤S207,安全VM 356获取写入寄存器(GPR)512的用户输入信息。安全VM 356定期检查寄存器(GPR)512,并重复寄存器检查直到获取写入信息,或直到到达预定超时时间。
图16中所示的处理配置是这样一种配置,其中已经通过安全VM 356和UI功能提供应用执行单元521经由寄存器执行信息的输入/输出,通过应用显示单元而使得能够执行对用户的消息呈现和检测用户输入。即使在例如内容的解密或正确数据变换不能执行,使得内容不能被正确再现的情况下,执行这种消息呈现使得安全VM能够根据情况通过寄存器和应用程序将适当的消息输出到显示单元,也就是说,用户可以了解情况,并且也可以提供信息,诸如内容再现所需步骤。
(4.2.2)使用寄存器和标题转换的UI功能提供示例
接下来,将参照图17描述一个处理示例,其中用作为安全信息处理单元的安全VM 356将标题转换命令输出到应用层,以便将应用层处正在执行的程序的标题转换为UI功能提供应用程序、诸如消息呈现,从而呈现消息并接收用户输入。
图17示出用作为安全信息处理单元的安全VM 356、应用执行单元522和寄存器511和512。对于本处理示例,安全VM 356执行将标题转换命令输出到应用执行单元522,以便将正在应用执行单元522处执行的程序的标题转换成UI功能提供应用程序、诸如消息呈现的处理。因此,应用执行单元522指示应用层,其中执行各种应用程序,诸如除UI功能提供应用程序之外的应用程序A和UI功能提供应用程序。
安全VM 356和应用执行单元522处所执行的处理序列被表示为处理步骤S211到S219。下面将描述每一步的处理。
首先,在步骤S211,安全VM 356在内容再现处理中检测某种安全问题。如先前参照图6和其它附图所述,安全VM 356从事件处理器354接收监控信息,并且在检测到处理错误或未授权处理等的情况下,这样的信息被输入到安全VM 356。如果在内容再现处理中检测到错误,诸如某种安全程序,则安全VM 356在步骤S212中将预先设置对应于每个错误的错误代码写入寄存器(PSR)511。
接下来,在步骤S213,安全VM 356将标题转换命令输出到应用执行单元522。该标题转换命令是将正在应用执行单元522处执行的程序的标题转换为UI功能提供应用程序、诸如消息呈现的指令命令。在步骤S214,应用执行单元522根据来自安全VM 356的标题转换命令执行正在执行的应用程序的标题转换处理,并执行UI功能提供应用程序。
随后的处理与先前参照图16所描述的相同,其中应用执行单元522处的UI功能提供应用程序在步骤S215获取写入寄存器(PSR)511的错误代码,并在步骤S216将设置对应于所获取的错误代码的消息输出到显示单元。
进一步,在步骤S217中检测到用户输入后,用户输入信息在步骤S218被写入寄存器(GPR)512。进一步,在步骤S219,安全VM356获取写入寄存器(GPR)512的用户输入信息。
图17中所示的处理配置是这样一个配置,其中用作为安全信息处理单元的安全VM 356具有转换正在应用执行单元52处执行的应用程序的授权,其中通过该程序转换,在应用层执行UI功能提供应用程序,从而使得能够将消息提供给用户并检测用户输入。
对于本配置,处理-诸如寄存器检查-只在UI功能提供应用程序处被执行,因此不需要进行用于用其它正常应用程序执行寄存器检查的设置,其优点在于不需要改变在应用层中所执行的一般应用程序。
(4.2.3)使用寄存器的内容使用控制示例
接下来,将参照图18描述使用寄存器的内容使用控制处理示例。如先前所述,应用上述数据变换的内容保护机制主要被配置为用于大内容-诸如某些电影等-的AV流的保护机制,并且存在这样的问题,即对于不是这种大内容的、由程序-诸如Java(注册商标)-所处理的小内容,用于设置变换数据的处理负荷非常大。下面将描述利用寄存器的、例如由诸如Java(注册商标)或HDMV处理的小内容的内容使用控制处理配置。
图18示出用作为安全信息处理单元的安全VM 356、用于执行由诸如例如Java(注册商标)或HDMV所处理的小内容的应用执行单元523、和寄存器511和512。如图所示,应用执行单元523是由诸如Java(注册商标)或HDMV所处理的小内容551,与AV内容一起被存储在信息记录介质550中。
已经被从信息记录介质550中读出的由诸如Java(注册商标)或HDMV所处理的小内容551具有内容执行所需的特殊处理参数,以便实现使用控制,并且安全VM 356获取这些参数。应用执行单元523获取不包含处理参数的Java(注册商标)或HDMV配置的内容实体,并执行再现处理。但是,注意,必须从安全VM 356获取处理参数,以进行内容的再现处理。
安全VM 356在例如每个特定内容再现段通过寄存器(PSR)511将处理参数提供给应用执行单元523,并且如果已经在安全VM 356处检测到某种安全问题,则停止提供参数。停止提供参数意味着应用执行单元523不能再再现内容,并且内容再现停止。对于本处理示例,内容使用控制是通过这种配置实现的。
将在应用执行单元523处执行的应用程序(内容551)是诸如Java(注册商标)或HDMV这样的应用程序,这些应用程序在开始启动应用程序之前和在执行期间,经由寄存器(PSR)511间歇地获取执行或继续应用程序作需的参数(P1,P2,P3......)。
例如,应用执行单元523通过应用从寄存器(PSR)511所获取的参数的异或操作处理、应用这些参数的加密处理、或使用由应用这些参数的加密处理所生成的加密密钥的解密处理,生成显示内容数据。
参数P1、P2、P3......是对于在应用执行单元523处所执行的应用程序(内容551)的每个预定程序执行单元或内容呈现单元不同的参数,其中应用执行单元523顺序地每预定间隔就从寄存器(PSR)511获取参数P1、P2、P3,并执行应用所获取的这些参数的计算或加密处理。
例如,参数P1、P2、P3被设置为加密参数或计算参数,用于在应用执行单元523处所执行的应用程序所呈现的内容的显示时间单元中的部分内容段。例如,进行设置,使得每个内容呈现时间周期就必须顺序地从寄存器(PSR)511和所执行的处理中获取不同的参数,以便呈现内容,诸如
时间t1到t2内内容部分的呈现需要应用参数P1的内容说明处理的计算处理,
时间t2到t3内内容部分的呈现需要应用参数P2的内容说明处理的计算处理,
时间t3到t4内内容部分的呈现需要应用参数P3的内容说明处理的计算处理,
等等。
例如,正确内容是通过内容511配置数据和参数(P1,P2,P3......)的异或(XOR)操作获取的。或者,通过应用这些参数(P1,P2,P3......)的处理顺序生成不同的解密密钥,并且这些解密密钥被应用于顺序执行的部分内容解密,从而使得能够继续内容呈现。
安全VM 356在寄存器(PSR)511中顺序存储参数(P1,P2,P3......),这些参数对在应用执行单元523处所执行的每个内容呈现段是不同的,其中应用程序在应用执行单元523处执行,例如Java(注册商标)或HDMV程序,周期性地从寄存器(PSR)511获取参数P1、P2、P3,并执行应用所获取的这些参数的计算或加密处理,这是执行和继续应用程序所必需的。
如果已经在安全VM 356处检测到某种安全问题,则停止提供参数。停止提供参数意味着应用执行单元523不能再再现内容,并且内容再现停止。对于本处理示例,内容使用控制是通过这种配置实现的。
注意,可以进行这样的布置,其中应用执行单元523被配置用于经由寄存器512(GPR)周期性地将消息发送到安全VM 356,以便在每个例如需要获取新参数的时刻将参数请求消息写入寄存器512(GPR),并且安全VM 356响应于写入寄存器512(GPR)的参数请求,将参数写入寄存器(PSR)511。
下面将参照图18描述内容使用控制处理序列。安全VM 356和应用执行单元523处所执行的处理序列被表示为处理步骤S221到S224。下面将描述每一步的处理。
首先,在步骤S221,用作为安全信息处理单元的安全VM 356确定是否存在安全问题。如先前参照图6和其它附图所述,安全VM356从事件处理器354接收监控信息,并且在检测到处理错误或未授权处理等的情况下,这样的信息被输入到安全VM 356。如果没有特别检查到安全问题,则安全VM 356将对于执行应用程序所必需的参数写入寄存器(PSR)511。
接下来,在步骤S223,应用执行单元523获取写入寄存器(PSR)511的参数,并在步骤S224利用从寄存器所读取的值执行应用程序。
由安全VM 356写入寄存器(PSR)511的参数被周期性地执行,其中应用执行单元523周期性地获取写入寄存器(PSR)511的参数,并利用所获取的参数执行应用程序。
例如,安全VM 356顺序地在寄存器(PSR)511中存储参数(P1,P2,P3......),其中这些参数对于在应用执行单元523处所执行的每个内容再现段是不同的,其中应用程序在应用程序单元523处被执行,例如Java(注册商标)或HDMV程序,周期性地从寄存器(PSR)511获取参数(P1,P2,P3......),并执行应用从寄存器(PSR)511所获取的这些参数的计算或加密处理,这是执行和继续应用程序所必需的。
如果在安全VM 356处已经检测到安全问题、诸如未授权处理,则安全服务器356停止将参数写入寄存器(PSR)511。停止写入参数意味着应用执行单元523无法从寄存器(PSR)511获取参数,并因此不能利用参数执行应用程序,并且内容再现停止。
如上所述,对于本处理示例,内容使用控制是通过简单配置实现的,即从安全VM向应用程序提供参数的简单配置,用于由例如Java(注册商标)或HDMV所处理的小内容,这些内容不具有内容保护功能,诸如上述加密或数据变换。
注意,对于本处理示例,如果发生安全问题并且内容再现停止,则内容再现停止的原因可以通过前述消息呈现处理被通知给用户。
(4.2.4)使用应用执行单元所使用的寄存器的处理示例1
接下来,将参照图19描述一种配置示例,该配置示例能实现消息呈现和用户输入的接收,以及安全VM 356和应用执行单元之间的可靠性确认处理,这是通过这样一种配置实现的,即其中由应用执行单元所使用的部分寄存器被读/写使能,以由用作为安全信息处理单元的安全VM 356使用。
图19示出用作为安全信息处理单元的安全VM 356、例如设置在AV层的应用执行单元524、和三个寄存器:寄存器X(PSR-X)571、寄存器Y(PSR-Y)572、和寄存器Z(PSR-Z)573。
寄存器X(PSR-X)571是安全VM 356执行写操作、而应用执行单元524执行读操作的寄存器。在安全VM 356对寄存器X(PSR-X)571执行写操作后,向应用执行单元524进行基于寄存器X(PSR-X)571处改变的事件通知,从而应用执行单元524可以知道已经对寄存器X(PSR-X)571执行了写操作。
例如呈现消息并执行应用程序-诸如Java(注册商标)或HDMV等-的应用执行单元524一接收到关于已经对寄存器X(PSR-X)571执行了写操作的通知就检查寄存器X(PSR-X)571,并执行处理,诸如响应于该值显示警告消息。
而且,寄存器Y(PSR-Y)572是应用执行单元524对其执行写操作、而安全VM 356对其执行读操作的寄存器。呈现消息并执行应用程序-诸如Java(注册商标)或HDMV等-的应用执行单元524将对应于对安全VM 356的通知的值写入寄存器Y(PSR-Y)572。
在将数据写入寄存器Y(PSR-Y)572以后,对安全VM 356进行通知(INTRP:中断)。安全VM 356执行与写入寄存器Y(PSR-Y)572的值相对应的处理。例如,关于应用执行单元524已经进行的消息显示的用户输入值被写入寄存器Y(PSR-Y)572。
寄存器Z(PSR-Z)573是安全VM 356和应用执行单元524都可以对其进行读和写操作的寄存器。寄存器Z(PSR-Z)573被用作为安全VM 356与应用执行单元524之间相互的处理状态通知寄存器。
下面将参照图20描述使用本配置的消息呈现和用户输入接收处理序列。图20示出用作为安全信息处理单元的安全VM 356、应用执行单元524、和三个寄存器:寄存器X(PSR-X)571、寄存器Y(PSR-Y)572、和寄存器Z(PSR-Z)573。
在应用执行单元524处正常执行的应用程序是用于执行例如存储在信息记录介质中的Java(注册商标)或HDMV内容的应用程序。在图20中,安全VM 356和应用执行单元524处所执行的处理序列被表示为处理步骤S231到S237。下面将描述每一步的处理。
首先,在步骤S231,我们假设安全VM 356在内容再现处理中检测到某种安全问题。如先前参照图6和其它附图所述,安全VM 356从事件处理器354接收监控信息,并且如果检测到处理错误或未授权处理等,则这样的信息被输入到安全VM 356。
如果在内容再现处理中检测到错误、诸如某种安全程序,则安全VM 356在步骤S232中将预先设置对应于每个错误的错误代码写入寄存器X(PSR-X)571。在执行对寄存器的写操作以后,对应用执行单元524进行基于寄存器X(PSR-X)571处的改变的事件通知,从而应用执行单元524可以知道已经对寄存器X(PSR-X)571执行了写操作。
在步骤S233,应用执行单元524由于事件通知而检测寄存器写操作,并获取写入寄存器X(PSR-X)571的错误代码。在获取写入寄存器X(PSR-X)571的错误代码之后,设置对应于所获取的错误代码的消息在步骤S234被输出到显示单元。
如上参照图14所述,显示在显示单元上的消息数据是例如其中已经被设置了消息和用户输入单元的显示数据等。在步骤S235中检测到用户输入之后,应用执行单元524在步骤S236将用户输入信息写入寄存器Y(PSR-Y)572。
在数据被写入寄存器Y(PSR-Y)572之后,对安全VM 356进行通知(INTERP:中断)。在通过通知(INTERP:中断)检测到对寄存器Y(PSR-Y)572的写操作之后,安全VM 356在步骤S237执行例如与写入寄存器Y(PSR-Y)572的值相对应的处理,获取关于应用执行单元524已经进行的消息显示的用户输入值,并执行与用户输入值相对应的处理。
虽然在上述处理序列中没有指示寄存器Z(PSR-Z)573的使用,但寄存器Z(PSR-Z)573是能够由安全VM 356和应用执行单元524读写的寄存器,并且被用作为在安全VM 356与应用执行单元524之间相互的处理状态通知寄存器。
例如,可以根据安全VM 356和应用执行单元524已经进行多少处理而为寄存器Z(PSR-Z)573设置值,从而允许它们二者都能确认彼此已经在处理序列中进行了多少处理,诸如例如寄存器Z(PSR-Z)573在初始状态被设置为value=0,并且在安全VM 356已经完成处理、且应用执行单元524将要执行处理步骤的时刻,寄存器Z(PSR-Z)573被设置为value=1,并且然后接下来,在应用执行单元524已经完成处理、且安全VM 356将要执行处理步骤的时刻,寄存器Z(PSR-Z)573被设置为value=2,等等。而且,在结束或取消处理时,该值返回到寄存器Z(PSR-Z)573的初始设置value=0。
因此,安全VM 356和应用执行单元524可以通过将寄存器Z(PSR-Z)573用作为安全VM 356与应用执行单元524之间的相互处理状态通知寄存器,根据处理序列执行正确处理。
进一步,安全VM 356与应用执行单元524之间的可靠性确认处理可以由都使用可用的三个寄存器的安全VM 356和应用执行单元524执行,其中三个寄存器是图19所示的寄存器X(PSR-X)571、寄存器Y(PSR-Y)572、和寄存器Z(PSR-Z)573。
下面将参照图21描述安全VM 356与应用执行单元524之间的可靠性确认处理序列。图21是描述安全VM 356和应用执行单元524执行查询/响应处理的处理序列,从而确证相互正正确操作的图。下面将描述这些步骤。
首先,在步骤S241-a,应用执行单元524生成适当的值(例如,随机数),并将其写入寄存器Y(PSR-Y)572。进一步,在步骤S241-b中,状态值(例如,2)被写入寄存器Z(PSR-Z)573。
安全VM 356通过通知检测到数据已经被写入寄存器Y(PSR-Y)572,并在步骤S242中读取写入寄存器Y(PSR-Y)572的数据。
进一步,安全VM 356对从寄存器Y(PSR-Y)572所读取的值(随机数)执行预定数据处理、诸如例如计算处理或加密处理,并在步骤S243-a中,将结果值写入寄存器X(PSR-X)571。在步骤S243-b,安全VM 356将状态值(例如,1)写入寄存器Z(PSR-Z)573。
在步骤S244,应用执行单元524读取写入寄存器X(PSR-X)571的数据,并在步骤S245,执行对所读取数据的检验。例如,应用执行单元524基于由应用执行单元524所生成并通知给安全VM 356的随机数,进行与由其本身所执行的计算或加密的结果的比较相互校验,并且如果这与从寄存器X(PSR-X)571所读取的值匹配,则确定安全VM 356是执行正确处理的安全VM 356。注意,应用执行单元524和安全VM 356对随机数所执行的计算处理或加密处理优选是基于共享保密信息的处理。
可以进行这样的设置,其中图21所示的可靠性确认处理被反复执行多次,或者其中安全VM 356发布随机数。具有该可靠性确认功能就使得能够对应用执行单元524处所执行的应用程序进行可靠性确认,因此与其过去一样的配置就足够了,而不提供对应用层(AV层)的鲁棒性的任何特别限制,这是非常大的优点。
在用作为应用执行单元524的AV层处所执行的应用程序通常由通常CPU执行,这意味着如果要求高水平的鲁棒性,则实现非常昂贵,但是本处理示例支持安全VM 356与应用执行单元524之间的可靠性确认就支持这样的设置,其中高鲁棒性不要求在应用执行单元524处执行应用程序。
(4.2.5)使用应用执行单元所使用的寄存器的处理示例2
接下来,将参照图22描述另一配置示例,该配置示例使应用执行单元所使用的部分寄存器能够被用作为安全信息处理单元的安全VM 356读/写。本处理示例还具有支持消息呈现和用户输入接收、并进一步支持安全VM 356与应用执行单元之间的可靠性确认处理的配置。
图22示出用作为安全信息处理单元的安全VM 356、例如设置在AV层处的应用执行单元525、和两个寄存器:寄存器X(PSR-X)581和寄存器Y(PSR-Y)582。该配置是其中从先前参照图19所描述的配置中省略了寄存器Z(PSR-Z)的配置。
寄存器X(PSR-X)581是安全VM 356对其执行写操作而应用执行单元525对其执行读操作的寄存器。在安全VM 356执行对寄存器X(PSR-X)581的写操作以后,对应用执行单元525进行基于寄存器X(PSR-X)581处改变的事件通知,从而应用执行单元525可以知道已经对寄存器X(PSR-X)581执行了写操作。
例如呈现消息并执行Java(注册商标)或HDMV应用程序的应用执行单元525一接收到关于已经对寄存器X(PSR-X)581执行了写操作的通知就检查寄存器X(PSR-X)581,并响应于值执行处理、诸如显示警告消息。
而且,寄存器Y(PSR-Y)582是应用执行单元525对其执行写操作而安全VM 356对其执行读操作的寄存器。呈现消息并执行Java(注册商标)或HDMV应用程序的应用执行单元525将与通知给安全VM356的内容相对应的值写入寄存器Y(PSR-Y)582。
在数据被写入寄存器Y(PSR-Y)582以后,对安全VM 356进行通知(INTRP:中断)。安全VM 356执行与写入寄存器Y(PSR-Y)582的值相对应的处理。例如,关于应用执行单元525已经进行的消息显示的用户输入值被写入寄存器Y(PSR-Y)582。
对于本配置,不设置先前参照图19所描述的寄存器Z,即用于在安全VM 356与应用执行单元525之间相互处理状态通知的寄存器。对于本处理示例,将值写入寄存器X(PSR-X)581和寄存器Y(PSR-Y)582被用于安全VM 356与应用执行单元525之间的状态通知。
如图所示,在安全VM 356执行对安全VM 356对其执行写操作而应用执行单元525对其执行读操作的寄存器X(PSR-X)581的写操作时,安全VM 356执行用于将除与通知内容相对应的值之外的处理状态位写到寄存器X(PSR-X)581的处理,诸如寄存器写数据591。应用执行单元525可以通过读取该处理状态位来了解处理状态。
如图所示,在应用执行单元525执行对应用执行单元525对其执行写操作而安全VM 356对其执行读操作的寄存器Y(PSR-Y)582的写操作时,应用执行单元525执行用于将除与通知内容相对应的值之外的处理状态位写到寄存器Y(PSR-Y)582的处理,诸如寄存器写数据592。安全VM 356可以通过读取该处理状态位来了解处理状态。
因此,对于本配置,在将数据写入寄存器X(PSR-X)581和寄存器Y(PSR-Y)582时将处理状态位一起写入,从而实现安全VM 356与应用执行单元524之间的相互处理状态通知。
下面将参照图23描述使用本配置的消息呈现和用户输入接收处理序列。图23示出用作为安全信息处理单元的安全VM 356、应用执行单元525、和两个寄存器:寄存器X(PSR-X)581和寄存器Y(PSR-Y)582。
通常在应用执行单元525处执行的应用程序是用于执行例如存储在信息记录介质中的Java(注册商标)或HDMV内容的应用程序。在安全VM 356和应用执行单元525处所执行的处理序列在图23中被表示为处理步骤S241到S247。下面将描述每一步的处理。
首先,在步骤S241,我们假设安全VM 356在内容再现处理中检测到某种安全问题。如先前参照图6和其它附图所述,安全VM 356接收来自事件处理器354的监控信息,并且如果检测到处理错误或未授权处理,则这样的信息被输入到安全VM 356。
如果在内容再现处理中检测到错误、诸如某种安全问题,则安全VM 356在步骤S242将预先设置对应于每个错误的错误代码写入寄存器X(PSR-X)581。在将数据写入寄存器X(PSR-X)581时,预定的状态通知位也一起被写入。
由于执行对寄存器的写操作,对应用执行单元525进行基于寄存器X(PSR-X)581处改变的事件通知,从而应用执行单元525可以知道已经对寄存器X(PSR-X)581执行了写操作。
在步骤S243,应用执行单元525通过事件通知检测到寄存器写入,并获取被写入寄存器X(PSR-X)581的错误代码和状态通知位。在获取写入寄存器X(PSR-X)581的错误代码之后,应用执行单元525在步骤S244将设置对应于所获取的错误代码的消息输出到显示单元。
如先前参照图14所述,显示在显示单元上的消息数据是例如其中已经设置了消息和用户输入单元的显示数据等。在步骤S245检测到用户输入以后,应用执行单元525在步骤S246将用户输入信息写入寄存器Y(PSR-Y)582。在将数据写入寄存器Y(PSR-Y)582时,预定的状态通知位也被一起写入。
在数据被写入寄存器Y(PSR-Y)582时,对安全VM 356进行通知(INTRP:中断)。在通过通知(INTRP:中断)检测到对寄存器Y(PSR-Y)582的写操作以后,安全VM 356在步骤S247执行与写入寄存器Y(PSR-Y)582的值相对应的处理,例如获取关于应用执行单元524已经进行的消息显示的用户输入值,并执行与用户输入值相对应的处理。这时,安全VM 356还读取由安全VM 356写入寄存器Y(PSR-Y)582的状态通知位,并确认处理状态。
将被写入寄存器的状态位可以根据与先前参照图20所描述的用于PSR-Z的设置值的示例相同的设置结构。例如,在初始状态设置value=0,而在安全VM 356已经完成处理,而应用执行单元525将执行处理步骤时,设置value=1,然后接下来,在应用执行单元525已经完成处理,而安全VM 356将执行处理步骤时,设置value=2,等等,以便根据安全VM 356和应用执行单元525已经执行的处理进程来设置值。而且,结束或取消处理时,该值返回到初始设置value=0。
因此,安全VM 356和应用执行单元525可以通过将寄存器X(PSR-X)581和寄存器Y(PSR-Y)582用于相互处理状态通知来按照处理序列执行正确处理。
另外,安全VM 356与应用执行单元525之间的可靠性确认处理可以由都使用可用寄存器X(PSR-X)581和寄存器Y(PSR-Y)582的安全VM 356和应用执行单元525来执行。
下面将参照图24描述安全VM 356与应用执行单元525之间的可靠性确认处理序列。图24是描述安全VM 356和应用执行单元525执行查询/响应处理、从而确认相互正正确操作的处理序列的图。下面将描述这些步骤。
首先,在步骤S251,应用执行单元525生成适当的值(随机数),并将其写入寄存器Y(PSR-Y)582。这时,应用执行单元525也将指示处理状态的状态位写入寄存器Y(PSR-Y)582。
安全VM 356通过通知(INTERP PresentationLayer)检测到已经将数据写入寄存器Y(PSR-Y)582,并在步骤S252读取写入寄存器Y(PSR-Y)582的数据。在读取时,也读取状态位,并确认处理状态。
进一步,安全VM 356对从寄存器Y(PSR-Y)582所读取的值(随机数)执行预定的数据处理、诸如计算处理或加密处理,并在步骤S253,将结果值写入寄存器X(PSR-X)581。在进行该处理时,安全VM 356还将指示处理状态的状态位写入寄存器X(PSR-X)581。
在步骤S254,应用执行单元525读取写入寄存器X(PSR-X)581的数据。在读取时,还读取状态位,并确认处理状态。
接下来,在步骤S255,应用执行单元525执行所读取数据的检查。例如,应用执行单元525基于应用执行单元525所生成并通知给安全VM 356的随机数,进行与由其本身所执行的计算或加密的结果的比较相互校验,并且如果这与从寄存器X(PSR-X)581所读取的值匹配,则确定安全VM 356是执行正确处理的安全VM 356。注意,应用执行单元525和安全VM 356对随机数所执行的计算处理或加密处理优选是基于共享保密信息的处理。
可以进行这样的布置,其中图24所示的可靠性确认处理被反复执行多次,或者其中安全VM 356发布随机数。如先前描述的(4.2.4)使用应用执行单元所使用的寄存器的处理示例1,具有该可靠性确认功能使得能够对在应用执行单元525处所执行的应用程序进行可靠性确认,因此与过去一样的配置是足够的,而不提供对应用层(AV层)的鲁棒性的任何特别限制,这是一个极大的优点。
(4.3)使用共享存储空间的消息显示和内容使用控制
下面将描述使用共享存储空间的消息显示和内容使用控制。
图25图解了使用共享存储空间实现消息显示和内容使用控制的基本配置。图25所示的安全VM 356是与参照图6、图10和图11描述的安全VM 356相同的安全VM 356。也就是说,这是在用于执行数据变换处理的主机中设置作为虚拟机的安全VM 356,用作为安全信息处理单元。
如参照图6和其它附图所述,用作为安全信息处理单元的安全VM 356执行从信息记录介质310读取包括命令代码信息的数据变换处理程序315并执行该程序的处理。另外,安全VM 356输入执行主机应用程序的播放器(信息处理设备)的ID信息作为播放器信息355,并输入来自事件处理器354的监控信息。事件处理器354执行关于安全VM 356所执行的处理是否正被正确执行的仿真器校验,并且其它主机应用程序和用作为主机应用程序执行设备的播放器(信息处理设备)的处理和状态受到监控,并且如果检测到处理错误或未授权处理等,则取消安全VM 356的数据变换处理。
对于本处理示例,将要在用作为安全信息处理单元的安全VM356与应用执行单元601之间共享的存储空间612设置在存储器611内,其中使用共享存储空间612在它们之间传输消息、命令、参数、数据等等。在应用执行单元601处所执行的应用程序是用于执行各类数据处理的应用程序,并且是在诸如PC等的信息处理设备上所执行的各种应用程序,用于通过参照图6、图10和图11所描述的主机350执行内容再现处理。
例如,应用程序是用于提供UI功能以便显示各类消息并接收用户输入的UI功能提供程序,如前所述、用于执行存储在信息记录介质中的Java(注册商标)和HDMV内容的应用程序等等。注意,这些应用程序可以是信息处理设备已经预先存储在硬盘等中的程序,或者是从信息记录介质中读出的程序。
图25中所示的共享存储空间612被用作为安全VM 356和应用执行单元601都能对其进行读写的空间。因此,利用存储空间代替寄存器,可以实现与参照图15到图24所述的各种类型处理相同的处理。也就是说,已经被描述作为寄存器应用处理的以下类型的处理:
(a)参照图16描述的使用寄存器的UI功能提供应用程序
(b)参照图17描述的使用寄存器和标题转换的UI功能提供
(c)参照图18描述的使用寄存器的内容使用控制处理
(d)参照图19到图24描述的寄存器使用处理
是通过经由共享存储空间612在安全VM 356与应用执行单元601之间传输消息、命令、参数、数据等而实现的。
使用存储空间作为数据写区域是有利的,其原因在于,与使用寄存器的情形相比,写数据大小可以更大,从而拓宽了应用程序的范围。例如,安全VM 356可以通过将数据写入共用存储器而将由此生成的数据提供给应用执行单元601,而相反地,很容易实现应用执行单元601将所生成的数据传递给安全VM 356的处理,并且另外,也可以实现安全VM 356的处理与应用执行单元601的处理之间的联合数据处理。
(4.4)关于创作过程
为了实现其中利用上述寄存器或存储空间在安全VM与应用程序之间执行数据和参数输入/输出的配置,在应用层所执行的应用程序优选地执行创作,作为带有预先设置在其中的用于执行周期性寄存器参考或存储器参考的处理例程的程序。
在参照图17所描述的其中允许通过安全VM改变标题的配置的情况下,其中具有由安全VM所指定的标题的应用程序执行周期性寄存器参考或存储器参考的程序就足够了,但是对于其中不允许通过安全VM改变标题的配置来说,必需的是,在应用层所执行的基本上所有应用程序执行创作,作为带有预先设置的用于执行周期性寄存器参考或存储器参考的处理例程的程序。
如上所述,在应用层所执行的程序例如是用于执行存储在信息记录介质中的Java(注册商标)或HDMV内容的应用程序,并且执行关于这些内容的创作、以便是带有预先设置在其中的用于执行周期性寄存器参考或存储器参考处理的处理例程的程序支持上述处理。
下面将参照图26和27描述这些内容的创作过程和信息记录介质制作程序。图26是描述在不允许通过安全VM进行标题转换的情形中的内容创作过程的图。
一个应用程序被生成作为用作为在应用层所执行的Java(注册商标)或HDMV内容、和包括用作为安全VM读取和执行的命令代码信息的内容代码的内容的应用程序。步骤S301是该应用程序和内容代码的开发/验证过程。
在步骤S301所生成的应用程序被创作为带有预先设置在其中的用于执行周期性寄存器参考或存储器参考处理的处理例程的程序。而且,内容代码经设置包含定义执行安全VM的消息输出和周期性参数输出的命令代码。
在步骤S302,在必要的情况下,对步骤S301中所生成的应用程序和内容代码进行加密,然后在步骤S303中将其写入盘中以制造光盘。步骤S303的光盘制作过程包括主盘的制作和压模工序。
根据这些过程,记录在信息记录介质中的内容是包含应用程序和虚拟机所执行的代码信息的内容,其中应用程序被设置为包含用于执行周期性寄存器参考或存储器参考的处理例程的程序,并且代码信息被配置为包含用于将通过安全检查所获取的错误代码写入寄存器或存储器的处理的执行命令的信息。
存储在信息记录介质中的这些内容是能够执行参照图15到图25所描述的各类处理的内容。
图27图解了在允许通过安全VM进行标题转换的情形中的内容创作过程。在参照图17描述的其中允许通过安全VM进行标题转换的配置示例中,其中只有具有由安全VM所指定的标题的应用程序执行周期性寄存器参考或存储器参考的程序就足够了。
因此,对于正常的应用程序,不需要被设置为包含用于执行周期性寄存器参考或存储器参考的处理例程的程序,并且应用程序可以自由开发。将某应用程序设置为包含用于执行周期性寄存器参考或存储器参考的处理例程的程序就足够了。
如图27所示,步骤S321中的应用程序开发/验证过程和步骤S322中的内容代码开发/验证过程是分开的,从而可以自由开发应用程序开发/验证过程,而不涉及内容代码。只有作为安全VM进行标题转换的目标的应用程序才需要根据图26所示的处理被创作。
对于图27中的过程,步骤S322中的内容代码开发/验证过程可以根据步骤S321中的应用程序开发/验证过程来执行。随后,在步骤S323中,如果需要就执行加密,然后在步骤S324中被写入盘中以制作光盘。步骤S324的光盘制作过程包括制作主盘和压模工序。
由于操作原因,应用程序开发/验证过程与内容代码开发/验证过程被分开,因此,出于实践目的,根据图27所示的过程的配置是优选的,并且通过将某应用程序设置为包含用于在允许通过安全VM进行标题转换的配置中执行周期性寄存器参考或存储器参考的处理例程的程序就允许自由开发其它正常应用程序。
5.信息处理设备的配置
接下来,将参照图28描述作为主机执行应用程序的信息处理设备的硬件配置示例。信息处理设备800具有根据各类程序-诸如OS、内容再现和记录应用程序、和用于相互验证处理的程序等-执行数据处理的CPU 809;用作为用于程序、参数等的存储区域的ROM 880;存储器810;和用于数字信号输入/输出的输入/输出I/F 802;用于模拟信号输入/输出的具有A/D、D/A转换器805的输入/输出I/F 804;用于执行MPEG数据编码和解码处理的MPEG CODEC 803;用于执行TS(传输流)-PS(程序流)处理的TS-PS处理单元806;用于执行各类加密处理-诸如加密内容的相互验证解密处理等-的加密处理单元807;记录介质812、诸如硬盘;以及用于驱动记录介质812并执行数据记录/再现信号的输入/输出的驱动器811,其中每个区块都与总线801相连。
信息处理设备(主机)800通过连接总线-诸如例如ATAPI-BUS-与驱动器相连。修补表、内容等通过数字信号输入/输出I/F 802被输入/输出。加密处理和解密处理由加密处理单元807应用例如AES算法等执行。
注意,用于执行内容再现或记录处理的程序被保存在例如ROM808中,并且执行程序期间,如果需要,存储器810被用于保存参数和数据的工作区域。
ROM 808或记录介质812存储例如管理中心的公共密钥、用于主机的保密密钥、用于主机的公共密钥证明、还有用作为撤消列表的驱动器CRL,等等。
在内容再现处理时,基于上述安全VM 356已经获取的安全检查信息,执行各种消息显示。
至此,本文已经参照具体实施例对本发明进行了详细描述。但是,有一点是不言而喻的,即本领域的技术人员可以在不脱离本发明的本质的情况下对实施例作出修改或替换。也就是说,本发明已经以示例形式被公开,并且不应将本发明理解为限制性的。应参照权利要求书部分来判断本发明的本质。
注意,说明书中所描述的处理系列可以由硬件、软件、或两者的组合来执行。在用软件执行处理的情形中,记录处理序列的程序可以被安装在具有内置专用硬件并被执行的计算机内的存储器中,或者程序可以被安装在能执行各类处理的通用计算机中。
例如,程序可以被预先记录在硬盘或用作为记录介质的ROM(只读存储器)中。或者,它可以暂时性或永久性地被存储(记录)在可移动介质中,诸如软盘、CD-ROM(压缩光盘只读存储器)、MO(磁光)盘、DVD(数字多用盘)、磁盘、半导体存储器等等。这种可移动记录介质可以被提供为所谓的套装软件。
注意,除了将程序从例如上述可移动记录介质安装到计算机之外,还可以通过无线方式将程序从下载地址传送到计算机,或通过诸如LAN(局域网)或因特网这样的电缆网传送到计算机,其中计算机接收以这种方式所传输的程序,以将其安装在诸如硬盘等内置记录介质中。
而且,说明书中所描述的各类处理并不限于按照所描述的时间序列执行,而是可以并行地或独立地执行,这取决于执行处理的设备的处理性能。还要注意,本说明书中所使用的系统是多个设备的逻辑集成,并不限于每个配置都在一个机箱中的设备。
Claims (20)
1.一种用于执行来自信息记录介质的内容再现处理的信息处理设备,包括:
安全信息处理单元,用于基于内容再现序列中的安全检查信息确定输出消息,并将伴随输出消息的选择信息的消息输出命令输出到用户接口处理单元;
用户接口处理单元,用于基于从所述安全信息处理单元所输入的选择信息获取消息信息,并输出到显示单元;
第一寄存器,其中所述安全信息处理单元对其进行写操作,而所述用户接口处理单元对其进行读操作;以及
第二寄存器,其中所述用户接口处理单元对其进行写操作,而所述安全信息处理单元对其进行读操作,
所述安全信息处理单元对所述第一寄存器存储消息选择信息,
所述用户接口处理单元从所述第一寄存器取得所述消息选择信息,对所述显示单元输出与所取得的消息选择信息对应的消息,接收与显示消息相对应的用户输入,并将所接收的用户输入信息存储到所述第二寄存器,
所述安全信息处理单元执行从所述第二寄存器取得所述用户输入信息的处理。
2.如权利要求1所述的信息处理设备,其中所述安全信息处理单元被配置为执行基于安全检查信息确定输出消息内容的处理、和基于内容再现播放器信息确定输出消息语言的处理,并执行将用于按照该确定信息进行选择的消息选择信息输出到所述用户接口处理单元的处理。
3.如权利要求1所述的信息处理设备,其中所述用户接口处理单元被配置为屏上显示(OSD)功能执行单元;
所述安全信息处理单元是用于基于OSD调用(OSD-CALL)执行伴随输出消息的选择信息的消息输出命令的配置。
4.如权利要求1所述的信息处理设备,其中所述安全信息处理单元被配置为用于获取记录在信息记录介质中的命令代码并根据所述命令代码执行数据处理的虚拟机。
5.一种用于执行来自信息记录介质的内容再现处理的信息处理设备,包括:
安全信息处理单元,用于执行获取与内容再现序列中的安全检查信息相对应的错误代码、并将所述错误代码写入第一寄存器的处理;
应用执行单元,用于从所述第一寄存器获取错误代码,获取与所获取的错误代码相对应的消息信息,并将所获取的消息输出在显示单元上;
第一寄存器,其中所述安全信息处理单元对其进行写操作,而所述应用执行单元对其进行读操作;以及
第二寄存器,其中所述应用执行单元对其进行写操作,而所述安全信息处理单元对其进行读操作;
所述安全信息处理单元对所述第一寄存器存储所述错误代码,
所述应用执行单元从所述第一寄存器取得所述错误代码,对所述显示单元输出与所取得的错误代码对应地设定的消息,执行用于接收与显示消息相对应的用户输入,并将所接收的用户输入信息写入第二寄存器的处理;
所述安全信息处理单元被配置为执行用于获取写入所述第二寄存器的用户输入信息的处理。
6.如权利要求5所述的信息处理设备,其中所述安全信息处理单元具有用于将执行应用转换命令输出到所述应用执行单元的配置;
基于所述应用转换命令,所述应用执行单元执行转换到用于经由第一寄存器执行与所述安全信息处理单元的数据传送处理的应用程序,并将消息输出到所述显示单元。
7.如权利要求5所述的信息处理设备,其中所述安全信息处理单元和所述应用执行单元将指示处理状态的状态值写入所述第一寄存器或所述第二寄存器,并且所述安全信息处理单元和所述应用执行单元被配置为读取被写入所述第一寄存器或所述第二寄存器的指示处理状态的状态值,并执行所述处理状态的确认。
8.如权利要求5所述的信息处理设备,其中所述安全信息处理单元和所述应用执行单元被配置为通过应用所述第一寄存器或所述第二寄存器的数据传送处理执行相互可靠性确认处理。
9.如权利要求5所述的信息处理设备,其中所述安全信息处理单元被配置为虚拟机,所述虚拟机获取记录在信息记录介质中的命令代码,并按照所述命令代码执行数据处理。
10.一种用于在信息处理设备中执行来自信息记录介质的内容再现处理的信息处理方法,包括下列步骤:
在安全信息处理单元处执行安全信息处理步骤,用于基于内容再现序列中的安全检查信息确定输出消息,并将伴随所述输出消息的选择信息的消息输出命令输出到用户接口处理单元;和
在用户接口处理单元处执行用户接口处理步骤,用于基于从所述安全信息处理单元所输入的选择信息获取消息信息,并输出到显示单元,
所述信息处理设备具备第一寄存器,其中所述安全信息处理单元对其进行写操作,而所述用户接口处理单元对其进行读操作;以及第二寄存器,其中所述用户接口处理单元对其进行写操作,而所述安全信息处理单元对其进行读操作,
所述安全信息处理步骤具备所述安全信息处理单元对所述第一寄存器存储所述选择信息的步骤,
所述用户接口处理步骤具备所述用户接口处理单元从所述第一寄存器取得所述选择信息,对所述显示单元输出与所取得的选择信息对应地设定的消息,
还具备如下步骤:
所述用户接口处理单元接收与对所述显示单元的显示消息相对应的用户输入,由所述用户接口处理单元将所接收的用户输入信息存储到所述第二寄存器的步骤;以及
所述安全信息处理单元具有执行从所述第二寄存器取得所述用户输入信息的处理的步骤。
11.如权利要求10所述的信息处理方法,其中所述安全信息处理步骤执行基于安全检查信息确定输出消息内容的处理、基于内容再现播放器信息确定输出消息语言的处理,并执行用于根据该确定信息进行选择的消息选择信息输出到所述用户接口处理单元的处理。
12.如权利要求10所述的信息处理方法,其中所述用户接口处理单元被配置为屏上显示(OSD)功能执行单元;
所述安全信息处理步骤基于OSD调用(OSD-CALL)执行伴随所述输出消息的选择信息的消息输出命令。
13.一种用于在信息处理设备中执行来自信息记录介质的内容再现处理的信息处理方法,包括下列步骤:
在安全信息处理单元处执行安全信息处理,用于执行获取与内容再现序列中的安全检查信息相对应的错误代码、并将所述错误代码写入第一寄存器的处理;和
在应用执行单元处执行应用执行步骤,用于从所述第一寄存器获取所述错误代码,获取与所获取的错误代码相对应的消息信息,并将所获取的消息输出在显示单元上,
所述信息处理设备具备第一寄存器,其中所述安全信息处理单元对其进行写操作,而所述应用执行单元对其进行读操作;以及第二寄存器,其中所述应用执行单元对其进行写操作,而所述安全信息处理单元对其进行读操作,
所述安全信息处理步骤具备所述安全信息处理单元对所述第一寄存器存储所述错误代码的步骤,
所述应用执行步骤具备所述应用执行单元从所述第一寄存器取得所述错误代码,对所述显示单元输出与所取得的错误代码对应地设定的消息,
进一步包括下列步骤:
在所述应用执行单元处执行如下处理,用于接收与对所述显示单元的显示消息相对应的用户输入,并将所接收的用户输入信息写入第二寄存器;以及
在所述安全信息处理单元处执行如下处理,用于获取写入所述第二寄存器的用户输入信息。
14.如权利要求13所述的信息处理方法,进一步包括下列步骤:
在所述安全信息处理单元处将执行应用转换命令输出到所述应用执行单元;和
基于所述应用转换命令,在所述应用执行单元处执行转换到用于经由所述第一寄存器执行与所述安全信息处理单元的数据传送处理的应用程序,并将消息输出到所述显示单元。
15.如权利要求13所述的信息处理方法,进一步包括下列步骤:
在所述安全信息处理单元或所述应用执行单元处,执行将指示处理状态的状态值写入所述第一寄存器或所述第二寄存器;和
在所述安全信息处理单元或所述应用执行单元处执行对被写入所述第一寄存器或所述第二寄存器的指示处理状态的状态值的读取,并执行所述处理状态的确认。
16.如权利要求13所述的信息处理方法,进一步包括在所述安全信息处理单元和所述应用执行单元处执行的步骤,用于通过应用所述第一寄存器或所述第二寄存器的数据传送处理执行相互可靠性确认处理。
17.一种用于在具有安全信息处理单元和用户接口处理单元的信息处理设备中的安全信息处理单元执行的计算机程序,
在所述安全信息处理单元处具有安全信息处理代码,该安全信息处理代码使得基于内容再现序列中的安全检查信息确定输出消息,并将所述输出消息的选择信息输出到用户接口处理单元,
所述信息处理设备具有第一寄存器,其中所述安全信息处理单元对其进行写操作,而所述用户接口处理单元对其进行读操作;以及第二寄存器,其中所述用户接口处理单元对其进行写操作,而所述安全信息处理单元对其进行读操作,
使得将所述输出消息的选择信息输出到用户接口处理单元的安全信息处理代码包括所述安全信息处理单元对所述第一寄存器存储所述选择信息的代码,
通过在所述用户接口处理单元执行用户接口处理代码,
从所述第一寄存器取得所述安全信息处理单元存储的选择信息,
执行基于所取得的选择信息的消息信息取得,
所述用户接口处理单元取得所述选择信息,对显示单元输出与所取得的选择信息对应地设定的消息,接收与显示消息相对应的用户输入,并将所接收的用户输入信息存储到所述第二寄存器,
所述安全信息处理代码进一步包括使所述安全信息处理单元执行从所述第二寄存器取得所述用户输入信息的处理的代码。
18.一种用于在具有安全信息处理单元和用户接口处理单元的信息处理设备中的用户接口处理单元执行的计算机程序,
所述信息处理设备具有第一寄存器,其中所述安全信息处理单元对其进行写操作,而所述用户接口处理单元对其进行读操作;以及第二寄存器,其中所述用户接口处理单元对其进行写操作,而所述安全信息处理单元对其进行读操作,
在所述用户接口处理单元中具有用户接口处理代码,该用户接口处理代码使得所述安全信息处理单元取得存储在第一寄存器的消息选择信息,并执行基于取得信息的处理,
所述用户接口处理代码具有:
所述安全信息处理单元从所述第一寄存器取得根据在内容再现序列中的安全检查信息确定的消息选择信息的代码;
将与从所述第一寄存器取得的消息选择信息对应地设定的消息输出到显示单元的代码;以及
接收与显示消息相对应的用户输入,并将所接收的用户输入信息存储到所述第二寄存器的代码。
19.一种用于在具有安全信息处理单元和应用执行单元的信息处理设备中的安全信息处理单元执行的计算机程序,
在安全信息处理单元处具有安全信息处理代码,该安全信息处理代码使得获取与内容再现序列中的安全检查信息相对应的错误代码、并将所述错误代码输出到应用执行单元,
所述信息处理设备具有第一寄存器,其中所述安全信息处理单元对其进行写操作,而所述应用执行单元对其进行读操作;以及第二寄存器,其中所述应用执行单元对其进行写操作,而所述安全信息处理单元对其进行读操作,
使得将所述错误代码输出到应用执行单元的安全信息处理代码是所述安全信息处理单元对所述第一寄存器存储所述错误代码的代码,
通过在所述应用执行单元执行应用执行单元处理代码,
从所述第一寄存器取得所述安全信息处理单元存储到所述第一寄存器的错误代码,执行与所取得的错误代码对应的消息取得,对显示单元输出与所取得的错误代码对应地设定的消息,接收与显示消息相对应的用户输入,并将所接收的用户输入信息存储到所述第二寄存器,
所述安全信息处理代码进一步包括使所述安全信息处理单元执行从所述第二寄存器取得所述用户输入信息的处理的代码。
20.一种用于在具有安全信息处理单元和应用执行单元的信息处理设备中的应用执行单元执行的计算机程序,
所述信息处理设备具有第一寄存器,其中所述安全信息处理单元对其进行写操作,而所述应用执行单元对其进行读操作;以及第二寄存器,其中所述应用执行单元对其进行写操作,而所述安全信息处理单元对其进行读操作,
在所述应用执行单元中具备应用执行单元处理代码,该应用执行单元处理代码使得取得所述安全信息处理单元对所述第一寄存器存储的错误代码,并执行基于错误代码的处理,
所述应用执行单元处理代码具有:
所述安全信息处理单元从所述第一寄存器取得根据在内容再现序列中的安全检查信息确定的错误代码的处理代码;
将与从所述第一寄存器取得的错误代码对应地设定的消息输出到显示单元的处理代码;以及
接收与显示消息相对应的用户输入,并将所接收的用户输入信息存储到所述第二寄存器的代码。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005245943A JP4765485B2 (ja) | 2005-08-26 | 2005-08-26 | 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム |
JP2005-245943 | 2005-08-26 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006101262168A Division CN101131721B (zh) | 2005-08-26 | 2006-08-25 | 信息处理设备,信息记录介质,信息处理方法,和计算机程序 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102750467A true CN102750467A (zh) | 2012-10-24 |
Family
ID=37922160
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210123935XA Pending CN102750467A (zh) | 2005-08-26 | 2006-08-25 | 信息处理设备、信息处理方法和计算机程序 |
CN2006101262168A Active CN101131721B (zh) | 2005-08-26 | 2006-08-25 | 信息处理设备,信息记录介质,信息处理方法,和计算机程序 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006101262168A Active CN101131721B (zh) | 2005-08-26 | 2006-08-25 | 信息处理设备,信息记录介质,信息处理方法,和计算机程序 |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP4765485B2 (zh) |
CN (2) | CN102750467A (zh) |
TW (1) | TW200737134A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016197711A1 (zh) * | 2015-06-09 | 2016-12-15 | 中兴通讯股份有限公司 | 一种配置寄存器的方法和装置 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4655951B2 (ja) | 2006-02-06 | 2011-03-23 | ソニー株式会社 | 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム |
KR101425621B1 (ko) | 2008-01-15 | 2014-07-31 | 삼성전자주식회사 | 컨텐츠를 안전하게 공유하는 방법 및 시스템 |
JP4799626B2 (ja) * | 2009-02-04 | 2011-10-26 | ソニーオプティアーク株式会社 | 情報処理装置、および情報処理方法、並びにプログラム |
JP5719244B2 (ja) | 2011-06-29 | 2015-05-13 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 安全に管理された仮想マシンの実行環境を構築する方法、プログラムおよびコンピュータ装置 |
JP5901843B2 (ja) * | 2013-03-28 | 2016-04-13 | 三菱電機株式会社 | 再生装置、制御方法及びプログラム |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0273083B1 (en) * | 1986-12-30 | 1993-10-06 | International Business Machines Corporation | Non-locking queueing mechanism |
JPH0644026A (ja) * | 1992-07-23 | 1994-02-18 | Kobe Nippon Denki Software Kk | メッセージ出力制御方式 |
US5862299A (en) * | 1996-06-19 | 1999-01-19 | Sony Corporation | Conditional access system for local storage device |
JP3537959B2 (ja) * | 1996-07-26 | 2004-06-14 | 栄司 岡本 | 情報復号化装置 |
US6047391A (en) * | 1997-09-29 | 2000-04-04 | Honeywell International Inc. | Method for strong partitioning of a multi-processor VME backplane bus |
JP2000163803A (ja) * | 1998-11-24 | 2000-06-16 | Victor Co Of Japan Ltd | 情報記録媒体及び情報記録媒体真贋判定装置 |
JP4657468B2 (ja) * | 2001-02-23 | 2011-03-23 | 株式会社沖データ | ヘルプ機能を有する装置 |
JP3921057B2 (ja) * | 2001-05-11 | 2007-05-30 | 株式会社エヌ・ティ・ティ・ドコモ | アクセス方法および通信端末 |
CA2528428C (en) * | 2003-06-05 | 2013-01-22 | Intertrust Technologies Corporation | Interoperable systems and methods for peer-to-peer service orchestration |
WO2007000987A1 (ja) * | 2005-06-27 | 2007-01-04 | Matsushita Electric Industrial Co., Ltd. | 記録媒体、再生装置、メッセージ取得方法、メッセージ取得プログラム、集積回路 |
-
2005
- 2005-08-26 JP JP2005245943A patent/JP4765485B2/ja active Active
-
2006
- 2006-08-15 TW TW095129960A patent/TW200737134A/zh unknown
- 2006-08-25 CN CN201210123935XA patent/CN102750467A/zh active Pending
- 2006-08-25 CN CN2006101262168A patent/CN101131721B/zh active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016197711A1 (zh) * | 2015-06-09 | 2016-12-15 | 中兴通讯股份有限公司 | 一种配置寄存器的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
TW200737134A (en) | 2007-10-01 |
TWI336072B (zh) | 2011-01-11 |
JP2007058749A (ja) | 2007-03-08 |
JP4765485B2 (ja) | 2011-09-07 |
CN101131721A (zh) | 2008-02-27 |
CN101131721B (zh) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101112036B (zh) | 信息处理装置、信息记录介质制造装置和信息记录介质 | |
CN102522098B (zh) | 处理信息的方法和设备、制造信息记录介质的方法和设备、信息记录介质和计算机程序 | |
US8424101B2 (en) | Information processing apparatus and method, information recording medium manufacturing apparatus and method, and information recording medium | |
CN101107656B (zh) | 使用本地存储从记录介质再现数据的装置及方法 | |
CN1848271B (zh) | 信息处理装置和方法 | |
CN101131721B (zh) | 信息处理设备,信息记录介质,信息处理方法,和计算机程序 | |
CN100593205C (zh) | 信息处理设备和方法、信息记录介质、其制造设备和方法、及计算机程序 | |
CN102547201B (zh) | 信息处理设备及其方法、信息记录介质制造设备及其方法 | |
CN101017686B (zh) | 信息处理设备、信息记录介质及制造设备、方法和程序 | |
JP4905566B2 (ja) | 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム | |
JP4905587B2 (ja) | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C05 | Deemed withdrawal (patent law before 1993) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20121024 |