信息输入/输出以及密钥管理的系统和装置 【技术领域】
本发明涉及信息输入/输出系统,在该系统中,用户装置将信息输入给外部信源和从外部信源输出信息。
技术背景
近年来,在多媒体相关技术领域已取得了明显进展,出现了大容量记录媒体等。有这样的技术背景支持,出现了由视频、音频等组成的数字作品及在大容量记录媒体,例如光盘上记录数字作品(后面称作“内容”)的系统。在这样的系统中,加密技术用于保护数字作品,即内容。同样,为了防止未授权的内容复制,开发了一种称为“媒体绑定”的技术,即,用于将内容与特定的媒体绑在一起的技术。
作为这方面的一个具体例子,在日本专利No.3073590中说明了与数字数据保护系统、用户认可装置、及用户装置有关的技术。根据说明的这些技术,数字数据解密的密钥“A”用媒体唯一的密钥“A”进行加密,密钥“A”是从记录媒体“A”的只读区中记录的唯一信息“A”产生,并将加密的数字数据解密密钥“A”作为认可信息“A”写入记录媒体“A”。
当用户要在装置,例如个人计算机(PC)上回放内容时,该装置首先要读出记录媒体“A”的唯一信息“A”,从读出的唯一信息“A”产生媒体的唯一密钥“A”,并使用所产生的媒体唯一的密钥“A”对认可信息“A”进行解密,然后,使用数字数据解密密钥“A”对加密过的内容进行解密。
根据这样地技术,即使使用PC机或类似装置将记录在记录媒体“A”中的数据复制到另一种记录媒体“B”中,记录在记录媒体“B”的只读区中的唯一信息“B”不可能被重写为唯一信息“A”。因此,即使从唯一信息“B”中产生了媒体唯一密钥“B”,媒体唯一的密钥“B”也不能对使用媒体唯一的密钥“A”加密产生的认可信息进行解密,从而不能对在记录媒体“B”中记录的加密内容进行解密。
根据媒体绑定技术,用此方法将记录在记录媒体中的内容与特定的媒体绑定在一起,就能够防止对内容的未授权复制。
下面还将通过假设上述装置,例如PC机是由驱动器(读/写装置)和主机(加密/解密装置)组成,对媒体绑定技术作进一步说明。
根据媒体绑定技术,由于主机要对内容加密和解密,主机就应是有许可证的装置,但是,由于驱动器不能直接处理内容,驱动器就不需要有许可证。
主机和驱动器通常是通过公用的通用总线连接在一起。因此,主机和驱动器易受未授权用户的“信息替换”的侵袭。
如上所述,唯一信息“A”、使用唯一信息“A”加密的加密内容的密钥“A”和使用内容密钥“A”加密的加密内容“A”都存储在记录媒体“A”的只读区。如前所述,加密内容的密钥“A”不能重写。为了对加密的内容“A”进行解密,需要使用内容密钥“A”。内容密钥“A”只能通过使用唯一信息“A”对加密内容的密钥“A”进行解密来获得。
这样,未授权的用户可以使用他的或她的装置(未授权装置),从记录媒体“A”读出唯一信息“A”、加密内容的密钥“A”和加密内容“A”。未授权装置马上就在内部存储唯一信息“A”和加密内容的密钥“A”,并将加密内容“A”写入另一个记录媒体“B”。唯一信息“B”和使用唯一信息“B”加密的加密内容的密钥“B”就被存储在该记录媒体“B”的只读区中。通过对加密内容的密钥“B”进行解密,能够获得内容密钥“B”,但是,内容密钥“B”不能用于对加密内容“A”进行解密。这时,加密内容“A”不能被解密,因而就不能回放。
因此,未授权用户可以在驱动器和主机之间连接未授权装置。未授权装置接收唯一信息“B”、加密内容的密钥“B”和驱动器从记录媒体“B”读出的加密内容“A”。然后,未授权装置用存储在未授权装置中的唯一信息“A”和加密内容的密钥“A”来替换接收到的唯一信息“B”和接收的加密内容的密钥“B”。最后,未授权装置将唯一信息“A”加密内容的密钥“A”与从记录媒体“B”中读出的加密内容“A”一起传送给主机。接收到唯一信息“A”、加密内容的密钥“A”和加密内容“A”的主机能够毫无问题地对加密内容“A”解密并回放。这就意味着,未授权用户实际上已成功复制了内容。
为了防止上述对信息替换的侵袭,主机需要使用公用密钥加密方法等验证传送信息的装置的有效性。使用公用密钥进行这种验证的基本条件是公用密钥必须是有效的。
为此,通常是一个称之为“认证授权”的机构为每一个属于本系统的装置发放一个认定与该装置对应的公用密钥有效的“公用密钥认证”。
如果一台已发放公用密钥认证的装置参与未授权经营,或者如果与该装置对应的秘密密钥被盗,与公用密钥认证对应的认证授权要取消。为了将取消认证的装置通知属于同一系统的其它装置,认证授权结构发布一个带有相关装置的数字签名的公用密钥认证取消列表(下面称“CRL”)。该CRL列出了一些被取消确定的公用密钥认证的信息。根据该CRL,主机就能够判断转移信息的装置是否有效。作为一个例子,由Shinichiro Yamada用日语翻译、由PEARSONEDUCATION出版的文件(1)-“Secure Electronic Comerce:Buiding theInfrastructure for Digital Signatures and Encryption”-说明了由ISO/IEC/ITU确定的标准X.509定义的CRL的结构。然而,驱动器-主机结构中的一个问题是驱动器在主机接收CRL之前就接收到CRL。这就意味着,即使驱动器被设置为无效,驱动器也可以在它设置为无效之前将一个已发布的CRL转移给主机,代替主机使用正确的CRL判断驱动器的有效性。如果这种情况真的发生,主机将不能正确地判断驱动器的有效性。
本发明的说明
考虑到上述出现的问题,本发明的一个目的就是提供一种系统,在该系统中,为了防止未授权的内容复制,主机要正确判断驱动器是否是一个已经被设置为无效的装置。
上述目的可以通过信息输入/输出系统实现,在该信息输入/输出系统中,用户装置将信息输入给外部信源和从外部信源输出信息,其中的一种外部信源就是密钥管理装置。该系统包括:密钥管理装置,该密钥管理装置可以安全地输出无效装置信息,该无效装置信息规定已被设置为使用无效的无效装置;以及用户装置,它包括输入/输出单元和主机单元,可以通过所述输入/输出单元在主机单元和外部信源之间进行信息的输入和输出,主机单元可以通过输入/输出单元安全地接收由密钥管理装置输出的无效装置信息,并通过参照接收的无效装置信息来判断输入/输出单元是否是无效装置单元,而当确认判断时,就禁止通过输入/输出单元进行输入和输出。
根据这种结构,主机能够正确判断驱动器是否是被设置为无效的装置。
附图的简要说明
根据以下结合说明本发明具体实施例的附图所进行的描述,本发明的这些和其它目的、优点和特征将变得更加清楚。附图中:
图1是表示信息输入/输出系统800的总体结构的方框图;
图2示出了CRL的结构;
图3是表示终端装置100、记录装置200和记录媒体300的结构的方框图;
图4是表示记录媒体300、读/写装置400和加密装置500的结构的方框图;
图5是表示读/写装置400和加密装置500的操作流程图(下接图6);
图6是表示读/写装置400和加密装置5 00的操作流程图(上接图5,下接图7);
图7是表示读/写装置400和加密装置500的操作流程图(上接图6,下接图8);
图8是表示读/写装置400和加密装置500的操作流程图(上接图7);及
图9是表示读/写装置400和加密装置500的操作流程图。
实现本发明的最佳模式
下面参照附图说明本发明的最佳实施例。
1、信息输入/输出系统800的结构
如图1所示,信息输入/输出系统800大致由终端装置100、记录装置200、记录媒体300、读/写装置400和加密装置500组成。
终端装置100归公用密钥认证机构(后面称“CA”)所有,公用密钥认证机构向属于信息输入/输出系统800的所有装置发布公用密钥认证和公用密钥认证取消列表(后面称“CRL”)(后面将说明)。所有装置的公用密钥认证的认定确认了公用密钥的有效性。终端装置100存储这些公用密钥认证和CRL。
记录装置200归数字作品保护机构所有。记录装置200对用于加密内容的密钥进行加密,并将加密的密钥记录到记录媒体300中,实现只允许有效装置进行加密,并将内容写入记录媒体300中。
记录媒体300由记录区310和记录区320组成。记录区310是用于存储用于加密内容的密钥的区域。记录区320是存储加密内容的区域。
读/写装置400被允许使用内容,并将数据从记录媒体300读出和将数据写入记录媒体300。
加密装置500被允许使用内容,并将用于对内容加密的加密密钥进行解密,并使用解密密钥对内容进行加密。
终端装置100和记录装置200使用SSL(安全套接字层)通过网络连接。读/写装置400和加密装置500可以由,例如内容提供者所有。读/写装置400和加密装置500可以通过通用通信线路连接。这里涉及的通用通信线路是指不安全的通信线路,在这种通信线路中,数据能够随意被更改或替换。
下面将说明信息输入/输出系统800的每个部件的结构。
1.1终端装置100
终端装置100存储公用密钥认证和由CA发布的CRL。
公用密钥认证一一对应地发放给属于该系统的各个装置,认定每一个公用密钥认证与公用密钥的有效性对应。公用密钥认证包括以下各项:认证的截止时间;装置的公用密钥;和装置的唯一标识符(ID),以及这些项目的CA签名数据。
在发放的公用密钥认证中,还没有到期但该装置从事未授权经营、或者秘密密钥被盗的装置的认证将被取消。为了将列出的设置为无效的装置通知属于本系统的其它装置,CRL列出了被取消公用密钥认证的确定的装置的信息。
如图2所示,CRL由多页组成。在图2中,CRL假设由第一页至第N页组成。第一页包括索引区,标识符区及签名区。第二页包括标识符区和签名区。第三页和后面的页都与第二页相同。每一页都由可以被读/写装置400访问一次记录媒体300就能读取的这样的数据组成。
在每一页中,标识符区按升序存储已取消公用密钥认证的装置的标识符。
在每一页中,签名区存储签名数据,签名数据是由存储在该页中的标识符与签名算法“S”产生。作为一个例子,签名算法“S”可以是有限域的EIGamal签名方案算法。EIGamal签名方案是众所周知的有限域方案,因此这里不作说明。
在第一页中,索引区存储标识符,每一个标识符代表一个不同的页,并具有存储在该页的标识符区中标识符的最大值。
1.2记录装置200
如图3所示,记录装置200包括媒体密钥存储单元201、CRL存储单元202、装置密钥存储单元203、内容密钥存储单元204、传送/接收单元205、加密单元206至208和控制单元209。
下面说明记录装置200的所有部件。
(1)媒体密钥存储单元201
媒体密钥存储单元201存储多个媒体密钥。每一个媒体密钥都用于对内容密钥进行加密,内容密钥则用于对CRL和内容进行加密。当记录媒体200有效时,CA发布这些媒体密钥。
(2)CRL存储单元202
CRL存储单元202通过传送/接收单元205从终端装置100获得CRL,并存储获得的CRL。
(3)装置密钥存储单元203
装置密钥存储单元203存储属于信息输入/输出系统800的所有加密装置的装置密钥。
(4)内容密钥存储单元204
内容密钥存储单元204存储用于对内容加密的内容密钥。
(5)加密单元206
加密单元206从内容密钥存储单元204读出内容密钥,并从媒体密钥存储单元201读出一个媒体密钥。然后加密单元206根据加密算法“E”,使用读出的媒体密钥对读出的内容进行加密。作为一个例子,加密算法“E”可以是DES(数据加密标准)。DES是众所周知的,因此这里不作说明。
(6)加密单元207
加密单元207从CRL存储单元202读出CRL,并读出媒体密钥,媒体密钥与用于对媒体密钥存储单元201的内容密钥加密的媒体密钥相同。使用读出的媒体密钥,加密单元207根据加密算法“E”对整个CRL的每一页进行加密。
(7)加密单元208
加密单元208从媒体密钥存储单元201读出媒体密钥,该媒体密钥与用于对CRL和内容密钥进行加密的媒体密钥相同。同时,加密单元208选择一个被允许使用内容的加密装置的装置密钥,然后从装置密钥存储单元203读出所选择的装置密钥。使用读出的装置密钥,加密单元208根据加密算法“E”对读出的媒体密钥进行加密。
应当指出,用于选择这种装置密钥的方法(它只能将媒体密钥提供给具体装置)可以通过众所周知的技术来实现,因此,这里不作说明。作为一个例子,使用树型结构的版权保护密钥管理方法在文档(2)“Dejitaru Kontentsu HogoYo KagiKanri Houshiki(Key ManagementMethod for Protecting Digital Content)”中作了说明,该文档(2)是由Nakano、Omori和Tatebayashi所作,2001年1月发表于2001Symposium on Cryptography and Information Security(SCIS2001)5A-5。
(8)控制单元209
控制单元209通过传送/接收单元205定期访问终端装置100,以便获得CA发布的最新CRL,并将获得的CRL存储到CRL存储单元202中。
当记录媒体300被加载到记录装置200中时,控制单元209控制加密单元206使用媒体密钥对内容密钥进行加密。然后,控制单元209将加密的内容密钥303写入记录区310。
同样,控制单元209控制加密单元207使用媒体密钥对整个CRL中的每一页进行加密。然后,控制单元209将加密的CRL 302写入记录区310。
控制单元209控制加密单元208使用装置密钥对媒体密钥进行加密,并将加密的媒体密钥301写入记录区310。
1.3记录媒体300
如图3所示,记录媒体300包括:记录区310,加密的媒体密钥301、加密的CRL 302和加密的内容密钥303都记录在记录区310中;以及记录区320,记录区320记录加密内容。
记录区310可用记录装置200写入。记录区310只能由读/写装置400读取,不能写入。
记录区320可用读/写装置400写入。
1.4读/写装置400
如图4所示,读/写装置400包括公用密钥加密处理单元401、加密单元402、读/写单元403、读单元404和输入/输出单元405。
下面说明读/写装置400的每一个部件。
(1)公用密钥加密处理单元401
公用密钥加密处理单元401在读/写装置400和加密装置500之间建立SAC(安全鉴别信道)。在建立SAC之前,公用密钥加密处理装置401产生一个共享密钥“Key_AB”,由读/写装置400和加密装置500共享。应当指出,“Gen”被设置为密钥生成函数,而“Y”设置为对该系统唯一的系统参数。还应当指出,密钥生成函数“Gen”满足函数关系“Gen(x,Gen(y,z))=Gen(y,Gen(x,z))”。应当指出,密钥生成函数能够用任意选择普通技术实现,因此这里不作详细说明。作为一个例子,由Nobuichi Ikeno and Kenji Koyama、DenkiTsushin Gakkai所作的文档(3)-“Gendai Ango Riron(ModernCryptography)”-说明了Diffie-Hellman(DH)公用密钥分布方法。
公用密钥加密处理单元401存储读/写装置400的秘密密钥“SK_A”和由CA为读/写装置400发布的认证“Cert_A”。认证“Cert_A”包括以下各项:认证的截止时间;读/写装置400的公用密钥“PK_A”;及读/写装置400的标识符“ID_A”和这些项目的CA的签名数据“Sig_CA”。
公用密钥加密处理单元401读出认证“Cert_A”,并将读出的认证传送给加密装置500中的公用密钥加密处理单元502。
公用密钥加密处理单元401接收公用密钥加密处理单元502的随机数“Cha”,并使用秘密密钥“SK_A”产生接收的随机数“Cha”的签名数据“Sig_A”。然后,公用密钥加密处理单元401将产生的签名数据“Sig_A”传送给公用密钥加密处理单元502。
公用密钥加密处理单元401接收由公用密钥加密处理单元502计算得到的密钥“Key_B”,并产生一个随机数“a”。然后,公用密钥加密处理单元401使用产生的随机数“a”计算密钥“Key_A=Gen(a,y)”,并将计算的密钥“Key_A”传送给加密装置500。同样,使用接收的密钥“Key_B”和计算的密钥“Key_A”,公用密钥加密处理单元401计算共享密钥“Key_AB=Gen(a,Key_B)”,由读/写装置400和加密装置500共享。公用密钥加密处理单元401将计算的共享密钥“Key_AB”输出给加密单元402。
(2)加密单元402
加密单元402接收由公用密钥加密处理单元401计算的共享密钥“Key_AB”。使用共享密钥“Key_AB”,加密单元402根据加密算法“E”,对读出单元404从记录区310读出的加密内容密钥303进行加密。使用共享密钥,通过对加密内容密钥303加密获得的结果密钥下面称作为“双加密内容密钥”。
加密单元402将双加密内容密钥303输出给输入/输出单元405。
(3)读/写单元403
读/写单元403从记录区310读出加密媒体密钥301,并将加密媒体密钥301传送给加密装置500。
读/写单元403读出加密的CRL 302的第一页,并将读出的页传送给加密装置500。同样,当命令读/写单元403通过加密装置500读出与标识符“ID_A”对应的页时,读/写单元403从记录区310读出与加密的CRL 302对应的页,并将读出的页传送给加密装置500。
读/写单元403接收加密装置500的加密内容,并将加密内容写入记录区320。
(4)读单元404
读单元404从记录区310读出加密内容密钥303,并将加密内容密钥303输出给加密单元402。
(5)输入/输出单元405
输入/输出单元405将由加密单元402加密的双加密内容密钥303传送给加密装置500。
1.5加密装置500
如图4所示,加密装置500包括装置密钥存储单元501、公用密钥加密处理单元502、解密单元503至506、加密单元507和输入/输出单元508。
下面将对加密装置500的每一个部件进行说明。
(1)装置密钥存储单元501
装置密钥存储单元501存储对加密装置500是唯一的装置密钥。
(2)公用密钥加密处理单元502
公用密钥加密处理单元502在读/写装置400和加密装置500之间建立SAC。在建立SAC之前,公用密钥加密处理单元502产生共享密钥“Key_AB”,由读/写装置400和加密装置500共享。
公用密钥加密处理单元502存储CA的公用密钥“PK_CA”。
公用密钥加密处理单元502接收解密单元504的CRL的第一页,并将第一页的签名数据提交给签名验证算法“V”,验证该签名。这里的签名验证算法“V”是用于验证根据上述签名算法“S”产生的签名数据的算法。当验证不成功时,SAC建立过程结束。
当验证成功时,执行以下处理。公用密钥加密处理单元502通过输入/输出单元508接收公用密钥加密处理单元401的认证“Cert_A”,并使用CA的公用密钥“PK_CA”验证签名数据“Sig_CA”。当验证不成功时,SAC建立过程结束。当验证成功时,执行以下处理。公用密钥加密处理单元502从读/写装置400接收到的第一页的索引区,检测可能与标识符“ID_A”对应的页,并输出检测到的页。为了检测对应的页,公用密钥加密处理单元502以升序排列一个接一个地自上检查索引区中的标识符,并检测包含标识符的、以行写入的页编号,包含在行中的标识符值与标识符值“ID_A”相等或比它大。
当对应的页为第一页时,公用密钥加密处理单元502判断标识符“ID_A”是否在第一页的标识符区中注册。当标识符“ID_A”在那里已注册时,SAC建立过程结束。
当对应的页不是第一页时,公用密钥加密处理单元502命令读/写装置400读出对应的页。
根据接收到的、由读/写装置400读出并由解密单元504解密的与标识符“ID_A”对应的页,公用密钥加密处理单元502将该页的签名数据提供给签名验证算法“V”,对签名进行验证。当验证不成功时,SAC建立过程结束。当验证成功时,执行以下处理。公用密钥加密处理单元502判断标识符“ID_A”是否在页中注册。当标识符“ID_A”在页中已注册时,SAC建立过程结束。
当在索引区没有检测到有标识符值比标识符值“ID_A”大,并且没有查找到对应的页;当检测到对应的页为第一页,但是标识符“ID_A”没有在CRL的第一页注册;或者当检测到对应的页,但是标识符“ID_A”没有在对应的页中注册时,公用密钥加密处理单元502产生随机数“Cha”,并将产生的随机数传送给公用密钥加密处理单元401。
一旦接收到来自公用密钥加密处理单元401的签名数据“Sig_A”,公用密钥加密处理单元502使用读/写装置400接收的、包含在认证“Cert_A”中的公用密钥“PK_A”对签名数据“Sig_A”进行验证。
当验证不成功时,SAC建立过程结束。
当验证成功时,执行以下处理。公用密钥加密处理单元502产生一个随机数“b”。使用产生的随机数“b”,公用密钥加密处理单元502计算密钥“Key_B=Gen(b,Y)”,并将计算出的密钥“Key_B”传送给公用密钥加密处理单元401。
一旦接收到来自公用密钥加密处理单元401计算的密钥“Key_A”,公用密钥加密处理单元502使用接收的密钥“Key_A”和产生的随机数“b”,计算共享密钥“Key_AB=Gen(b,Key_A)。公用密钥加密处理单元502将计算的共享密钥“Key_AB”输出给解密单元505。
(3)解密单元503至506
解密单元503通过输入/输出单元508接收读/写装置400的加密媒体密钥301,并从装置密钥存储单元501读出装置密钥。使用读出的装置密钥,解密单元503根据解密算法“D”对加密媒体密钥301进行解密。这里,解密算法“D”是用于执行与加密算法“E”相反处理的算法,以便于对加密数据进行解密。解密单元503将媒体密钥输出给解密单元504和解密单元506。
解密单元504通过输入/输出单元508,接收读/写装置400的加密的CRL 302的第一页,并接收由解密单元503输出的媒体密钥。然后,加密单元504根据解密算法“D”,使用接收的媒体密钥对加密的CRL的第一页进行解密。解密单元504将CRL输出给公用密钥加密处理单元502。同样,一旦通过输入/输出单元508接收到与标识符“ID_A”对应的加密的CRL 302的页,解密单元504根据解密算法“D”,使用媒体密钥对对应的页进行解密,并将CRL输出给公用密钥加密处理单元502。
解密单元505通过输入/输出单元508,接收读/写装置400的双加密内容密钥303,并接收由公用密钥加密处理单元502产生的共享密钥“Key_AB”。然后,解密单元505根据解密算法“D”,使用共享密钥“Key_AB”,对双加密内容密钥303进行解密。解密单元505将加密内容密钥303输出给解密单元506。
解密单元506接收由解密单元503输出的媒体密钥,并接收由解密单元505输出的加密内容密钥303。然后,解密单元506根据解密算法“D”,使用媒体密钥,对加密内容密钥303进行解密。然后,解密单元506将内容密钥输出给加密单元507。
(4)加密单元507
加密单元507接收由解密单元506输出的内容密钥,并接收外部信源的内容,并根据加密算法“E”,使用内容密钥对内容加密。加密单元507将加密的内容输出给输入/输出单元508。
(5)输入/输出单元508
输入/输出单元508接收读/写装置400的加密的媒体密钥301,并将加密的媒体密钥301输出给解密单元503。
输入/输出单元508接收读/写装置400加密的CRL 302的第一页,并将接收的第一页输出给加密单元504。同样,一旦接收到从解密单元504读出与标识符“ID_A”对应的加密的CRL 302的页的指令,输入/输出单元508将指令传送给读/写装置400。输入/输出单元508从读/写装置400接收加密的CRL 302的对应页,并将接收的对应页输出给解密单元504。
输入/输出单元508接收来自读/写装置400的双加密内容密钥303,并将双加密内容密钥303输出给解密单元505。
输入/输出单元508从加密单元507接收加密内容,并将加密内容输出给读/写装置400。
2.信息输入/输出系统800的操作
2.1记录装置200的操作
下面说明记录装置200将数据写入记录媒体300的记录区310的操作。
当把记录媒体300装入记录装置200中时,控制单元209命令加密单元206对内容密钥进行加密。
加密单元206从内容密钥存储单元204读出内容密钥,并从媒体密钥存储单元201读出一个媒体密钥。加密单元206使用读出的媒体密钥对内容密钥进行加密。
控制单元209将由加密单元206加密的加密内容密钥303写入记录区310。
接着,控制单元209命令加密单元207对CRL加密。
加密单元207从CRL存储单元202读出CRL,并读出一个媒体密钥,该媒体密钥与用于对媒体密钥存储单元201的内容密钥进行加密的媒体密钥相同。使用读出的媒体密钥,加密单元207对整个CRL的每一页进行加密。
控制单元209将由加密单元207加密的加密CRL 302的每一页写入记录区310。
同样,控制单元209命令加密单元208对媒体密钥进行加密。
加密单元208选择允许其使用所述内容的加密装置的装置密钥,然后从装置密钥存储单元203读出所选择的装置密钥。然后,加密单元208从媒体密钥存储单元201读出媒体密钥,该媒体密钥与用于对内容密钥和CRL进行加密的媒体密钥相同。加密单元208使用装置密钥对媒体密钥加密。
控制单元209将被加密单元208加密的加密媒体密钥301写入记录区310。
2.2读/写装置400和加密装置500的操作
下面参照图5至8说明读/写装置400和加密装置500的操作。
当记录媒体300加载到读/写装置400时,读/写单元403从记录区310读出加密的媒体密钥301(步骤S701),并将加密的媒体密钥301传送给加密装置500(步骤S702)。
解密单元503通过输入/输出单元508接收加密的媒体密钥301,并从装置密钥存储单元501读出装置密钥(步骤S703)。使用读出的装置密钥,解密单元503对加密的媒体密钥301进行解密(步骤S704),并将得到的媒体密钥输出。
读/写单元403读出加密的CRL301的第一页(步骤S705),并将读出的第一页传送给加密装置500(步骤S706)。
解密单元504通过输入/输出单元508接收加密的CRL302的第一页,并接收由解密单元503输出的媒体密钥。然后,解密单元504使用媒体密钥对加密的CRL 302的第一页进行解密(步骤S707),并将CRL的第一页输出给公用密钥加密处理单元502(步骤S708)。
公用密钥加密处理单元502使用CA的公用密钥“PK_CA”对CRL第一页的签名数据进行验证(步骤S709)。当验证不成功(在步骤S710中为”否”)时,操作结束。
为了建立SAC,公用密钥加密处理单元401读出认证“Cert_A”(步骤S711),并将认证通过输入/输出单元405传送给公用密钥加密处理单元502(步骤S712)。
公用密钥加密处理单元502通过输入/输出单元508接收认证“Cert_A”,并使用CA的公用密钥“PK_CA”对接收的认证“Cert_A”的签名数据“Sig_CA”进行验证(步骤S713)。当验证不成功(在步骤S714中为”否”),SAC建立过程结束。当验证成功(在步骤S714中为“是”),公用密钥加密处理单元502在CRL的解密过的页中检测到一页,该页与接收的认证“Cert_A”的标识符“ID_A”对应(步骤S715)。然后,公用密钥加密处理单元502判断检测到的对应页是否是第一页(步骤S716)。当判断检测到的不是对应的第一页(在步骤S716中为“不是第一页”)时,公用密钥加密处理单元502命令读/写装置400,通过输入/输出单元508读出对应的页(步骤S717)。
当接收到加密装置500的命令时(步骤S718),读/写装置403从加密的CRL 302读出与标识符“ID_A”对应的页,并将读出的页传送给加密装置500(步骤S719)。
解密单元504通过输入/输出单元508,接收与加密的CRL 302的标识符“ID_A”对应的页,并对接收的页进行解密(步骤S720)。然后,解密单元504将解密的CRL输出给公用密钥加密处理单元502(步骤S721)。公用密钥加密处理单元502验证CRL的对应页的签名数据(步骤S722)。当验证不成功(在步骤S723中为”否”)时,操作结束。当验证成功(在步骤S723中为“是”)时,与标识符“ID_A”对应的页为第一页(在步骤S716中为“1”),公用密钥加密处理单元502判断标识符“ID_A”是否在CRL中已注册(步骤S724)。
当标识符“ID_A”已注册(在步骤S724中为“是”)时,SAC建立过程结束。当标识符“ID_A”没有注册(在步骤S724中为”否”)并且没有页与标识符“ID_A”对应(在步骤S716中为“NONE”)时,公用密钥加密处理单元502产生随机数“Cha”(步骤S725),并通过输入/输出单元508将产生的随机数传送给公用密钥加密处理单元401(步骤S726)。
公用密钥加密处理单元401通过输入/输出单元405接收随机数“Cha”,并使用秘密密钥“SK_A”为接收的随机数“Cha”产生签名数据“Sig_A”(步骤S727),并将产生的签名数据通过输入/输出单元405传送给公用密钥加密处理单元502(步骤S728)。
公用密钥加密处理单元502通过输入/输出单元508接收签名数据“Sig_A”,并使用公用密钥“PK_A”,验证接收的包含在步骤S710中的认证“Cert_A”中的签名数据“Sig_A”(步骤S729)。公用密钥加密处理单元502判断验证是否成功(步骤S730)。当验证不成功(在步骤S730中为”否”),SAC建立的过程结束。当验证成功(在步骤S730中为“是”),公用密钥加密处理单元502产生一个随机数“b”(步骤S731)。使用产生的随机数“b”,公用密钥加密处理单元502计算密钥“Key_B=Gen(b,Y)”(步骤S732),并将计算的密钥“Key_B”通过输入/输出单元508传送给公用密钥加密处理单元401(步骤S733)。
公用密钥加密处理单元401通过输入/输出单元405接收密钥“Key_B”,并产生随机数“a”(步骤S734)。使用产生的随机数“a”,公用密钥加密处理单元401计算密钥“Key_A=Gen(a,Y)”(步骤S734),并将计算的密钥“Key_A”通过输入/输出单元405传送给公用密钥加密处理单元502(步骤S736)。同样,使用接收的密钥“Key_B”,公用密钥加密处理单元401计算共享密钥“Key_AB=Gen(a,Key_B)”(步骤S737),并将共享密钥传送给加密单元402(步骤S738)。
已经接收了密钥“Key_A”的公用密钥加密处理单元502,使用密钥“Key_A”和随机数“b”计算共享密钥“Key_AB=Gen(b,Key_A)”(步骤S739),并将共享密钥“Key_AB”输出给解密单元505(步骤S740)。
用这种方法,公用密钥加密处理单元502和公用密钥加密处理单元401产生由读/写装置400和加密装置500共享的共享密钥。这就完成了SAC建立的过程。
当公用密钥加密处理单元401产生共享密钥“Key_AB”时,读/写装置400通过读单元404从记录区310读出加密的内容密钥303(步骤S741),并将加密的内容密钥303传送给加密单元402(步骤S742)。加密单元402使用接收自公用密钥加密处理单元401的共享密钥“Key_AB”对加密的内容密钥303进行加密(步骤S743),并通过输入/输出单元405,将得到的双加密内容密钥303传送给加密装置500(步骤S744)。
解密单元505接收由公用密钥加密处理单元502输出的共享密钥“Key_AB”,并通过输入/输出单元508接收读/写装置400的双加密内容密钥303。然后,解密单元505使用共享密钥“Key_AB”对双加密内容密钥303进行加密(步骤S745),并将得到的加密的内容密钥303输出给解密单元506。
解密单元506接收由解密单元503输出的媒体密钥和解密单元505输出的加密的内容密钥303,并使用媒体密钥对加密的内容密钥303进行解密(步骤S746),并将内容密钥输出给解密单元507(步骤S747)。
加密单元507接收解密单元506的内容密钥,并接收外部信源的内容。然后,加密单元507使用内容密钥对内容进行加密(步骤S748)。加密单元507通过输入/输出单元508将加密的内容传送给读/写装置400(步骤S749)。
读/写单元装置403通过输入/输出单元405接收加密的内容,并将加密的内容写入记录媒体300的记录区320中(步骤S750)。
3.其它修改
虽然基于上述实施例对本发明进行了说明,但是应该明白,本发明不局限于上述实施例。例如,可以进行以下修改。
(1)本发明可以用上述实施例描述的方法实现。本发明也可以通过在计算机上运行的、实现这些方法的计算机程序来实现,或者用代表计算机程序的数字信号来实现。
本发明也可以用记录计算机程序或数字信号的计算机可读记录媒体实现。计算机可读记录媒体的例子包括软磁盘、硬盘、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、BD(蓝光束光盘)(Blu-ray Disc))及半导体存储器。本发明也可以用计算机程序或记录在这种记录媒体上的数字信号实现。
而且,本发明可以用通过电子通信线路、有线/无线通信线路或网络,例如互连网传输的计算机程序或数字信号实现。
此外,本发明可以用包括微处理器和存储器的计算机系统实现。存储器可以存储计算机程序,而微处理器可以按照计算机程序操作。
计算机程序或数字信号可以记录在媒体中、或通过网络等转移,使得计算机程序或数字信号可以由其它独立的计算机系统执行。
(2)在SAC建立的过程中,共享密钥“Key_AB”可以通过图9所示的步骤S761至S771,而不是通过图7和8所示的步骤S727至S739来实现。
更具体地说,一旦接收到随机数“Cha”,公用密钥加密处理单元401产生随机数“a”(步骤S761)。公用密钥加密处理单元401使用产生的随机数“a”计算密钥“Key_A=Gen(a,Y)”(步骤S762),并使用读/写装置400的秘密密钥“SK_A”产生由链接计算的密钥“Key_A”和接收的随机数“Cha”获得的“Key_A‖Cha”的签名数据“Sig_A”(步骤S763)。然后,公用密钥加密处理单元401将计算的密钥“Key_A”和产生的签名数据“Sig_A”传送给加密装置500(步骤S764)。
公用密钥加密处理单元502使用接收的包含在认证“Cert_A”中的读/写装置400的公用密钥“PK_A”,验证签名数据“Sig_A”(步骤S765)。当验证不成功(在步骤S766中为”否”)时,SAC建立过程结束。当验证成功(在步骤S766中为“是”)时,公用密钥加密处理单元502产生随机数“b”(步骤S767)。使用产生的随机数“b”,公用密钥加密处理单元502计算密钥“Key_B=Gen(b,Y)”(步骤S768),并将计算的密钥“Key_B”传送给公用密钥加密处理单元401(步骤S769)。同样,使用计算的密钥“Key_B”和接收的密钥“Key_A”,公用密钥加密处理单元502计算共享密钥“Key_AB”(步骤S770)。
一旦接收到密钥“Key_B”,公用密钥加密处理单元401使用密钥“Key_B”和密钥“Key_A”,计算共享密钥“Key_AB”(步骤S771)。
(3虽然)上述实施例说明了这样的分层结构,在这样的分层结构中,使用媒体密钥对内容密钥加密,使用装置密钥对媒体密钥加密,本发明并不局限于这些。例如,也可以采用这样的结构,其中使用装置密钥直接对内容密钥进行加密,使用内容密钥对CRL进行加密。在这种情况下,通过在通用通信路线上秘密传送内容密钥和装置密钥,就能够防止上述信息替换的侵袭。
同样,通过增加使用的密钥数目,可以使分层结构更加复杂。作为一个例子,可以附加应用磁盘密钥。在这种情况下,首先使用磁盘密钥对内容密钥进行加密,使用媒体密钥对磁盘密钥进行加密,然后使用装置密钥对媒体密钥进行加密。在这种情况下,有可能不能使用媒体密钥对CRL进行加密,但可以使用磁盘密钥对它进行加密。用这种方法,通过加密装置500安全获得的任何密钥都可以用于对CRL进行加密。
因此,也可以使用以下结构。在上述信息被传送之前,可以建立传送公用密钥的SAC。在SAC建立后,上述信息就可以被安全地传送,然后,可以参照CRL对公用密钥的实际有效性进行验证。
(4)虽然上述实施例说明了记录在索引区中的每一个标识符都代表一个不同的页、并且在该页的标识符区记录的标识符中具有最大值的情况,但是本发明并不局限于这些。例如,在该页的标识符区记录的标识符中具有最小值的每一个标识符都可以记录在索引区中,或者最小的标识符和最大的标识符都可以记录在索引区中。
此外,可以给每一页指定地址或标识符,给每一页指定的地址或标识符可以与存储在该页中的标识符联系在一起。在这种情况下,与标识符相连系的地址或标识符可以用于判断存储标识符的页编号。
此外,上述实施例说明了把CRL的每一页的签名数据记录在每一页的签名区中的情况。另一方面,所述结构可以是这样的,使得第一页和第二页的签名数据记录在第二页的签名区中,第一页和第N页的签名数据记录在第N页的签名区中。在这种情况下,记录在第一页的签名区中的签名数据并不需要验证。例如,通过对记录在第二页签名区中的签名数据的验证,也能够验证第一页和第二页的有效性。简言之,在任何可以应用的结构中,CRL部分的有效性只要使用读出的CRL的部分就能够验证。同样,可以接收提供给整个CRL的签名数据。
(5)虽然上述实施例说明了把已经被取消公用密钥认证的装置的标识符记录在CRL的标识符区的情况,但是,CRL可以代之以列出被取消的公用密钥认证的唯一系列号或与装置对应的公用密钥的标识符。
在CRL列出系列号的情况下,加密装置500接收包含其序列号的公用密钥认证,和读/写装置400的加密的CRL。加密装置500对加密的CRL进行解密,并判断接收到的公用密钥认证的系列号是否在解密的CRL中列出。当判断序列号确实在那里列出时,加密装置500判断读/写装置400的公用密钥认证已被取消。在CRL列出公用密钥的标识符情况下也应用相同方法。
(6)虽然上述实施例说明了加密CRL并将其记录在记录媒体中的结构,但是本发明并不局限于这些。一般地说,CRL不需要保密,但是要求CRL是有效的。因此,CRL可以是能够保证其有效性的任何结构。例如,CRL可以使用媒体密钥提供单向转换(即哈希函数),以便产生消息验证代码(MAC)。在这种情况下,媒体密钥、CRL和MAC都记录在记录媒体中。这里,加密装置500使用从记录媒体读出的媒体密钥,将CRL提供给单向转换,以便产生MAC。然后加密装置500将产生的MAC和读出的MAC进行比较,当MAC一致时判断CRL有效。
(7)虽然上述实施例说明了本发明应用于加密装置500的情况,但是本发明也可以应用于解密装置,或者具有加密和解密功能的加密/解密装置。在解密装置的情况下,装置读出记录在记录媒体中的加密的内容,并对其进行解密,输出解密的内容。
(8)虽然上述实施例说明了装置密钥对加密装置500是唯一的情况,但是,相同的装置密钥可以由多台相同类型的装置,或由多台处理相同类型内容的装置共享。
(9)虽然上述实施例说明了用于对内容进行加密或解密的密钥是内容密钥本身的情况,但是由内容密钥产生的另一个密钥,或由内容密钥和其它信息(例如对于记录媒体是唯一的信息)产生的另一个密钥都可以用于对内容进行加密或解密。
(10)虽然上述实施例说明了记录装置200包括存储最新CRL的CRL存储单元的情况,但是,加密装置、解密装置、或加密/解密装置都可以包括CRL存储单元。在这种情况下,CRL存储单元对接收的读/写装置400的CRL和存储在其中的CRL进行比较,以便知道哪一个是比较新的。当接收的CRL较新时,CRL存储装置就用接收的CRL对存储在那里的CRL更新。这里,可以根据每一个CRL的版本号、或每一个CRL的生成日期和时间对CRL进行比较。加密装置、解密装置或加密/解密装置也可以与网络连接。在这种情况下,只有当检测到存储的CRL和接收的CRL之间有差别时,该装置才可以通过网络查询最新的CRL或获得最新的CRL。
(11)上述实施例说明了建立SAC以便只需要单向验证的情况,即,只需要加密装置500验证读/写装置400的有效性的验证的情况。然而,可以建立SAC以便进行相互验证。在这种情况下,读/写装置400使用的CRL可以记录在记录媒体300中。另一方面,可以构造包括存储最新CRL的CRL存储单元的读/写装置400。
(12)读/写装置和加密装置可以不是分开的装置。例如,读/写装置和加密装置可以包括在一个装置中,并可以通过通用通信线路相互连接在一起。
(13)可以采用使用通信媒体而不是记录媒体的结构。在这种情况下,加密装置500通过通信媒体,例如网络,接收记录装置200的加密的媒体密钥301、加密的CRL 302和加密的内容密钥303,并通过与上述实施例说明的相同操作进行解密和验证。然后,加密装置500使用解密的内容密钥对内容进行加密,并将加密的内容传送给重放装置,例如PC机。
(14)虽然上述实施例说明了记录装置200从终端装置100接收的CRL是由多个页组成的情况,但是,从终端100接收的CRL可以由一个页组成,在该页中记录有被取消了公用密钥认证的所有装置的标识符。在这种情况下,记录装置200将接收的CRL分成多个页,并提取一个写在每一页的结尾和/或开头的标识符,产生一个索引区。然后,记录装置200至少对每一页的一部分进行签字,并存储CRL。
(15)虽然上述实施例说明了终端装置100使CA的签名与包含在CRL中的标识符连接在一起的情况,但是记录装置200可以将记录装置200的签名与包含在CRL中的标识符连接在一起。
(16)虽然上述实施例说明了媒体密钥存储单元201存储多个媒体密钥的情况,但是如果需要,每一次都可以在记录装置200中产生每一个媒体的密钥。同样,如果需要,每一个媒体密钥都可以从外部信源输入给记录装置200。
(17)虽然上述实施例说明了记录装置200存储媒体密钥和内容密钥的情况,但是本发明并不局限于这些。记录媒体300可以存储唯一信息,并且记录装置200可以利用所述唯一信息产生媒体密钥和内容密钥。作为一个例子,通过所述唯一信息与日期和时间信息的组合可以产生媒体密钥。另一方面,可以利用唯一信息产生又一个密钥。在这种情况下,可以利用产生的密钥对媒体密钥进行加密,或者可以利用产生的密钥对内容密钥加密。
(18)虽然上述实施例说明是从多个媒体密钥中选择一个媒体密钥并且利用选择出来的媒体密钥加密内容密钥的情况,但是,本发明不应该局限于这些。
可以利用一个媒体密钥来加密内容密钥。另一方面,可以利用多个不同的媒体密钥、利用多个记录装置来加密内容密钥。例如,可以利用媒体密钥“A”、通过记录装置“A”来加密内容密钥;可以利用媒体密钥“B”、通过记录装置“B”来加密同一个内容密钥。而且,也可以利用更多的媒体密钥来加密内容密钥。
(19)虽然上述实施例说明了加密的密钥、加密的CRL和加密的内容密钥都记录在不允许写入的只读记录区的情况,但是,本发明不应该局限于这些。
只要把记录媒体唯一的信息记录在不允许写入的只读记录区,其它密钥就可以记录在允许写入区。
(20)虽然上述实施例说明了加密单元207对整个CRL进行加密的情况,但是加密单元207可以构造成只对CRL的一部分,例如CRL的每一页的签名区进行加密。
(21)虽然上述实施例说明了记录装置200对媒体密钥、内容密钥和CRL进行加密并将它们写入记录区310中的情况,但是,可以单独提供对它们进行加密的装置和将它们写入的装置。
(22)上述实施例及其修改可以自由组合。
如上所述,本发明涉及信息的输入/输出系统,在该系统中,用户装置将信息输入给外部信源并从外部信源输出信息,一种外部信源就是密钥管理装置。该系统包括:密钥管理装置,它可以安全输出无效装置信息,所述无效装置信息规定了被设置为使用无效的无效装置单元;以及用户装置,所述用户装置包括输入/输出单元和主机单元。可以通过所述输入/输出单元在主机单元和外部信源之间进行信息的输入和输出。主机单元可以通过所述输入/输出单元安全地接收从密钥管理装置输出的无效装置信息,并参照接收的无效装置信息判断输入/输出单元是否是无效装置单元,当判断确认时,就禁止通过输入/输出单元输入和输出。
根据这种结构,可以防止CRL被窜改,从而能够正确地判断一台装置是否被设置为无效。因而,通过排除被判断为无效的装置,就能够保护数字作品。
这里,密钥管理装置可以对无效装置信息进行加密,并将加密的无效装置信息输出,在用户装置中的主机单元可以接收由密钥管理装置输出的加密的无效装置信息,并对加密的无效装置信息进行解密,以便获得无效装置信息,并参照获得的无效装置信息,判断输入/输出单元是否是无效装置单元。
同样,密钥管理装置可以对无效装置信息进行签字,以便产生签名数据,并输出无效装置信息和签名数据,然后用户装置中的主机单元可以接收签名数据和无效装置信息,并验证接收的签名数据,当验证成功,就参照接收的无效装置信息,判断输入/输出单元是否是无效装置单元。
根据这种结构,可以将无效装置信息加密,因而可以防止无效装置信息被窜改。
根据这种结构,可以把签名与无效装置信息连接在一起,使得签名可以证实无效装置信息是用于验证装置有效性的正确信息。
这里,密钥管理装置和用户装置可以通过网络相互连接在一起。密钥管理装置可以通过网络将无效装置信息输出给用户装置,用户装置可以通过网络接收无效装置信息。
根据这种结构,可以传送正确的无效装置信息,并通过通信媒体接收,从而能够正确判断输入/输出单元是否被设置为无效的。
这里,密钥管理装置可以将无效装置信息写入记录媒体的记录区,该记录区计算机可读、用户装置不能写入。用户装置可以从记录媒体读出无效装置信息。
根据这种结构,主机单元可以从记录媒体接收正确的无效装置信息。
本发明还涉及输出无效装置信息的密钥管理装置,该密钥管理装置包括:存储单元,用于存储无效装置信息,该无效装置信息规定被设置为使用无效的无效装置单元;以及输出单元,它可以安全地输出无效装置信息。
根据这种结构,可以安全地输出无效装置信息,因此,可以防止无效装置信息被窜改。
这里,输出单元可以对无效装置信息进行加密,并输出加密的无效装置信息。
这里,输出单元可以使用第一密钥信息对无效装置信息进行加密,使用第二密钥信息对第一密钥信息进行加密,并输出加密的无效装置信息和加密的第一密钥信息。
这里,输出单元可以对至少一部分无效装置信息进行加密,并输出加密的那部分无效装置信息和无效装置信息的其余部分。
这里,输出单元可以对无效装置信息进行签字,以便产生签名数据,并输出无效装置信息和签名数据。
这里,输出单元可以将无效装置信息提供给单向转换,以便产生消息验证代码,并输出无效装置信息和消息验证代码。
这里,输出单元可以(a)将第一密钥信息和无效装置信息提供给单向转换,以便产生消息验证代码,(b)使用第二密钥信息对第一密钥信息进行加密,以及(c)输出消息验证代码、无效装置信息和加密的第一密钥信息。
根据这种结构,可以对无效装置信息进行加密,或者能够产生并输出无效装置信息的消息验证代码。因此,能够验证无效装置信息的正确性,从而防止无效装置信息被窜改。
这里,密钥管理装置还可以包括:第一存储单元,它用于存储标识多个被设置为使用无效的无效装置单元的标识符;第二存储单元,它具有索引区和两个或两个以上页区;页产生单元,它对由第一存储单元存储的标识符按由预定的排列规则规定的次序排列,并将排列过的标识符分成与两个或两个以上页区对应的两个或两个以上组,并将分成两个或两个以上组的标识符写入对应的页区中;索引区产生单元,它将代表每一个页区的标识符写入索引区;以及签字单元,它对写在每一个页区中的标识符进行签字,以便产生每一个页区的签名数据。输出单元可以将由索引区、两个或两个以上页区以及每一个页区的签名数据组成的无效装置信息传送出去。
根据这种结构,可以输出分成多页的无效装置信息。因此,通过将签名与每一页连接在一起,可以防止无效装置信息被窜改。
本发明还涉及计算机可读记录媒体,计算机可读记录媒体包括用户装置不可写入的记录区,在该记录媒体中,记录第二密钥信息和无效装置信息,第二密钥信息由密钥管理装置输出并使用对装置单元是唯一的第一密钥信息进行加密,无效装置信息由密钥管理装置利用所述第二密钥信息安全输出并且规定被设置为使用无效的无效装置单元。
根据这种结构,记录媒体可以将无效装置信息和第二密钥信息存储到它的只读区。因此,可以防止无效装置信息被窜改因而可以保护数字作品。
本发明还涉及用户装置,用户装置将信息输入给外部信源和从外部信源输出信息,其中,一种用户装置是密钥管理装置,它能安全地输出规定被设置为使用无效的无效装置单元的无效装置信息。用户装置包括输入/输出单元和主机单元。输入/输出单元能够在主机和外部信源之间输入和输出信息。主机单元包括:接收单元,它能够通过输入/输出单元,安全地接收由密钥管理装置输出的无效装置信息;判断单元,它能够参照接收的无效装置信息,判断输入/输出单元是否是无效装置单元;以及禁止单元,当判断单元的判断结果是肯定的时,它禁止通过输入/输出单元输入和输出信息。
根据这种结构,用户装置能够安全接收无效装置信息,从而,能够正确判断输入/输出单元是否被设置为无效。
这里,接收单元可以接收由密钥管理装置输出的加密的无效装置信息,并对加密的无效信息进行解密,以便获得无效装置信息,并且参照获得的无效装置信息,判断单元可以判断输入/输出单元是否是无效装置。
这里,接收单元可以包括:存储单元,它存储第二密钥信息;信息接收单元,它从密钥管理装置接收使用第二密钥信息加密的加密第一密钥信息和使用第一密钥信息加密的加密无效装置信息;第一解密单元,它使用第二密钥信息对加密的第一密钥信息进行解密,以便获得第一密钥信息;以及第二解密单元,它可以使用获得的第一密钥信息对加密的无效装置信息进行解密,以便获得无效装置信息。
这里,接收单元可以从密钥管理装置接收通过对无效装置信息进行签字而产生的的签名数据,并验证接收的签名数据,当接收单元验证结果成功时,判断单元参照接收的无效装置信息,判断输入/输出单元是否是无效的装置单元。
这里,接收单元可以从密钥管理装置接收第一消息验证代码和无效装置信息(第一消息验证代码是通过将无效装置信息提供给单向转换产生的)并使接收的无效装置信息经历单向转换以便产生第二消息验证代码,判断单元可以将接收的第一消息验证代码和产生的第二消息验证代码进行比较,当第一消息验证代码和第二消息验证代码一致时,参照接收的无效装置信息,判断输入/输出单元是否是无效装置单元。
这里,接收单元可以包括:存储单元,它存储第二密钥信息;信息接收单元,它可以从密钥管理装置接收(a)第一消息验证代码,它是通过使第一密钥信息和无效装置信息经历单向转换而产生的、(b)无效装置信息和(c)使用第二密钥信息加密的第一密钥信息;解密单元,它利用第二密钥信息对加密的第一密钥信息进行解密,以便获得第二密钥信息;以及消息验证代码产生单元,它使获得的第二密钥信息和接收的无效装置信息经历单向转换,以便产生第二消息验证代码。
根据这种结构,用户装置可以接收加密的无效装置信息,或者无效装置信息的消息验证代码。因而能够验证无效装置信息的正确性,从而防止无效装置信息被窜改。
这里,用户装置可以将信息输入给便携式记录媒体,或从便携式记录媒体将信息输出。记录媒体至少可以存储规定被设置为使用无效的多个无效装置的无效装置信息。无效装置信息可以包括索引页、多个标识符页、及多个与标识符页一一对应的签名数据。每一个标识符页可以包括标识多个无效装置单元的标识符。可以通过对包含在对应的标识符页中的标识符进行数字签字来产生每一段签名数据。每一个索引页可以包括与标识符页一一对应的索引信息。每一条索引信息可以包括代表对应的标识符页的标识符。用户装置可以包括输入/输出单元和主机单元。输入/输出单元能够在主机单元和记录媒体之间输入和输出信息。主机单元包括:索引页接收单元,它可以通过输入/输出单元接收记录媒体的索引页;页规定单元,它使用接收的索引页规定标识符页,标识符页包括标识输入/输出单元的标识符;标识符页接收单元,它通过输入/输出单元接收记录媒体的、规定的标识符页和与包括在规定标识符页中的标识符相联系的签名数据;签名验证单元,它验证接收的签名数据;判断单元,当签名验证单元验证结果成功时,它参照接收的标识符页,判断输入/输出单元是否是无效的装置单元,当判断单元的判断结果是肯定的时,禁止单元禁止通过输入/输出单元进行信息的输入和输出。
根据这种结构,只有需要的页才能传送和接收,因此,能够压缩在输入/输出单元和主机单元之间的通信费用。
这里,在主机单元中的接收单元可以包括:存储单元,它存储无效装置信息;比较单元,它在从密钥管理装置接收无效装置信息时将接收到的无效装置信息与存储单元存储的无效装置信息进行比较,判断哪一个是比较新的;以及写入单元,当接收到的无效装置信息比存储的无效装置信息更新时,将接收到的无效装置信息写入存储单元。
根据这种结构,用户装置能够存储无效装置信息。因此,并不是每一次读出信息时用户装置都需要接收和验证无效装置信息的正确性。只有当无效装置信息更新时,用户装置才需要接收无效装置信息。
本发明还涉及认证授权装置,该装置发布规定被设置为使用无效的无效装置单元的无效装置信息。认证授权装置包括:第一存储单元,它存储多个标识被设置为使用无效的无效装置单元的标识符;第二存储单元,它具有一个索引区和两个或两个以上页区;页产生单元,它根据预定的分类规则,将第一存储单元存储的标识符分成与两个或两个以上页区对应的两个或两个以上组,并将分成两个或两个以上组的标识符写入对应的页区;索引区产生单元,它将代表每一个页区的标识符写入索引区;签字单元,它对写入每一个页区的标识符进行签字,以便产生每一个页区的签名数据;以及传送单元,它将由索引区、两个或两个以上页区及每一个页区的签名数据组成的无效装置信息传送出去。
根据这种结构,作为CA涌有的终端装置的认证授权装置能够预先将无效装置信息分成多个页并将CA的签名与每一页联系在一起,使得所述签名能够验证无效装置信息的正确性。
工业应用
本发明适用于个人计算机、DVD驱动器和类似装置等等。