信息处理系统的制作方法

文档序号:6454018阅读:322来源:国知局
专利名称:信息处理系统的制作方法
技术领域
本发明涉及信息处理方法与设备、验证方法、半导体IC、信息处理系统以及程序供给介质,具体地说,本发明涉及用于实施预置处理的数据的信息处理方法与设备、验证方法、半导体IC、信息处理系统以及用于存储程序供给介质。
背景技术
适合于音乐数据的数字记录和/或再现装置,例如CD(致密光盘)或MD(微型盘),最近有了广泛应用。因此通过采用与例如个人计算机组合在一起的、适合于音乐数据的数字记录和/或再现装置,相对容易地制作数字音乐数据的非法复制品已经成为可能。所以,提出了各种各样防止象被保护版权的作品的音乐数据的非法复制的方法。
例如,一种建议是在控制该正在拷贝的数据源的软件控制下,在正在拷贝的数据源和正在拷贝的目的装置之间进行相互验证,并且如果获得适当的验证结果,则将音乐数据针对正在拷贝的目的装置加密,然后该装置解码和使用该加密数据。
还有一种建议是借助于存储在预置硬件中的鉴别信息,在正在拷贝的数据源和正在拷贝的目的装置之间进行相互验证。
这些建议有一个共同点是依靠硬线路逻辑的硬件执行验证、加密以及解码。
但如果验证、加密以及解码单独与软件一起执行,则该软件有被分析和被修改以制造音乐数据的非法复制品的危险。
而且如果预置ID存储在该硬件上以便于由该个人计算机上的软件读取和使用,则由此读出的ID在发送到该软件的过程中、有被读出、被分析和被修改的危险。
此外,如果验证、加密以及解码依靠线路逻辑的硬件执行,则可能防止分析和修改,但如果验证、加密以及解码是新的,则需要用新硬件替换已有的硬件或者增加新的硬件。
发明的公开因此本发明的一个目的是提供一种信息处理方法与设备、验证方法、半导体IC、信息处理系统以及一种能防止其中存储的数据被非法读出或者被分析的程序供给介质。
一方面,本发明提供一种经过网络连接到预置信息处理设备的信息供给介质,它包括通信部件,用于从信息处理设备接收预置程序并用于发送加密形式的程序给信息处理设备;以及加密部件,用于加密被通信部件接收的程序。
另一方面,本发明提供一种用于由经过网络连接到预置信息处理设备的信息供给介质供给信息的方法,它包括通信步骤从信息处理设备接收预置程序并且发送加密形式的程序给信息处理设备;以及加密步骤加密被通信部件接收的程序。
再另一方面,本发明提供一种用于供给用来执行以下处理的计算机可读程序的供给介质该处理包括从信息处理设备接收预置程序并且发送加密形式的程序给信息处理设备的通信步骤;以及加密被通信部件接收的程序的加密步骤。
再另一方面,本发明提供适合于与其它信息处理设备相互验证的一种信息处理设备,它包括选择部件,用于从维持该预置处理的一个或多个相互验证程序中,为正在被执行的相互验证选择处理;以及相互验证部件,用于通过选择部件执行被选择的相互验证程序。
再另一方面,本发明提供用于通过适合于与其它信息处理设备相互验证的信息处理设备、处理该信息的方法,以执行预置处理,其中该方法包括选择步骤,用于从维持该预置处理的一个或多个相互验证程序中,为正在被执行的相互验证选择处理;以及相互验证步骤,用于执行被选择的相互验证程序。另一方面,本发明通过选择部件提供一种验证程序。
再另一方面,本发明提供一种用于供给一种用来执行以下处理的计算机可读程序的供给介质该处理包括从维持该预置处理的一个或多个相互验证程序中,为正在被执行的相互验证选择处理的选择步骤;以及相互验证步骤,用于执行被选择的相互验证程序。
再另一方面,本发明提供用于验证的方法,包括在第一设备中产生第一随机数;从第一设备发送第一设备的ID、该密钥属性信息以及第一随机数到第二设备;在第二设备中产生第二随机数;通过第二设备接收从第一设备中发送的第一设备的ID、密钥属性信息以及第一随机数;从该密钥属性信息中计算出在第二设备中的密钥;由第二设备中的密钥和第一及第二随机数产生第三随机数;从第二设备发送关于第一和第二随机数以及该密钥的信息到第一设备;在第一设备中,接收关于从第二设备中发送的第一和第二随机数以及该密钥的信息;从关于第一设备中的密钥信息中产生密钥;由第一设备中的密钥和第一及第二随机数产生第四随机数;从第一设备发送第四随机数到第二设备;以及从第三和第四随机数以及第一和第二设备中每一个的密钥中寻找临时密钥(transient key)。
再另一方面,本发明提供用于验证的方法,包括在第一设备中产生第一随机数;从第一设备发送第一设备的ID、第一设备的密钥属性信息、第二设备的密钥属性信息以及第一随机数到第二设备;在第二设备中产生第二随机数;在第二设备中接收从第一设备中发送的第一设备的ID、第一设备的密钥属性信息、第二设备的密钥属性信息以及第一随机数;从第二设备中的该密钥属性信息中计算出在第二设备中的第一密钥;从第一设备中的该密钥属性信息中计算出在第二设备中的第二密钥;由第二设备中的密钥和第一及第二随机数产生第三随机数;从第二设备发送关于第二和第三随机数以及该密钥的信息到第一设备;在第一设备中,接收关于从第二设备中发送的第二和第三随机数以及该密钥的信息;从关于第一设备中的该密钥的信息中产生第二密钥;由第一设备中的密钥和第一及第二随机数产生第四随机数;从第一设备发送第四随机数到第二设备;以及从第三和第四随机数以及第一和第二设备中每一个的密钥中寻找临时密钥。
再另一方面,本发明提供一种用于供给预置加密的数据和加密该预置数据的密钥的信息供给设备,包括通信部件,用于从该信息处理设备接收有关于由该信息处理设备下载的数据的用途的数据和结算(settlement)所必需的数据;以及结算部件,用于根据有关于由该信息处理设备下载的数据的用途的数据和结算所必需的数据进行结算。
再另一方面,本发明提供一种用于给信息供给设备供给预置加密的数据和加密该预置数据的密钥的信息方法,包括通信步骤用于从该信息处理设备接收有关于由该信息处理设备下载的数据的用途的数据和结算所必需的数据;以及结算步骤用于根据有关于由该信息处理设备下载的数据的用途的数据和结算所必需的数据进行结算。
再另一方面,本发明提供一种供给介质,该介质用于供给被用来促使用于供给预置加密的数据和加密该预置数据的密钥信息供给设备执行以下处理的计算机可读程序,该处理包括通信步骤,用于从该信息处理设备接收有关于由该信息处理设备下载的数据的用途的数据和结算所必需的数据;以及结算步骤,用于根据有关于由该信息处理设备下载的数据的用途的数据和结算所必需的数据进行结算。
再另一方面,本发明提供一种信息处理设备,包括第一执行部件,用于解码和执行被加密的程序;以及第二执行部件,用于将该程序供给该第一执行部件,解码该加密程序并且根据第一执行部件的执行结果执行该程序。
再另一方面,本发明提供一种用于处理一种信息处理设备的信息的方法,包括第一执行步骤,用于解码和执行被加密的程序;以及第二执行步骤,用于将该程序供给该第一执行步骤,解码该加密程序并且根据第一执行步骤的执行结果执行该程序再另一方面,本发明提供一种供给介质,该介质用于供给执行如下处理的计算机可读程序,该处理包括第一执行步骤,用于解码和执行被加密的程序;以及第二执行步骤,用于将该程序供给该第一执行步骤,解码该加密程序并且根据第一执行步骤的执行结果执行该程序。
再另一方面,本发明提供一种信息处理设备,它具有装在其中的半导体IC,并被用来供给将由该半导体IC执行的程序,在其中,该设备包括通信部件,它用于发送由该半导体IC执行的程序到验证工作站,并从该验证工作站接收该加密程序;记录部件,用于记录从该验证工作站接收到的加密程序;以及发送部件,用于将被记录在记录部件上的程序发送到该半导体IC。
再另一方面,本发明提供一种用于这样一种信息处理设备的信息处理方法,该信息处理设备具有装在其中的半导体IC,并被用来供给将由该半导体IC执行的程序,在其中,该设备包括通信步骤,它用于发送由该半导体IC执行的程序到验证工作站,并从该验证工作站接收该加密程序;记录步骤,用于记录从该验证工作站接收到的加密程序;以及发送步骤,用于将被记录在记录部件上的程序发送到该半导体IC。
再另一方面,本发明提供一种供给介质,该介质用于供给被用来促使由这样一种信息处理设备执行的处理的计算机可读程序,该处理设备具有装在其中的半导体IC,并被用来供给将由该半导体IC执行的程序,在其中,该设备包括通信步骤,它用于发送由该半导体IC执行的程序到验证工作站,并从该验证工作站接收该加密程序;记录步骤,用于记录从该验证工作站接收到的加密程序;以及发送步骤,用于将被记录在记录部件上的程序发送到该半导体IC。
再另一方面,本发明提供一种信息处理系统,它包括这样一种信息处理设备该设备具有装在其中的半导体IC,并被用来供给将由该半导体IC执行的程序;以及一个验证工作站,在其中,该信息处理设备包括通信部件,它用于发送由该半导体IC执行的程序到验证工作站,并从该验证工作站接收该加密程序;记录部件,用于记录从该验证工作站接收到的加密程序;以及发送部件,用于将被记录在记录部件上的程序发送到该半导体IC,并且在其中,验证工作站包括通信部件,它用于接收由该半导体IC执行的程序,并发送被加密的程序到信息处理设备;以及加密部件,用于加密由该通信部件在预置系统里接收到的程序。
再另一方面,本发明提供一种信息处理设备,它具有装在其中的半导体IC,并被用来供给将由该半导体IC执行的程序,在其中,该设备包括重排部件,用于重排包含在由半导体IC执行的程序中的命令队列;记录部件,用于记录其中的命令队列已经被重排的程序;以及发送部件,用于将被记录在记录部件上的程序发送到该半导体IC。
再另一方面,本发明提供一种用于信息处理设备的信息处理方法,其中的设备具有装在其中的半导体IC,并被用来供给将由该半导体IC执行的程序,在其中,该方法包括重排步骤,用于重排包含在由半导体IC执行的程序中的命令队列;记录步骤,用于记录其中的命令队列已经被重排的程序;以及发送步骤,用于将被记录在记录部件上的程序发送到该半导体IC。
再另一方面,本发明提供一种供给介质,该介质用于供给被用来促使由这样一种信息处理设备执行的处理的计算机可读程序,其中的设备具有装在其中的半导体IC,并被用来供给将由该半导体IC执行的程序,在其中,该处理包括重排步骤,用于重排包含在由半导体IC执行的程序中的命令队列;记录步骤,用于记录其中的命令队列已经被重排的程序;以及发送步骤,用于将被记录在记录部件上的程序发送到该半导体IC。
再另一方面,本发明提供一种信息处理设备,它具有装在其中的半导体IC,并被用来供给将由该半导体IC执行的程序,在其中,该设备包括重排部件,用于重排包含在由半导体IC执行的程序中的命令队列;加密部件,用于加密程序;记录部件,用于记录其中的命令队列已经被重排的程序;以及发送部件,用于将被记录在记录部件上的程序发送到该半导体IC。
再另一方面,本发明提供一种用于信息处理设备的信息处理方法,其中的设备具有装在其中的半导体IC,并被用来供给将由该半导体IC执行的程序,在其中,该方法包括重排步骤,用于重排包含在由半导体IC执行的程序中的命令队列;加密步骤,用于加密程序;记录步骤,用于记录其中的命令队列已经被重排的程序;以及发送步骤,用于将被记录在记录部件上的程序发送到该半导体IC。
再另一方面,本发明提供一种供给介质,该介质用于供给被用来促使由这样一种信息处理设备执行的处理的计算机可读程序,其中的设备具有装在其中的半导体IC,并被用来供给将由该半导体IC执行的程序,在其中,该处理包括重排步骤,用于重排包含在由半导体IC执行的程序中的命令队列;加密步骤,用于加密程序;记录步骤,用于记录其中的命令队列已经被重排的程序;以及发送步骤,用于将被记录在记录部件上的程序发送到该半导体IC。
再另一方面,本发明提供一种用于信息处理设备的信息处理方法,其中的设备具有装在其中的半导体IC,并被用来供给将由该半导体IC执行的程序,在其中,该方法包括重排步骤,用于重排包含在由半导体IC执行的程序中的命令队列的命令;加密该程序的加密步骤;记录步骤,用于记录已经加密和在其中的命令队列已经被重排的程序;以及发送步骤,用于将被记录在记录部件上的程序发送到该半导体IC。
再另一方面,本发明提供一种供给介质,该介质用于供给被用来促使由这样一种信息处理设备执行的处理的计算机可读程序,这种设备具有装在其中的半导体IC,并被用来供给将由该半导体IC执行的程序,在其中,该处理包括重排步骤,用于重排包含在由半导体IC执行的程序中的命令队列的命令;加密该程序的加密步骤;记录步骤,用于记录已经加密和在其中的命令队列已经被重排的程序;以及发送步骤,用于将被记录在记录部件上的程序发送到该半导体IC。
再另一方面,本发明提供一种装在一种信息处理设备上,并被用来基于来自该信息处理设备的命令执行各种处理的半导体IC,在其中,该半导体IC包括接收部件,用于接收从该信息处理设备发送的加密的第一程序;解码部件,用于解码由该接收部件接收的第一程序;容纳部件(holdi ng means),用于容纳适合于处理由该解码部件解码的第一程序的第二程序;执行部件,用于执行基于由该容纳部件容纳的第二程序进行处理的该第一程序;发送部件,用于将由该执行部件执行的结果发送到信息处理设备;计时部件,用于执行计时操作并且基于来自该信息处理设备的时间信息校准当前时间。
再另一方面,本发明提供一种方法,用于处理装在一种信息处理设备上并适合从该信息处理设备来的命令执行各种处理的半导体IC的信息,在其中,该方法包括接收步骤,用于接收从该信息处理设备发送的加密的第一程序;解码步骤,用于解码由该接收步骤接收的第一程序;容纳步骤,用于容纳适合于处理由该解码步骤解码的第一程序的第二程序;执行步骤,用于执行基于由该容纳部件容纳的第二程序进行处理的该第一程序;发送部件,用于将由该执行步骤执行的结果发送到信息处理设备;计时步骤,用于执行计时操作并且基于来自该信息处理设备的时间信息校准当前时间。
再另一方面,本发明提供一种供给介质,该介质用于供给被用来促使由装在一种信息处理设备上,并适合从该信息处理设备来的命令执行各种处理的半导体IC执行处理的计算机可读程序,在其中,该处理包括接收步骤,用于接收从该信息处理设备发送的加密的第一程序;解码步骤,用于解码由该接收步骤接收的第一程序;容纳步骤,用于容纳适合于处理由该解码步骤解码的第一程序的第二程序;执行步骤,用于执行基于由该容纳部件容纳的第二程序进行处理的该第一程序;发送部件,用于将由该执行步骤执行的结果发送到信息处理设备;计时步骤,用于执行计时操作并且基于来自该信息处理设备的时间信息校准当前时间。
再另一方面,本发明提供一种信息处理设备,用于输出各种命令给其装载的半导体IC以在那里执行,在其中,该设备包括发送部件,用于发送一加密程序给该半导体IC;第一接收部件,用于接收该半导体IC中的程序的处理结果数据;第二接收部件,用于从其他设备接收数据和时间信息;存储部件,用于存储由第二接收部件接收的数据;以及校准部件,用于基于由第二接收部件接收的时间信息校准半导体IC的时间信息。
再另一方面,本发明提供一种适合于这样一种信息处理设备的信息处理方法,该设备被用来输出各种命令给其装载的半导体IC以在那里执行,在其中,该方法包括发送步骤,用于发送一加密程序给该半导体IC;第一接收步骤,用于接收该半导体IC中的程序的处理结果数据;第二接收步骤,用于从其他设备接收数据和时间信息;存储步骤,用于存储由第二接收步骤接收的数据;以及校准步骤,用于基于由第二接收步骤接收的时间信息校准半导体IC的时间信息。
再另一方面,本发明提供一种供给介质,该介质用于供给被用来促使一种信息处理设备执行一处理的计算机可读程序,该信息处理设备被用来输出各种命令给其装载的半导体IC以在那里执行,在其中,该处理包括发送步骤,用于发送一加密程序到该半导体IC;第一接收步骤,用于接收该半导体IC中的程序的处理结果数据;第二接收步骤,用于从其他设备接收数据和时间信息;存储步骤,用于存储由第二接收步骤接收的数据;以及校准步骤,用于基于由第二接收步骤接收的时间信息校准半导体IC的时间信息。
再另一方面,本发明提供一种信息处理设备,用于输出各种命令给其装载的半导体IC以在那里执行,在其中,该设备包括存储部件,用于存储该程序以及执行该程序所必需的数据;控制部件,用于控制该存储部件对该程序和数据的存储或读取;第一加密部件,用于使用该半导体IC提供的第一密钥加密该程序;以及第二加密部件,用于使用该半导体IC提供的第二密钥加密该程序。
再另一方面,本发明提供一种适合于这样一种信息处理设备的信息处理方法,该设备被用来输出各种命令给其装载的半导体IC以在那里执行,在其中,该方法包括存储步骤,用于存储该程序以及执行该程序所必需的数据;控制步骤,用于控制该存储步骤对该程序和数据的存储或读取;第一加密步骤,用于使用该半导体IC提供的第一密钥加密该程序;以及第二加密步骤,用于使用该半导体IC提供的第二密钥加密该程序。
再另一方面,本发明提供一种供给介质,该介质用于供给被用来促使这样一种信息处理设备执行一处理的计算机可读程序,该信息处理设备被用来输出各种命令给其装载的半导体IC以在那里执行,在其中,该处理包括存储步骤,用于存储该程序以及执行该程序所必需的数据;控制步骤,用于控制该存储步骤对该程序和数据的存储或读取;第一加密步骤,用于使用该半导体IC提供的第一密钥加密该程序;以及第二加密步骤,用于使用该半导体IC提供的第二密钥加密该程序。
再另一方面,本发明提供一种半导体IC,它适合于装载在一种预置的信息设备上,被用来接收由该信息处理设备提供的程序以及执行该程序所必需的数据并且被用来执行该程序,在其中,该半导体IC包括存储部件,用于存储专用于该半导体IC的第一密钥;密钥产生部件,用于从被该存储部件存储的该第一密钥和由该信息处理设备提供的程序的属性产生第二密钥;第一密钥解码部件,用于使用第三密钥解码该程序;以及第二密钥解码部件,用于使用第二密钥解码该数据。
再另一方面,本发明提供一种信息处理方法,用于处理这样一种半导体IC的信息,该半导体IC适合于装载在一种预置的信息设备上,被用来接收由该信息处理设备提供的程序以及执行该程序所必需的数据并且被用来执行该程序,在其中,该方法包括存储步骤,用于存储专用于该半导体IC的第一密钥;密钥产生步骤,用于从被该存储步骤存储的该第一密钥和由该信息处理设备提供的程序的属性产生第二密钥;第一密钥解码步骤,用于使用第三密钥解码该程序;以及第二解码步骤,用于使用第二密钥解码该数据。
再另一方面,本发明提供一种供给介质,该介质用于供给被用来促使半导体IC执行一处理的计算机可读程序,该半导体IC适合于装载在预置的信息设备上,被用来接收由该信息处理设备提供的程序以及执行该程序所必需的数据并且被用来执行该程序,在其中,该方法包括存储步骤,用于存储专用于该半导体IC的第一密钥;密钥产生步骤,用于从被该存储步骤存储的该第一密钥和由该信息处理设备提供的程序的属性产生第二密钥;第一密钥解码步骤,用于使用第三密钥解码该程序;以及第二解码步骤,用于使用第二密钥解码该数据。
还是另一方面,本发明提供一种信息处理系统,它包括一信息处理设备,用于提供由所述半导体IC执行的程序;以及半导体IC,它适合于装载在一种预置的信息设备上,被用来接收由该信息处理设备提供的程序以及执行该程序所必需的数据并且被用来执行该程序,在其中,该信息处理设备包括存储部件,用于存储该程序以及执行该程序所必需的数据;控制部件,用于控制该存储部件对该程序和数据的存储或读取;第一加密部件,用于使用该半导体IC提供的第一密钥加密该程序;第二加密部件,用于使用该半导体IC提供的第二密钥加密该数据;以及第一通信部件,用于将所述加密程序和执行该程序所必需的数据从该信息处理设备发送到该半导体IC,并且从该半导体IC接收第一和第二密钥,在其中,该半导体IC包括第二通信部件,用于从该信息处理设备接收所述加密程序和执行该程序所必需的数据,并且将第一和第二密钥发送给该信息处理设备;存储部件,用于存储专用于该半导体IC的第三密钥;密钥产生部件,用于从被该存储部件存储的该第三密钥和由该信息处理设备提供的程序的属性产生第二密钥;第一解码部件,用于使用第一密钥解码由第二通信部件接收的程序;以及第二密钥解码部件,用于使用第二密钥解码由第二通信部件接收的数据。
本发明产生下列显著效果(1)该加密数据记录在HDD 21中,该加密密钥也被加密和记录在HDD21中,因此,即使拷贝了记录在HDD 21中的内容,这些内容也不可能被解码,所以能够防止备份大量散发。
(2)如果复制了一次预置的广播节目(air),则在广播节目数据库中登记该广播节目及该记录日期和时间,以防止该广播在一段预置的时间,例如上述实例中的48小时期间被复制,因此能够限制拷贝的次数并且防止备份大量被散发。
此外,由于该数据的哈希(hash)值在该数据库每次被更新时被计算和存储,所以更容易防止修改数据库。
(3)如果该内容被投递到一外部装备,则删除HDD 21上的内容。因此和原始数字数据一样的内容不保留在HDD 21上,所以能够阻止其备份大量被散发。
(4)由于该广播节目数据库提供在HDD 21中,并且每次都检查全部哈希值,所以即使HDD 21的内容在即将移动之前备份并且在刚刚移动之后在HDD 21列出该备份数据,也能可靠地删除该源数据。
(5)由于当从个人计算机1投递数据到外部装备时执行相互验证处理,因此可以防止将数据投递到未授权的装备。
(6)由于在将数据从外部装备投递给计算机1之前通过相互验证处理来检查计算机的软件是否真实,所以可以防止将该内容投递给未授权的软件。
(7)由于ISRC用于核实该音乐广播节目的身份,并且如果得不到ISRC则使用TOC,所以即使在得不到ISRC时也可以核实该音乐广播节目的身份。
(8)由于个人计算机1中的该软件功能的预置部分由在个人计算机1外部提供的适配器执行,所以如果只分析该计算机的该软件,就不能够知道正在执行那个处理。因此,修改该软件以达到希望的功能相当困难。
此外,由于该软件由安全验证站r通过EMD服务器4-1至4-3进行加密或混合,因此很难修改该软件。
(9)由于该程序使用与该程序有关的密钥加密,而执行该程序所必需的数据由与由适配器26产生的密钥加密,所以当只有该程序由诸如CD-ROM之类的介质进行散发时,可以阻止其它适配器26执行该程序的事发生。
(10)由于结算是在下载用于加密诸如音乐数据之类的内容时进行,所以可以迅速下载诸如音乐数据之类的数据量庞大的内容。
在本说明书中,所谓的系统指的是由多个装置构成的整体设备。
作为用于供给执行上述处理的计算机程序的介质的通信介质,诸如网络或卫星,可以用作附加记录介质,诸如磁盘、CD-ROM或固态存储器。
在该信息供给方法和设备以及以上所述的本发明的程序供给介质中,由于预置的程序是从该信息处理设备中接收到的,同时被加密的程序被发送到该信息处理设备,并且加密该被接收到的程序,所以能够防止为非法分析的目的而读出存储的数据。
此外,在本发明的信息供给方法和设备以及程序供给介质中,将被执行的相互验证处理选自一个或多个相互验证处理过程,并且执行该被选中的相互验证处理过程,因此能够防止为非法分析的目的而读出存储的数据。
在本发明的信息供给方法和设备以及程序供给介质中,从该信息处理设备接收有关于由该信息处理设备下载的数据的用途的数据,以及结算所必需的数据,同时发送一密钥给该信息处理设备,并且该结算操作基于与从该信息处理设备接收到的数据的使用有关的数据,以及基于结算所必需的数据进行。
在本发明的信息供给方法和设备以及程序供给介质中,解码和执行该被加密的程序,供给该程序、解码该加密程序并且基于执行结果执行该程序,所以能够防止为非法分析的目的而读出存储的数据。
在本发明的信息供给方法和设备以及程序供给介质中,由半导体IC所执行的程序被发送给验证站,从验证站接收该被加密的程序,并且记录从验证站接收到的加密程序并发送给该半导体IC,所以能够防止为非法分析的目的而读出存储的数据。
在本发明的信息处理系统中,由于由半导体IC所执行的程序被发送给验证站,从验证站接收该被加密的程序,并且依照预设系统加密接收到的程序,所以能够防止为非法分析的目的而读出存储的数据。
在本发明的信息供给方法和设备以及程序供给介质中,包含在由半导体IC所执行的程序中的命令队列被重新排列,记录让人重排了其命令队列的程序并将被记录的程序发送给半导体IC,因而阻止被非法读出和分析存储的数据。
在本发明的信息供给方法和设备以及程序供给介质中,包含在由半导体IC所执行的程序中的命令队列被重新排列,加密该程序,该命令队列重新排列,并且记录该加密程序并将被记录的程序发送给半导体IC,因而阻止被非法读出和分析存储的数据。
在本发明的信息供给方法和设备以及程序供给介质中,存储该程序和执行该所必需的数据,该程序和该数据关于存储和读取进行控制,以半导体IC所提供的第一密钥加密该程序,因而阻止被非法读出和分析存储的数据。
此外,在本发明的信息供给方法和设备以及程序供给介质中,接收从该信息处理设备发送的加密的第一程序,解密接收到的第一程序,保持用于处理解密的第一程序的第二程序,执行由被保持的第二程序处理的第一程序,发送该执行结果给信息处理设备,实施计时操作并基于来自该信息处理设备的时间信息校准当前时间,因而阻止被非法读出和分析存储的数据。
另外,在本发明的信息供给方法和设备以及程序供给介质中,发送被加密的程序给半导体IC,然后该半导体IC处理该程序以产生和输出处理结果,接收该输出结果,从其他设备接收数据和该时间信息,存储接收到的数据并且校准该半导体IC的时间信息,因而阻止被非法读出和分析存储的数据。
此外,在本发明的信息供给方法和设备以及程序供给介质中,预先存储专用于半导体IC的第一密钥,从被存储的第一密钥和由信息处理设备提供的程序的属性产生第二密钥,该程序由第三密钥解码,而数据由第二密钥解码,因而阻止被非法读出和分析存储的数据。
此外,在本发明的信息供给方法和设备以及程序供给介质中,存储执行该程序所必需的数据,该程序和该数据关于存储和读取进行控制,以半导体IC所提供的第一密钥加密该程序,以半导体IC所提供的第二密钥加密该数据,执行该程序所必需的加密程序和数据被发送给半导体IC,从该半导体IC接收第一和第二密钥,接收执行该程序所必需的加密程序和数据,发送第一和第二密钥该信息处理设备,预先存储专用于半导体IC的第三密钥,从被存储的第三密钥和由信息处理设备提供的程序的属性产生第二密钥,接收到的程序由第一密钥解码,而接收到的数据由第二密钥解码,因而再次阻止被非法读出和分析存储的数据。
附图简述

图1展示了本发明的内容管理系统的实施例。
图2图解了个人计算机1的结构。
图3图解了便携装置6的结构。
图4是图解个人计算机1的功能的结构的框图。
图5图解了一个显示操作命令视窗的实例。
图6图解了由音频记录程序113在显示器上展示的视窗的例子。
图7是图解从CD拷贝内容到HDD21的处理的流程图。
图8是图解终端数据库的流程图。图7的步骤S12的检查处理。
图9展示了一个终端数据库的实例。
图10图解了水印。
图11展示了广播节目数据库的实例。
图12是图解从HDD 21移动内容到便携装置6的操作的流程图。
图13是图12的继续,是图解从HDD 21移动内容到便携装置6的操作的流程图。
图14是图13的继续,是图解从HDD 21移动内容到便携装置6的操作的流程图。
图15是图解检查在步骤S55选中的内容的重放条件的检查处理的流程图。
图16图解由便携装置6管理的重放条件。
图17是图解在图12的步骤S58中的格式转换处理的细节的流程图。
图18是图解从HDD 21拷贝内容到便携装置6的操作的流程图。
图19是图18的继续,是图解从HDD 21拷贝内容到便携装置6的操作的流程图。
图20是图19的继续,是图解从HDD 21拷贝内容到便携装置6的操作的流程图。
图21是图解从便携装置6移动内容到HDD 21的操作的流程图。
图22是图解从便携装置6拷贝内容到HDD 21的操作的流程图。
图23是图解从EMD服务器4拷贝内容到HDD 21的操作的流程图。
图24是图解图23的步骤S204的交费处理的细节的流程图。
图25图解了一交费日志。
图26是图解从图2的个人计算机1的IEC 60958终端24a拷贝内容到HDD 21的处理的流程图。
图27是图26的继续,是图解从图2的个人计算机1的IEC 60958终端24a拷贝内容到HDD 21的处理的流程图。
图28是图解从HDD 21输出内容到IEC 60958终端24a操作的流程图。
图29是图28的继续,是图解从HDD 21输出内容到IEC 60958终端24a操作的流程图。
图30是图解检查图28的步骤S275的重放条件的处理的流程图。
图31是图解从HDD 21通过便携装置6输出内容的操作的流程图。
图32是图31的继续,是图解从HDD 21通过便携装置6输出内容的操作的流程图。
图33图解了非易失性存储器34的功能。
图34是图解适配器26的操作的流程图。
图35是适配器26的内部结构。
图36展示了非易失性存储器34的一图解性内部结构。
图37展示了非易失性存储器34的另一图解性内部结构。
图38是图解适配器7和个人计算机1之间的相互验证处理的流程图。
图39是图38的继续,是图解适配器7和个人计算机1之间的相互验证处理的流程图。
图40是图39的继续,是图解适配器7和个人计算机1之间的相互验证处理的流程图。
图41是图40的继续,是图解适配器7和个人计算机1之间的相互验证处理的流程图。
图42是一流程图,用于图解加密源程序的处理。
图43是一流程图,用于图解执行该加密的源程序的适配器7的处理。
图44是一流程图,用于图解加密一个目标程序的处理。
图45是一流程图,用于图解执行该加密的目标程序的适配器7的处理。
图46是一流程图,用于图解加密一个目标程序的另一处理。
图47是一流程图,用于图解加密一个目标程序的处理的另一例子。
图48是一流程图,用于图解占用目标程序的一部分的处理,目标程序的该部分执行由个人计算机1的CPU 12执行的适配器7的处理。
图49是一流程图,用于当个人计算机1从EMD服务器5下载加密密钥时,图解费用结算(fee settlement)处理。
实施本发明的最好方式参考附图详细地解释本发明。
图1展示了本发明的内容管理系统的一个实施例。个人计算机1连接到由例如局域网或互联网组成的网络2。该个人计算机1转换从EMD(电子音乐发售)服务器4-1至4-3接收到的、或从如下将要解释的光盘(CD)读取的音乐声音数据,到诸如ATRAC3(商标名)这样的预设压缩系统。该音乐声音数据在以下被称为内容。个人计算机1还根据诸如DES(数据加密标准)这样的适当加密系统加密该内容,以便记录该加密数据。
该个人计算机1记录指示与以加密的形式记录的内容有关的内容使用条件的使用条件数据。
使用条件的数据指示有时缩写成PD的便携装置的数目,正如下文将要解释的那样,它能够与使用条件的数据有关的内容同时使用,这里的数据即是被签退(check out)的PD数目。即使由使用条件的数据指示的数目中的内容已经签退,该个人计算机1也能再现该内容。
作为选择,使用条件的数据指示数据可以被拷贝。如果内容已经被拷贝到便携装置6-1至6-3,那么个人计算机1能够再现记录的内容。存在这样一种情况即在便携装置6-1至6-3上强加拷贝次数限制。在这种情况下,可拷贝的次数不增加。
作为选择,使用条件的数据指示数据可以被移动到另一个人计算机。在将该内容移动到便携装置6-1至6-3之后,记录在个人计算机1上的内容不再处于可使用状态。具体地说,删除该内容,或者修改使用条件以导致该内容不可使用。
该使用条件的数据将在以下详细讨论。
该个人计算机1促使以加密形式记录的内容,以及与该内容相关的诸如广播节目标题或再现条件这样的数据一起,被存储在通过USB(通用串行总线)电缆7-1连接在线路上的便携装置6-1中。个人计算机1还更新与存储的保持与便携装置6-1中存储的内容一致的内容有关的使用条件的数据。该操作称为签退。更具体地说,对于签退,与该内容关联起来记录在个人计算机1中的使用条件的数据的可能签退的次数按1递增。如果可能的签退的次数是0,则可疑的内容不能被签退。
个人计算机1促使以加密形式记录内容以及与该内容相关的数据一起,被存储在通过USB(通用串行总线)电缆7-2连接在线路上的便携装置6-2中。个人计算机1还更新与存储的保持与便携装置6-2中存储的内容一致的内容有关的使用条件的数据。个人计算机1还促使以加密形式记录内容以及与该内容相关的数据一起,被存储在通过USB(通用串行总线)电缆7-3连接在线路上的便携装置6-3中。个人计算机1还更新与存储的保持与便携装置6-3中存储的内容一致的内容有关的使用条件的数据。
另一方面,个人计算机1促使连接在线路上的便携装置6-1,通过USB电缆7-1擦除或禁用由个人计算机1签退的内容,更新与擦除的内容有关的使用条件的数据。这个操作称为签到(check-in)。更具体地说,对于签到,与该内容关联起来记录在个人计算机1中的使用条件的数据的可能签退的次数按1递增。
个人计算机1促使连接在线路上的便携装置6-2,通过USB电缆7-2擦除或禁用由个人计算机1签退的内容,更新与擦除的内容有关的使用条件的数据。个人计算机1促使连接在线路上的便携装置6-3,通过USB电缆7-3擦除或禁用由个人计算机1签退的内容,更新与擦除的内容有关的使用件的数据。
个人计算机1不能签到由其它个人计算机(未被显示)的便携装置6-1签退的内容。个人计算机1不能签到由其它个人计算机(未被显示)的便携装置6-2签退的内容。个人计算机1不能签到由其它个人计算机(未被显示)的便携装置6-3签到的内容。
当个人计算机1开始从EMD服务器4-1至4-3获取内容时,EMD服务器3响应个人计算机1的请求、给个人计算机1发送个人计算机1和EMD服务器4-1至4-3相互验证所必需的验证密钥,同时发送被用来将EMD服务器4-1至4-3连接到个人计算机1的程序。
EMD服务器4-1响应个人计算机1的请求、经过网络2给个人计算机1发送内容以及诸如广播节目标题或关于再现的限制那样与该内容有关的数据。EMD服务器4-2响应个人计算机1的请求、通过网络2给个人计算机1发送内容以及诸如广播节目标题或关于再现的限制那样与该内容有关的数据。同样,EMD服务器4-2响应个人计算机1的请求、通过网络2给个人计算机1发送内容以及诸如广播节目标题或关于再现的限制那样与该内容有关的数据。
由EMD服务器4-1至4-3提供的内容已经按照相同或不同的压缩系统压缩。由EMD服务器4-1至4-3的每一个提供的内容已经按照相同或不同加密压缩系统压缩。
WWW(万维网)服务器5-1响应个人计算机1的请求,经过网络2给该个人计算机1发送有关于其诸如CD相册的名称或该CD的制造商之类的内容已经读取的CD数据,以及相应于从该CD读取的诸如广播节目的标题或作者姓名这样的内容的数据。WWW服务器5-2响应个人计算机1的请求经过网络2给该个人计算机1发送其内容已经被读取的CD数据,以及相应于从该CD读取的内容有关的数据。
便携装置6-1存储由个人计算机1提供的内容,即签退内容,和与该内容有关的数据,例如关于再现的广播节目和限制的标题。便携装置6-1基于有关于该内容的数据再现被存储的内容,以便输出该再现内容。
例如,如果进行再现该内容的企图超过作为与内容有关的数据存储、关于再现的限制的再现次数,那么便携装置6-1中止对相应内容的再现。此外,如果进行再现该内容的企图超过作为与内容有关的数据存储、关于再现的限制的限制项,那么便携装置6-1中止对相应内容的再现。
用户能够从个人计算机1卸下已经让人在哪里存储了内容的便携装置6-1,并携带它用来再现被存储的内容,以便于经过耳机听相应于该内容的音乐。
便携装置6-2存储由个人计算机1提供的内容和与该内容有关的数据。便携装置6-2还基于与该内容有关的数据再现该被存储的内容,以输出该被再现的内容。用户能够从个人计算机1卸下已经让人在哪里存储了内容的便携装置6-2,并携带它用来再现被存储的内容,以便于经过耳机听相应于该内容的音乐。
便携装置6-3存储由个人计算机1提供的内容和与该内容有关的数据。便携装置6-3还基于与该内容有关的数据再现该被存储的内容,以输出该被再现的内容。用户能够从个人计算机1卸下已经让人在哪里存储了内容的便携装置6-3,并携带它用来再现被存储的内容,以便于经过耳机听相应于该内容的音乐。
在没有必要区分便携装置6-1至6-3的地方,这些状装置共同被称为便携装置6。
图2显示了个人计算机1的结构。CPU(中央处理单元)11执行各种应用程序或者操作系统,这里的应用程序将在后面解释。ROM(只读存储器)12中存储了在由CPU 11使用的程序或计算机参数中基本上固定的数据。RAM(随机存取存储器)13存储被用于由CPU 11执行的程序或者将在这种执行过程中变化的参数。这些单元经过由CPU总线构成的主总线14互连。
主总线14经过桥接器15连接到诸如PCT(外围组件互连/接口)总线之类的外部总线16。
键盘18通过用户输入各种命令给CPU 11来激活。鼠标19通过用户命令或选择显示器20的屏幕上的一个点来激活。该显示器由液晶显示装置或CRT(阴极射线管)构成,以展示像文本或图像之类的各种信息。HDD(硬盘驱动器)21驱动该硬盘,以使得它记录或再现由CPU 11执行的程序或所述信息。
驱动器22读出被存储在磁盘41、包括CD在内的光盘42、磁光盘43或半导体存储器44中的数据或程序,以发送该数据或程序给经过接口17、外部总线16、桥接器16和主总线14连接在线路中的RAM 13。
便携装置6-1经过USB电缆7-1连接到USB端口23-1。USB端口23-1经过接口17、外部总线16、桥接器16和主总线14输出HDD 21、CPU 11或RAM 13提供的诸如便携装置6-1的内容或命令之类的数据,给便携装置6-1。
便携装置6-2经过USB电缆7-2连接到USB端口23-2。USB端口23-2经过接口17、外部总线16、桥接器16和主总线14输出HDD 21、CPU 11或RAM 13提供的诸如便携装置6-2的内容或命令之类的数据,给便携装置6-2。
便携装置6-3经过USB电缆7-3连接到USB端口23-3。USB端口23-3经过接口17、外部总线16、桥接器16和主总线14输出HDD 21、CPU 11或RAM 13提供的诸如便携装置6-3的内容或命令之类的数据,给便携装置6-3。
具有IEC(国际电工技术委员会)60958端子24a的音频输入/输出接口24执行数字语音输入/输出或模拟语音输入/输出接口操作。喇叭45基于经过音频输入/输出接口24提供的语音信号、输出相应于该内容的预置语音。
前述从键盘18到音频输入/输出接口24的各个组件连接到接口17,经过接口17、外部总线16、桥接器16和主总线14依次连接到CPU 11。
通信单元25连接到网络2、以使得从CPU 11或HDD 21提供的诸如登记请求或内容发送请求之类的数据被存储在预置系统的包,并且在该网络2上发送、以便在该网络2上输出存储在接收到的包中的诸如验证密钥或内容之类数据给CPU 11、RAM 13或HDD 21。
作为单片半导体IC形成并且装在个人计算机1上的适配器26的CPU 32,经过外部总线16、桥接器16和主总线14与个人计算机1的CPU 11合作,以执行各种处理操作。RAM 33存储CPU 32执行各种处理操作所必需的数据或程序。非易失性存储器34存储即使个人计算机1断电后仍然必须保持的数据。在ROM 36中,存在一程序,用于解码由该个人计算机1传输来的加密程序。RTC(实时时钟)35执行定时操作以提供时间信息。
通信单元25和适配器26经过外部总线16、桥接器16和主总线14连接到CPU 11。
如果没有必要区分USB端口23-1至端口23-3,他们都将被直接称为USB端口23。同样,如果没有必要区分USB电缆7-1至端口7-3,他们都将被直接称为USB电缆7。
现在参考图3解释便携装置6的结构。电源电路52转换从干电池51提供的电源电压成为一个预置电压的内部电源,以提供电源给CPU 53至显示器67来全面驱动该便携装置6。
如果USB控制器57经过USB连接器56经由USB电缆7连接到个人计算机1,包含由该个人计算机1发送的内容的数据经过内部总线58提供给CPU53。
从个人计算机1传输来的数据由每包64字节数据组成,并且以12M位/每秒的传输速度从个人计算机1传输。
被传输到便携装置6的数据由首标和内容组成。该首标包括内容ID、文件名、首标大小、内容密钥、文件大小、编解码器ID和文件信息。另外,该首标包括再现限制所必需的再现限制数据、开始日期和时间、结束日期和时间、关于次数的限制以及关于再现次数的计数器。该内容由诸如ATRAC3之类的编码系统编码和加密。
该首标大小表示例如33字节的首标的数据长度,而该文件大小表示例如33,636,138字节之类的内容数据长度。
该内容密钥在其根据个人计算机1和便携装置6之间的相互验证处理中产生的对话密钥(临时密钥)被加密的状态下,用于解码该加密的内容,并从该个人计算机1发送给便携装置6。
当该便携装置6经过USB电缆7连接到个人计算机1的USB端口23时,便携装置6和个人计算机1执行相互验证的处理。这个相互验证处理质询响应(challenge response)系统的验证处理。注意到便携装置6的DSP 59在实施质询响应系统的验证处理时执行解密(解码)。
该质询响应系统是这样的系统在该系统中,对由个人计算机1(质询)产生的确定值的响应与使用由便携装置6和个人计算机1共同拥有的保密密钥产生的值(响应)一起生成(is made)。在该质询响应系统的相互验证处理中,由个人计算机1产生的值从一种验证处理改变成另一验证处理,因此,如果读出了使用该保密密钥产生的便携装置6的输出值,并将其用于所谓的“伪装”攻击,则在下一相互验证处理中使用一个不一样的值进行相互验证,因此,个人计算机1可以检测到非法行为。
该内容ID是用于指定的内容的有关于内容的ID。
该编解码ID是与有关于内容解码系统的ID。例如,该编解码ID为“1”是与ATRAC3关联,而该编解码ID为“0”关联于MP3(MPEG音频层-3)。
该文件名是相应于由与该内容相关的个人计算机1记录的、已经被转化成ASCII(美国信息互换标准代码)代码的内容文件。该文件信息是转化成ASCII代码的相应于该内容的广播节目的标题、艺术家的名字或作者的名字。
再现限制数据是指示是否设置可允许的内容回放的时间段,即开始日期和时间或结束日期和时间,或关于再现次数的限制。如果设置了限制次数,如果设置该可允许的再现时间段和如果既没有限制次数也没有可允许再现时间段被设置,则关于再现限制数据分别设置为“1”、“2”和“0”。
如果再现限制数据为“2”,则开始日期和时间与结束日期和时间表示可允许的再现时间短的范围。例如,如果开始日期和时间为“00040F”与结束日期和时间“00070F”,则有关的内容可以在2000年4月15至2000年7月15之间再现。
同样,如果再现限制数据为“1”或“2”,则次数限制的数目表示关于该内容的预置次数,同时次数计数器表示由CPU 53在再现该内容时更新的、表示该内容已经再现的次数的次数。例如,如果次数限制为“02”,则该内容可再现的次数为二,反之,如果次数限制为“01”,则该内容可再现的次数为一。
例如,如果再现限制数据为“2”、开始日期和时间为“00040F”、结束日期和时间“00070F”和次数限制为“02”,则便携装置6可以在2000年4月15至2000年7月15之间,每天再现有关的内容两次。
此外,如果再现限制数据为“1”、开始日期和时间为“000000”、结束日期和时间“000000”、次数限制为“0a”和次数计数器为“05”,则关于有关的内容可允许再现时间段没有任何限制,但可允许再现的次数是10次,以前再现的次数是5。
如果便携装置6已经从个人计算机1接收到写该内容的命令以及该内容,则用来执行从ROM 55读出到RAM 54的主要程序的CPU 53接收写命令,并控制闪速存储控制器60,以便使得从个人计算机1接收到的内容可以被写入闪速存储器61。
闪速存储器61具有大约64M字节的记录容量,以便存储内容。在闪速存储器61中预先存储适合回放的代码,其中的回放用于展开在预置的压缩系统的压缩的内容。
同时,闪速存储器61在便携装置6中可以作为存储卡装上/卸下。
如果与由回放/停止按钮(未显示)的用户的推进操作有关的回放命令,经由激活的操作键控制器62发送到CPU 53,则后者使得闪速存储控制器60从闪速存储器61读出回放代码和内容,以便传输该读出的代码和内容到DSP59。
DSP 59按照CRC(循环冗余校验)系统,基于从闪速存储器61传输的回放代码,检测该内容中的错误,并再现该内容,以便提供在图3中的D1中再现数据给数字/模拟转换电路63。
DSP 59放在发送电路(这里未显示)中,与其单片集成在一起,并基于主时钟信号MCLK从外部石英发送器59A再现该内容,同时发送主时钟信号MCLK、由内部振荡器电路产生的预置频率的位时钟信号BCLK、以及由基于帧的L信道和R信道时钟信号LCLK和RCLK组成的操作时钟信号RLCLK,给数字/模拟转换电路63。
当再现内容时,DSP 59按照再现的代码发送上述的操作时钟信号给数字/模拟转换电路63。当不再现内容时,DSP 59中止按照再现的代码提供该操作时钟信号,以便中止数字/模拟转换电路63来降低整个便携装置6的电耗。
同样,石英振荡器53A和57A分别外架在CPU 53和USB控制器57上,以便分别基于由石英振荡器53A和57A提供的主时钟信号MCLK执行预置处理。
按这种方式,该便携装置6不需要时钟信号产生模块来为CPU 53、DSP59或USB控制器57的电路块供给时钟信号,因此简化和减小该电路结构。
数字/模拟转换电路63将该再现的内容转化成语音信号,发送该被转化的语音信号给放大电路64。放大电路64放大该语言信号以便经由耳机插孔65发送放大的语音信号给耳机(未显示)。
当回放/停止按钮被推进时,在CPU 53的控制下,便携装置6再现存储在闪速存储器61中的内容,其中的回放/停止按钮未在图中显示。当回放/停止按钮被推进时,便携装置6中止该内容的再现。
当在内容再现中止后回放/停止按钮被再次推进时,在CPU 53的控制下,便携装置6从停止位置起重新开始再现内容。如果在回放通过推进回放/停止按钮进行中止之后,有几秒钟没有由用户操作,则便携装置6自动切断电源以节约电耗。
同时,如果在断电之后推进该会放/停止按钮,则便携装置6从第一广播节目再现该内容,而不用从前一停止位置起再现该内容。
便携装置6的CPU 53控制LCD控制器63,以促使显示器单元67展示诸如回放模式的状态之类的信息,包括重复回放或内在再现(intro-reproducing)、均衡器调整,包括相关于语音信号的频率范围的增益调整、广播节目号、播放时间、诸如回放、快进或快退之类的再现状态、音量或干电池51的剩余容量。
此外,便携装置6使得在EEPROM 68存储所谓的FAT(文件分配表)。该FAT包括各种存储容量信息,诸如写入闪速存储器80中的内容数量、写入各自内容的闪速存储器61的块的位置、以及其它各种存储信息。
同时,在本发明的实施例中,该内容的64字节作为一块进行控制,并且与音乐广播节目有关的块位置存储在FAT中。
如果按闪速存储器61中存储的FAT,将第一广播节目的内容在CPU 53的控制下写入闪速存储器61,则将与第一广播节目关联的块位置作为FAT写入闪速存储器61中,而如果将第二广播节目的内容写入闪速存储器61,则将与第二广播节目关联的块位置作为FAT写入闪速存储器61的、相同于第一广播节目被写入的区域中。
按这种方式,每当在闪速存储器61中写入该内容时,重写该FAT,并且为了安全,同样数据以冗余方式作为备用数据写入两次。
如果FAT写入闪速存储器61,则每当该内容写入一次时,重写该闪速存储器61的同样区域两次,以便闪速存储器61中额定的写入次数以小于写入内容的次数达到,使得不可能重写该闪速存储器61。
因此,便携装置6促使该FAT被存储在EEPROM 68,以减小关联于该内容的每次写入的该闪速存储器61的重写频率。
通过促使该FAT与重写入的增加次数一起被存储在EEPROM 68中,与FAT存储在闪速存储器61的情况相比较,便携装置6能够按十或更大数的因子、增加可能的内容写入次数。此外,既然CPU 53促使该FAT以重写的方式被写入EEPROM 68,所以在EEPROM 68中的相同区域中写入的频率可以被降低,以使得可以防止EEPROM 68在短时间内变成不能重写。
当便携装置6经过USB电缆7,依靠USB连接,连接到个人计算机1时,它辨认已经基于从USB控制器57提供给CPU 53的中断信号生成的连接。
如果认出与USB的连接现在已经建立,则该便携装置6经过USB电缆7、从个人计算机馈入预置电流大小的外部电源。该便携装置6也控制电源电路52来中止从干电池51供电。
在USB连接时,CPU 53中止再现DSP 59的内容的处理。因此,CPU 53执行控制来防止从个人计算机1提供的外部电源超过额定电流大小,以使得额定电流大小的外部电源总是可以接受。
因此,在USB连接时,CPU 53将从干电池51提供的电源切换成从个人计算机1提供的电源,使得以低单位成本使用来自个人计算机1的外部电源成为可能、以便以高单位电源成本降低干电池51的电耗,从而延长干电池51的寿命。
同时,如果外部电源经过USB电缆7从个人计算机1提供,则CPU 53中止DSP 59的回放处理,以减小DSP 59的辐射,从而降低包括相应的个人计算机1在内的整个系统的辐射。
图4是图解个人计算机1的功能的结构的框图。内容管理程序111由EMD选择程序131、签到/签退管理程序132、加密系统转换程序135、压缩系统转换程序136、加密程序137、使用条件转换程序139、使用条件管理程序140、验证程序141、解码程序142、PD驱动器143和购买程序144、145构成。
内容管理程序111用混合(shuffled)或加密的指令陈述,被构造成从外边隐藏该处理内容,以使得难于解码该处理内容。例如公式化地表述内容管理程序111,以使得直接地读出该内容管理程序111的用户不能识别该指令。
EMD选择程序131在内容管理程序111安装在个人计算机1中时,不包含在内容管理程序111中,但在EMD登记处理中能经过网络2从EMD登记服务器3接收,其中的处理将在后面解释。EMD选择程序131选择对EMD服务器4-1至4-3之一的连接,以促使购买应用程序115或购买程序144或142执行与EMD服务器4-1至4-3之一的通信。
签到/签退管理程序132设置该签到或签退,并且基于记录在内容数据库114上的使用条件文件162-1至162-N,签退存储在条件文件162-1至162-N中的内容到便携装置6-1至6-3之一,或签到存储在条件文件162-1至162-N中的内容。
签到/签退管理程序132更新存储在记录于与签到或签退处理关联的内容数据库114上的使用条件文件162-1至162-N中的使用条件数据。
基于记录在内容数据库114中的便携装置6-1至6-3,拷贝管理程序133拷贝存储在便携装置6-1至6-3之一中的使用条件文件162-1至162-N里的内容,或拷贝便携装置6-1至6-3中的内容到内容数据库114。
基于记录在内容数据库114中的使用条件文件162-1至162-N,移动管理程序134移动存储在记录于内容数据库114上的条件文件162-1至162-N里的内容,至便携装置6-1至6-3之一,或者从便携装置6-1至6-3中将该内容移动到内容数据库114。
加密系统转换程序135经过网络2,将关于由购买应用程序115从EMD4-1接收到的内容的加密系统、关于由购买程序144从EMD4-2接收到的内容的加密系统、或者关于由购买程序145从EMD4-3接收到的内容的加密系统,转换成与存储在记录于内容数据库114上的条件文件162-1至162-N里的内容一致的加密系统。
当签退该内容到便携装置6-1至6-3时,加密系统转换程序135转换该签退内容成能被便携装置6-1至6-3使用的加密系统。
压缩系统转换程序136经过网络2,将关于由购买应用程序115从EMD4-1接收到的内容的压缩系统、关于由购买程序144从EMD4-2接收到的内容的压缩系统、或者关于由购买程序145从EMD4-3接收到的内容的压缩系统,转换成与存储在记录于内容数据库114上的条件文件162-1至162-N里的内容的压缩系统一致的压缩系统。
加密程序137按照与存储在由内容数据库114记录的条件文件162-1至162-N中的内容的编码系统一致的编码系统,编码从CD读出并从音频记录程序113提供的非加密内容。
压缩/展开程序138按照与存储在由内容数据库114记录的条件文件162-1至162-N中的内容的编码系统一致的编码系统,编码从CD读出并从音频记录程序113提供的非压缩内容。压缩/展开程序138展开(解码)该编码内容。
使用条件转换程序139经过网络2,按照与存储在由内容数据库114记录的条件文件162-1至162-N中的使用条件数据的格式一致的格式,转换指示由购买应用程序115从EMD服务器4-1接收的内容的使用条件的数据,或所谓的使用规则、展示由购买应用程序115从EMD服务器4-2接收的内容的使用条件的数据或展示由购买应用程序115从EMD服务器4-3接收的内容的使用条件的数据。
当签退内容到便携装置6-1至6-3时,使用条件转换程序139转换该使用条件数据成为可以被便携装置6-1至6-3利用的使用条件数据。
在执行关于内容的拷贝、移动、签到或签退处理之前,使用条件管理程序140基于关联于存储在由内容数据库114记录的条件文件162-1至162-N中的使用条件数据的哈希值,检测该使用条数据的修改。使用条件管理程序140依照该内容的拷贝、移动、签到或签退,更新关联于该使用条件数据的哈希值,该使用条件数据与存储在由内容数据库114记录的条件文件162-1至162-N中的更新关联。
验证程序141执行在内容管理程序111和购买应用程序115之间的相互验证处理,并且执行在内容管理程序111和购买程序144之间的相互验证处理。验证程序141存储被用于EMD服务器4-1和购买应用程序115之间的相互验证处理的验证密钥、被用于EMD服务器4-2和购买程序144之间的相互验证处理的验证密钥以及被用于EMD服务器4-3和购买程序145之间的相互验证处理的验证密钥。
当内容管理程序111安装在个人计算机1上,以及从EMD登记服务器3提供并在登记处理通过显示操作命令程序112正常执行时,存储在验证程序141中时,由验证程序141用于相互验证处理的验证密钥不在验证程序141中存储。
当存储在由内容数据库114记录的条件文件162-1至162-N中的内容被个人计算机1再现时,解码程序142解码该数据。
当预置内容被签退到便携装置6-2、或者从便携装置6-2签到预置内容时,PD 143的驱动器发送用于执行预置处理的内容或命令给便携装置6-2。
当预置内容被签退到便携装置6-1、或者从便携装置6-1签到预置内容时,PD 143的驱动器发送用于执行预置处理的内容或命令给一装置驱动器116-1。
当预置内容被签退到便携装置6-3、或者从便携装置6-3签到预置内容时,PD 143的驱动器发送用于执行预置处理的内容或命令给该装置驱动器116-2。
购买程序144是所谓的插件程序,它和内容管理程序111安装在一起,并从EMD登记服务器3经过网络2提供,或者像被记录在一预置CD那样提供。当购买程序144安装在个人计算机1上时,它经过内容管理程序111所有的预置形式的接口发送或接收数据和内容管理程序111。
购买程序144以混合或加密的指令陈述,并且被设计成从外边隐藏该处理内容,以使得难于解码该处理内容。例如公式化地表述购买程序144,以使得直接地读出该内容管理程序111的用户不能识别该指令。
购买程序144请求EMD服务器4-2经过网络2发送预置内容,同时从该EMD服务器4-2中接受该内容。当从该EMD服务器4-2中接收到该内容时,购买程序144收取费用。
购买程序145是与内容管理程序111安装在一起的程序,它请求发送预置内容给EMD服务器4-3,同时从该EMD服务器4-3中接受该内容。当从该EMD服务器4-3中接收到该内容时,购买程序145收取费用。
显示操作命令程序112基于过滤数据文件181、显示数据文件182、图形文件183-1至183-K或者滞后(hyteresis)数据文件184,生成显示器20上的预置视窗的图像,同时基于键盘或者鼠标19的行为,命令内容管理程序111执行诸如签到或签退之类的处理。
该过滤数据文件181被存储在HDD 21中,它记忆用于加权存储在内容数据库114上记录的条件文件162-1至162-N中的内容。
显示数据文件182被存储在HDD 21中,它记忆相应于存储在内容数据库114上记录的条件文件162-1至162-N中内容的数据。
图形文件183-1至183-K被存储在HDD 21中,它记忆相应于存储在内容数据库114上记录的条件文件162-1至162-N中内容的图形,或者相应于在下文中将要解释的一包的图形。
如果没有互相区分图形文件183-1至183-K的必要,则直接把它们都称为图形文件183。
滞后数据文件184被存储在HDD 21中,它记忆诸如在存储在内容数据库114上记录的条件文件162-1至162-N中内容中的签退和签到次数和日期之类的滞后数据。
显示操作命令程序112在登记处理时,发送该内容管理程序111的预先存储ID,同时从EMD登记服务器3接收验证密钥和EMD选择程序131,以便将验证密钥和EMD选择程序131发送给内容管理程序111。
音频记录程序113基于键盘18或鼠标19的行为,展示预置的视窗的图形以便从CD中读出诸如该内容的音频记录时间之类的数据,其中CD是装在驱动器22上的光盘42。
音频记录程序113基于记录在该CD上的音频记录时间,请求万维网服务器5-1或5-1经过网络2发送相应于该CD的数据,诸如影集或艺术家的名称,或相应于记录在该CD上的内容的、诸如音乐广播节目的标题之类的数据。此外,音频记录程序113从万维网服务器5-1或5-1中接收相应于记录在该CD上的内容的数据。
音频记录程序113发送相应于接收到的记录在该CD上的内容,给显示操作命令程序112。
如果给音频记录程序113馈送用于音频记录的命令,则音频记录程序113从装在驱动器22上的光盘42中读出内容,以便输出该读出的内容给内容管理程序111。
内容数据库114以按照预置的系统压缩或加密的形式存储由内容管理程序111提供的内容,到适合记录于HDD 21上的内容文件161-1至161-N之一中。内容数据库114存储相应于存储在内容文件161-1至161-N中的内容的使用条件数据,到适合记录于HDD 21上的、相关于记忆适合于记录在HDD 21上的内容文件161-1至161-N中的使用条件文件162-1至162-N。
内容数据库114像记录那样写内容文件161-1至161-N或使用条件文件162-1至162-N是可能的。
例如,相应于存储在内容文件161-1的条件数据存储在使用条件文件162-1中。相应于存储在内容文件161-N的条件数据存储在使用条件文件162-N中。
同时,记录在内容文件161-1至161-N中的数据对应于记录在终端数据库上的数据或者记录在广播节目数据库上的数据,这在以后解释。即内容数据库114构造成包含终端数据库和广播节目数据库,这在以后解释。
如果没有必要区分内容文件161-1至161-N,那么它们都被直接称为内容文件161。同样,如果没有必要区分使用条件文件162-1至162-N,那么它们都被直接称为使用条件文件162。
购买应用程序115是经过网络2从EMD登记服务器3提供,或者像记录在预置的CD-ROM上那样提供。购买应用程序115请求EMD服务器4-1经过网络2发送预置的内容,同时从EMD服务器4-1中接收内容以便发送接收到的内容给内容管理程序111。当从EMD服务器4-1中接收内容时,购买应用程序115收取费用。
以下解释存储于显示数据文件82的数据与存储在内容数据库中的内容文件161-1至161-N关联的方式。
存储在内容文件161-1至161-N之一中内容属于一个预置包。更详细地说,该包是原始包、用户选择的包(my-selectpackage)或过滤包之一。
原始包包括一个或多个内容,并且与EMD服务器4-1至4-3中的内容的、诸如所谓的影集或CD之类的类别相关联。该内容属于一个原始包,但它不能属于多个原始包。包括该内容的原始包不能修改。用户能够编辑相应于原始包的信息的部分,即增加该信息或改变增加的信息。
用户选择的包包括一个或多个由用户有选择地选中的内容。属于用户选择的包的内容可以由用户有选择地进行编辑。该内容可以同时属于一个或多个用户选择的包。该内容也可能不属于任何一个用户选择的包。
过滤包包括基于存储在过滤文件181中的过滤数据选择的内容。该过滤数据经过网络2从EMD服务器4-1至4-3中、或者从万维网5-1或5-2中供给,或者被记录在预置CD上并以这种形式供给。用户可以编辑存储在该过滤数据文件中的归档数据(filingdata)。
该过滤数据用作选择预置内容或计算被分配给该内容的加权基准。例如,如果使用了关于本周日本流行歌曲(Japan pops)的前十名的过滤数据,则个人计算机1能够指定日本流行歌曲的第一或第十号的内容。
过滤文件181包括用于按在过去一个月期间减少签退的次数的次序选择内容的过滤数据,用于利用在过去半年期间签退的较大的次数选择内容的过滤数据,或者在该广播节目的标题中选择包含文字“love”的内容的过滤数据。
以这种方式,在过滤数据被关联于有关于包含由用户在内容显示数据221中设置的数据的内容显示数据221,或者有关于滞后数据文件184时,选择该过滤包的内容。
驱动器117在内容管理程序111控制之下,驱动音频输入/输出接口24,以输入作为由外边提供的数字数据的内容、提供该内容给内容管理程序111。可替代地,驱动器117经由内容管理程序111输出有关于由内容数据库114提供的内容的模拟信号。
图5展示了一个显示操作命令视窗的实施例,其中当显示操作命令112启动时在显示器20上展示显示操作命令112。
在该显示操作命令视窗中,安装了按钮201,用于开始音频记录程序113;按钮202,用于开始EMD选择程序131;按钮203,用于展示设置签到或签退的域(field)以及按钮204,用于展示编辑用户选择的包的域。
如果按钮205选中,则在域211上显示相应于原始包的数据。如果按钮206选中,则在域211上显示有关于用户选择的包的数据。如果按钮207选中,则在域211上显示相应于过滤包的数据。
在域211上显示的数据是相关于包的、按包和艺术家的名称示范的数据。
例如在图5中,在域211上显示包名称“first”和艺术家名字“A-taro”以及包名称“second”和艺术家名字“A-taro”。
在域212中,被显示的数据关联于属于在于211中被选中的包的内容。例如,在该域显示的数据之中广播节目的标题、播放时间或可能的签退次数。
例如,由于相应于包名称“second”的包在图5中选择,所以相应于属于包名称“second”和广播节目“tomb of the north”的标题以及可能的签退次数的内容,该广播节目“bar of the south”的标题和可能的签退次数显示在域212中。注意到,例如,每次颤音(quaver)对应一次签退,使得两次颤音表示两次签退。
因此,显示在域212上的、作为可能的签退数的一次颤音表示相关的内容可以被签退一次。
作为显示在域212中的可能的签退次数的休止符表示相关的内容不能被签退一次,即可能的签退数为0。但个人计算机1能够再现该内容。另一方面,显示在域212上的、作为可能的签退次数的G-clef指示关于相应的内容的签退次数没有任何限制,即该签退次数可以实施任何所要次。
同时,可能的签退次数也可以用例如数字而不是用诸如圆形、星星或月亮之类的预置图形进行显示。
在该显示命令操作视窗中,有一域208,用于显示诸如与图形文件183-1至183-K之类有关的选择的包或内容的图形。在再现选择的内容时,即当在喇叭45上输出有关于该内容的语音时点击按钮209。
如果选择205,使得有关于该原始包的数据显示在域211中,而显示在域212中的预置内容的广播节目的标题被选择以实现擦除,则显示操作命令程序112促使内容管理程序111擦除存储在与选择的标题有关的内容数据库114中的预置内容。
如果由音频记录程序113展示的视窗的按钮(按钮255在以后解释)被选择,并且从该CD中读出的内容被记录在内容数据库114中,则显示操作命令程序112展示显示记忆在便携装置6-1至6-3中被预先指定的一个中的内容的广播节目的标题的域213。
如果由音频记录程序113展示的视窗的按钮被选择,即被激活,并且从该CD中读出的内容已经被记录在内容数据库114中,则显示操作命令程序112促使显示域213。该域213展示在便携装置6-1至6-3中被预先指定的一个中存储的内容的广播节目的标题。
如果由音频记录程序113展示的视窗的按钮被选择,并且从该CD中读出的内容被记录在内容数据库114中,则显示操作命令程序112展示显示记忆在便携装置6-1至6-3中被预先指定的一个中的内容的名称的域213。
如果由音频记录程序113展示的视窗的按钮被选择,并且从该CD中读出的内容被记录在内容数据库114中,则显示操作命令程序112促使内容管理程序111签退在便携装置6-1至6-3中被预先指定的一个中的内容,该内容被记录在内容数据库114中并由CD中读出。
在域213的最左边显示一个符号,用于指示该内容能否在该个人计算机1中签到。例如,位于域213的最左边上的“o”指示相应于该内容的广播节目的标题可以在该个人计算机1中签到,即该内容已经从该个人计算机1中签退。另一方面,位于域213的最左边上的“x”指示相应于该内容的广播节目的号码不能在该个人计算机1中签到,即该内容还没有从该个人计算机1中签退并且已经从其它计算机1中签退。
当显示操作命令程序112已经在显示操作视窗中显示该域213时,显示操作命令程序112在该显示操作视窗中展示显示该便携包的标题的域214,接近于213的按钮210以及用于执行签到或签退的按钮215,其中所述便携包是存储在便携装置6-1至6-3中被预先指定的一个中的内容所属的包,即存储在便携装置6-1至6-3之一中的内容所属的包。
此外,当显示操作命令程序112已经在显示操作视窗中显示该域213时,显示操作命令程序112促使将按钮216、217、218和219排列在该显示操作视窗中。这些按钮216、217、218和219被用来设置有关于在域212中选择的广播节目的标题的内容的签到,设置有关于在域213中选择的广播节目的标题的内容的签到,设置有关于在域213中显示的内容的标题的全部内容的签到,以及取消该签到或签退设置。
如果由按钮216至219的行为直接设置签到或签退,则该个人计算机1不能执行该签到或签退处理。
如果在由按钮216至219的行为设置签到或签退之后,点击了按钮215,则显示操作命令程序112促使内容管理程序111执行该签到或签退处理。即如果点击了按钮215,则显示操作命令程序112基于该签到或签退设置操作,以促使内容管理程序111发送该内容给便携装置6-1至6-3之一,或者发送与签到有关的命令,诸如用于擦除存储在便携装置6-1至6-3之一中的预置内容的命令,同时允许更新存储在有关于该被发送的命令或内容的使用条件文件162中的使用条件数据。
如果执行签到或签退,则显示操作命令程序112更新存储在与该被发送的命令或内容有关的滞后数据文件184中的滞后数据。该滞后数据由指定作为签到或签退的内容的信息、该内容的签到或签退的日期、在其上该内容已经被签退的便携装置6-1至6-3的标题。
由于用于设置签到或签退的处理可以在较短的时间内执行,所以在执行该签到或签退的处理之后,用户可以立即得到关于该状态的通知,以减少费时的签到或签退处理操作的次数,从而缩短该签到或签退,包括设置和执行所必需的时间。
图6图解了一个视窗的例子,在该视窗中,音频记录程序113在显示器20上展示。例如,音频记录程序113基于从万维网服务器5-2中接收到的CD信息诸如在域251中显示该CD的标题。音频记录程序113在域252中展示诸如“Quai”之类的艺术家的名字。
基于从万维网服务器5-2中接收到的CD信息,音频记录程序113在域253的标题指示区显示诸如“heat”、“planet”、“black”或“soul”之类的广播节目的标题。同样,音频记录程序113在域253的艺术家指示区中展示诸如“Quai”之类的艺术家的名字。
在接收预置的CD信息之后,音频记录程序113在HDD 21的预置目录中存储该CD信息。
如果通过点击按钮254命令音频记录程序113获取该CD信息,则音频记录程序113首先检索HDD 21的预置目录。如果该CD信息存储在音频记录程序113的目录中,那么音频记录程序113显示一对话框(未显示)以允许用户使用存储在该目录中的CD信息。
如果点击了命令开始记录排列在由音频记录程序113显示的视窗中的内容的按钮256,则音频记录程序113从存储在驱动器22中的CD中读出该内容,以便将该要被发送的读出内容与该CD信息一起供给内容管理程序111。内容管理程序111的压缩/展开程序138压缩从预置压缩系统中的音频记录程序113提供的内容。加密程序137加密该被压缩的内容。使用条件转换程序139产生与被压缩和被加密的内容有关的使用条件数据。
内容管理程序111将被压缩和被加密的内容与使用条件数据一起发送给内容数据库114。
内容数据库114产生关联于从内容管理程序111接收到的内容的内容文件161和使用条件文件162,以存储该内容到内容文件161,同时存储该使用条件数据到使用条件文件162。
当该内容和关联于该内容的使用条件数据被存储到内容数据库114时,内容管理程序111将从音频记录程序113接收到的该CD信息和使用条件数据发送给显示操作命令程序112。
基于该CD信息和关联于存储在内容数据库114中的内容的使用条件数据,显示操作命令程序112产生将被存储在显示数据文件182中的显示数据。
在由音频记录程序113显示的视窗中,排列着一按钮255,它用于设置在内容数据库114上记录从CD中读出的内容时,从CD中读出的该内容是否应该自动在便携装置6-1至6-3之一中签退。
例如,如果点击了按钮255,则音频记录程序113显示指示便携装置6-1至6-3的列表的下拉菜单。如果用户从该下拉菜单选择了便携装置6-1至6-3之一,则该个人计算机1自动在便携装置6-1至6-3的被选择的那一个中签退记录的来自CD的内容。如果用户从该下拉菜单选择了“notcheckedout”,则该个人计算机1在记录来自CD的内容时不签退。
因此,如果只有由音频记录程序113展示的视窗的按钮255表现成活动状态,则个人计算机1能够促使便携装置6-1至6-3中被预先指定的那一个签退从该CD读出的内容。
现在参考流程图7解释传输被从装载在驱动器22上的CD中再现的内容到HDD 21的处理,用于通过执行内容管理程序111、显示操作命令程序112、音频记录程序113和内容数据库114的CPU 11进行拷贝。如果用户激活键盘18或鼠标19来输入经由接口17传输被从装载在驱动器22上的CD中再现的内容到CPU 11的命令,用于拷贝,则步骤S11中的音频记录程序113展示例如由图6所示的GUI(图形用户接口),用于在显示器20选择将被经由接口17拷贝的内容。
特别地,音频记录程序113读入装载在驱动器22上的CD中的TOC(内容表),以获取包含在该CD中的、展示在显示器20上的内容里的信息。作为选择,音频记录程序113读出包含在该CD里的基于内容的ISRC(国际标准记录码),以获取随后展示在显示器20上的内容的信息。作为选择,当点击了按钮254时,音频记录程序113通过网络2存取万维网服务器5-1或5-2,以获取在域253上展示相应的内容的广播节目号的、该CD的内容的信息。
用户使用显示器20的GUI激活键盘18或鼠标19来选择将要拷贝的内容,诸如通过点击相应于显示于域253上的广播节目的标题的复选框。
然后在步骤S12中音频记录程序113促使使用条件管理程序140相应于显示于图4里的内容数据库114的使用条件文件162-1至162-N,检查存储在HDD 21中的终端数据库。这个终端数据库检查处理过程被详细地显示于图8的流程中。
在步骤S31中,使用条件管理程序140计算整个终端数据库的哈希值,以便在步骤S23中将被计算出来的值与以前存储的哈希值进行比较。
同时,如果在该终端数据库中没有记录任何数据,则使用条件管理程序140不计算哈希值。
即在HDD 21中提供该终端数据库,在其中过去记录的内容的ISRC以及该拷贝的日期和时间作为管理记录在HDD 21上的内容的管理信息存储起来,如图9所示。在这个实施例中,各自的ISRC以及该拷贝的日期和时间被存储成第1至第3项共三条。在步骤S38中,从该拷贝的日期和时间和记录在这个终端数据库中的整个内容的ISRC导出的整个终端数据库的哈希值,由适配器26的CPU 32进行计算,并存储在非易失性存储器34中,这将在后面进行解释。该哈希值通过给该数据应用哈希函数得到。
该哈希函数为单向性函数,它将可选择的长度信息映射成短固定长的压缩值,其特征在于由它压缩的数据的还原转换难以实现。该哈希函数还有特征为这些哈希值不可能发生相互碰撞,即难于将同一值分配给不同的消息。该哈希值偶尔也用作校验和,用于核实该消息在其发送过程中未被修改,或者用作数字签名。该哈希函数可以由SHA(安全哈希算法)和MD(消息提要,message digest)5示范。
在步骤S31中的使用条件管理程序140以象由CPU 32执行那样的方式,计算该哈希值。在S32中,使用条件管理程序140请求该CPU 32读出存储在非易失性存储器34中的哈希值,以便在S31中将被传输的哈希值与CPU 32已经计算出来的哈希值比较。
在步骤S33中,步骤S31中的使用条件管理程序140检查已经被计算出来的哈希值是否与存储在非易失性存储器34中的终端数据库的前一哈希值一致。如果结果是否,则使用条件管理程序140核实该终端数据库已经被修改,并在步骤S34中产生消息“该终端数据以被修改,不能拷贝”,以便使用条件管理程序140为了显示的目的,经过接口17输出被生成的消息给显示器20。然后使用条件管理程序140结束该处理。即在这种情况下,禁止再现记录在CD上的内容以及拷贝在HDD 21上的被再现了的内容的处理。
如果在步骤S31中被计算出来的哈希值与前一哈希值一致,则该程序转移到步骤S35。使用条件管理程序140促使音频记录程序113从该CD获取作为用于在步骤S11中指定的拷贝的内容被选择的内容的ISRC。如果该CD上未记录ISRC,则使用条件管理程序140促使音频记录程序113读出该CD的TOC数据,以便对该数据应用哈希函数来获取适当长度的数据,例如58位,使用这个数据代替ISRC。
在步骤S36中,使用条件管理程序140检查在步骤S35中获取的ISRC,即选择的内容,是否已经登记在图9的终端数据库中。如果该ISRC还没有被登记到该终端数据库中,则在HDD21中还没有记录该内容。因此,程序转移到步骤S37,在这里使用条件管理程序140将该内容的ISRC和当前日期和时间登记到该终端数据库。同时,使用条件管理程序140利用由适配器26的RTC35输出的、从CPU 32传输来的值作为当前日期和时间。在步骤S38中,使用条件管理程序140在该时间点中读出终端数据库的数据,以传输被读出的数据给CPU 32至适配器26。CPU 32计算被传输的数据的哈希值,以便存储该计算出来的哈希值到非易失性存储器34中。如上所述,按这种方式存储起来的哈希值在步骤S32中和以前存储的哈希值一样利用。
在步骤S39中,使用条件管理程序140设置表示被选择的内容还没有在终端数据库登记的未登记标志。当核实被选择的内容是否已经被登记到这个终端数据库时,在图7的步骤S13中使用这个标志,这将在以后解释。
如果在步骤S36中已经核实被选择的内容的ISRC已经被登记到该终端数据库中,则这些内容是以前已经被在HDD 21中至少登记了一次的内容。因此,在这种情况下程序转移到步骤S40,在这里使用条件管理程序140从被登记到该终端数据库中的被选择的内容的日期和时间,检查当前日期和时间,即由适配器26的RTC 35输出的当前日期和时间,是否比选择的登记在该终端数据库中的内容的登记的日期和时间早不少于48小时。如果当前日期和时间比登记的日期和时间早不少于48小时,则允许在HDD 21上进行拷贝,原因是虽然该内容被记录了至少一次,但从那以后不少于48小时已经过去了,因此,如果该内容再次被拷贝,则大量拷贝内容实际上不可能。因此,程序转移到步骤S41,在这里使用条件管理程序140将该终端数据库的日期和时间从过去登记的日期和时间改变成由RTC 35输出的当前日期和时间。程序再返回步骤S38,在这里使用条件管理程序140促使CPU 32计算整个终端数据库的哈希值,以便存储该计算出来的哈希值到非易失性存储器34中。在步骤S39中,使用条件管理程序140设置一未登记标志。
如果在步骤S40中已经核实当前日期和时间比登记的日期和时间早不了不少于48小时,则禁止在HDD 21中拷贝选择的内容。在这种情况下,程序转移到步骤S42,在这里使用条件管理程序140为被选择的内容设置一登记标志。
如果作为步骤S40的处理结果的预置时间没有用完,那么不能产生该内容的新拷贝。因此,对于正常使用而不是非法使用的目的的内容拷贝不会受到不必要的禁止,同时,为非法贩卖或销售目的所必需的内容拷贝是不可能的。虽然步骤S40中的判据是不少于48小时,但它也可以是12和168小时的任何持续时间,而不局限于48小时。
因此,通过上述的终端数据库检查处理,设置了一个标志,它用于指示被选择的内容是否已经被登记在HDD 21中。
回到图7,在步骤S13中,拷贝管理程序133检查被选择的内容是否已经被登记在该终端数据库中。如果被选择的内容已经被登记,则该程序转移到步骤S14,在这里拷贝管理程序133促使音频记录程序113在显示器20上展示消息“这个广播节目在超过48小时的时期内还没有被拷贝,因此不能被拷贝了”。这一条通知告诉用户为什么该内容不能在HDD 21上拷贝。
如果在步骤S13中发现被选择的内容还没有被登记在该终端数据库中,则该程序转移到步骤S15,在这里拷贝管理程序133控制驱动器来从这里装载的CD中读出内容。在这些内容中,在预置的位置插入水印代码,如图10所示。在步骤S16中音频记录程序113提取包含在该内容中的水印代码,用以在步骤S17中核实该水印代码是否指示禁止拷贝。如果该水印代码指示禁止拷贝,则该程序转移到步骤S18,在这里拷贝管理程序133促使音频记录程序113经由接口17在显示器20上显示一消息“禁止拷贝”,用以终止该拷贝处理。
相反,如果该水印代码不指示禁止拷贝,则该程序转移到步骤S19,在这里音频记录程序113促使压缩/展开程序138按照例如自适应变换声音编码(adaptive transform acoustic coding,ATRAC)3(商标),通过软件处理压缩该内容。在步骤S20中,音频记录程序113促使加密程序137根据数据加密标准(DES)系统或快速加密算法(FEAL),使用存储在存储器13中的预置加密密钥加密该内容。既可以使用基于由软件产生的随机数生成的加密密钥,也可以使用基于由适配器26的CPU 32产生的随机数生成加密密钥。不仅通过个人计算机1,而且通过作为个人计算机1的附属装置装载的硬件的示配器26的CPU 32都执行该加密处理,使执行难于解码的加密成为可能。
然后在步骤S21中音频记录程序113传输被加密的数据给内容数据库114,以在HDD 21中存储该数据为一个带有文件名的文件。作为选择,该数据可以被作为位置信息存储,这样的信息,例如为从首端起的字节数,被相合于成该独立文件的一部分。
该存储操作可以与上述压缩编码处理和加密处理同时并行执行或分开执行。
在接下来的步骤S22中,相应于显示在图4中的内容数据库114的使用条件文件162-1至162-N,音频记录程序113促使加密程序137根据上述的DES系统或(FEAL)系统,加密以前存储在非易失性存储器34中的预置加密密钥,用以在HDD 21的广播节目数据库中存储被加密的加密密钥。
在步骤S23中,音频记录程序113将有关于被存储的文件的信息、被加密的加密密钥、位于由用户通过GUI输入的广播节目号的信息的内容和元素的信息一起组合成一个集合,以登记该集合到HDD 21的广播节目数据库中,即将该集合记录成使用条件文件162-1至162-N。在步骤S24中,音频记录程序113促使CPU 32计算整个广播节目数据库的哈希值,以存储该被计算出来的哈希值到非易失性存储器34中。
作为例子显示于图11中的广播节目数据库以这种方式登记在HDD 21中。在本实施例中,记录了第1至3项的文件名、被加密的加密密钥、音乐广播节目的标题和长度、诸如开始日期和时间,结束日期和时间以及次数限制之类的重放条件、回放计数器的次数、关于回放的交费条件、诸如拷贝次数,拷贝计数器的次数和拷贝条件之类的拷贝条件。
例如,在由SDMI(安全数字音乐初始化,secure digital musicinitiative)所规定的系统中,与被从CD拷贝的内容关联的,该内容可以被签退的次数设置为三次。
如果从CD复制内容到HDD 21的时间算起,预置时间已经过去了,则复制该内容再次成为可能,因此,为了用户私人使用的目的的很少次数的复制是可能的。如果试图大量地复制该内容,则需要很多时间,导致这样的复制实际上不可能。如果该个人计算机1出现故障,致使记录在HDD 21上的内容被擦除,那么可以在记录在HDD 21上记录的预置时间过去之后,再次复制被擦除的内容。
通过例如网络2共同拥有在HDD 21上记录的终端数据库的内容也是可能的。
在前面已经对这样的情况进行了解释即在其中复制日期和时间关联于ISRC进行存储。如果该信息区分该内容或CD,则诸如广播节目或影集或它们的组合之类的标题的其它信息也可以使用。
参考图12至14的流程图,解释从HDD 21传输到便携装置6的闪速存储器61(如记忆棒,这是商标)的处理,以及通过执行显示操作命令程序112和内容管理程序111的CPU 11和执行主程序的CPU 52签退的处理。
首先,解释内容移动处理。在步骤S51中,移动管理程序134促使使用条件管理程序140计算整个广播节目数据库的哈希值。在步骤S52中,移动管理程序134将被计算出来的哈希值与以前由CPU 32计算出来的哈希值比较,并存储在非易失性存储器34中。如果两者不一致,则移动管理程序134前进到步骤S53中,以促使显示操作命令程序112在显示器20上显示一条消息“该广播节目数据库可修改”,来终止该处理。该处理与步骤S31至步骤S34的处理相同。在这种情况下,不执行从HDD 21到便携装置6的内容移动。
在步骤S54中,移动管理程序134促使在作为内容数据库114的一部分、被配备于HDD 21上的广播数据库中登记内容信息被从中读出,以使得显示操作命令程序112展示被读出的内容于作为选择的GUI的显示器20上。基于这个选择的GUI,用户通过点击显示在图5的域212的广播节目标题或按钮216,选择从HDD 21移动到便携装置6的内容。在步骤S55中移动管理程序134检查该重放条件、在步骤S54中选择的内容的重放条件以及关于回放的交费条件。这个处理将参考图15的流程进行详细解释。
接下来在步骤S56中,相互验证处理在个人计算机1的验证程序141和便携装置6的CPU 53之间实施,因而用于通信的密钥是共同拥有的。
例如,假设在便携装置6的闪速存储器61或EEPROM 68事先存储一主密钥KM,并且假设在个人计算机1的RAM 13或HDD 21的预置文件中,事先存储个人密钥KP和ID。从验证程序141提供事先存储在RAM 13中的ID给该CPU 53,并将哈希函数应用于该ID和验证程序141自己拥有的主密钥KM,以产生与记忆在RAM 13的个人计算机1的个人密钥相同的密钥。通过这种处理,一个通用的个人密钥由个人计算机1和便携装置6两者共有。使用这个个人密钥可以产生一种临时通信密钥。
作为选择,在个人计算机1的RAM 13中事先存储ID和主密钥KMP,同时在便携装置6的闪速存储器61中存储该便携装置6的ID和主密钥KMM。各自的ID和主密钥被相互地传输,以使得RAM 13和闪速存储器61之一应用哈希函数于另一个的ID和主密钥,以产生另一个的个人密钥,并进一步从该个人密钥产生一临时密钥。
作为验证的方法,例如,可以使用IOS(国际标准化组织)9798-2。
如果还没有正确地实施相互验证,则终止该处理。但如果已经正确地实施了相互验证,则移动管理程序134促使内容数据库114从该广播节目数据库中读出被选择的内容的文件名,以便从HDD 21中读出被选择的文件名的、被图7中的步骤S20的处理加密了的内容。在步骤S58中,移动管理程序134执行这样的处理将压缩编码系统(步骤S19中的处理)、加密系统(步骤S19中的处理)、加密系统(步骤S20中的处理)以及作为从步骤S57中读出的数字数据的内容的格式(例如首标系统)转换成便携装置6的类似这些系统的系统。该转换处理将在以后参考图17的流程进行解释。
在步骤S59中,移动管理程序134促使PD 143驱动器将在步骤S58中被转换的内容经由USB端口23传输到该便携装置6。当接收到经由USB连接器56传输的内容时,该便携装置6的CPU 53直接促使将该内容直接记忆在闪速存储器61中。
在步骤S61中,移动管理程序134促使使用条件转换程序139将登记在广播节目数据库中的被选择的内容的重放条件,诸如开始日期和时间、结束日期和时间或关于次数的限制转换成由便携装置6管理的形式。在步骤S62中,移动管理程序134促使使用条件转换程序139将登记在选择的内容的广播节目数据库中的拷贝条件中的SCMS信息转换为由便携装置6管理的形式。在步骤S63中,移动管理程序134促使PD 143驱动器将在步骤S61中被转换的重放条件,以及在步骤S62中被转换的SCMS信息传输到便携装置6。该便携装置6的CPU 53存储被传输的重放条件和SCMS信息在闪速存储器61中。
在步骤S64中,移动管理程序134也促使PD 143驱动器传输PD 143驱动器,以将被登记在选择的内容的广播节目数据库中的重放条件、关于回放的交费条件或拷贝条件传输给便携装置6,并转换成CPU 11在广播节目数据库中操纵的、适合于存储在闪速存储器61中的形式。
在步骤S65中,移动管理程序134促使内容数据库114读出选择内容的被加密的加密密钥。在步骤S66中,移动管理程序134促使解码程序142利用存储在RAM 13中的密钥解码该加密密钥,以促使加密程序137利用通信密钥加密该加密密钥。移动管理程序134促使PD 143驱动器转换由通信密钥加密的加密密钥给加密程序137。
在步骤S65中,移动管理程序134促使内容数据库114从该广播节目数据库中读出选择内容的被加密的加密密钥。在步骤S66中,移动管理程序134促使解码程序142利用存储在RAM 13中的密钥解码该加密密钥,以促使加密程序137利用通信密钥加密该加密密钥。移动管理程序134促使PD 143驱动器转换由通信密钥加密的加密密钥给便携装置6。
便携装置6的CPU 53利用与相互验证处理共同拥有的通信密钥,解码从个人计算机1传输来的加密密钥,并且使用其自己的存储密钥加密被解码的密钥,以便关联于以前存储的数据存储被加密的加密密钥到闪速存储器61中。
在完成存储该加密密钥之后,CPU在步骤S68中通知个人计算机1加密密钥已经存储完毕。在从便携装置6收到这个通知后,个人计算机1的移动管理程序134在步骤S69中促使步骤S14从广播数据库中删除关联于该内容的内容文件161,并且删除该内容的元素的设置,即使用条件文件162。这产生移动而不是拷贝。在步骤S70中,移动管理程序134促使适配器26的CPU 32传输广播节目数据库中的数据,以计算整体哈希值,并在非易失性存储器34存储被计算出来的哈希值。获得的该哈希值在上述步骤S52中被用作事先存储的哈希值。
现在解释从个人计算机1签退该内容到便携装置6的处理。从个人计算机1签退该内容到便携装置6的处理基本上类似于从图12至14的个人计算机1中移动该内容到便携装置6的处理。即该签退处理在该个人计算机1中由签到/签退管理程序132执行,它类似于除去执行更新该签退内容的、象记录在广播节目数据库中那样的签退次数(或者可能的签退次数)处理之后的、代替在图14的步骤S69中的删除内容处理的移动处理。因此,为了简单起见不详细解释该处理。
参考图15的流程解释检查重放条件的检查处理,诸如在图12的步骤S55中,通过执行内容管理程序111的CPU 11选择的内容的重放条件。在步骤S81中,移动管理程序134促使内容数据库114从广播节目数据库读出各种条件。移动管理程序134在步骤S82中核实拷贝次数是否已经超过关于拷贝次数的限制,它是在步骤S81中被读出的各种条件之一。如果该拷贝次数已经超过了关于拷贝次数的限制,则不再允许拷贝。因此,程序转移到步骤S83,在这里移动管理程序134促使显示操作命令程序112在显示器20上显示消息“该拷贝次数已经超过了关于拷贝次数的限制”,以终止该处理。如果在步骤S82中核实该拷贝次数已经超过了关于拷贝次数的限制,则程序转移到步骤S84中,在这里核实当前日期和时间是否已经过了回放终止日期和时间。使用由适配器26的RTC 35的输出作为当前日期和时间。这防止使用被用户针对过去的日期和时间故意修改的日期和时间作为当前日期和时间。带有当前日期和时间的移动管理程序134自己实施步骤S84的判断,或者提供在步骤S81中从广播节目数据库中读出的重放条件给适配器26的CPU 32,以促使CPU 32执行在步骤S84中的判断。
如果当前日期和时间已经过了回放终止日期和时间,则程序转移到步骤S85中,在这里移动管理程序134促使从HDD 21中擦除被选择的内容,同时从广播节目数据库中擦除被选择的内容的信息。在步骤S86中,移动管理程序134促使CPU 32计算广播节目的哈希值,以在非易失性存储器34中保存被计算出来的哈希值。然后终止该处理。因此,在这种情况下不执行内容移动。
如果在步骤S84中发现当前日期和时间还没有超过回放终止时间,则程序转移到步骤S87中,在这里移动管理程序134检查选择的内容的关于回放的交费条件,例如每次重放的费用,是否登记在广播节目数据库中。如果关于回放的交费条件已经登记在广播节目数据库中,则移动管理程序134在步骤S88中促使PD 143的驱动器于便携装置6建立通信,来检查便携装置6是否具有交费功能。如果便携装置6没有交费功能,则被选择的内容不允许传输到便携装置6。因此,移动管理程序134促使显示操作命令程序112在显示器20上显示消息“传输目的地不具有交费功能”,以终止该内容移动处理。
如果在步骤S87中核实关于回放的交费条件未曾登记过,或者在步骤S88中核实便携装置6有交费功能,则程序转移到步骤S90中,在这里移动管理程序134核实诸如关于回放的次数的限制之类的其它回放条件是否已经针对选择的内容进行了登记。如果其它重放条件已经登记过,则程序转移到步骤S91中,在这里移动管理程序134检查便携装置6是否具有察看该重放条件的功能。如果便携装置6没有察看该重放条件的功能,则程序转移到步骤S92中,在这里移动管理程序134,以促使显示操作命令程序112在显示器20上显示消息“传输目的装置没有察看该重放条件的功能”,以终止该内容移动处理。
如果在步骤S90中发现该重放条件没有登记过,或者如果在步骤S91中发现便携装置6具有察看该重放条件的功能,则关于重放条件等的检查处理终止,以返回图12中的步骤S56。
图16展示了由便携装置6管理的重放条件的例子,即可以被观察的那些条件。展示在图16中的回放信息被记忆在例如EEPROM 68中。在本实例中,已经针对第1至3项的每一条登记过重放开始日期和时间以及重放结束日期和时间,但仅仅针对第2项登记过该重放条件,而对第1或3项未登记该重放条件。因此,如果第2项的内容被选择,则关于回放次数的重放条件可以被察看,但不能察看关于重放次数的重放条件。
参考图17的流程,通过执行内容管理程序111的CPU 11详细解释图12的步骤S58中的格式转换处理。在步骤S101中,移动管理程序134检查记录在内容数据库114中的被选择的内容的格式,这样的格式包括重放条件、使用条件或拷贝条件。在步骤S102中,移动管理程序134检查可以在对应设备,这里为便携装置6,上设置的条件。即移动管理程序134审查在便携装置6的CPU 53中设置的条件,以获得其应答。在步骤S103中,移动管理程序134基于在步骤S102中检查过的条件,在登记在广播节目数据库中的格式条件中确定在对应设备上设置的条件。
在步骤S104中,移动管理程序134核实是否存在任何可以被设置的条件。如果不存在任何可以被设置的条件,则程序转移到步骤S105,用以禁止移动内容到便携装置6的处理。即由于该便携装置6不能察看登记在广播数据库中的条件,所以这样的装置6禁止移动该内容。
如果在步骤S104中发现有任何可以进行设置的条件,则则程序转移到步骤S106,在这里移动管理程序134促使使用条件转换程序139将该条件改变成对应设备上的条件,例如,当传输内容到便携装置6时被存储在首标中的条件。在步骤S107中,移动管理程序134在对应设备上设置被改变的条件。因此,便携装置6在这样设置的条件下能够再现该内容。
参考图18至20的流程,通过执行内容管理程序111的CPU 11,以及通过执行主程序的CPU 53,从HDD 21拷贝内容到便携装置6的处理。由拷贝管理程序133执行的图18至20的步骤S111至步骤S127的处理,类似于在移动图12至14的HDD 21中的内容到便携装置6的步骤S51至步骤S67中的处理。即在这种情况下广播节目数据库检查关于它是否已经被修改,并接着检查选择的内容的重放条件。在便携装置和个人计算机1之间的相互验证之后,将该内容从个人计算机1的HDD 21中传输至便携装置6的闪速存储器61,以便存储在哪里。然后在步骤S129中,拷贝管理程序133促使CPU 32计算该广播节目数据库的整体哈希值,以便在非易失性存储器34中保存被计算机出来的值。
参考图21的流程,通过执行内容管理程序111的CPU 11,以及执行主程序的通过CPU 53,从HDD 21移动内容到便携装置6的处理。
首先,解释移动该内容的处理。在步骤S161中,移动管理程序134请求便携装置6的CPU 53读出被存储在闪速存储器61中的内容的信息。CPU 53响应这个请求以发送被存储在闪速存储器61中的内容上的信息至个人计算机1。基于该信息,移动管理程序134促使用于选择被存储在闪速存储器61中的内容的GUI被展示于显示器20上。用户激活键盘18或鼠标19以指定将被从便携装置6移动到HDD 21的内容数据库114的内容。
在步骤S162中,移动管理程序134促使验证程序141在它与CPU 53之间执行相互验证处理,以实现共同拥有通信密钥。这个处理类似于在图12的步骤S56中实施的处理。
在接下来的步骤S163中,CPU 53促使验证程序141读出被加密的、存储在闪速存储器61中的被选择的内容,以传输被读出的内容至个人计算机1。移动管理程序134在步骤S164中相合于作为针对便携装置6传输来的内容的一个文件的文件名,以存储该文件到内容数据库114(HDD 21)。该存储通过相合于该文件的位置信息进行,例如从作为一个独立文件的一部分的首端算起的字节数。
在步骤S165中,CPU 53读出被加密的、存储在闪速存储器61中的被选择的内容,以传输被读出的内容至个人计算机1。该加密密要通过图14中的步骤S67的处理,已经被保存在闪速存储器61中。
在从图形数据6中接收加密密钥后,移动管理程序134在步骤S166中用通信密钥解码该加密密钥,以促使加密程序137用它自己的密钥加密该密钥以便存储。在步骤S167中,移动管理程序134促使内容数据库114在HDD 21的广播节目数据库中登记在步骤S164中保存的内容的文件名、关于该内容的信息、由用户经由GUI输入的广播节目的标题以及在步骤S166中被加密的加密密钥。移动管理程序134在步骤S168中促使CPU 32通过使用条件管理程序140计算整个广播节目数据库的哈希值,以保存被计算出来的哈希值于非易失性存储器34中。
在步骤S169中,移动管理程序134通知便携装置6加密密钥已经保存完毕并且请求将被删除的内容。如果个人计算机1请求移动管理程序134删除该内容,则移动管理程序134在步骤S170中删除存储在闪速存储器61中的内容。
解释从便携装置6将内容签到个人计算机1的处理。从便携装置6将该内容签到个人计算机1的处理类似于图21中将该内容从便携装置6移动到个人计算机1中的处理。即该签到处理在该个人计算机1中由签到/签退管理程序132执行,原因是省略了图21中从步骤S162至步骤S166的处理。此外,该个人计算机1执行这样一种处理,它与除去更新签退在图21的步骤S167中记录在广播节目数据库中的该签到内容的次数的移动处理相同,用以在步骤S170的处理之后删除该内容文件。因此,为了简单起见不详细解释该处理。
同时,如果便携装置6的闪速存储器61可以作为存储卡被装上或卸下,则个人计算机1在签到处理中,在图21的步骤S162中执行相互验证处理。
从预置的个人计算机中签退内容被适用于仅仅在个人计算机1中被签到,使得有这样的步骤签到处理的预置处理,在其中,如果该内容被核实不将从该PC签退,则不实施签到;当在图5的域213中被标记成x的内容将被签到。
参考图22的流程解释通过执行CCD摄像机11的CPU 11和执行主程序的CPU 53,将该内容从便携装置6拷贝到HDD 21的处理。显示于图22中的步骤S181至步骤S188的处理,类似于在将该内容从便携装置6移动到HDD21的处理中的步骤S161至步骤S168的处理。即该拷贝处理基本上类似于除去省略了图21中的步骤S169和步骤S170的处理之后的移动处理。因此,不详细解释。
参考图23的流程,解释通过EMD服务器4和执行内容管理程序111的CPU 11,将从HDD 21中的EMD服务器4传输来的内容进行拷贝的处理。当点击图5所示的按钮202以使得对EMD服务器4的存取由用户命令时,购买程序144控制通信装置25经过网络2存取EMD服务器4。该EMD服务器4响应这个存取来经过网络2传输广播节目号上的信息、广播节目的标题和内容所拥有的类似信息至个人计算机1。在经由通信装置25获取这个信息之后,购买程序144促使显示操作命令程序112经由接口17在显示器20上展示该信息。用户在步骤S202中通过利用展示在显示器20上的GUI,指定想要拷贝的内容。这个被指定的信息经过网络202传输到EMD服务器4。在步骤S203中,购买程序144经过带有EMD服务器4的网络2执行相互验证处理,以共同拥有通信密钥。
在个人计算机1和EMD服务器4之间的相互验证处理也可以使用例如在ISO 9798-3中提供的以公开密钥和一个保秘密钥实施。在这种情况下,个人计算机1拥有EMD服务器4的私人保密密钥和公开密钥。EMD服务器4拥有它自己的私人保密密钥,以实施该相互验证处理。个人计算机1的该公开密钥可以从EMD服务器4中被传输,或者以前分发给个人计算机1的证书可以从个人计算机1被传输至EMD服务器4,并且由EMD服务器4认证以获得公开密钥。在步骤S204中,购买程序144在它与EMD服务器4之间执行用于交费的处理。此外,购买程序144在步骤S204中,执行在它与EMD服务器4之间用于交费的处理。用于交费的这种处理将参考图24的流程详细解释。
接下来在步骤S205中,EMD服务器4经过网络2传输在步骤S202中被指定的加密的内容置个人计算机1。此时,时间信息也恰当地被发送。在步骤S206中,当它相合于该文件一个文件名时,购买程序144保存被传输的内容作为一个独立的内容文件161到HDD 21中。在步骤S207中,EMD服务器4使用在步骤S203中被与个人计算机1共同拥有的通信密钥加密该内容的加密密钥,以传输被加密的密钥给该个人计算机1。
在步骤S208中,购买程序144促使解码程序142自己或者与适配器26的CPU 32合作,解码从EMD服务器4传输来的加密密钥,以促使加密程序137使用它自己的存储密钥加密在解码时获得的加密密钥。在步骤S209中,购买程序144促使内容数据库114存储该内容以及该内容的文件名、关于该内容的信息、由用户输入的广播节目的标题以及作诶一个集合的被加密的加密密钥,到HDD 21的广播节目数据库。在步骤S210中,购买程序144促使CPU 32计算整个数据库的哈希值,以保存被计算出来的哈希值到非易失存储器34中。
在步骤S205中,EMD服务器4发送时间数据以及该内容至该个人计算机1。该时间数据被从该个人计算机1传输至适配器26。在从个人计算机1接收该时间数据时,适配器26在步骤S211中修改RTC 35的时间。由于适配器26的RTC 35的时间信息,基于从被作为相互验证的结果认着是正确的设备的外部设备获得的时间信息,所以不可能总是在适配器26上保持正确的时间信息。
参考图24的流程,以下解释在图23的步骤S204中的、通过采用来执行内容管理程序111的CPU 11和EMD服务器4的有关于交费的处理。在步骤S221中,购买程序144从在步骤S201中从EMD服务器4传输来的价格信息中,读出在步骤S202中指定的选择内容的价格信息,将被读出的价格信息写到HDD 21上的交费日志上。图25图解了一交费日志。在被实例中,用户从EMD服务器4拷贝第1至3项。对于第1和第2项的区域为50元,而第3项的费用是60元。在这个时间点上,该交费日志的哈希值也通过CPU 32计算,并且登记在非易失性存储器34中。
在接下来的步骤S222中,购买程序144从HDD 21读出在步骤S221中被写入交费日志,以便经过网络2传输至EMD服务器4。EMD服务器4在步骤S223中基于从个人计算机1传输来的交费日志执行交费计算处理。即EMD服务器4还更新在最近的数据库中的、由个人计算机1的用户发送来的交费日志。在步骤S224中,EMD服务器4决定该交费日志是否应该立即结算。如果该日志将被立即结算,则该程序转移到步骤S225,在这里EMD服务器4传输项目名称或结算所必需的总数至结算服务器,它未被显示出来。在步骤S226中,结算服务器为个人计算机1的用户执行结算处理。如果在步骤S224中核实结算处理不立即进行,则跳过步骤S225和步骤S226的处理。因此,这个处理以后被周期性地,例如每月执行。
参考图26和27的流程解释通过执行内容管理程序111的CPU 11,从HDD21中的CD播放器中再现的内容的拷贝的处理。在步骤S241中,用户连接CD播放器的IEC 60958终端24a至个人计算机1的音频输入/输出接口24的IEC 60958终端24a。在步骤S242中,用户激活键盘18或鼠标19,以便输入将被从CD播放器拷贝的音乐广播节目的标题(或者相应与该内容的号)。在步骤S243中,用户激活CD播放器的一个按钮,以启动CD播放器的重放功能。如果有互连CD播放器和个人计算机1的、用于发送和接收控制信号的线路,那么通过经由个人计算机1的键盘18或鼠标19输入回放启动命令,CD播放器开始该CD的再现是可能的。
如果该CD的重放是在该CD播放器中启动的,则从该CD播放器输出的内容在步骤S244中经由IEC 60958终端24a至个人计算机1。在步骤S245中,拷贝管理程序133从在IEC 60958终端24a输入的数据中读取SCMS(serialcopy management system,连续拷贝管理系统)数据。这个SCMS数据包含拷贝信息、诸如禁止拷贝、拷贝可能仅仅一次或拷贝费用。在步骤S246中,CPU11核实SCMS数据是否指示了禁止拷贝。如果SCMS数据指示了禁止拷贝,则程序转移到步骤S247,在这里拷贝管理程序133促使显示操作命令程序112在显示器20上展示消息“禁止拷贝”,以结束该拷贝处理。因此,在这种情况下,禁止在HDD 21中进行拷贝。
如果在步骤S246中核实在步骤S245中读出的SCMS信息未指示禁止拷贝,则拷贝管理程序133前进到步骤S248中,以便读出水印代码来核实该水印代码是否指示了禁止拷贝。如果该水印代码指示了禁止拷贝,则该程序转移到步骤S247,在这里象以上那样显示预置消息,以终止该拷贝处理。
如果在步骤S249中核实了该水印代码未指示禁止拷贝,则该程序转移到步骤S250,在这里执行终端数据库检查处理。作为终端数据库检查处理的结果,如果被选择的内容已经被登记,那么该处理结束于步骤S251和步骤S252的处理。这个处理类似于图7的步骤S13和步骤S14的处理。
如果被选择的内容还没有被登记在HDD 21中,则这些内容由步骤S253至步骤S258进行登记。由于除了由IEC 60958终端24a提供的SCMS信息也被登记在广播节目数据库之外,步骤S253至步骤S258的处理类似于图7的步骤S19至步骤S24的处理,所以为了简化而省略其解释。
参考图28和29的流程,解释通过执行内容管理程序111的CPU 11,将来自HDD 21的内容输出至IEC 60958终端24a的处理。在步骤S271至步骤S273中,计算整个广播节目数据库的哈希值,就象在图18的步骤S111至步骤S113那样,并且核实关于这些哈希值是否与以前保存的哈希至一致,以检查关于是否修改了该广播节目数据库。如果发现未修改该广播节目数据库,则程序转移到步骤S274,在这里显示操作命令程序112促使内容管理程序111经由内容数据库114存取HDD 21的广播节目数据库,以读出登记在哪里的音乐广播节目上的信息,并在显示器20上显示被读出的信息。用户观看显示器以及或键盘18或鼠标19,以适当地选择将被再现的内容。在步骤S275中,显示操作命令程序112检查例如被选择的内容的回放条件。再现条件的检查处理等将在以后参考图30的流程进行解释。
在接下来的步骤S276中,显示操作命令程序112促使内容管理程序111从广播节目数据库中读出在步骤S274中选择的内容的加密密钥到内容数据库114,以促使解码程序142解码给密钥,便于存储。在步骤S277中,显示操作命令程序112促使内容管理程序111从广播节目数据库中读出被选择的内容的SCMS信息到内容数据库114,以根据SCMS系统的规则确定从IEC 60958终端24a输出的SCMS信息。例如,如果这里放置一个关于重放次数的限制,那么该重放次数按一递增,以给出新的SCMS信息。在步骤S278中,显示操作命令程序112促使内容管理程序111从广播节目数据库中读出被选择的内容的ISRC到内容数据库114。
在接下来的步骤S279中,显示操作命令程序112促使内容管理程序111从广播节目数据库中读出被选择的内容到内容数据库114,以便从HDD 21中读出该内容。显示操作命令程序112促使内容管理程序111从该广播节目数据库读出相应于该内容,同时促使解码程序142用存储密钥解码被读出的加密密钥,以使用被解码的加密密钥解码被加密的内容。压缩/展开程序138也解码(展开)该内容的压缩代码。在步骤S280中,显示操作命令程序112促使驱动器117根据IEC 60958规则,输出该内容作为将被输出在IEC 60958终端24a的解码的数字数据,以及在步骤S278中读出的ISRC信息。此外,显示操作命令程序112激活诸如Real Player(商标)之类的程序以分析该作为数字数据的内容,其中的程序为显示在图中,在音频输入/输出接口24的模拟输出端输出产生的模拟数据。
在步骤S281中,显示操作命令程序112促使内容管理程序111在内容数据库114中按一递增回放计数器的值。在步骤S282中,显示操作命令程序112检查关于回放的交费条件是否已经加到被选择的内容上。如果关于回放的交费条件已经增加,则程序转移到步骤S283,在这里显示操作命令程序112促使内容管理程序111写相应于将被写的交费到交费日之中。在步骤S284中,显示操作命令程序112促使使用条件管理程序140通过CPU 32计算整个广播节目数据库的哈希值,以存储被计算出来的哈希值到非易失性存储器34中。如果在步骤S282中核实关于回放交费条件还没有被增加到被选择的内容,则跳过步骤S283和步骤S284的处理。
参考图30的流程,详细解释在图28的步骤S275中检查该重放条件的处理。在步骤S301中,显示操作命令程序112促使内容管理程序111读出广播节目的各种条件到内容数据库114中。在步骤S302中,使用条件管理程序140检查回放次数是否超过限制的次数,象在步骤S302中由使用条件管理程序140读出的广播节目的条件中的一样。如果该检查结果指示回放次数已经超过限制的次数,则该程序转移到步骤S303,在这里使用条件管理程序140促使内容管理程序111在内容数据库114中,从HDD 21中删除被选择的内容。在步骤S304中,显示操作命令程序112促使使用条件管理程序140通过CPU 32计算整个广播节目数据库的新哈希值,以保存被计算出来的哈希值到非易失性存储器34中。在这种情况下,禁止回放输出。
如果该检查结果指示回放次数未超过限制的次数,则该程序转移到步骤S305,在这里使用条件管理程序140核实回放结束日期和时间是否已经过了当前日期和时间。如果回放结束日期和时间是已经过了当前日期和时间,则在步骤S303中以上述方式从HDD 21中,并且从广播节目数据库中删除被选择的内容。在步骤S304中,计算新的广播节目数据库的哈希值并存储起来。在这种情况下,类似地禁止回放输出。
如果在步骤S305中发现重放结束日期和时间没有超过当前日期和时间,则该程序转移到步骤S306,在这里CPU 32检查关于回放交费条件是否已经增加到被选择的内容上。如果关于回放交费条件已经增加,则该程序转移到步骤S307,在这里显示操作命令程序112在显示器上展示关于回放交费条件已经增加的消息和费用。如果在步骤S306中发现关于回放交费条件还没有被增加,则跳过步骤S307的处理。
参考图31和32的流程,解释通过执行内容管理程序111的CPU 11和执行主程序的CPU 53从HDD 21,经由便携装置6输出(再现)该内容的处理。在步骤S321至步骤S325中,检查关于该广播节目数据库是否被修改,关于被选择的内容是否已经被指定,以及关于被选择的内容的再现条件。由于该处理类似于图28的步骤S271至步骤S275的处理,所以为了简化而省略相应的描述。
在步骤S326中,在便携装置6和个人计算机1之间执行相互验证处理,使得通信的密钥由便携装置6和个人计算机1所共有。在步骤S327中,显示操作命令程序112命令便携装置6再现现在将被发送的被加密的内容。在步骤S328中,显示操作命令程序112促使内容管理程序111从广播节目数据库中读出被在步骤S324中指定的、被选择的内容,到内容管理程序111,以便从HDD 21中读出该文件名的内容。在步骤S329中,显示操作命令程序112促使内容管理程序111执行转换该内容压缩编码系统、加密系统或格式到用于便携装置6的类似系统的处理。在步骤S330中,显示操作命令程序112促使加密程序137用通信密钥加密在步骤S329中被转换的内容,以便发送被加密的内容至便携装置6。
在步骤S331中,便携装置6的CPU 53用通信密钥与在步骤S327中从个人计算机1发送的命令联合,解码被发送的数据,用以输出被解码的数据。在步骤S332中,显示操作命令程序112促使内容管理程序111在内容数据库114中按一递增广播节目重放计算的次数。在步骤S333中,显示操作命令程序112检查关于回放交费条件是否已经增加到被选择的内容上。如果关于回放交费条件已经增加到被选择的内容上,则该费用在步骤S334中经由内容管理程序111写入内容数据库114。在步骤S335中,重新由CPU 32计算整个广播节目数据库的哈希值并存储起来。如果关于回放交费条件没有被增加到被选择的内容上,则跳过步骤S334和步骤S335的处理。
在本发明中,使用了一系列的技术来防止非法复制内容。例如,操作CPU11的程序为所谓的抗干扰软件,在该软件中,其执行次序随着操作系统的不同而变化的。
此外,正如以上所解释的那样,CPU 11的作用的一部分由作为硬件的适配器26负责,使得两者通过相互合作执行各种处理,从进一步改进安全。
例如,如上所述,虽然广播节目数据库的哈希值不存储在它自己的广播节目数据库中,但存储在适配器26的非易失性存储器34中。即用于和在图8的步骤S32和步骤S33中保存以前的哈希制作比较的过去的哈希值被存储在非易失性存储器34中。例如,如果包括存储在HDD 21中的内容在内记录内容在拷贝或移动到其它记录介质之前被备份,并且在从HDD 21中拷贝或移动被存储HDD 21中的内容之后恢复包含在HDD 21中被备份的记录内容中的内容,则可能防止这样的情况发生拷贝或移动在无视使用条件的情况下启动。
例如,如果内容A和B保存在HDD 21中,如图33所示,则在非易失性存储器34中保存相应于内容A和B的信息的哈希值。在这种状态下,包含HDD 21的内容A和B的记录数据的部分或全部被备份在HDD 21中。如果后来在HDD 21中保存的内容A连同内容B一起移动到另一记录介质272,则在此刻记录于HDD 21的内容仅仅是内容B,所于非易失性存储器34的哈希值变成相应于内容B的哈希值。
因此,如果被备份在记录介质271中、包含HDD 21的内容A和B的记录数据的部分或全部在HDD 21中被恢复,则为了再次在HDD 21中保存该内容A和B,在非易失性存储器34中存储从内容B上的信息中计算出来的哈希值,而不在其中存储从内容A和B上的信息中计算出来的哈希值。因此,此刻从存储在HDD 21中的内容A和B导出的哈希值不再与存储在非易失性存储器34中的过去的哈希值一致,因而检测到广播节目数据库的修改。因此,在这以后将对保存于HDD21中的内容A和B加以限制。
如上所述,适配器26封装有RTC 35在其中,RTC 35的值基于从诸如EMD服务器4之类的、正确的验证结果已经从其中获得的其它装置传输来的时间数据,校准该时间信息。由该RTC 35输出的当前日期和时间被用作当前日期和时间,替代由用户管理的日期和时间。因此,用户不可能将个人计算机1的当前日期和时间故意修改成过去的日期和时间,来逃避作为重放条件的重放结束日期和时间的判定。
按照预先存储于ROM 36中的程序配置适配器26,来解码和执行一加密形式传输的程序,以保证高度的安全性。将通过参考图34的流程解释这一点。
即,如果想要在适配器26上实施一定的处理,则该个人计算机1在步骤S351中使用预先存储在RAM 13中的加密密钥加密将在适配器26上执行的程序,以输出被加密的程序给该适配器26。在适配器26的ROM 36中预先存储了这样的程序用于解码和执行适合于解码从个人计算机1传输来的被加密的程序,并被用来执行被解码的程序的程序。CPU 32在步骤S352中按照存储与ROM 36中的程序,解码从个人计算机1传输来的程序。CPU 32在步骤S313中完善RAM 33中的被解码的程序,以便在步骤S354中执行该程序。
当促使适配器26计算HDD 21的广播节目数据库的哈希值时,个人计算机1的CPU 11用该加密密钥加密该广播节目数据库的数据,以传输被加密的数据给适配器26的CPU 32。CPU 32对被传输到广播节目数据库的数据应用哈希函数以计算哈希值。被计算出来的哈希值存储到非易失性存储器34中。作为选择,该哈希值与以前存储的过去的哈希值比较,以将按转移概率传输的比较结果给予个人计算机1的CPU 11。
图35示出了作为半导体IC配置的适配器26的更加详细的内部结构。适配器26除了包括接口31、CPU 32、RAM 33、非易失性存储器34、RTC 35和ROM 36、用于控制RAM 33的写入和读出的RAM控制器301之外,还包括逻辑电路302。当解码被加密的内容和直接从适配器26计算被解码的数据时,使用该逻辑电路302。
从接口31至ROM 36的元件RAM控制器301和逻辑电路302被集成进半导体IC以使从外边卸下它成为徒劳。
石英振荡器311用于通过执行各种处理操作的适配器26产生基准时钟。振荡器312用于操作RTC 35。电池313为振荡器312、非易失性存储器34和RTC 35提供备份用电源。将来自个人计算机1的电源提供电路321提供给适配器26的其它电路。
非易失性存储器34可以由写擦除ROM配置。然而如果非易失性存储器34由电池313的备份电源备份的RAM形成,那么能够在非易失性存储器34上形成以保护性铝层351,并且形成与保护性铝层351齐平(flush with)的电源模型(power source pattem)352,以从电池313提供电源给非易失性存储器34,如图36所示。通过这样处理,如果试图擦除保护性铝层351来修改非易失性存储器34,那么与保护性铝层351齐平的电源模型352也被擦除,以中断向非易失性存储器34提供的、用于擦除其中存储的数据的电源。上述的这个结构还增加了抗干扰特性。
参考图37,形成用于数据写入的配线401-1至401-3和用于非易失性存储器34的读出器(readout),以使得在上下方向(深度方向)上相互叠放在一起。因为这个结构,如果想要从低层配线层401-3读出数据,那么需要移动上层配线401-1和401-2,使得不能同时从多条配线401-1至401-3读出数据。
可以构造非易失性存储器34,以使得配线401-1至401-3多余。例如,如果提供在非易失性存储器34中的配线401-1至401-3,用于互连构成非易失性存储器34的元素,诸如电阻器,即使这可能,也不将线路设计成线性的,并且设计成预置长度。通过这样处理,配线401-1至401-3所需的长度可以比固有地必须的长度长,使得倘若配线401-1至401-3的长度是该配线所需的最短长度,则寄生电容较大。
由于设计用来从非易失性存储器34读出数据,并且封装在作为半导体IC的适配器26中的专用电路,因而可以象通常那样,通过设置匹配于该寄生电容的阻抗读出存储在非易失性存储器34中的数据。但是如果连接一探测器到配线401-1至401-3,以读出存储在非易失性存储器34中存储的数据,寄生电容和探测器的电容的合成电容作为一影响因素操作,以使得难于象通常那样读出数据。
倘若便携装置6从个人计算机1中接收预置的数据,那么相互验证的处理通过参考图38和39的流程进行解释。在步骤S401中,个人计算机1的CPU11产生一随机数Na,在步骤S402中,个人计算机1的CPU 11将个人计算机1的ID、密钥的类别号G和随机数Na发送给便携装置6。
在步骤S421中,便携装置6的CPU 53产生一随机数Nb,在步骤S422中,便携装置6的CPU 53接收个人计算机1的ID、密钥的类别号G和随机数Na,由个人计算机1经过接口17发送的。在步骤S423中,便携装置6的CPU 53从密钥类别号G中寻找主密钥Kma的密钥号j。
在步骤S424中,便携装置6的CPU 53寻找第j主密钥Kma[j]。在步骤S425中,便携装置6的CPU 53将诸如从主密钥Kma[j]导出的SHA之类的哈希函数,施加到个人计算机1的ID,以寻找密钥Kab。
在步骤S426中,便携装置6的CPU 53将诸如从密钥Kab导出的SHA之类的哈希函数,施加到随机数Na、随机数Nb和个人计算机1的ID,以寻找随机数R1。在步骤S427中,便携装置6的CPU 53产生随机数Sb。
在步骤S428中,便携装置6的CPU 53将随机数Na、Nb和Sb以及密钥号j发送给个人计算机1。
在步骤S403中,个人计算机1经过接口17接收随机数Na、Nb和Sb以及密钥号j。在步骤S404中,便携装置6的CPU 53基于密钥j,寻找包含在个人密钥Kia中的密钥Kab。在步骤S405中,个人计算机1的CPU 11将诸如SHA之类的哈希函数,施加到随机数Na、Nb和Sb以及和密钥号j,以寻找随机数R2。
在步骤S406中,个人计算机1的CPU 11检查接收到的随机数R1是否等于在步骤S405中产生的随机数R2。如果发现随机数R1和R2互不相等,那么该便携装置不是一真正的装置,因此,便携装置6不被验证以终止处理。如果在步骤S406中发现随机数R1和R2相等,则该便携装置是一真正的装置,因此,该程序转移到步骤S407中,在这里个人计算机1的CPU 11产生随机数Sa。
在步骤S408中,个人计算机1的CPU 11将诸如从密钥Kab导出的SHA之类的哈希函数,施加到随机数Na和Nb,以寻找随机数R3。在步骤S409中,个人计算机1的CPU 11促使接口17发送随机数Ra和Rb至便携装置6。在步骤S410中,个人计算机1的CPU 11将诸如从密钥Kab导出的SHA之类的哈希函数,施加到随机数Sa和Sb,以寻找临时密钥Ks。
在步骤S429中,便携装置6的CPU 53接收随机数R3和Sb。在步骤S430中,便携装置6的CPU 53将诸如从密钥Kab导出的SHA之类的哈希函数,施加到随机数Nb和Na,以寻找随机数R4。在步骤S431中,便携装置6的CPU 53检查接收到的随机数R3是否等于在步骤S430中产生的随机数R4。如果发现随机数R3不等于R4,那么该个人计算机1不是一真正的个人计算机,因此,该个人计算机不被验证以终止该处理。如果在步骤S431中发现随机数R3等于随机数R4,则该个人计算机1是一真正的个人计算机,因此,该程序转移到步骤S432中,便携装置6的CPU 53将诸如从密钥Kab导出的SHA之类的哈希函数,施加到随机数Sa和Sb,以寻找临时密钥Ks。
该个人计算机1和便携装置6相互验证,以获得共同临时密钥Ks。同时,以上已经解释了在步骤S425、步骤S426、步骤S405、步骤S408、步骤S410、步骤S430和步骤S432中应用诸如SHA之类的哈希函数。作为选择,例如,可以应用DES。
参考图40和41中的流程,解释在从个人计算机1发送预置数据给便携装置6的相互验证处理。在步骤S451中,个人计算机1的CPU 11产生随机数Na。在步骤S452中,个人计算机1将个人计算机1的ID、个人计算机1的密钥的类别号Gp和便携装置6的密钥的类别号Gs和随机数Na发送给便携装置6。
在步骤S481中,便携装置6的CPU 53产生一随机数Nb,在步骤S482中,便携装置6从该个人计算机1接收经由接口17从该个人计算机1中发送的个人计算机1的ID、个人计算机1的密钥的类别号Gp、便携装置6的密钥的类别号Gs和随机数Na。在步骤S483中,便携装置6的CPU 53从便携装置6的密钥类别号Gs中寻找主密钥Kma的密钥号j。
在步骤S484中,便携装置6的CPU 53寻找第j主密钥KMa[j]。在步骤S485中,便携装置6的CPU 53将诸如从主密钥KMa[j]导出的SHA之类的哈希函数,施加到个人计算机1的ID,以寻找密钥Kab。在步骤S486中,便携装置6的CPU 53基于个人计算机1的类别号Gp寻找主密钥Kia的密钥号k。在步骤S487中,便携装置6的CPU 53将诸如从主密钥KMa[j]导出的SHA之类的哈希函数,施加到密钥Kab,以寻找K’ab。
在步骤S488中,便携装置6的CPU 53将诸如从密钥K'ab导出的SHA之类的哈希函数,以寻找随机数R1。在步骤S489中,便携装置6的CPU 53产生随机数Sb。
在步骤S453中,个人计算机1经过接口17接收便携装置6的ID、随机数Nb、R1和Sb以及密钥号j。在步骤S454中,个人计算机1将诸如从主密钥KMP导出的SHA之类的哈希函数,以寻找便携装置6的ID、寻找主密钥Km。在步骤S455中,个人计算机1的CPU 11寻找第j个人密钥KIa。在步骤S456中,个人计算机1的CPU 11将诸如从密钥Kia导出的SHA之类的哈希函数,施加到随机数Na和Nb,以寻找K’ab。在步骤S457中,个人计算机1的CPU 11将诸如从K’ab导出的SHA之类的哈希函数,施加到随机数Na和Nb,以寻找随机数R2。
在步骤S458中,个人计算机1的CPU 11确认接收到的随机数R1是否等于在步骤S457中产生的随机数R2。如果发现随机数R1不等于基准数字R2,那么该便携装置6不是一真正的装置,因此不被验证,使得终止处理。如果发现随机数R1和R2相等,则该便携装置6是一真正的装置,因此,该程序转移到步骤S459中,在这里个人计算机1的CPU 11产生随机数Sa。
在步骤S460中,个人计算机1的CPU 11将诸如从密钥KIa导出的SHA之类的哈希函数,施加到随机数Na和Nb,以寻找随机数R3。在步骤S461中,个人计算机1的CPU 11通过接口17发送随机数R3和Sb至便携装置6。在步骤S462中,人计算机1的CPU 11通过接口17将随机数R3和Sb送到便携装置6。在步骤S462中,个人计算机1的CPU 11将诸如从密钥KIa导出的SHA之类的哈希函数,施加到随机数Sb和Sa,以寻找临时密钥Ks。
在步骤S491中,便携装置6的CPU 53接收随机数R3和Sb。在步骤S492中,便携装置6的CPU 53将诸如从密钥Kab导出的SHA之类的哈希函数,施加到随机数Nb和Na,以寻找随机数R4。在步骤S493中,便携装置6的CPU 53确认接收到的随机数R3是否等于在步骤S492中产生的随机数R4。如果发现随机数R3不等于随机数R4,那么该便携装置6不是一真正的装置,因此,不被验证,使得终止该处理。如果发现随机数R3等于随机数R4,则该个人计算机1是一真正的装置,因此,该程序转移到步骤S494中,在这里,便携装置6的CPU 53将诸如从密钥Kab导出的SHA之类的哈希函数,施加到随机数Sa和Sb,以寻找临时密钥Ks。
以这种方式,该个人计算机1和便携装置6相互验证,以获得共同的临时密钥Ks。显示在图40和41的流程中的过程比显示在图38和39的流程中的过程,在抵御“伪装的”攻击方面更强。同时,以上已经解释了在步骤S485、步骤S487、步骤S488、步骤S454、步骤S456、步骤S457、步骤S460、步骤S462、步骤S492和步骤S494中应用诸如SHA之类的哈希函数。作为选择,例如,可以应用DES。
如上所述,该个人计算机1和便携装置6可以通过以与相互验证之后被实施的处理一致的不同检测电源有选择地采用相互验证处理过程,有效而强有力地对付“伪装的”攻击。
参考图42的流程解释加密源程序的处理。在步骤S501中,个人计算机1经由通信装置25发送被标记的源程序给一验证站(该站未显示)。在步骤S502中,该验证站基于标记核实该源程序是否被修改。如果发现接收到的源程序已经被修改,则不继续该处理,因此处理终止。
如果在步骤S502中发现接收到的源程序还没有被修改,则该程序转移到步骤S503中,在这里验证站用该验证站的加密密钥加密接收到的源程序。在步骤S504中,该加密站发送被加密的源程序给个人计算机1。在步骤S505中,个人计算机1在HDD 21上记录接收到的源程序以终止该处理。
以上是加密源程序的方式。同时,EMD服务器4-1至4-3或预置安全服务器也可以用于加密源程序,以代替验证站。
参考图43的流程解释适配器26执行加密的源程序的处理。在步骤S521中,适配器26的CPU 32用预先存储在非易失性存储器34中的验证站公开密钥,解码从个人计算机1接收到的被加密的源程序。在步骤S522中,适配器26的CPU 32启动解释程序,以执行被解码的源程序。
在步骤S523中,适配器26的CPU 32核实在执行该源程序时获得的结果是否被发送给个人计算机1。如果发现该结果未被发送给了个人计算机1,则终止该处理。如果在步骤S523中发现该结果被发送给了个人计算机1,则该程序转移到步骤S524,在这里适配器26的CPU 32用预置密钥机密源程序的执行结果。在步骤S525中,适配器26的CPU 32发送被加密的结果给个人计算机1来终止该处理。
如上所述,适配器26执行被加密的源程序并且在预置的情况下加密获得的结果,以将此结果发送给个人计算机1。
为了适配器26执行被加密的目标程序而加密目标程序是可能的。图44显示了用于图解加密目标程序的处理的流程。在步骤S541中,个人计算机1编译该源程序,以产生预置目标程序。从步骤S542至步骤S546的处理类似于步骤S501至步骤S505的处理,因此不具体解释了。
图45是用于图解通过适配器7执行该加密的目标程序的处理的一流程图。在步骤S561中,适配器26的CPU 32使用预先存储在非易失性存储器34中的验证站公开密钥,解码从个人计算机1接收到的被加密的源程序。在步骤S562中,适配器26的CPU 32完善RAM 33上的被解码的目标程序,以便执行该程序。从步骤S563至步骤S565的处理类似于图43的步骤S523至步骤S525的处理,因此不具体解释了。
通过参考图46的流程解释加密目标程序的其它处理。在步骤S581中,个人计算机1的CPU 11请求适配器26通过接口17发放应用程序密钥Kab和私人密钥Kidv。
在步骤S583中,个人计算机1通过接口17,从适配器26接收基于适合于适配器26的密钥Ks产生的、存储于适配器26的非易失性存储器34中的应用程序密钥Kab和私人密钥KIdv。在步骤S584中,个人计算机1的CPU 11通过该应用程序密钥Kap加密目标程序。在步骤S585中,个人计算机1的CPU 11用私人密钥Kidv加密包含在上下文中的主密钥KMb。在步骤S586中,个人计算机1的CPU 11在HDD 21中记录一目标程序,该目标程序由应用程序密钥Kap和主密钥KMb加密,而主密钥KMb包含在用私人密钥Kidv加密的上下文中。
按这种方式,个人计算机1能够用从适配器提供的应用程序密钥Kap和私人密钥Kidv,加密目标程序和上下文。
参考图47的流程,解释适配器26执行按照图46的流程中所示的过程加密的目标程序的处理。在步骤S601中,个人计算机1的CPU 11发送由该应用程序密钥Kap和包含在用私人密钥Kidv加密的上下文中的主密钥KMb加密的目标程序。
在步骤S602中,适配器26的CPU 32将哈希函数应用到预先存储在非易失性存储器34中的密钥Ks和应用程序密钥Kap来产生私人密钥Kidv。在步骤S603中,适配器26的CPU 32通过应用程序密钥Kap来解码接收到的目标程序。在步骤S604中,适配器26的CPU 32用私人密钥Kidv解码该主密钥KMb。
在步骤S605中,适配器26的CPU 32通过利用包含解码的主密钥KMb的上下文来执行目标程序。从步骤S606至步骤S608的处理类似于图43的步骤S523至步骤S525的处理,因此不具体解释了。
在图47的流程中所示的处理中,已经发送了图46的流程的私人密钥Kidv的适配器26能够执行加密目标程序。因此,已经发送了图46的流程的私人密钥Kidv的适配器26以外的适配器能够解码该目标程序,但是不能解码上下文,因此,不能执行被加密的目标程序。
参考图48的流程,解释促使个人计算机1的CPU 11执行适配器26执行目标程序时的该处理的一部分处理。在步骤S651中,适配器26的CPU 32按照预置的规则转换目标程序的预置命令队列。
例如,在用于重复基本结构,诸如Feistel结构的处理中,如在DES加密或解码程序的情况下那样,这种转换对48位被扩大的密钥和用于所谓的Feistel函数的适当随机数执行“EX-OR”运算预置次数,以使得难于解码该被扩大的密钥。此外,在一个程序解码处于DES CBC(密码字组链)模式的大量数据情况下,重复结构的处理不是顺序执行的,但多个重复结构的处理对大量数据同时执行,以使得解码被扩大的密钥很难。
此外,相应于源程序的指令的代码每次都改变。在这种代码系统中表示加法的代码是“1”,而表示乘法的代码对应于“2”在步骤S652中,适配器26的CPU 32经由接口31发送被转换的命令队列给个人计算机1。
在步骤S653中,个人计算机1的CPU 11执行被整理好的命令队列。在步骤S654中,个人计算机1的CPU 11发送在执行命令队列时获得的处理的结果。
在步骤S655中,适配器26的CPU 32基于从个人计算机1接收的处理的结果,以及由适配器26的CPU 32计算出来并携带的结果,继续该处理。在步骤S656中,适配器26的CPU 32核实个人计算机1是否执行该处理。如果发现个人计算机1不执行该处理,则结束该处理。如果在步骤S656中个人计算机1执行该处理,则该程序返回步骤S651中,以重复促使个人计算机1执行该处理的处理。
通过让个人计算机1执行目标程序的处理的一部分,适配器26能够执行能够快速安全地执行目标程序的处理。
适配器26转换包含在目标程序中的命令队列,以便发送该命令队列给个人计算机1,来使得解码该目标程序变难。如果适配器26包含在目标程序中的命令队列,以便发送被加密的命令队列,那么目标程序被使得更难于解码。
象参考图46所解释的那样,如果在加密个人计算机1送给适配器26的目标程序的处理中,步骤S652所示的转换关于源程序执行,则目标程序被使得更难于解码。
最后,通过参考图49的流程解释下载加密音乐数据的加密密钥以及进行结算的处理,其中的音乐数据在处理开始时由个人计算机1从EMD服务器4-1至4-3免费下载。在步骤S671中,个人计算机1经过网络2实施与EMD服务器4-1至4-3的相互验证。在步骤S672中,个人计算机1的CPU 11通过通信装置25,发送指定重播音乐数据的条件给EMD服务器4-1至4-3。在步骤S673中,EMD服务器4-1至4-3基于接收到的、指示该重播条件的数据,将匹配的金额(paired amount)数据发送给个人计算机。
在步骤S674中个人计算机1的CPU 11在显示器20上展示从EMD服务器4-1至4-3接收到的匹配金额数据。在步骤S675中,EMD服务器4-1至4-3请求个人计算机1发送例如用户信用卡号。在步骤S676中,用户激活键盘18或鼠标19,用以输入诸如信用卡号的数据给个人计算机1,然后该个人计算机1发送诸如信用卡数据给EMD服务器4-1至4-3。
在步骤S677中,EMD服务器4-1至4-3基于从个人计算机1接收的数据,执行结算处理。在步骤S678中,EMD服务器4-1至4-3经过网络2发送预置加密密钥给个人计算机1。在步骤S679中,个人计算机1接收从EMD服务器4-1至4-3经过网络2发送的预置加密密钥来终止该处理。
如果个人计算机1从EMD服务器4-1至4-3下载加密密钥,并且EMD服务器4-1至4-3执行结算处理,则在个人计算机从EMD服务器4-1至4-3下载音乐数据时,不需要执行验证处理、加密或结算,使得数据量相对大的音乐数据可以迅速被下载。
在前面,便携装置6被用作记录介质。但本发明可以被应用来将数据传输或拷贝到其它记录介质。虽然结算处理被基于诸如信用卡号之类的数据执行,但该结算也可以通过诸如smash(商标)之类的程序进行。
个人计算机1和EMD服务器4-1至4-3使用象由ISO9798-3提供的http(超文本传送协议)上的协议,在图49的流程中所示的处理之前实施相互验证也是可能的。
在前面的描述中,便携装置6在开始时存储私人密钥。作为选择,私人密钥也可以在用户购买便携装置6之后,从例如EMD服务器4-1至4-3下载。
数据除了音乐数据外,还可以是图形数据或其它数据。
在前面的描述中,便携装置6被用作记录介质。但本发明可以被用来移动或拷贝数据给其它记录介质。
该内容除了可以是诸如音乐广播数据或音频数据之类的音乐数据以外,还可以是图形数据或其它数据。
权利要求
1.一种经过网络连接到预置信息处理设备的信息供给介质,包括通信部件,用于从所述信息处理设备接收预置程序并且用于发送加密形式的所述程序给所述信息处理设备;以及加密部件,用于加密被所述通信部件接收的所述程序。
2.根据权利要求1的信息处理设备,其中所述程序是由解释程序执行的源程序。
3.根据权利要求1的信息处理设备,其中所述程序是目标程序。
4.一种用于由经过网络连接到预置信息处理设备的信息供给介质供给信息的方法,包括通信步骤,从所述信息处理设备接收预置程序并且发送加密形式的所述程序给所述信息处理设备;以及加密步骤,加密被所述通信部件接收的所述程序。
5.一种供给介质,用于供给用来执行以下处理的计算机可读程序,该处理包括通信步骤,从所述信息处理设备接收预置程序并且发送加密形式的所述程序给所述信息处理设备;以及加密步骤,加密被所述通信部件接收的所述程序。
6.一种适合于与执行预置处理的其它信息处理设备相互验证的信息处理设备,包括选择部件,用于从与所述预置处理一致的一个或多个相互验证程序中,选择适合于正在被执行的相互验证的处理;以及相互验证部件,用于通过所述选择部件执行被选择的相互验证程序。
7.一种用于通过适合于与执行预置处理的其它信息处理设备相互验证的信息处理设备处理该信息的方法,所述方法包括选择步骤,用于从与所述预置处理一致的一个或多个相互验证程序中,选择适合于正在被执行的相互验证的处理;以及相互验证步骤,用于通过所述选择部件执行被选择的相互验证程序。
8.一种供给介质,用于供给用来执行以下处理的计算机可读程序,该处理包括选择步骤,从与所述预置处理一致的一个或多个相互验证程序中,选择适合于正在被执行的相互验证的处理;以及相互验证步骤,用于通过所述选择部件执行被选择的相互验证程序。
9.一种用于验证的方法,包括在第一设备中产生第一随机数;从所述第一设备发送所述第一设备的ID、该密钥属性信息以及所述第一随机数到第二设备;在所述第二设备中产生第二随机数;通过所述第二设备接收从所述第一设备中发送的第一设备的ID、密钥属性信息以及第一随机数;从该密钥属性信息中计算出在所述第二设备中的密钥;由在所述第二设备中的所述密钥和第一及第二随机数产生第三随机数;从所述第二设备发送关于第一和第二随机数以及该密钥的信息到所述第一设备;在所述第一设备中,接收关于从所述第二设备中发送的第二和第三随机数以及该密钥的信息;从关于第一设备中的密钥的所述信息中产生密钥;由所述第一设备中的所述密钥和第一及第二随机数产生第四随机数;从所述第一设备发送所述第四随机数到所述第二设备;以及从第三和第四随机数以及第一和第二设备中每一个的密钥中寻找临时密钥。
10.一种用于验证的方法,包括在第一设备中产生第一随机数;从所述第一设备发送所述第一设备的ID、所述第一设备的密钥属性信息、第二设备的密钥属性信息以及所述第一随机数到所述第二设备;在所述第二设备中产生第二随机数;在所述第二设备中接收从所述第一设备中发送的、所述第一设备的ID、所述第一设备的密钥属性信息、所述第二设备的密钥属性信息以及所述第一随机数;从所述第二设备中的该密钥属性信息中计算出在所述第二设备中的第一密钥;从所述第一设备中的该密钥属性信息中计算出在所述第二设备中的第二密钥;由所述第二设备中的所述密钥和第一及第二随机数产生第三随机数;从所述第二设备发送关于第二和第三随机数以及该密钥的信息到所述第一设备;在所述第一设备中,接收关于从所述第二设备中发送的第二和第三随机数以及该密钥的信息;从关于所述第一设备中的该密钥的所述信息中产生第二密钥;由所述第一设备中的所述密钥和第一及第二随机数产生第四随机数;从所述第一设备发送所述第四随机数到所述第二设备;以及从第三和第四随机数以及第一和第二设备中每一个的密钥中寻找临时密钥。
11.一种信息供给设备,用于供给预置的加密数据和加密该预置数据的密钥,包括通信部件,用于从所述信息处理设备接收有关于由所述信息处理设备下载的所述数据的用途的数据和结算所必需的数据;以及结算部件,用于基于有关于由所述信息处理设备下载的所述数据的用途的数据和结算所必需的数据进行结算。
12.根据权利要求11的信息供给设备,还包括相互验证部件,用于通过开发一基于http的协议实现与所述信息处理设备的相互验证。
13.一种信息方法,用于给信息供给设备供给预置的加密数据和加密该预置数据的密钥,包括通信步骤,用于从所述信息处理设备接收有关于由所述信息处理设备下载的所述数据的用途的数据和结算所必需的数据;以及结算步骤,用于根据有关于由所述信息处理设备下载的所述数据的用途的数据和结算所必需的数据进行结算。
14.一种供给介质,该介质用于供给被用来促使用于供给预置的加密数据和加密所述预置数据的密钥信息供给设备执行以下处理的计算机可读程序,该处理包括通信步骤,用于从所述信息处理设备接收有关于由所述信息处理设备下载的所述数据的用途的数据和结算所必需的数据;以及结算步骤,用于根据有关于由所述信息处理设备下载的所述数据的用途的数据和结算所必需的数据进行结算。
15.一种信息处理设备,包括第一执行部件,用于解码和执行被加密的程序;以及第二执行部件,用于将所述程序供给所述第一执行部件,解码该加密程序并且基于所述第一执行部件的执行结果执行所述程序。
16.根据权利要求1的信息处理设备,其中所述第一和第二执行部件提供在各自独立的硬件上。
17.根据权利要求15的信息处理设备,其中所述程序为由一解释程序执行的源程序。
18.根据权利要求15的信息处理设备,其中所述程序为目标程序。
19.一种用于处理信息处理设备的信息的方法,包括第一执行步骤,用于解码和执行被加密的程序;以及第二执行步骤,用于将所述程序供给所述第一执行步骤,解码该加密程序并且基于所述第一执行步骤的执行结果执行所述程序
20.一种供给介质,用于供给执行如下处理的计算机可读程序,该处理包括第一执行步骤,用于解码和执行被加密的程序;以及第二执行步骤,用于将所述程序供给所述第一执行步骤,解码该加密程序并且基于所述第一执行步骤的执行结果执行所述程序。
21.一种信息处理设备,它具有装在其中的半导体IC,并被用来供给将由所述半导体IC执行的程序,所述设备包括通信部件,它用于发送由所述半导体IC执行的所述程序到验证工作站,并从所述验证工作站接收所述加密程序;记录部件,用于记录从所述验证工作站接收到的加密程序;以及发送部件,用于将被记录在记录部件上的程序发送到所述半导体IC。
22.根据权利要求20的信息处理设备,其中所述程序为由一解释程序执行的源程序。
23.根据权利要求20的信息处理设备,其中所述程序为目标程序。
24.一种用于这样一种信息处理设备的信息处理方法,它具有装在其中的半导体IC,并被用来供给将由所述半导体IC执行的程序,所述设备包括通信步骤,用于发送由所述半导体IC执行的所述程序到验证工作站,并从所述验证工作站接收被加密的程序;记录步骤,用于记录从所述验证工作站接收到的加密程序;以及发送步骤,用于将被记录在记录部件上的所述程序发送到所述半导体IC。
25.一种供给介质,用于供给适合于由这样一种信息处理设备执行的处理的计算机可读程序,其中的设备具有装在其中的半导体IC,并被用来供给将由所述半导体IC执行的程序,所述设备包括通信步骤,用于发送由所述半导体IC执行的所述程序到验证工作站,并从所述验证工作站接收被加密的程序;记录步骤,用于记录从所述验证工作站接收到的加密程序;以及发送步骤,用于将被记录在所述记录部件上的所述程序发送到所述半导体IC。
26.一种信息处理系统,包括一种信息处理设备,它具有装在其中的半导体IC,并被用来供给将由所述半导体IC执行的程序;以及一个验证工作站;所述信息处理设备包括通信部件,用于发送由所述半导体IC执行的所述程序到验证工作站,并从所述验证工作站接收的被加密程序;记录部件,用于记录从所述验证工作站接收到的加密程序;以及发送部件,用于将被记录在记录部件上的所述程序发送到所述半导体IC;所述验证工作站包括通信部件,用于接收由所述半导体IC执行的所述程序,并发送被加密的程序到所述信息处理设备;以及加密部件,用于加密由所述通信部件在预置系统里接收到的程序。
27.一种信息处理设备,具有装在其中的半导体IC,并被用来供给将由所述半导体IC执行的程序,所述设备包括重排部件,用于重排包含在由所述半导体IC执行的所述程序中的命令队列;记录部件,用于记录其中的所述命令队列已经被重排的所述程序;以及发送部件,用于将被记录在所述记录部件上的所述程序发送到所述半导体IC。
28.根据权利要求26的信息处理设备,其中所述程序为由一解释程序执行的源程序。
29.根据权利要求26的信息处理设备,其中所述程序为目标程序。
30.一种用于信息处理设备的信息处理方法,其中的设备具有装在其中的半导体IC,并被用来供给将由所述半导体IC执行的程序,所述方法包括重排步骤,用于重排包含在由所述半导体IC执行的所述程序中的命令队列;记录步骤,用于记录其中的所述命令队列已经被重排的所述程序;以及发送步骤,用于将被记录在所述记录部件上的所述程序发送到所述半导体IC。
31.一种供给介质,用于供给被用来促使由这样一种信息处理设备执行的处理的计算机可读程序,其中的设备具有装在其中的半导体IC,并被用来供给将由所述半导体IC执行的程序,所述处理包括重排步骤,用于重排包含在由所述半导体IC执行的所述程序中的命令队列;记录步骤,用于记录其中的所述命令队列已经被重排的所述程序;以及发送步骤,用于将被记录在所述记录部件上的所述程序发送到所述半导体IC。
32.一种信息处理设备,具有装在其中的半导体IC,并被用来供给将由所述半导体IC执行的程序,所述设备包括重排部件,用于重排包含在由所述半导体IC执行的所述程序中的命令队列;加密部件,用于加密所述程序;记录部件,用于记录其中的所述命令队列已经被重排的所述程序;以及发送部件,用于将被记录在所述记录部件上的所述程序发送到所述半导体IC。
33.根据权利要求31的信息处理设备,其中所述程序为由一解释程序执行的源程序。
34.根据权利要求31的信息处理设备,其中所述程序为目标程序。
35.一种用于信息处理设备的信息处理方法,其中的设备具有装在其中的半导体IC,并被用来供给将由所述半导体IC执行的程序,所述方法包括重排步骤,用于重排包含在由所述半导体IC执行的所述程序中的命令队列;加密步骤,用于加密所述程序;记录步骤,用于记录其中的命令队列已经被重排的所述程序;以及发送步骤,用于将被记录在所述记录部件上的所述程序发送到所述半导体IC。
36.一种供给介质,用于供给被用来促使由这样一种信息处理设备执行的处理的计算机可读程序,其中的设备具有装在其中的半导体IC,并被用来供给将由所述半导体IC执行的程序,所述处理包括重排步骤,用于重排包含在由所述半导体IC执行的所述程序中的命令队列;加密步骤,用于加密所述程序;记录步骤,用于记录其中的所述命令队列已经被重排的所述程序;以及发送步骤,用于将被记录在所述记录部件上的所述程序发送到所述半导体IC。
37.一种装在信息处理设备上并适合从所述信息处理设备来的命令执行各种处理的半导体IC,所述半导体IC包括接收部件,用于接收从所述信息处理设备发送的加密的第一程序;解码部件,用于解码由所述接收部件接收的所述第一程序;容纳部件,用于容纳适合于处理由所述解码部件解码的第一程序的第二程序;执行部件,用于执行基于由所述容纳部件容纳的第二程序进行处理的所述第一程序;发送部件,用于将由所述执行部件执行的结果发送到信息处理设备;计时部件,用于执行计时操作并且基于来自所述信息处理设备的时间信息校准当前时间。
38.根据权利要求36的半导体IC,还包括非易失性存储器部件,用于存储被所述信息处理设备使用的数据。
39.一种用于处理装在一种信息处理设备上并适合从所述信息处理设备来的命令执行各种处理的半导体IC的信息的方法,所述方法包括接收步骤,用于接收从所述信息处理设备发送的加密的第一程序;解码步骤,用于解码由所述接收步骤接收的所述第一程序;容纳步骤,用于容纳适合于处理由所述解码步骤解码的第一程序的第二程序;执行步骤,用于执行基于由所述容纳部件容纳的所述第二程序进行处理的所述第一程序;发送部件,用于将由所述执行步骤执行的结果发送到所述信息处理设备;以及计时步骤,用于执行计时操作并且基于来自所述信息处理设备的时间信息校准当前时间。
40.一种供给介质,用于供给被用来促使由装在一种信息处理设备上,并适合从所述信息处理设备来的命令执行各种处理的半导体IC执行处理的计算机可读程序,所述处理包括接收步骤,用于接收从所述信息处理设备发送的加密的第一程序;解码步骤,用于解码由所述接收步骤接收的所述第一程序;容纳步骤,用于容纳适合于处理由所述解码步骤解码的第一程序的第二程序;执行步骤,用于执行基于由所述容纳部件容纳的所述第二程序进行处理的所述第一程序;发送部件,用于将由所述执行步骤执行的结果发送到所述信息处理设备;以及计时步骤,用于执行计时操作并且基于来自所述信息处理设备的时间信息校准当前时间。
41.一种信息处理设备,用于输出各种命令给其装载的半导体IC以在那里执行,所述设备包括发送部件,用于发送一加密程序给所述半导体IC;第一接收部件,用于接收所述半导体IC中的所述程序的处理结果数据;第二接收部件,用于从其他设备接收数据和时间信息;存储部件,用于存储由所述第二接收部件接收的数据;以及校准部件,用于基于由所述第二接收部件接收的时间信息校准所述半导体IC的时间信息。
42.一种适合于这样一种信息处理设备的信息处理方法,所述设备被用来输出各种命令给其装载的半导体IC以在那里执行,所述方法包括发送步骤,用于发送一加密程序给所述半导体IC;第一接收步骤,用于接收所述半导体IC中的程序的处理结果数据;第二接收步骤,用于从其他设备接收数据和时间信息;存储步骤,用于存储由所述第二接收步骤接收的数据;以及校准步骤,用于基于由所述第二接收步骤接收的时间信息校准半导体IC的时间信息。
43.一种供给介质,所述介质用于供给被用来促使一种信息处理设备执行一处理的计算机可读程序,所述信息处理设备被用来输出各种命令给其装载的半导体IC以在那里执行,所述处理包括发送步骤,用于发送一加密程序到所述半导体IC;第一接收步骤,用于接收所述半导体IC中的程序的处理结果数据;第二接收步骤,用于从其他设备接收数据和时间信息;存储步骤,用于存储由所述第二接收步骤接收的数据;以及校准步骤,用于基于由所述第二接收步骤接收的时间信息校准所述半导体IC的时间信息。
44.一种信息处理设备,用于输出各种命令给其装载的半导体IC以在那里执行,所述设备包括存储部件,用于存储所述程序以及执行所述程序所必需的数据;控制部件,用于控制所述存储部件对所述程序和数据的存储或读取;第一加密部件,用于使用所述半导体IC提供的第一密钥加密所述程序;以及第二加密部件,用于使用所述半导体IC提供的第二密钥加密所述程序。
45.根据权利要求43的信息处理设备,其中所述第一密钥由所述程序的属性确定。
46.根据权利要求43的信息处理设备,其中所述第二密钥由所述程序的属性以及事先由所述半导体存储的第三密钥确定。
47.一种适合于信息处理设备的信息处理方法,所述设备被用来输出各种命令给其装载的半导体IC以在那里执行,所述方法包括存储步骤,用于存储所述程序以及执行所述程序所必需的数据;控制步骤,用于控制所述存储步骤对所述程序和数据的存储或读取;第一加密步骤,用于使用所述半导体IC提供的第一密钥加密所述程序;以及第二加密步骤,用于使用所述半导体IC提供的第二密钥加密所述程序。
48.一种供给介质,所述介质用于供给被用来促使一种信息处理设备执行一处理的计算机可读程序,所述信息处理设备被用来输出各种命令给其装载的半导体IC以在那里执行,所述处理包括存储步骤,用于存储所述程序以及执行所述程序所必需的数据;控制步骤,用于控制所述存储步骤对所述程序和数据的存储或读取;第一加密步骤,用于使用所述半导体IC提供的第一密钥加密所述程序;以及第二加密步骤,用于使用所述半导体IC提供的第二密钥加密所述程序。
49.一种半导体IC,适合于装载在一种预置的信息设备上,被用来接收由所述信息处理设备提供的程序以及执行所述程序所必需的数据并且被用来执行所述程序,所述半导体IC包括存储部件,用于存储专用于所述半导体IC的第一密钥;密钥产生部件,用于从被所述存储部件存储的所述第一密钥和由所述信息处理设备提供的所述程序的属性产生第二密钥;第一密钥解码部件,用于使用第三密钥解码所述程序;以及第二密钥解码部件,用于使用所述第二密钥解码所述数据。
50.一种信息处理方法,用于处理这样一种半导体IC的信息,所述半导体IC适合于装载在一种预置的信息设备上,被用来接收由所述信息处理设备提供的程序以及执行所述程序所必需的数据并且被用来执行所述程序,所述方法包括存储步骤,用于存储专用于所述半导体IC的第一密钥;密钥产生步骤,用于从被所述存储步骤存储的所述第一密钥和由所述信息处理设备提供的所述程序的属性产生第二密钥;第一密钥解码步骤,用于使用第三密钥解码所述程序;以及第二解码步骤,用于使用所述第二密钥解码所述数据。
51.一种供给介质,所述介质用于供给被用来促使半导体IC执行一处理的计算机可读程序,所述半导体IC适合于装载在一种预置的信息设备上,被用来接收由所述信息处理设备提供的程序以及执行所述程序所必需的数据并且被用来执行所述程序,所述方法包括存储步骤,用于存储专用于所述半导体IC的第一密钥;密钥产生步骤,用于从被所述存储步骤存储的所述第一密钥和由所述信息处理设备提供的所述程序的属性产生第二密钥;第一密钥解码步骤,用于使用第三密钥解码所述程序;以及第二解码步骤,用于使用所述第二密钥解码所述数据。
52.一种信息处理系统,包括一信息处理设备,用于提供由所述半导体IC执行的程序;以及半导体IC,它适合于装载在一种预置的信息设备上,被用来接收由所述信息处理设备提供的程序以及执行所述程序所必需的数据并且被用来执行所述程序,所述信息处理设备包括存储部件,用于存储所述程序以及执行所述程序所必需的数据;控制部件,用于控制所述存储部件对所述程序和数据的存储或读取;第一加密部件,用于使用所述半导体IC提供的第一密钥加密所述程序;第二加密部件,用于使用所述半导体IC提供的第二密钥加密所述数据;以及第一通信部件,用于将加密程序和执行该程序所必需的数据从所述信息处理设备发送到所述半导体IC,并且从所述半导体IC接收所述第一和第二密钥,所述半导体IC包括第二通信部件,用于从所述信息处理设备接收加密程序和执行所述程序所必需的数据,并且将第一和第二密钥发送给所述信息处理设备;存储部件,用于存储专用于所述半导体IC的第三密钥;密钥产生部件,用于从被所述存储部件存储的所述第三密钥和由所述信息处理设备提供的程序的属性产生第二密钥;第一解码部件,用于使用第一密钥解码由第二通信部件接收的所述程序;以及第二密钥解码部件,用于使用第二密钥解码由所述第二通信部件接收的所述数据。
全文摘要
个人计算机(1)通过通信单元(25)发送源程序到这样一地方,对于它,一个签名被附加到一验证站。如果在接收到的源程序中没有发现任何变化,则验证站用验证站的保密密钥加密,并将加密的源程序发送给个人计算机(1)。个人计算机1在HDD(21)上记录被加密的源程序并且将其发送给适配器(26)。
文档编号G06F21/87GK1310817SQ00800997
公开日2001年8月29日 申请日期2000年3月30日 优先权日1999年3月30日
发明者石黑隆二, 河上达, 田辺充, 江面裕一, 河原博和 申请人:索尼公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1