CN1565103A - 信息处理系统和方法、信息处理设备和方法、记录媒体及程序 - Google Patents

信息处理系统和方法、信息处理设备和方法、记录媒体及程序 Download PDF

Info

Publication number
CN1565103A
CN1565103A CNA038010577A CN03801057A CN1565103A CN 1565103 A CN1565103 A CN 1565103A CN A038010577 A CNA038010577 A CN A038010577A CN 03801057 A CN03801057 A CN 03801057A CN 1565103 A CN1565103 A CN 1565103A
Authority
CN
China
Prior art keywords
key
messaging device
another
terminal
information
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.)
Granted
Application number
CNA038010577A
Other languages
English (en)
Other versions
CN100338907C (zh
Inventor
饭野阳一郎
田中直树
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of CN1565103A publication Critical patent/CN1565103A/zh
Application granted granted Critical
Publication of CN100338907C publication Critical patent/CN100338907C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/006Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models
    • H04L9/007Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models involving hierarchical structures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3273Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/42Anonymization, e.g. involving pseudonyms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution

Abstract

一种当服务提供者验证用户时能够提高验证效率和安全性的信息处理系统和方法、信息处理设备和方法、记录媒体和程序。密钥分配者终端(12)生成服务提供者终端(13)使用的第一密钥以便根据预定验证方法验证用户设备(11)的密钥保存设备(22),并且生成与第一密钥配对的第二密钥。通过网络(14)把第一密钥发送到服务提供者终端(13),和通过网络(14)和用户终端(21)把第二密钥发送到密钥保存设备(22)。本发明可应用于当每个服务提供者通过因特网提供服务给用户时对用户进行验证的系统。

Description

信息处理系统和方法、信息处理 设备和方法、记录媒体及程序
技术领域
本发明涉及信息处理系统和方法、信息处理设备和方法、记录媒体和程序,尤其涉及被设计成当验证用户时,服务提供者能够提高其验证的效率和安全性的信息处理系统和方法、信息处理设备和方法、记录媒体和程序。
背景技术
一般说来,提供有偿服务的人员从他/她向其提供服务的对方那里收取其费用。
例如,向与本方面对面的对方提供服务的人员往往在他/她提供服务的时候,从对方那里收取现金。
相反,通过诸如因特网之类的通信提供有偿服务的人员,往往通过收取以后作为“信用”的服务的费用,或者在检验对方获取了通过支付费用来使用服务的权利之后,提供服务,这是因为通过通信可交换的电子现金还没有商业化。因此,通过通信提供有偿服务的人员在提供服务之前,需要识别,即验证他/她向其提供服务的对方。
当进行这种验证(authentication)时,验证方和要被验证方需要拥有相互对应的信息。
注意,在下文,当进行这样的验证时,把拥有这样的相互对应信息和识别对方的一方称为核实者(verifier),而把得到验证的一方称为证明者(certifier)。并且,把用于使证明者被核实者验证的技术称为验证技术(authentication technique)。
传统上,密码验证、公用密钥(common key)验证和公开密钥(public key)验证被认为是验证技术。
下面将分别描述这些验证技术,即密码验证、公用密钥验证和公开密钥验证的每一种。
(密码验证)
首先描述密码验证。
在密码验证中,证明者事先通过核实者登记每个证明者专有的登录名,以确定他/她的密码。并且,证明者和核实者交换不把密码泄漏给除他们之外的任何人的协议。
在这种情况下,原则上,知道特定登录名和密码之间的对应的人员只限于核实者和通过那个登录名验证的证明者。因此,核实者判断能够显示特定登录名和与之相对应的密码的人员是在那个登录名下已经做出登记的证明者。
也就是说,密码验证是通过证明者向核实者直接显示只有核实者和证明者知道的知识而进行验证的系统。
因此,存在在验证的时候密码易于泄漏的缺点,但是登录名和密码可以被人(证明者)直接记住,从而具有不需要特殊设备用于验证的特征。因此,密码验证得到广泛使用。
在密码验证中,核实者和证明者拥有相同的信息,从而他们可以在核实者和证明者之间交换角色。下文把这样的验证称为双向验证。假设在密码验证中,通常不使用这种双向特性。
(公用密钥验证)
接着描述公用密钥验证。
注意,这里把利用公用密钥密码系统的“询问(challenge)与响应验证”称为公用密钥验证。
公用密钥密码系统也被称为对称密码系统,是具有用于加密数据的密钥和用于解密的密钥相同的特性(或者,即使密钥不同,也可以容易地从其它密钥中计算出密钥之一的特性)的加密算法。作为公用密钥密码系统,已知有美国商务部国家标准与技术局(National Institute of Standards andTechnology of the U.S.Department of Commerce)采用的DES(数据加密标准)和三重DES(Triple DES)和NTT(日本电报和电话公司(商号))开发的FEAL(快速数据加密算法)等。
公用密钥验证是这样的技术,通过它,当处在验证之中的核实者和证明者的每一个拥有公用密钥密码系统的相同密钥Kn时,核实者检验证明者拥有密钥Kn,而不会把密钥Kn泄漏给除了拥有密钥Kn的双方之外的任何人。
下面描述公用密钥验证的一个基本的特定例子。
首先,核实者生成随机数r,并且将其发送给核实者(下文也把这个步骤写为询问)。
证明者利用密钥Kn加密这个随机数r,计算值R=E(Kn,r)(其中,E(Kn,r)的含义是利用密钥Kn加密随机数r),并且返回给核实者(下文也把这个步骤写为响应)。
为了与原始随机数r相比较,核实者利用密钥Kn解密值R,如果密钥Kn与原始随机数r相匹配,断定证明者拥有密钥Kn
因此,当拥有特定密钥Kn的人员被识别为除了核实者之外的唯一证明者时,通过密钥Kn验证那个证明者是可能的。
对于这样的公用密钥验证,在例如ISO(国际标准化组织)/IEC(国际电工委员会)9798-2中定义了标准技术。在公用密钥验证中,核实者和证明者拥有相同的信息,因此,公用密钥验证是双向验证技术。
在上述密码验证中,直接比较只对核实者和证明者保密的密码,因此,存在如上所述,在验证的时候密码易于泄漏的缺点。相反,在公用密钥验证中,公用密钥密码系统的密钥用在如上所述的询问与响应验证中,因此,具有密钥不易泄漏的特征。因此,就安全性而言,公用密钥验证优于密码验证。
假设在公用密钥验证中,人们难以进行询问与响应验证所需的计算,因此,密钥通常被称为IC(集成电路)卡的特殊设备保存着。注意,每当适合的时候,把保存公用密钥密码系统的密钥的IC卡写成CKC-IC卡,以便将其与保存如后所述的公开密钥密码系统的密钥的IC卡区分开。
CKC-IC卡内部具有进行公用密钥验证所需的计算的功能。因此,只要通过CKC-IC卡进行公用密钥验证,仅仅有小的密钥泄漏的可能性。但是,存在着密钥因CKC-IC卡被物理或逻辑分析而泄漏的可能性,并且,还存在着CKC-IC卡本身被盗用的可能性。
(公开密钥验证)
接着描述公开密钥验证。
注意,这里把利用公开密钥密码系统的“询问与响应验证”称为公开密钥验证。
公开密钥密码系统也被称为非对称密码系统,是用于加密数据的密钥(下文每当适合时称为公开密钥)和用于解密的密钥(下文每当适合时称为私有密钥)不同的算法,并且是具有难以从其它密钥中计算出一个密钥(从公开密钥中计算私有密钥,或从私有密钥中计算公开密钥)的特性的算法。
公开密钥验证是当证明者拥有私有密钥Sk和核实者拥有与私有密钥Sk配对的公开密钥Pk时,核实者可以检验证明者拥有私有密钥Sk而无需知道私有密钥Sk本身的技术。
下面描述基本的公开密钥验证的特定例子。
首先,核实者生成随机数r,利用公开密钥Pk加密它,计算值R=E(Pk,r)(其中,E(Pk,r)的含义是利用公开密钥Pk加密随机数r),并且发送给证明者(询问)。
证明者计算值R的解密r′=D(Sk,R)(其中,D(Sk,R)的含义是利用私有密钥Sk解密值R),并且返回给核实者(响应)。
核实者将随机数r与值R的解密r′相比较,当随机数r与那些值相匹配时,断定证明者拥有私有密钥Sk
因此,如果拥有特定私有密钥Sk的人员被识别为一个证明者时,核实者可以通过上述过程进行那个证明者的验证。
对于公开密钥密码系统,在例如IEEE(电气和电子工程师协会)-P1363中定义了标准技术。
并且,对于公开密钥验证,在例如ISO/IEC9798-3中定义了标准技术。
公开密钥验证具有如后所述可以存在无限个核实者的特征(正如通过如后所述的公开密钥验证基础设施(infrastructure)所描述的那样)。
并且,在公开密钥验证中,核实者和证明者的每一个拥有不同的信息,它们的角色是不可交换的,因此,不是具有双向性的验证。与双向验证相比,下文称这样的验证技术为单向验证。
与公用密钥验证类似,公开密钥验证可以保持证明者在加密方面安全的私有密钥。因此,就安全性而言,公开密钥验证也优于密码验证。
假设在公开密钥验证中,人们难以进行询问与响应验证所需的计算,因此,公开密钥密码系统的密钥通常被称为IC卡的特殊设备保存着。注意,每当适合的时候,把保存公开密钥密码系统的密钥的IC卡写成PKC-IC卡,以便将其与上述CKC-IC卡(保存公用密钥密码系统的密钥的IC卡)区分开。
PKC-IC卡内部具有进行公开密钥验证所需的计算的功能。因此,只要通过PKC-IC卡进行公开密钥验证,密钥泄漏的可能性极小。但是,存在着密钥因PKC-IC卡被物理或逻辑分析而泄漏的可能性,并且,还存在着PKC-IC卡本身被盗用的可能性。
在像上述那样的验证技术中,为了有效地和安全地进行许多证明者的验证,需要一种事先安排和管理验证所需的信息的技术。下文称这样的技术为验证基础设施(infrastructure)。
在下文,通过验证基础设施被识别的人员被称为用户;管理验证基础设施的人员被称为管理者;和利用验证基础设施识别用户和向识别的用户提供服务的人员被称为服务提供者。
传统上,单独(individual)帐户系统、通用帐户系统和公开密钥验证基础设施被称为验证基础设施。
但是,这些验证基础设施,即单独帐户系统、通用帐户系统和公开密钥验证基础设施的每一个都存在着如下问题。
(单独帐户系统的问题)
首先描述单独帐户系统的概况及其问题。
在验证基础设施中,传统上最广泛使用的是单独帐户系统。在单独帐户系统中,为每个服务提供者建立验证基础设施。
也就是说,在通过服务提供者登记了识别用户和向用户开出帐单所需的信息(例如,包括他/她的地址、名称和信用卡号的信息)之后,或者,在从服务提供者那里接受服务之前,已经为要提供的服务付费之后,用户与服务提供者达成有关他将使用的验证技术的协议。
注意,下文把服务提供者和用户之间同意的验证技术和通过验证技术使用的各种信息(有关服务提供者和根据验证识别的用户的信息)称为帐户。
在这种情况下,服务提供者是这个验证基础设施的管理者和验证用户的核实者。
作为验证技术,所有上述三种验证技术(密码验证、公用密钥验证和公开密钥验证)都可应用。例如,在JR East Japan Railway Company(商号)的Suica(商标)系统中,把公用密钥验证用作验证技术。
假设当除了密码验证之外的其它技术得到应用时,需要保存验证信息的IC卡等,因此,开发验证基础设施的成本将提高。由于这个原因,当打算通过通信提供服务时,通常使用密码验证。
在单独帐户系统中,只有在用户、密码、公用密钥或服务提供者知道的公开密钥之间的对应正确(这里既不是错误的识别也不是泄密),才启动用户验证。
由于单独帐户系统可以通过服务提供者自己的操作来实现,因此,可以容易引入。
但是,单独帐户系统存在如下三个问题。
第一个问题是,用户需要通过每个服务提供者登记识别他/她自己的信息,以便准备他/她的帐户。因此,用户必须把时间和精力花费在登记上,并且,甚至还必须通过不值得信任的服务提供者登记像他/她的信用卡号那样,易遭滥用的信息。
第二个问题是,当一个用户通过许多个服务提供者的每一个准备帐户时,许多帐户的管理(像用户必须记忆许多个密码或保存许多个IC卡那样的管理)加重了用户的负担。
第三个问题是,使服务提供者耗费在管理验证信息和个人信息上。也就是说,需要不断地更新验证信息和个人信息。具体地说,需要细心地管理信用卡号、密码或密钥,以便不使它们泄漏。
(通用帐户系统的问题)
接着描述通用帐户系统的概况及其问题。
为了解决上述单独帐户系统存在的问题,提出了许多个服务提供者的每一个通过单个通用帐户进行用户验证的系统,即通用帐户系统。作为通用帐户系统,例如,已知有Kerberos系统RFC1510等。Kerberos是美国麻省理工学院(Massachusetts Institute of Technology of the United States of America)进行的一个项目的名称,并且,作为称为RFC(征求意见文件)的标准系列的第1510号,使其标准向公众开放。注意,RFC是由IETF(因特网工程任务部)提供的。
在通用帐户系统中,非服务提供者的人员变成管理者(下文称这样的管理者为通用帐户管理者)。
当服务提供者识别用户时,首先,通用帐户管理者验证用户,而服务提供者验证通用帐户管理者。
通用帐户管理者把用户验证(用户的识别)的结果通知服务提供者。
因此,在通用帐户系统中,不像在单独帐户系统中,服务提供者不是用户验证的核实者。
由于这个原因,它是基于如下三点的。
也就是说,第一点,服务提供者可以验证通用帐户管理者;第二点,通用帐户管理者是可靠的(要通知的验证结果是正确的);和第三点,通用帐户管理者可以验证用户。
在通用帐户系统中,要求用户只登记他的通用用户帐户一次。并且,帐户信息由通用帐户管理者集中管理。因此,通用帐户系统可以解决上述单独帐户管理存在的问题。
但是,通用帐户系统存在如下两个问题,与上述单独帐户管理系统的问题不同。
也就是说,第一个问题是,一种验证技术的重要性及其使用频率变得过度了。结果,密码和密钥泄漏的机会增加了,并且,在它们泄漏的情况下,受到的损害可能加重。
第二个问题是,由于在验证的时候,需要牵涉到与通用帐户管理者的通信,验证响应因通信而恶化。
(公开密钥验证基础设施的问题)
接着描述公开密钥验证基础设施的概况及其问题。
如上所述,在密码验证和公用密钥验证中,核实者一一对应地与证明者相关,但是,在公开密钥验证中,由于核实者从他/她自己拥有的公开密钥中猜测证明者拥有的私有密钥是相当困难的,任何人都可以是核实者。
这种公开密钥验证的特性与获取用户和公开密钥之间的对应关系的方法的组合被称为公开密钥验证基础设施。
因此,在公开密钥验证基础设施中,可以获得用户和公开密钥之间的对应关系,因而服务提供者他/她本身可以成为核实者,从而可以解决上述通用帐户系统存在的第二个问题。
一般认为,把内含公开密钥的IC卡分发给用户的管理者知道用户和公开密钥之间的对应关系。注意,下文把该管理者称为验证中心。
验证中心把保证用户和公开密钥之间的关系的证书发放给想要不询问验证中心就获得用户和公开密钥之间的对应关系的人(想要成为核实者的人)。
这里,识别公开密钥和用户的信息(譬如ID和名称)和验证中心把数字签名加入其中的、包括其截止日期(expiration date)的数字数据被称为证书。
数字签名是公开密钥密码系统的一种应用。因此,将描述数字签名以便与上述公开密钥密码系统相对应。
例如,当保存数字数据M时,验证中心利用验证中心本身保存的私有密钥Sk,计算签名SG(M)=E(Sk,h(M))。注意,函数h()被认为是单向函数,并且,认为它是具有非常难以从输出值知道输入值的特性的函数。例如,作为函数h(),可以应用在ISO/IEC10118和FIPS180-1等中称为MD5和SHA-1的函数。
验证中心把一组数据(M,SG(M))发送给核实者。
当保存与验证中心保存的私有密钥Sk配对的公开密钥Pk时,核实者检验h(M)=D(Pk,SG(M))是否成立,从而检验数字数据M没有被窜改,和私有密钥Sk的拥有者(验证中心)加入了签名SG(M)。注意,下文把这种核实者执行的过程称为数字签名的验证。
这样,正在验证的核实者核实验证中心加入的数字签名,并且从其证书中获得用户和公开密钥之间的关系。
至于数字签名,在例如IEEE-P1363中定义了标准技术。
如果核实者正确地知道验证中心的公开密钥和一旦他/她成功地核实了其数字签名,他/她就可以从证书中获得用户和公开密钥之间的关系。
当验证基础设施的规模增大时,一个验证中心难以知道覆盖所有用户和公开密钥的关系。在这样的情况下,在数个验证中心之间建立分层结构。核实者拥有每一个验证中心独立发放的证书,但是对于公开密钥,他/她只管理称为根验证中心的少数验证中心拥有的公开密钥,从而他/她核实所有证书。
这样,公开密钥验证基础设施是可以获得许多用户和公开密钥之间的对应的系统,并且,在ITU(国际电信联盟)-T推荐标准(Recommendation)X.509中规定了这样的公开密钥验证基础设施。公开密钥验证基础设施可以分布方式管理用户验证的信息,因此是适用于像因特网那样的用户管理不集中的环境的验证方法。
但是,由于例如用户丢失IC卡或者被剥夺资格,用户和公开密钥之间的关系随时间而改变。也就是说,会发生发放的证书失效。结果,利用证书的公开密钥验证在如下四种假设下进行。
也就是说,第一点,服务提供者可以核实证书中验证中心的数字签名(包括从根验证中心追溯的);第二点,证书(包括从根验证中心追溯的)没有作废;第三点,验证中心是可靠的(证书的内容正确);和第四点,验证中心知道的用户和公开密钥之间的对应是正确的(既不是错误识别,也没有泄漏)。
对证书的失效状态知道得最清楚的人员是把卡分发给用户和发放证书的验证中心。结果,当核实证书时,核实者可以为此询问验证中心,以便获得最新失效状态。在RFC(征求意见文件)2560中把用于这种询问的通信协议规定为OSCP。但是,在这种情况下,当验证用户时,核实者需要询问验证中心。也就是说,出现了与通用帐户系统的第二个问题相同的问题。
由于这个原因,已知有终止使用作废证书的方法,其中验证中心向证书的用户(譬如服务提供者)发放称为证书失效表的数据,而当通过与证书失效表相比较,发现证书作废时,证书的用户终止证书的使用。证书失效表是通过ITU-T推荐标准X.509规定的。假设,由于难以预测分布式环境中使用证书的地方,即使证书作废,验证中心也难以向证书的用户公开通知失效。具体地说,为了适应证书的突然失效,证书的用户需要不断地收集相关的证书失效表。
从上文可以看出,公开密钥验证基础设施存在如下两个问题。
也就是说,第一个问题是,与通用帐户系统中一样,一种验证技术的重要性过分增加。
第二个问题是,失效信息的处理增加了验证成本,或者使响应减少。这是因为,核实者(例如,服务提供者)需要能够通过收集相关证书失效表来核实失效还是没有失效,或通过OSCP询问有关失效状态。
这样,单独帐户系统、通用帐户系统和公开密钥验证基础设施的每一个都存在着它特有的问题。
也就是说,由于存在上述三个问题,单独帐户系统感到难以使自身发展成大规模验证基础设施。
如上所述,通用帐户系统有许多应用,因此,可以容易地发展,但是,由于服务提供者不是用户验证的直接核实者,存在着验证响应减少的问题。在频繁进行验证的情况下,这个问题变得尤其突出。
在公开密钥验证基础设施中,如上所述,核实者收集与验证有关的证书的失效状态,以便保证验证的可靠性,或者在验证的时候询问验证中心,因此,存在其验证成本或响应恶化的问题。在频繁进行验证的情况下,这个问题也变得尤其突出。
发明内容
鉴于这样的情况做出本发明,并且本发明被设计成当验证用户时,服务提供者可以提高它验证的效率和安全性。
本发明的第一信息处理系统的特征在于:第一信息处理设备生成可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥,把生成的第一密钥发送到第二信息处理设备,并且把生成的第二密钥发送到第三信息处理设备;第二信息处理设备接收第一信息处理设备发送的第一密钥并保存;第三信息处理设备接收第一信息处理设备发送的第二密钥并保存;和第二信息处理设备根据验证技术,利用保存的第一密钥和第三信息处理设备保存的第二密钥验证第三信息处理设备。
可以设计成验证技术是公用密钥验证,和第一密钥和第二密钥是相同的密钥。
可以设计成验证技术是公开密钥验证,和第一密钥和第二密钥是不同的密钥。
本发明用于第一信息处理系统的信息处理方法的特征在于:第一信息处理设备生成可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥,把生成的第一密钥发送到第二信息处理设备,和把生成的第二密钥发送到第三信息处理设备;第二信息处理设备接收第一信息处理设备发送的第一密钥并保存;第三信息处理设备接收第一信息处理设备发送的第二密钥并保存;和第二信息处理设备利用保存的第一密钥和第三信息处理设备保存的第二密钥验证第三信息处理设备。
在本发明的第一信息处理系统和方法中,可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥由第一信息处理设备生成,并且第一密钥被发送到第二信息处理设备和第二密钥被发送到第三信息处理设备。并且,第二信息处理设备保存的第一密钥和第三信息处理设备保存的第二密钥被第二信息处理设备用于根据验证技术验证第三信息处理设备。
本发明的第一信息处理设备的特征在于包括:生成装置,用于生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与第一密钥配对的第二密钥;和发送装置,用于把生成装置生成的第一密钥发送到另一个第一信息处理设备,和把生成装置生成的第二密钥发送到另一个第二信息处理设备。
可以设计成验证技术是公用密钥验证,和生成装置生成的第一密钥和第二密钥是相同的密钥。
可以设计成验证技术是公开密钥验证,和生成装置生成的第一密钥和第二密钥是不同的密钥。
可以设计成进一步配有识别装置,用于当把用于验证的信息输入另一个第二信息处理设备中或将用于验证的预定设备与另一个第二信息处理设备相连接时,识别输入信息的用户或连接的设备,其中,当识别装置识别出把信息输入到另一个第二信息处理设备的用户或与另一个第二信息处理设备相连接的设备时,生成装置生成第一和第二密钥。
可以设计成识别装置通过利用SSL(安全套接层)或TLS(传输层安全)识别把信息输入到另一个第二信息处理设备的用户或与另一个第二信息处理设备相连接的设备。
可以设计成进一步配有开出帐单装置,用于当生成装置生成第一和第二密钥时,利用第一和第二密钥,为提供给作为发送装置向其发送第一密钥的对方的、要由另一个第一信息处理设备验证的另一个第二信息处理设备的服务确定费用,并且针对服务的费用,向识别装置识别的把信息输入到另一个第二信息处理设备的用户开出帐单,或向识别装置识别的与另一个第二信息处理设备连接的设备识别的用户开出帐单。
可以设计成开出帐单装置针对服务的费用,并且还针对与生成装置生成的第一和第二密钥有关的费用,向另一个第二信息处理设备开出帐单。
本发明用于第一信息处理设备的信息处理方法的特征在于包括:生成步骤,用于生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与第一密钥配对的第二密钥;和发送步骤,用于把生成步骤生成的第一密钥发送到另一个第一信息处理设备,和把生成步骤生成的第二密钥发送到另一个第二信息处理设备。
本发明的第一记录媒体中的程序的特征在于包括:生成步骤,用于生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与第一密钥配对的第二密钥;和发送步骤,用于把生成步骤生成的第一密钥发送到另一个第一信息处理设备,和把生成步骤生成的第二密钥发送到另一个第二信息处理设备。
本发明的第一程序的特征在于使计算机执行:生成步骤,用于生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与第一密钥配对的第二密钥;和发送步骤,用于把生成步骤生成的第一密钥发送到另一个第一信息处理设备,和把生成步骤生成的第二密钥发送到另一个第二信息处理设备。
在本发明的第一信息处理设备和方法、第一记录媒体和第一程序中,生成另一个第一信息处理设备在根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与第一密钥配对的第二密钥,并且把生成的第一密钥发送到另一个第一信息处理设备和把生成的第二密钥发送到另一个第二信息处理设备。
本发明的第二信息处理设备的特征在于包括:接收装置,用于接收另一个第一信息处理设备发送的、和可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥当中的至少第一密钥;保存装置,用于保存接收装置接收的第一密钥;和验证装置,用于根据验证技术,利用保存装置保存的第一密钥和另一个第二信息处理设备保存的第二密钥验证另一个第二信息处理设备。
可以设计成验证技术是公用密钥验证,和第一密钥和第二密钥是相同的密钥。
可以设计成验证技术是公开密钥验证,和第一密钥和第二密钥是不同的密钥。
本发明用于第二信息处理设备的信息处理方法的特征在于包括:接收步骤,用于接收另一个第一信息处理设备发送的、和可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥当中的至少第一密钥;保存步骤,用于保存通过接收步骤接收的第一密钥;和验证步骤,用于根据验证技术,利用通过保存步骤保存的第一密钥和另一个第二信息处理设备保存的第二密钥验证另一个第二信息处理设备。
本发明的第二记录媒体中的程序的特征在于包括:接收步骤,用于接收另一个第一信息处理设备发送的、和可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥当中的至少第一密钥;保存步骤,用于保存通过接收步骤接收的第一密钥;和验证步骤,用于根据验证技术,利用通过保存步骤保存的第一密钥和另一个第二信息处理设备保存的第二密钥验证另一个第二信息处理设备。
本发明的第二程序的特征在于使计算机执行:接收步骤,用于接收另一个第一信息处理设备发送的、和可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥当中的至少第一密钥;保存步骤,用于保存通过接收步骤接收的第一密钥;和验证步骤,用于根据验证技术,利用通过保存步骤保存的第一密钥和另一个第二信息处理设备保存的第二密钥验证另一个第二信息处理设备。
在本发明的第二信息处理设备和方法、第二记录媒体和第二程序中,在另一个第一信息处理设备发送的、和可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥当中,接收和保存至少第一密钥。并且,根据验证技术,利用保存的第一密钥和另一个第二信息处理设备保存的第二密钥验证另一个第二信息处理设备。
本发明的第三信息处理设备的特征在于包括:接收装置,用于接收另一个第一信息处理设备发送的、和可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥当中的至少第二密钥;保存装置,用于保存接收装置接收的第二密钥;和响应装置,用于当保存第一密钥的另一个第二信息处理设备根据验证技术验证第三信息处理设备本身时,利用保存装置保存的第二密钥把预定响应发送到另一个第二信息处理设备。
可以设计成验证技术是公用密钥验证,和第一密钥和第二密钥是相同的密钥。
可以设计成验证技术是公开密钥验证,和第一密钥和第二密钥是不同的密钥。
可以设计成进一步配有输入装置,用于输入供另一个第二信息处理设备验证用的信息。
可以设计成进一步配有连接装置,用于连接当另一个第二信息处理设备验证时使用的预定设备。
可以设计成与连接装置连接的设备是IC卡。
可以设计成保存装置是防窜改的。
本发明用于第三信息处理设备的信息处理方法的特征在于包括:接收步骤,用于接收另一个第一信息处理设备发送的、和可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥当中的至少第二密钥;保存控制步骤,用于控制通过接收步骤接收的第二密钥的保存;和响应步骤,用于当保存第一密钥的另一个第二信息处理设备根据验证技术验证第三信息处理设备时,利用通过保存控制步骤控制其保存的第二密钥把预定响应发送到另一个第二信息处理设备。
本发明的第三记录媒体中的程序的特征在于包括:接收步骤,用于接收另一个第一信息处理设备发送的、和可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥当中的至少第二密钥;保存控制步骤,用于控制通过接收步骤接收的第二密钥的保存;和响应步骤,用于当保存第一密钥的另一个第二信息处理设备根据验证技术验证第三信息处理设备时,利用通过保存控制步骤控制其保存的第二密钥把预定响应发送到另一个第二信息处理设备。
本发明的第三程序的特征在于使计算机执行:接收步骤,用于接收另一个第一信息处理设备发送的、和可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥当中的至少第二密钥;保存控制步骤,用于控制通过接收步骤接收的第二密钥的保存;和响应步骤,用于当保存第一密钥的另一个第二信息处理设备根据验证技术验证第三信息处理设备时,利用通过保存控制步骤控制其保存的第二密钥把预定响应发送到另一个第二信息处理设备。
在本发明的第三信息处理设备和方法、第三记录媒体和第三程序中,在另一个第一信息处理设备发送的、和可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥当中,接收和保存至少第二密钥。并且,当保存第一密钥的另一个第二信息处理设备根据验证技术验证第三信息处理设备本身时,利用保存的第二密钥把预定响应发送到该第二信息处理设备。
本发明的第二信息处理系统的特征在于:第一信息处理设备(不是上述的第一信息处理设备,但是与如后所述的第四信息处理设备相当)生成请求生成可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥的请求信息,以发送到第二信息处理设备(不是上述的第二信息处理设备,但是与如后所述的第六信息处理设备相当);当接收到来自第一信息处理设备的请求信息时,第二信息处理设备生成第一密钥和第二密钥的每一个,把生成的第一密钥发送到第三信息处理设备,并且保存生成的第二密钥;第三信息处理设备(不是上述的第三信息处理设备,但是与如后所述的第五信息处理设备相当)接收第二信息处理设备发送的第一密钥并保存;和第三信息处理设备根据上述验证技术,利用保存的第一密钥和第二信息处理设备保存的第二密钥验证第二信息处理设备。
可以设计成验证技术是公用密钥验证,和第一密钥和第二密钥是相同的密钥。
可以设计成验证技术是公开密钥验证,和第一密钥和第二密钥是不同的密钥。
本发明用于第二信息处理系统的信息处理方法的特征在于:第一信息处理设备生成请求生成可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥的请求信息,以发送到第二信息处理设备;当接收到来自第一信息处理设备的请求信息时,第二信息处理设备生成第一密钥和第二密钥的每一个,把生成的第一密钥发送到第三信息处理设备,并且保存生成的第二密钥;第三信息处理设备接收第二信息处理设备发送的第一密钥并保存;和第三信息处理设备根据验证技术,利用保存的第一密钥和第二信息处理设备保存的第二密钥验证第二信息处理设备。
在本发明的第二信息处理系统和方法中,请求生成可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥的请求信息由第一信息处理设备生成,并且被发送到第二信息处理设备。然后,第二信息处理设备生成第一密钥和第二密钥的每一个,把生成的第一密钥发送到第三信息处理设备,并且保存生成的第二密钥。并且,第三信息处理设备接收和保存第二信息处理设备发送的第一密钥。在这种状态下,第三信息处理设备利用保存的第一密钥和第二信息处理设备保存的第二密钥验证第二信息处理设备。
本发明的第四信息处理设备的特征在于包括:生成装置,用于生成请求生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与第一密钥配对的第二密钥的请求信息;和发送装置,用于把生成装置生成的请求信息发送到另一个第二信息处理设备。
可以设计成验证技术是公开密钥验证,和生成装置生成的第一密钥和第二密钥是不同的密钥。
可以设计成进一步配有识别装置,用于当把用于验证的信息输入另一个第二信息处理设备中或将用于验证的预定设备与另一个第二信息处理设备相连接时,识别输入信息的用户或连接的设备,其中,当识别出把信息输入到另一个第二信息处理设备的用户或与另一个第二信息处理设备相连接的设备时,生成装置生成请求信息。
可以设计成识别装置通过利用SSL(安全套接层)或TLS(传输层安全)识别把信息输入到另一个第二信息处理设备的用户或与另一个第二信息处理设备相连接的设备。
可以设计成进一步配有开出帐单装置,用于当发送装置把请求信息发送到另一个第二信息处理设备时,利用第一密钥和第二密钥,为提供给要由另一个第一信息处理设备验证的另一个第二信息处理设备的服务确定费用,并且针对服务的费用,向识别装置识别的把信息输入到另一个第二信息处理设备的用户开出帐单,或向识别装置识别的与另一个第二信息处理设备连接的设备识别的用户开出帐单。
可以设计成开出帐单装置针对服务的费用,并且还针对与另一个第二信息处理设备为响应发送装置发送给另一个第二信息处理设备的请求信息而生成的第一和第二密钥有关的费用,向另一个第二信息处理设备开出帐单。
本发明用于第四信息处理设备的信息处理方法的特征在于包括:生成步骤,用于生成请求生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与第一密钥配对的第二密钥的请求信息;和发送步骤,用于把通过生成步骤生成的请求信息发送到另一个第二信息处理设备。
本发明的第四记录媒体中的程序的特征在于包括:生成步骤,用于生成请求另一个第二信息处理设备生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与第一密钥配对的第二密钥的请求信息。
本发明的第四程序的特征在于包括:生成步骤,用于生成请求另一个第二信息处理设备生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与第一密钥配对的第二密钥的请求信息;和发送步骤,用于把通过生成步骤生成的请求信息发送到另一个第二信息处理设备。
在本发明的第四信息处理设备和方法、第四记录媒体和第四程序中,生成请求生成另一个第一信息处理设备在根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与第一密钥配对的第二密钥的请求信息,并且把生成的请求信息发送到另一个第二信息处理设备。
本发明的第五信息处理设备的特征在于包括:接收装置,用于当另一个第二信息处理设备在另一个第一信息处理设备的请求下,生成可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥并且发送生成的第一密钥时,接收第一密钥;保存装置,用于保存接收装置接收的第一密钥;和验证装置,用于根据验证技术,利用保存装置保存的第一密钥和另一个第二信息处理设备保存的第二密钥验证另一个第二信息处理设备。
可以设计成验证技术是公开密钥验证,和第一密钥和第二密钥是不同的密钥。
本发明用于第五信息处理设备的信息处理方法的特征在于包括:接收步骤,用于当另一个第二信息处理设备在另一个第一信息处理设备的请求下,生成可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥并且发送生成的第一密钥时,接收第一密钥;保存步骤,用于保存通过接收步骤接收的第一密钥;和验证步骤,用于根据验证技术,利用通过保存步骤保存的第一密钥和另一个第二信息处理设备保存的第二密钥验证另一个第二信息处理设备。
本发明的第五记录媒体中的程序是用于控制信息处理设备的计算机的程序,其特征在于包括验证步骤,用于根据验证技术,在另一个第二信息处理设备根据另一个第一信息处理设备的请求而生成的、和可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥当中,利用信息处理设备本身保存的第一密钥和另一个第二信息处理设备保存的第二密钥,验证另一个第二信息处理设备。
本发明的第五程序是用于控制信息处理设备的计算机的程序,其特征在于包括验证步骤,用于根据验证技术,在另一个第二信息处理设备根据另一个第一信息处理设备的请求而生成的、和可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥当中,利用信息处理设备本身保存的第一密钥和另一个第二信息处理设备保存的第二密钥,验证另一个第二信息处理设备。
在本发明的第五信息处理设备和方法、第五记录媒体和第五程序中,当另一个第二信息处理设备在另一个第一信息处理设备的请求下,生成可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥并且发送生成的第一密钥时,由第五信息处理设备接收和保存第一密钥。并且,根据上述验证技术,利用第五信息处理设备保存的第一密钥和另一个第二信息处理设备保存的第二密钥验证另一个第二信息处理设备。
本发明的第六信息处理设备的特征在于包括:接收装置,用于接收另一个第一信息处理设备发送的、请求生成可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥的请求信息;密钥生成装置,用于根据接收装置接收的请求信息,生成第一密钥和第二密钥;发送装置,用于把密钥生成装置生成的第一密钥和第二密钥的第一密钥发送到另一个第二信息处理设备;保存装置,用于保存密钥生成装置生成的第一密钥和第二密钥的第二密钥;和响应生成装置,用于当保存发送装置发送的第一密钥的另一个第二信息处理设备根据验证技术验证信息处理设备时,利用保存装置保存的第二密钥生成预定响应。发送装置把响应生成装置生成的响应发送到另一个第二信息处理设备。
可以设计成验证技术是公开密钥验证,和第一密钥和第二密钥是不同的密钥。
可以设计成进一步配有输入装置,用于输入供另一个第二信息处理设备验证用的信息。
可以设计成进一步配有连接装置,用于连接当另一个第二信息处理设备验证时使用的预定设备。
可以设计成与连接装置连接的设备是IC卡。
可以设计成保存装置是防窜改的。
本发明用于第六信息处理设备的信息处理方法的特征在于包括:接收步骤,用于接收另一个第一信息处理设备发送的、请求生成可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥的请求信息;密钥生成步骤,用于根据通过接收步骤接收的请求信息,生成第一密钥和第二密钥;密钥发送步骤,用于把通过密钥生成步骤生成的第一密钥和第二密钥的第一密钥发送到另一个第二信息处理设备;保存步骤,用于保存通过密钥生成步骤生成的第一密钥和第二密钥的第二密钥;响应生成步骤,用于当保存通过密钥发送步骤发送的第一密钥的另一个第二信息处理设备根据验证技术验证信息处理设备时,利用通过保存步骤保存的第二密钥生成预定响应;和响应发送步骤,用于把通过响应生成步骤生成的响应发送到另一个第二信息处理设备。
本发明的第六记录媒体中的程序是用于控制信息处理设备的计算机的程序,其特征在于包括:密钥生成步骤,用于根据为请求生成可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥而从另一个第二信息处理设备发送到信息处理设备的请求信息,生成要发送到另一个第二信息处理设备的第一密钥和要由信息处理设备保存的第二密钥;和响应生成步骤,用于当保存发送的第一密钥的另一个第二信息处理设备根据验证技术验证信息处理设备时,利用信息处理设备保存的第二密钥生成预定响应。
本发明的第六程序是用于控制信息处理设备的计算机的程序,其特征在于包括:密钥生成步骤,用于根据为请求生成可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥而从另一个第二信息处理设备发送到信息处理设备的请求信息,生成要发送到另一个第二信息处理设备的第一密钥和要由信息处理设备保存的第二密钥;和响应生成步骤,用于当保存发送的第一密钥的另一个第二信息处理设备根据验证技术验证信息处理设备时,利用信息处理设备保存的第二密钥生成预定响应。
在本发明的第六信息处理设备和方法、第六记录媒体和第六程序中,根据为请求生成可以通过预定验证技术使用的第一密钥和要与第一密钥配对的第二密钥而从另一个第二信息处理设备发送到信息处理设备的请求信息,第六信息处理设备生成要发送到另一个第二信息处理设备的第一密钥和要由信息处理设备保存的第二密钥。此后,当保存发送的第一密钥的另一个第二信息处理设备根据验证技术验证第六信息处理设备时,利用第六信息处理设备保存的和发送到另一个第二信息处理设备的第二密钥生成预定响应。
附图说明
图1是说明应用本发明的验证密钥分配系统支持的商业模型的第一例子的图。
图2是说明应用本发明的验证密钥分配系统支持的商业模型的第二例子的图。
图3是说明应用本发明的验证密钥分配系统支持的商业模型的第三例子的图。
图4是显示应用本发明的验证密钥分配系统的示范性配置的方块图。
图5是显示密钥分配表的例子的图。
图6是显示服务提供者密钥表的例子的图。
图7是显示密钥保存设备密钥表的例子的图。
图8是显示密钥分配者帐户信息的例子的图。
图9是显示验证信息表的例子的图。
图10是显示服务提供者固有信息的例子的图。
图11是显示证明密钥表的例子的图。
图12是显示服务信息表的例子的图。
图13是显示密钥保存设备固有信息的例子的图。
图14是显示用户帐户信息的例子的图。
图15是显示图14的验证密钥分配系统的用户终端的示范性配置的方块图。
图16是显示图14的验证密钥分配系统的密钥保存设备的示范性配置的方块图。
图17是显示图14的验证密钥分配系统的IC卡的示范性配置的方块图。
图18是显示图14的验证密钥分配系统的密钥分配者终端的示范性配置的方块图。
图19是显示图14的验证密钥分配系统的服务提供者终端的示范性配置的方块图。
图20是显示图14的验证密钥分配系统的通用帐户管理者终端的示范性配置的方块图。
图21是显示帐户管理表的例子的图。
图22是显示帐户管理者固有密钥的例子的图。
图23是说明应用本发明的验证密钥系统执行的处理的例子的流程图。
图24是说明由图15的用户终端、图16的密钥保存设备和图17的IC卡构成的用户设备执行的服务选择/密钥分配进程的例子的流程图。
图25是说明图18的密钥分配者终端执行的服务选择/密钥分配进程的例子的流程图。
图26是说明图19的服务提供者终端执行的服务选择/密钥分配进程的例子的流程图。
图27是显示由图15的用户终端、图16的密钥保存设备和图17的IC卡构成的用户设备、图18的密钥分配者终端和图19的服务提供者终端执行的服务选择/密钥分配进程之间的关系的的箭头图。
图28是显示密钥分配申请书的例子的图。
图29是显示密钥分配报告的例子的图。
图30是说明由图15的用户终端、图16的密钥保存设备和图17的IC卡构成的用户设备执行的密钥使用/服务提供进程的例子的流程图。
图31是说明图19的服务提供者终端执行的密钥使用/服务提供进程的例子的流程图。
图32是显示图29的用户设备执行的密钥使用/服务提供进程中的按目的(by-purpose)验证核实进程和图30的服务提供者终端执行的密钥使用/服务提供进程中的按目的验证响应进程之间的示范性关系的箭头图。
图33是显示图29的用户设备执行的密钥使用/服务提供进程中的按目的验证核实进程和图30的服务提供者终端执行的密钥使用/服务提供进程中的按目的验证响应进程之间的另一种示范性关系的箭头图。
图34是显示图29的用户设备执行的密钥使用/服务提供进程中的服务使用进程和图30的服务提供者终端执行的密钥使用/服务提供进程中的服务提供进程之间的示范性关系的箭头图。
图35是显示图29的用户设备执行的密钥使用/服务提供进程中的服务使用进程和图30的服务提供者终端执行的密钥使用/服务提供进程中的服务提供进程之间的另一种示范性关系的箭头图。
图36是显示服务请求的例子的图。
图37是说明由图15的用户终端、图16的密钥保存设备和图17的IC卡构成的用户设备执行的密钥删除进程的例子的流程图。
图38是说明图18的密钥分配者终端执行的密钥删除进程的例子的流程图。
图39是说明图19的服务提供者终端执行的密钥删除进程的例子的流程图。
图40是说明图18的密钥分配者终端执行的密钥使用终止进程的例子的流程图。
图41是说明图19的服务提供者终端执行的密钥使用终止进程的例子的流程图。
图42是显示密钥使用终止请求的例子的图。
图43是显示密钥使用终止请求的另一个例子的图。
图44是显示应用本发明的验证密钥分配系统的另一种示范性配置的方块图。
图45是显示图43的验证密钥分配系统的验证中心终端的示范性配置的方块图。
图46是显示密钥分配表的例子的图。
图47是显示服务提供者密钥表的例子的图。
图48是显示密钥保存设备密钥表的例子的图。
图49是显示密钥分配者PKI信息的例子的图。
图50是显示CA公开密钥信息的例子的图。
图51是显示密钥分配申请书的例子的图。
图52是显示密钥分配报告的例子的图。
图53是显示验证信息表的例子的图。
图54是显示服务提供者固有信息的例子的图。
图55是显示失效密钥表的例子的图。
图56是显示服务提供者PKI信息的例子的图。
图57是显示密钥共享参数的例子的图。
图58是显示CA公开密钥信息的例子的图。
图59是显示证明密钥表的例子的图。
图60是显示验证信息表的例子的图。
图61显示密钥保存设备固有信息的例子的图。
图62是显示用户PKI信息的例子的图。
图63是显示CA公开密钥信息的例子的图。
图64是显示证书表的例子的图。
图65是显示CA密钥信息的例子的图。
图66是显示证书的例子的图。
图67是显示在图43的验证密钥分配系统的用户设备和密钥分配者终端之间的服务选择/密钥分配进程中、用户设备执行的用户识别响应进程和密钥分配者终端执行的密钥保存设备用户验证进程之间的关系的箭头图。
图68是说明图43的验证密钥分配系统的用户设备执行的密钥使用/服务提供进程的例子的流程图。
图69是说明图43的验证密钥分配系统的服务提供者终端执行的密钥使用/服务提供进程的例子的流程图。
图70是显示图67的用户设备执行的密钥使用/服务提供进程中的按目的验证核实进程和图68的服务提供者终端执行的密钥使用/服务提供进程中的按目的验证响应进程之间的示范性关系的箭头图。
图71是显示图67的用户设备执行的密钥使用/服务提供进程中的按目的验证核实进程和图68的服务提供者终端执行的密钥使用/服务提供进程中的按目的验证响应进程之间的另一种示范性关系的箭头图。
图72是显示应用本发明的验证密钥分配系统的又一种配置的图。
图73是显示密钥分配表的例子的图。
图74是显示服务提供者密钥表的例子的图。
图75是显示密钥保存设备密钥表的例子的图。
图76是显示密钥分配者帐户信息的例子的图。
图77是显示CA公开密钥信息的例子的图。
图78是显示标题文档(document of title)的例子的图。
图79是显示密钥分配申请书的例子的图。
图80是显示密钥分配报告的例子的图。
图81是显示验证信息表的例子的图。
图82是显示服务提供者固有信息的例子的图。
图83是显示失效密钥表的例子的图。
图84是显示服务提供者PKI信息的例子的图。
图85是显示密钥共享参数的例子的图。
图86是显示CA公开密钥信息的例子的图。
图87是显示证明密钥表的例子的图。
图88是显示验证信息表的例子的图。
图89是显示密钥保存设备固有信息的例子的图。
图90是显示用户帐户信息的例子的图。
图91是显示CA公开密钥信息的例子的图。
图92是说明图71的验证密钥分配系统的用户设备执行的服务选择/密钥分配进程的例子的流程图。
图93是说明图71的验证密钥分配系统的密钥分配者终端执行的服务选择/密钥分配进程的例子的流程图。
图94是说明图71的验证密钥分配系统的服务提供者终端执行的服务选择/密钥分配进程的例子的流程图。
图95是显示由图71的验证密钥分配系统的用户设备、密钥分配者终端和服务提供者终端执行的服务选择/密钥分配进程之间的关系的箭头图。
图96是说明图71的验证密钥分配系统的用户设备执行的密钥使用/服务提供进程的例子的流程图。
图97是说明图71的验证密钥分配系统的服务提供者终端执行的密钥使用/服务提供进程的例子的流程图。
图98是显示密钥分配表的例子的图。
图99是显示服务提供者密钥表的例子的图。
图100是显示密钥保存设备密钥表的例子的图。
图101是显示密钥分配者PKI信息的例子的图。
图102是显示CA公开密钥信息的例子的图。
图103是显示标题文档的例子的图。
图104是显示密钥分配申请书的例子的图。
图105是显示服务提供者固有信息的例子的图。
图106是显示失效密钥表的例子的图。
图107是显示密钥共享参数的例子的图。
图108是显示CA公开密钥信息的例子的图。
图109是显示证明密钥表的例子的图。
图110是显示验证信息表的例子的图。
图111显示密钥保存设备固有信息的例子的图。
图112是显示用户帐户信息的例子的图。
图113是显示CA公开密钥信息的例子的图。
图114是说明图98的验证密钥分配系统的用户设备执行的服务选择/密钥分配进程的例子的流程图。
图115是说明图98的验证密钥分配系统的密钥分配者终端执行的服务选择/密钥分配进程的例子的流程图。
图116是说明图98的验证密钥分配系统的服务提供者终端执行的服务选择/密钥分配进程的例子的流程图。
图117是显示由图98的验证密钥分配系统的用户设备、密钥分配者终端和服务提供者终端执行的服务选择/密钥分配进程之间的关系的箭头图。
图118是代表密钥保存设备的另一种示范性配置的方块图。
图119是显示密钥分配表的例子的图。
图120是显示密钥保存设备PKI信息的例子的图。
图121是显示临时保存密钥表的例子的图。
图122是显示验证密钥表的例子的图。
图123是说明由图15的用户终端、图16或118的密钥保存设备和图17的IC卡构成的用户设备执行的服务选择/密钥分配进程的另一个例子的流程图。
图124是与图123的流程图相对应、说明图18的密钥分配者终端执行的服务选择/密钥分配进程的例子的流程图。
图125是与图123的流程图相对应、说明图19的服务提供者终端执行的服务选择/密钥分配进程的例子的流程图。
图126是显示由图15的用户终端、图16或118的密钥保存设备和图17的IC卡构成的用户设备、图18的密钥分配者终端和图19的服务提供者终端执行的服务选择/密钥分配进程之间的关系的箭头图,与图123到125的流程图相对应。
图127是显示如图126的箭头图所示的、步骤S524中的“新密钥请求和接收进程”和步骤S506中的“新密钥生成和发送进程”之间的关系的细节的箭头图。
图128是显示使用SSL和TLS时所涉及的协议栈的图。
图129是显示使用SSL和TLS时进行的、如图126的箭头图所示的步骤S552中的“与密钥保存设备的相互验证+密钥共享进程”和步骤S504中的“与密钥分配者终端的相互验证+密钥共享进程”之间的关系的细节的箭头图。
图130是显示密钥分配表的例子的图。
图131是说明由图15的用户终端、图16或118的密钥保存设备和图17的IC卡构成的用户设备执行的服务选择/密钥分配进程的又一个例子的流程图。
图132是与图131的流程图相对应、说明图18的密钥分配者终端执行的服务选择/密钥分配进程的例子的流程图。
图133是与图131的流程图相对应、说明图19的服务提供者终端执行的服务选择/密钥分配进程的例子的流程图。
图134是显示由图15的用户终端、图16或118的密钥保存设备和图17的IC卡构成的用户设备、图18的密钥分配者终端和图19的服务提供者终端执行的服务选择/密钥分配进程之间的关系的箭头图,与图131到133的流程图相对应。
图135是显示如图134的箭头图所示的、步骤S524中的“新密钥请求和接收进程”和步骤S506中的“新密钥生成和发送进程”之间的关系的细节的箭头图。
具体实施方式
(验证密钥分配系统支持的商业模型)
首先,描述应用本发明的验证密钥分配系统支持的商业模型。
注意,在本例中,当通过像Kerberos验证密钥分配系统那样的通用帐户系统,或公开密钥验证基础设施进行识别时,可以向用户User开出帐单。
图1代表在认为存在通用帐户系统的情况下商业模型中的参与者。也就是说,认为参与者是:用户User、服务提供者SP、密钥分配者KA和通用帐户管理者KDC。用户User通过通用帐户管理者KDC登记,和密钥分配者KA通过通用帐户识别用户User。
图2代表在认为存在公开密钥验证基础设施的情况下商业模型中的参与者。也就是说,认为参与者是:用户User、服务提供者SP、密钥分配者KA和验证中心CA。用户User、服务提供者SP和密钥分配者KA的每一个通过验证中心CA登记,和用户User、服务提供者SP和密钥分配者KA通过使用公开密钥验证基础设施核实相互的数字签名。
图3代表在使用公开密钥验证基础设施和通用帐户系统两者的情况下商业模型中的参与者。也就是说,认为参与者是:用户User、服务提供者SP、密钥分配者KA、验证中心CA和通用帐户管理者KDC。在这种情况下,密钥分配者KA通过通用帐户识别用户User,并且通过公开密钥验证基础设施核实服务提供者SP的数字签名。
注意,参与者的个数没有具体限制。但是,在图1到3的任何一种情况下,在本例中,例如,认为只有一个密钥分配者KA和数个用户User和服务提供者SP。
并且,一般说来,在公开密钥验证基础设施的验证中心,或在Kerbers验证密钥分配系统,存在数个管理者,但是,在图1到3的任何一种情况下,在本例中,例如,认为只有一个通用帐户管理者KDC和只有一个验证中心CA。
在本发明的商业模型中,用户User和服务提供者SP首先订立预定服务使用合同,从此以后,当特定服务提供者SP在像预定次数或预定间隔那样的限制下验证特定用户User时,例如,当用户User订阅服务提供者SP提供的新闻或在某个间隔内访问数据库时,服务提供者SP可以有效地验证用户User。
也就是说,把与通用帐户或公开密钥验证基础设施不同的验证技术提供给频繁进行验证的双方(用户User和服务提供者SP)。由于双方可以直接进行验证,这种验证是有效的。并且,在终止这种验证技术的使用的情况下,由于该验证技术只用于特定服务提供者SP和用户User之间,易于通知其失效。结果,可以解决上述通用帐户系统的第二个问题和公开密钥验证基础设施的第二个问题。
如上所述,直接验证在单独帐户系统中也是可以的。但是,在本发明的商业模型中,只有当分配新验证技术时,才利用通用帐户系统或公开密钥验证基础设施识别用户User。结果,可以节省与单独帐户系统所要求的登记有关的时间和精力,同时,用户在使用服务时,可以保持匿名。
并且,认为要新分配的验证技术是公用密钥验证或公开密钥验证。用户User把公用密钥验证所需的信息保存在具有与IC卡的功能类似的功能的设备中。结果,可以使密钥的分配和选择和验证的计算自动化。因此,可以解决上述单独帐户系统的第一和第二个问题。
注意,下文把这种具有与IC卡的功能类似的功能的设备称为密钥保存设备。并且,在本例中,将密钥保存设备从密钥分配者KA分发给用户User。在服务提供者SP和密钥分配者KA之间订立合同,以便在服务提供者SP请求时,密钥分配者KA进行到用户User的密钥保存设备和服务提供者SP两者的密钥分配,并且起代理者作用以从用户User收取服务费用。
在本例中,为了把密钥分配给将使用特定服务的用户User,当服务提供者SP请求时,密钥分配者KA进行验证技术的分配(密钥分配)。
具体地说,密钥分配者KA利用通用帐户或公开密钥验证基础设施,识别用户User,并且在向用户User开出帐单(收取服务使用费和密钥分配佣金)的交换中进行密钥分配。此后,密钥分配者KA向服务提供者SP发出通知密钥分配被进行。
也就是说,当分配验证技术时,密钥分配者KA生成新验证技术的密钥,并且把密钥传送给服务提供者SP和用户User拥有的密钥保存设备。
可替换地,当分配验证技术时,密钥分配者KA请求用户User拥有的密钥保存设备生成新验证技术的密钥。响应这个请求,密钥保存设备自身生成新验证技术的密钥,并且把密钥传送给密钥分配者KA和服务提供者SP两者。
注意,在本说明书中,“密钥保存设备生成新验证技术的密钥”不仅包括“当密钥分配者KA请求时,密钥保存设备重新生成新验证技术的密钥(按需生成)”的概念,而且包括“通过事先保存密钥保存设备自身或与密钥保存设备不同的另一个设备事先生成的数个密钥候选者,和通过当密钥分配者KA请求时,通过提取(选择)它保存的数个密钥候选者的预定几个,以使这些密钥成为新验证技术的密钥,从而密钥保存设备生成新验证技术的密钥”的概念。
并且,在要分配给用户User拥有的密钥保存设备和服务提供者SP两者的验证技术中,下文把分配给密钥保存设备的密钥称为证明密钥,而把分配给服务提供者SP的密钥称为核实密钥。
如上所述,公用密钥验证或公开密钥验证可以用作验证技术。当使用公用密钥验证时,核实密钥和证明密钥一致(或是相同的密钥)。相反,当使用公开密钥验证时,认为核实密钥是公开密钥,而认为证明密钥是私有密钥,因此,核实密钥和证明密钥是不同的密钥。
这里,重要的是由密钥分配者KA分配的验证技术不是向用户User开出帐单的验证技术,而是提供特定服务的验证技术。也就是说,从密钥分配者KA到服务提供者SP的密钥分配通知既不需要包括识别用户User的信息,也不需要包括信用卡号。
因此,用户User对于服务提供者SP来说,可以保持匿名,同时,即使由于某种原因,重新分配的验证技术的密钥泄漏了,可能的非法行为也限于在密钥分配的时候确定的服务的使用。结果,可以防止一种验证技术的重要性过度。
通过重新分配的验证技术进行的验证是在如下三个假设下进行的。
也就是说,第一个假设是密钥分配者KA可以通过通用帐户或公开密钥验证基础设施、正确地识别服务提供者SP和用户User;第二个假设是密钥分配者KA是可靠的(可以正确地把密钥分配给服务提供者SP和用户User);和第三个假设是密钥分配者KA禁止除了接受密钥分配的一方之外的任何第三方(包括密钥分配者KA本身)使用分配的密钥。这样,密钥分配者KA需要具有这样的资格,即,相当于通用帐户系统或公开密钥验证系统中的通用帐户管理者KDC或验证中心CA(以便具有可靠地执行上述三点的资格)。
接着,描述本商业模型的操作。
首先,用户User选择服务的使用。
可以提供用户User选择的服务的服务提供者SP给予用户把那个服务的内容和金额等通知密钥分配者KA的密钥分配申请书。
当用户User把密钥分配申请书提交给密钥分配者KA时,对此做出响应,密钥分配者KA把新验证技术的证明密钥和诸如该验证技术的识别号之类的辅助信息输入到用户User拥有的密钥保存设备。
可替换地,当用户User把密钥分配申请书提交给密钥分配者KA时,对此做出响应,密钥分配者KA把请求生成新验证技术的密钥的请求信息输入到用户User拥有的密钥保存设备。对这个请求信息做出响应,密钥保存设备生成新验证技术的密钥,即,新验证技术的证明密钥和与之配对的核实密钥。并且,密钥保存设备自己保存证明密钥,并把核实密钥给予密钥分配者KA。
当分配这些密钥时,密钥分配者KA通过通用帐户或公开密钥验证基础设施识别拥有密钥保存设备的用户User,并且向用户User开出帐单,以便与服务相对应。此后,密钥分配者KA向服务提供者SP支付从帐单数额中减去佣金得出的金额。
为此,密钥保存设备配有输入部分和连接IC卡的连接部分等,输入部分用于输入要通过通用帐户或公开密钥验证基础设施验证的用户User所需的密码。
接着,密钥分配者KA为服务提供者SP准备密钥分配报告,并且将其给予用户User拥有的密钥保存设备。
密钥分配报告包括有关分配的验证技术的信息(验证技术的识别号、那种验证技术的核实密钥)。
密钥保存设备把密钥分配报告提交给服务提供者SP,其中服务提供者SP获得新验证技术的核实密钥和辅助信息。也就是说,服务提供者SP获得用于验证对其进行密钥分配的用户User的核实密钥。
当用户User在分配验证技术之后使用服务时,服务提供者SP通过分配的验证技术,对用户User拥有的密钥保存设备进行验证。并且,当这种验证取得成功时,服务提供者SP提供服务。
在这种情况下(当要提供服务时),在对其进行这种验证的密钥保存设备(用户User拥有的密钥保存设备)和服务提供者SP之间临时共享密钥,以便在服务提供期间加密它们的通信。结果,可以防止用户User的欺骗和服务内容的泄漏。
要分配的验证技术含有其截止日期和通过最初确定其使用目的而确定的用户。结果,当其截止日期过去时,可以删除它。并且,当验证技术的使用应该终止时,密钥分配者KA可以把其失效通知服务提供者SP。
(验证密钥分配系统)
接着,描述应用本发明的验证密钥分配系统。
由于描述会变得复杂,因此,通过分成如下第一到第六实施例和按照这个次序分别描述该系统。
也就是说,作为第一实施例,描述在只存在通用帐户系统(Kerberos)的状态(与图1相对应的状态)下、要分配的验证技术是公用密钥验证的验证密钥分配系统。
作为第二实施例,描述在只存在公开密钥验证基础设施的状态(与图2相对应的状态)下、要分配的验证技术是公开密钥验证的验证密钥分配系统。
作为第三实施例,描述以与图3的状态相对应的方式的验证密钥分配系统,其中将通用帐户系统用于用户验证,而通过公开密钥验证基础设施核实服务提供者的数字签名(当使用通用帐户系统和公开密钥验证基础设施和要重新分配的验证技术是公开密钥验证时)。
作为第四实施例,描述以与图3的状态相对应的方式的验证密钥分配系统,其中将通用帐户系统用于用户验证,而通过公开密钥验证基础设施核实密钥分配者的数字签名(当使用公开密钥验证基础设施和通用帐户系统和要重新分配的验证技术是公开密钥验证时)。
在上面第一到第四实施例中,新验证技术的密钥由密钥分配者KA拥有的设备(如后要述的密钥分配者终端)生成,但是,如上所述,也可以由用户User自身拥有的密钥保存设备生成。
现在,作为第五和第六实施例,描述在其每一个中用户User拥有的密钥保存设备生成新验证技术的密钥的验证密钥分配系统。
也就是说,作为第五实施例,描述作为与第二实施例(在只存在公开密钥验证基础设施的状态(与图2相对应的状态)下,要分配的验证技术是公开密钥验证的验证密钥分配系统)相对应的实施例、和其中用户User拥有的密钥保存设备生成新验证技术的密钥的验证密钥分配系统。
并且,作为第六实施例,描述作为与第四实施例(以与图3的状态相对应的方式,其中将通用帐户系统用于用户验证,和通过公开密钥验证基础设施核实密钥分配者的数字签名(当使用公开密钥验证基础设施和通用帐户系统,和要重新分配的验证技术是公开密钥验证时))相对应的实施例、和其中用户User拥有的密钥保存设备生成新验证技术的密钥的验证密钥分配系统。
(第一实施例)
下面参照附图描述应用本发明第一实施例的验证密钥分配系统。
图4代表验证密钥分配系统1的示范性配置。
如图4所示,在验证密钥分配系统1中,任意个用户User(图1)(在本例中,一个人)使用的用户设备11、任意个密钥分配者KA(图1)(在本例中,一个人)使用的密钥分配者终端12、任意个服务提供者SP(图1)(在本例中,一个人)使用的服务提供者终端13和任意个通用帐户管理者KDC(图1)(在本例中,一个人)使用的通用帐户管理者终端15通过网络14相互连接。
网络的类型没有特殊的限制,但是,在本例中,认为它是例如因特网。注意,用户设备11、密钥分配者终端12、服务提供者终端13和通用帐户管理者终端15可以不通过网络14而是直接与其它设备通信。在这种情况下,网络14可以省略。
正如后面所述的那样,用户设备11由用户终端21、密钥保存设备22和IC卡23构成。假设当密钥保存设备22具有使用服务提供者13提供的服务的功能和通过网络14与其它设备通信的功能时,用户终端21可以省略。
图5-8代表密钥分配者终端12保存的数据的例子。
也就是说,在密钥分配者终端12的存储器(如后所述的图18的存储部分88等)中,存储着如图5所示的密钥分配表、如图6所示的服务提供者密钥表、如图7所示的密钥保存设备密钥表和如图8所示的密钥分配者帐户信息。具体地说,在本例中,例如,把图5的密钥分配表、图6的服务提供者密钥表和图7的密钥保存设备密钥表实现为通过Key-ID、SP-ID和HW-ID的各个可检索的数据库。
在图5的密钥分配表中,每一行(下文称为一个记录)对应于密钥分配者终端12分配的一种验证技术。
Key-ID代表所分配的验证技术的识别号,并且被指定成固有的。
Acc-ID代表在分配验证技术的时候支付的用户(用户拥有的IC卡)在通用帐户系统下的识别号。
HW-ID代表对其分配验证技术的密钥保存设备22的识别号。
SP-ID代表利用验证技术被分配的服务提供者终端13(服务提供者SP)的识别号。
截止日期代表验证技术的截止日期。
服务内容代表通过利用那个验证技术进行的验证而从服务提供者终端13(服务提供者SP)提供给用户终端21(用户User)的服务的内容。
证明密钥=核实密钥代表用于验证技术的核实密钥和证明密钥。注意,由于公用密钥密码系统用作验证技术,因此,在本例中,用户User(密钥保存设备22)拥有的密钥和服务提供者SP(服务提供者终端13)拥有的密钥匹配。
在图6的服务提供者密钥表中,每个记录对应于与密钥分配者终端12(密钥分配者KA)订立合同的服务提供者终端13(服务提供者SP)。
SP-ID代表订立合同的服务提供者终端13(服务提供者SP)的识别号,并且在订立合同的时候被指定成固有的。
SP-address代表与服务提供者终端13联系的地址(电子邮件地址、URL(统一资源定位符)等)。认为这是当出现验证技术失效时或者当进行询问时进行联系的地方。
固有密钥代表当订立合同时在服务提供者和密钥分配者之间商定的密钥,并且用于保证双方之间的通信的匿名性和完整性(integrity)。
在图7的密钥保存设备密钥表中,每个记录对应于密钥保存设备22。
HW-ID代表密钥保存设备22的识别号,并且被唯一指定给密钥保存设备22。
固有密钥代表特定密钥保存设备22和密钥分配者终端12之间共享的密钥,并且当分配新验证技术时,用于双方之间的验证和密钥共享。
图8的密钥分配者帐户信息由在通用帐户下作为密钥分配者终端12(密钥分配者KA)的识别号的Acc-ID和用于对通用帐户管理者终端15(通用帐户管理者KDC)进行验证的注册密钥构成。
图9和10代表服务提供者SP拥有的数据的例子。
也就是说,在服务提供者终端13的存储器(如后所述的图19的存储部分108等)中,存储着如图9所示的验证信息表和如图10所示的服务提供者固有信息。在本例中,例如,把图9的验证信息表当作通过Key-ID可检索的数据库来实现。
在图9的验证信息表中,每个记录对应一种分配的验证技术。
Key-ID、截止日期和核实密钥的每一个代表验证技术的识别号、截止日期和核实密钥的各个。服务内容代表提供给通过那种验证技术被验证的用户User(用户终端21)的服务的内容。
在图10的服务提供者固有信息中,SP-ID代表当服务提供者终端13(服务提供者SP)和密钥分配者终端12(密钥分配者KA)订立密钥分配合同时指定的识别号。类似地,固有密钥代表在订立密钥分配合同的时候与密钥分配者终端12(密钥分配者KA)商定的密钥,并且用于保证双方之间的通信的匿名性和完整性。
图11-14代表用户User保存的数据的例子。
也就是说,在用户设备11的密钥保存设备22的存储器(如后所述的图16的数据存储部分53或密钥存储部分54)中,或者,在IC卡23中,存储着图11的证明密钥表、图12的服务信息表、图13的密钥保存设备固有信息和图14的用户帐户信息。在本例中,例如,把图11的证明密钥表和图12的服务信息表当作通过Key-ID可检索的数据库来实现。
在图11的证明密钥表和图12的服务信息表中,每个记录对应于密钥分配者终端12(密钥分配者KA)用来分配密钥保存设备22(用户User)的验证技术。
Key-ID代表验证技术的识别号。证明密钥代表验证技术的证明密钥。截止日期代表验证技术的验证密钥的截止日期。服务内容代表当通过这个验证技术进行验证时提供的服务的内容。
在图13的密钥保存设备固有信息中,HW-ID代表密钥保存设备22的唯一识别号。固有密钥代表用于当把新证明密钥写入密钥保存设备22时、验证写新证明密钥的对方是密钥分配者KA(密钥分配者终端12)的事实的密钥,和用于防止写入的证明密钥的泄漏和被窜改的密钥。
图14的用户帐户信息由在通用帐户下作为密钥分配者的识别号的Acc-ID和用于对通用帐户管理者KDC(通用帐户管理者终端15)进行验证的注册密钥构成。
图15代表用户终端15的示范性配置。
注意,在本例中,认为用户终端15是如图15所示的个人计算机,但是,不局限于此,只要它可以使用服务提供者终端13提供的服务和可与密钥保存设备22相连接即可;例如,数字家用电器等也是可接受的。
在图15中,CPU 31根据存储在ROM(只读存储器)32中的程序或从存储部分38装入RAM(随机访问存储器)33中的程序,执行各种处理。
RAM 33在适当时,还存储CPU 31执行各种处理所需的数据等。
CPU 31、ROM 32和RAM 33通过总线34互连。输入/输出接口35也与这个总线34连接。
密钥保存设备22也与输入/输出接口35相连接。
输入/输出接口35还将它自己与由键盘等构成的输入部分36、由显示器等构成的输出部分37、由硬盘等构成的存储部分38和为了通过网络14(图4)与其它设备互通信而进行通信处理的通信部分39相连接。
在必要的时候与输入/输出接口35连接的还有驱动器40,在适当时把诸如磁盘、光盘、磁光盘或半导体存储器等的可移除记录媒体41附加到驱动器中,并且,在必要的时候,把从其读出的计算机程序安装到存储部分38中。
图16代表密钥保存设备22的示范性配置。
在图16中,CPU 51根据存储在ROM 52中的程序或通过通信处理部分57从用户终端21装入RAM 53中的程序,执行各种处理。RAM 53在适当时还存储CPU 51执行各种处理所需的数据等。CPU 51、ROM 52和RAM 53通过总线60互连。
该总线60还将它自己与存储图12的服务信息表和图11的证明密钥表的数据存储部分53、存储图13的密钥保存设备固有信息的密钥存储部分54和数据管理部分55相连接,数据管理部分55根据CPU 51的控制,按照来自密钥分配者KA的信息(从图4的密钥分配者终端12发送和由通信处理部分57通过网络14和用户终端21接收的信息)和存储在数据存储部分53中的图12的服务信息表的截止日期,加入或删除密钥存储部分54或数据存储部分53的内容。
该总线60还配有:计算处理部分56,用于进行计算处理以利用密钥进行验证;通信处理部分57,用于进行与用户终端21的通信处理;和验证处理部分58,用于根据CPU 51的控制,进行识别使用密钥保存设备22的用户User的处理。
当通过登录名和密码进行用户验证时,用户User一边检查用户终端22的显示器(图15的输出部分37),一边操作用户终端22的键盘(图15的输入部分36),以输入登录名和密码。通过输入/输出接口35和通信处理部分57把输入到用户终端21的登录名和密码供应给验证处理部分58,然后,验证处理部分58根据供应的登录名和密码,生成作为图14的用户帐户信息的Acc-ID和注册密钥,以便执行用户验证进程。
注意,如果不与用户终端21连接地独立使用密钥保存设备22,和如果通过登录名和密码进行用户验证,那么,键盘和显示器直接与验证处理部分58连接。
相反,当利用基于公用密钥密码系统或公开密钥验证系统的验证时,IC卡23与验证处理部分58相连接。将图14的Acc-ID和注册密钥保存在IC卡上。
在本例中,认为密钥保存设备22能够请求与验证处理部分58相连接的IC卡23、利用保存在IC卡23上的密钥加密数据或解密加密的数据,并且从IC卡23获取验证所需的辅助信息(用户识别号和证书等)。
正如后面所述的那样,由于只有当分配新验证技术时,才要求用户验证,因此,在公用密钥密码系统或公开密钥密码系统下的验证的情况下,另外,可以从验证处理部分58中移走IC卡23。并且,在密码验证的情况下,无需让密钥保存设备22保存密码,通过每当进行验证时让用户输入密码,可以使与用户验证技术有关的各种信息与密钥保存设备22分离。
注意,密钥存储部分54、计算处理部分56和数据管理部分55的每一个最好制造成防窜改的。在这种情况下,可以防止内部保存或处理的数据被外界获取或改变。
图17代表IC卡23的示范性配置。
IC卡23也可以被制造成防窜改的,以便禁止从外界获取内部保存的数据和处理的内容。
IC卡23配有:存储部分71,用于存储供验证用的密钥和辅助信息(在公用密钥验证的情况下,用于公用密钥密码系统的密钥,和在公开密钥验证的情况下,用于公开密钥密码系统的私有密钥和证书);计算处理部分72,用于进行计算处理以利用保存在存储部分71上的密钥进行验证;和通信处理部分73,用于进行与密钥保存设备22的验证处理部分58(图16)的通信处理。当IC卡23用于用户验证时,图14的帐户信息保存在存储部分71上。
图18代表密钥分配者终端12的示范性配置。
在图18中,CPU 81到可移除记录媒体91的每一个具有与图15的用户终端21的CPU 31到可移除记录媒体41的各个的配置类似的配置,因此,省略这些描述。
假设上述图5到8的数据存储在例如存储部分88等上。
图19代表服务提供者终端13的示范性配置。
在图19中,CPU 101到可移除记录媒体111的每一个具有与图15的用户终端21的CPU 31到可移除记录媒体41的各个的配置类似的配置,因此,省略这些描述。
假设上述图9和10的数据存储在例如存储部分108等上。
图20代表通用帐户管理者终端15的示范性配置。
在图20中,CPU 121到可移除记录媒体131的每一个具有与图15的用户终端21的CPU 31到可移除记录媒体41的各个的配置类似的配置,因此,省略这些描述。
假设如图21和22所示的数据存储在例如存储部分128等上。
在本例中,把图21的帐户管理表当作通过Acc-ID可检索的数据库来实现。并且,Acc-ID代表在通用帐户下用户User(密钥保存设备22)的识别号,并且被指定成唯一的。密钥代表通过公用密钥验证,验证用户User(密钥保存设备22)的信息。
图22的通用帐户管理者固有密钥代表单独为通用帐户管理者KDC(通用帐户管理者终端15)准备的密钥。
接着,参照图23的流程图概述验证密钥分配系统1的操作。
在步骤S1中,当图4的用户终端21(用户User)选择服务时,密钥分配者终端12(密钥分配者KA)把提供服务的验证技术分配给用户User的密钥保存设备22和服务提供者终端13(服务提供者SP)。注意,下文把这样的一系列处理称为“服务选择/密钥分配进程”。以后将参照图24到26的流程图和图27的箭头图描述“服务选择/密钥分配进程”的细节。
当作为步骤S1的结果分配了验证技术时,用户User的密钥保存设备22在步骤S2中,对利用分配的验证技术对服务提供的验证做出响应。当这种验证取得成功时,服务提供者终端13(服务提供者SP)把服务提供给拥有密钥保存设备22的用户User(给与密钥保存设备22连接的用户终端21)。注意,下文把这样的一系列处理称为“密钥使用/服务提供进程”。以后将参照图30和31的流程图描述“密钥使用/服务提供进程”的细节。
接着,在步骤S3中,用户设备11、密钥分配者终端12和服务提供者终端13的每一个确定是否执行如后所述的步骤S6(“密钥删除进程”)。
用于步骤S3的进程的确定方法没有具体限制。但是,在本例中,例如,认为如后所述,从外部把用于密钥删除的催化剂(触发剂)给予用户设备11、密钥分配者终端12和服务提供者终端13的每一个,然后,当它获取这种触发剂时,用户设备11、密钥分配者终端12和服务提供者终端13的每一个在步骤S3中确定执行“密钥删除进程”。
在这种情况下,为密钥保存设备22保存的密钥设置截止日期,从而在步骤S6中,删除超过其截止日期的有关验证技术的信息。注意,下文称这样的进程为“密钥删除进程”。以后将参照图37到39的流程图描述“密钥删除进程”的细节。
另一方面,如果在步骤S3中确定不执行“密钥删除进程”,那么,密钥分配者终端12在步骤S4中确定是否执行如后所述的步骤S7的进程(“密钥使用终止进程”)。
用于步骤S4的进程的确定方法没有具体限制。但是,在本例中,例如,如果密钥分配者终端12检测到由于某种原因所分配的验证技术的证明密钥泄漏到外界,或者,如果它检测到密钥保存设备22被盗的事实(检测装置未示出),那么,它在步骤S4中确定执行“密钥使用终止进程”。
在这种情况下,在步骤S7中执行终止验证技术的使用的进程。具体地说,密钥分配者终端12(密钥分配者KA)通知服务提供者终端13(服务提供者SP)它将终止验证技术的使用,并且使它终止所述的验证技术的使用。注意,下文把这样的进程称为“密钥使用终止进程”。以后将参照图40和41的流程图描述“密钥使用终止进程”的细节。
另一方面,如果在步骤S4中确定不执行“密钥使用终止进程”,那么,密钥保存设备22和服务提供者终端13的每一个在步骤S5中确定是否执行如上所述的“密钥使用/服务提供进程”。
当在步骤S5中确定执行“密钥使用/服务提供进程”时,进程返回到步骤S2,再次执行“密钥使用/服务提供进程”。
另一方面,如果在步骤S5中确定不执行“密钥使用/服务提供进程”,那么,进程返回到步骤S3,重复往前的步骤。
也就是说,上述步骤S1到S7代表验证密钥分配系统1对一个预定按目的验证密钥执行的处理,并且,当对那个按目的验证密钥执行上述步骤S1的“服务选择/密钥分配进程”时,使那个按目的验证密钥保持在保存状态,直到执行步骤S6的“密钥删除进程”或步骤S7的“密钥使用终止进程”为止,并且,如有必要,执行步骤S2的“密钥使用/服务提供进程”数次。
在验证密钥分配系统1中,存在数个这样的按目的验证密钥,并且对这数个按目的验证密钥的每一个独立地执行步骤S1到S7。
下面将按那个次序单独描述“服务选择/密钥分配进程”、“密钥使用/服务提供进程”、“密钥删除进程”和“密钥使用终止进程”的细节。
首先参照图24到26的流程图和图27的箭头图,描述应用本发明第一实施例的验证密钥分配系统1的操作的“服务选择/密钥分配进程”(图23的步骤S1)。图24代表用户设备11(图4)执行的“服务选择/密钥分配进程”;图25代表密钥分配者终端12(图4)执行的“服务选择/密钥分配进程”、“密钥删除进程”;和图26代表服务提供者终端13(图4)执行的“服务选择/密钥分配进程”。图27代表这些用户设备11、密钥分配者终端12和服务提供者终端13执行的“服务选择/密钥分配进程”之间的关系。
现在参照图24到26,分别描述用户设备11、密钥分配者终端12和服务提供者终端13执行的“服务选择/密钥分配进程”。但是,通过参照图27的相应步骤,可以容易地理解这些设备执行的进程之间的相互关系。
首先参照图24,描述用户设备11(图4)执行的“服务选择/密钥分配进程”。
在步骤S11中,图15的用户终端21的CPU 31根据来自输入部分36的用户命令选择服务,以便通过通信部分39和网络14将其发送到服务提供者终端13。
在本例中,例如,认为存储部分38存储诸如万维网浏览器之类在因特网上浏览主页等的应用软件(下文把这样的应用软件称为浏览器),CPU 31启动这个浏览器,以便通过通信部分39和网络14在浏览器上显示由服务提供者SP管理的和存储在服务提供者终端13(图19的存储部分108)中的主页。
用户User浏览这个主页,以便选择用户想要使用的服务,并且当用户通过操作键盘(输入部分36)输入所选服务时,CPU 31获取所选服务,以便通过通信部分39和网络14将其发送到服务提供者终端13。
注意,下文把用户User以这种方式选择的服务简称为所选服务。
并且,下文把CPU 31(包括其它设备的CPU)通过通信部分39(包括其它设备的通信部分)和网络14发送预定格式的数据简称为CPU 31发送数据。
并且,下文把CPU 31(包括其它设备的CPU)通过网络14和通信部分39(包括其它设备的通信部分)从其它设备接收预定格式的数据简称为CPU31接收数据。
具体地说,例如,利用用户User借助于诸如鼠标之类的输入设备选择显示在主页上的按钮和CPU 31通过通信部分39和网络14发出有关它的通知的方法,CPU 31可以发送所选服务。
通过网络14把CPU 31发送的所选服务供应给服务提供者终端13。
正如后面所述的那样,当接收到所选服务时,服务提供者终端13准备密钥分配申请书,并且将它发送给用户终端21(图26和27的步骤S41和S42)。
图28代表这种密钥分配申请书的例子。
申请书ID代表加入的申请书的识别号,以便对发放这个密钥分配申请书的服务提供者终端13(服务提供者SP)来说是固有的。
截止日期代表利用这个密钥分配申请书申请分配的验证技术所需的截止日期。
SP-ID代表服务提供者终端13(服务提供者SP)的识别号,并且在服务提供者终端13(服务提供者SP)与密钥分配者终端12(密钥分配者KA)订立合同的时候事先商定的。
服务内容代表提供给通过这种验证技术被验证的用户User(密钥保存设备22)的服务(通过用户终端21(用户User)选择的服务)的内容。注意,在本例中,例如,除了服务内容本身之外,服务内容还包括例如服务的费用和服务提供站点的地址等。
利用服务提供者终端13(服务提供者SP)的固有密钥(包括在图10的服务提供者固有信息中的固有密钥),为密钥分配申请书数据生成消息验证码(MAC:消息验证码),消息验证码防止密钥分配申请书被窜改和证明服务提供者生成密钥分配申请书。
消息验证码允许利用公用密钥密码系统技术窜改数据和识别消息发生器。
例如,当存在数据M时,认为只有数据M的创建者和数据M的接受者(addressee)共享公用密钥密码系统的密钥K。同时,像MAC(M)=E(K,h(M))(利用密钥K加密h(M)的数据)那样,利用密钥K生成数据M的消息验证码。注意,h()是数据的发送方和接收方两者共享的单向函数(例如,散列(Hash)函数等)。
发送方以一组(M,MAC(M))的形式发送数据M,而接收方检验h(M)=D(K,h(M))是否成立,从而检验数据M没有被窜改和秘密密钥(secret key)Sk的拥有者加入了数字签名SG(M)。下文把这样的一系列处理称为对消息验证码的检验。
返回到图24,图16的密钥保存设备22的CPU 51在步骤S12中通过用户终端21接收密钥分配申请书(下文把CPU 51通过用户终端21接收预定数据简称为CPU 51接收数据),并且在步骤S13中,通过用户终端21把那个密钥分配申请书发送给密钥分配者终端12(下文把CPU 51通过用户终端21发送预定数据简称为CPU 51发送数据)。
同时,CPU 51还把密钥分配申请书存储在例如数据存储部分53上。
此时,正如后面所述的那样,密钥分配者终端12接收密钥分配申请书,并且核实包括在其中的消息验证码。并且,它检验过去没有从同一服务提供者接收到具有相同申请号的其它申请书。在这些检验之后,密钥分配者终端12和密钥保存设备22通过网络14和用户终端21进行相互验证,以便执行临时(只此一次,once and for all)共享密钥Kses的进程(图25和27的步骤S21和S22)。注意,下文把这样的进程称为像密钥保存设备22这一方执行的进程那样的 “与密钥分配者的相互验证+密钥共享进程”和像密钥分配者12这一方执行的进程那样的“与密钥保存设备的相互验证+密钥共享进程”。
也就是说,密钥保存设备22的CPU 51在步骤S14中执行“与密钥分配者的相互验证+密钥共享进程”。
第一实施例中“与密钥分配者的相互验证+密钥共享进程”(步骤S14)和“与密钥保存设备的相互验证+密钥共享进程”(图25的步骤S22)的细节显示在图27中。因此,参照图27,描述第一实施例中“与密钥分配者的相互验证+密钥共享进程”(步骤S14)的细节。
注意,在本例中,认为密钥分配者终端12从图7的密钥保存设备密钥表中知道密钥保存设备22的识别号(HWIDb)和密钥保存设备22拥有的固有密钥KHWb之间的对应。
首先,密钥保存设备22的CPU 51(图16)在图27的步骤S14的步骤S14-1中,生成随机数Rb,和发送随机数Rb和识别号HWIDb之间的链接(数据Rb‖HWIDb(下文把数据A和B之间的链接称为数据A‖B))。
正如后面所述的那样,当接收到它时,密钥分配者终端12在步骤S22的步骤S22-1中生成随机数Ra,从密钥保存设备密钥表提取与识别号HWIDb相对应的固有密钥KHWb,并且利用固有密钥KHWb加密随机数Rb和识别号HWIDb之间的链接,以便发送到密钥保存设备22(返回加密数据E(KHWb,Ra‖Rb‖HWIDb))。也就是说,利用固有密钥KHWb进行基于公用密钥密码系统的相互验证(图27和25的步骤S22)。
当接收到它时,密钥保存设备22的CPU 51在步骤S14-2中,检验片刻之前发送的随机数Rb和识别号HWIDb被正确解密(检验通过固有密钥KHWb正确加密了包括随机数Rb的数据),从而检验对方是知道与识别号HWIDb相对应的固有密钥KHWb的密钥分配者终端12(密钥分配者KA)。
并且,密钥保存设备22的CPU 51在步骤S14-3中,利用固有密钥KHWb生成临时共享密钥(会话密钥)Kses,将它与随机数Rs和Rb链接,并且加密和发送它们(发送数据E(KHWb,Rb‖Ra‖Kses))。
注意,在本例中,例如,加密是由密钥保存设备22(图16)的计算处理部分56进行的(下文通过密钥保存设备22进行的其它加密与此类似;假设当图14的用户帐户信息包括在IC卡23(图17)中时,只有利用注册密钥的加密进程才由IC卡23的计算处理部分72来执行)。
密钥分配者终端12在步骤S22-3中,接收这个加密数据E(KHWb,Rb‖Ra‖Kses),并解密它,以提取公用密钥Kses(图27和25的步骤S22)。
结果,可以在密钥保存设备22和密钥分配者终端12之间共享公用密钥Kses。
注意,对于在步骤S13和S21中执行的密钥分配申请书从用户设备11到密钥分配者终端12的发送,可以在共享公用密钥Kses之后,利用公用密钥Kses进行加密。也就是说,在这种情况下,将以相反的次序执行图24所示的用户设备11中的步骤S13和S14,和将以相反的次序执行图25所示的密钥分配者终端12中的步骤S21和S22,但是,这不影响它们随后的步骤。
返回到图24,在上面步骤S14中的“与密钥分配者的相互验证+密钥共享进程”之后,密钥保存设备22的CPU 51在步骤S15中执行与“密钥分配者终端12识别(验证)保存公用密钥Kses的密钥保存设备22(用户User)的进程”相对应的进程。
注意,这样的进程将被称为“用户验证响应进程”。并且,密钥分配者终端12执行的“密钥分配者终端12识别(验证)保存共享密钥Kses的密钥保存设备22(用户User)的进程”将被称为“密钥保存设备用户验证进程”。
也就是说,从现在开始,密钥保存设备22的CPU 51在步骤S15中执行“用户验证响应进程”。
第一实施例中的“用户验证响应进程(步骤S15)”的细节显示在图27中。因此,返回到图27,描述第一实施例中的“用户验证响应进程”的细节。
注意,通过通用帐户系统验证用户的例子,具体地说,Kerberos验证显示在图27中,但是,例子不限于此,只要它们可以验证用户即可。
首先,正如后面所述的那样,密钥分配者终端12在步骤S23-1中,向密钥保存设备22发送在其通用帐户下的识别号(Acc-ID)IDKA(图27和25的步骤S23)。
当接收到它时,密钥保存设备22的CPU51在步骤S15-1中将验证服务请求KRB_AS_REQ从用户User发送到通用帐户管理者终端15。
具体地说,在本例中,例如,认为服务请求KRB_AS_REQ是数据UID‖E(KU,time),其中,UID代表用户User(IC卡23)的识别号,和E(KU,time)代表利用用户的注册密钥KU加密时间time的数据。
通用帐户管理者终端15在步骤S51中检验服务请求KRB_AS_REQ正确,即,包括在服务请求KRB_AS_REQ中的时间time可以通过与识别号UID相对应的密钥KU解密,并且与当前时间的偏差在预定固定范围之内。
并且,通用帐户管理者终端15在步骤S52中向密钥保存设备22发送(返回)验证服务响应(reply)KRB_AS_REP。
在本例中,例如,认为验证服务响应KRB_AS_REP是数据E(KU,Kt)‖E(KKDC,Kt‖UID‖expire),其中,E(KU,Kt)代表通用帐户管理者终端15(通用帐户管理者KDC)利用密钥KU决定的、加密临时密钥Kt的数据。E(KKDC,Kt‖UID‖expire)代表利用通用帐户管理者终端15(通用帐户管理者KDC)的密钥KKDC加密连接密钥Kt、用户识别号UID和截止日期expire的链接数据Kt‖UID‖expire的数据。注意,下文把E(KKDC,Kt‖UID‖expire)写成TGT。
当接收到验证服务响应KRB_AS_REP时,密钥保存设备22的CPU 51在步骤S15-2中,解密包括在验证服务响应KRB_AS_REP中的加密数据E(KU,Kt),以提取临时密钥Kt。假设CPU 51不能解密TGT。
在本例中,认为投票赞成(ticket approval)服务请求KRB_TGS_REQ是例如数据IDKA‖E(Kt,UID‖time)‖TGT。
当接收到服务请求KRB_TGS_REQ时,通用帐户管理者终端15在步骤S53中检验TGT的截止日期,并且,如果有效,从TGT中提取密钥Kt,并且将从加密数据E(Kt,UID‖time)中解密的时间time与当前时间相比较,以检验它在预定范围之内。当检验取得成功时,通用帐户管理者终端15生成要在密钥保存设备22和密钥分配者终端12之间共享的临时密钥Kt2。
并且,通用帐户管理者终端15在步骤S54中向密钥保存设备22发送(返回)应答KRB_TGS_REP。
在本例中,认为应答KRB_TGS_REP是例如E(Kt,Kt2‖IDKA)‖E(KKA,Kt2‖UID),其中,KKA代表在密钥分配者终端12(密钥分配者(KA))的通用帐户上注册的密钥。
当接收到应答KRB_TGS_REP时,密钥保存设备22的CPU 51在步骤S15-4中,解密加密数据E(Kt,Kt2‖IDKA),以获得Kt2。
密钥保存设备22的CPU 51在步骤S15-5中,向密钥分配者终端12发送数据KRB_AP_REQ。
在本例中,认为数据KRB_AP_REQ是例如E(Kses,Kt2)‖E(Kt2,UID‖time)‖E(KKA,Kt2‖UID)。
当接收到数据KRB_AP_REQ时,密钥分配者终端12在步骤S23-2中,从加密数据E(KKA,Kt2‖UID)中解密具有识别号UID的用户User(密钥保存设备22)的密钥Kt2,并且将从加密数据E(Kt2,UID‖time)中解密的时间time与当前时间相比较,以检验它在预定范围之内。并且,密钥分配者终端12从加密数据E(Kses,Kt2)中把与之共享密钥Kses的密钥保存设备22的拥有者识别成具有识别号UID的用户User(用户终端21)。
并且,密钥分配者终端12在步骤S23-3中,生成代表识别出用户User的事实的数据KRB_AP_REQ,以便发送到密钥保存设备22。
此后,正如后面所述的那样,密钥分配者终端12为密钥保存设备22生成要分配的验证技术的识别号KID和供验证用的新密钥Kr,以便发送到密钥保存设备22(图25和27的步骤S24)。
返回到图24,此时,密钥保存设备22的CPU 51在步骤S16中接收这个新的密钥Kr(以及识别号KID)。
在本例中,例如,认为识别号KID是到目前为止没有使用过的数字,新密钥Kr将是密钥分配者终端12在此时生成的随机数。
具体地说,例如,密钥分配者终端12利用与密钥保存设备22共享的上述临时密钥Kses,向密钥保存设备22发送作为加密数据E(Kses,KID‖Kr)的识别号KID和新密钥Kr。
此时,密钥保存设备22的CPU 51接收其中加密识别号KID和新密钥Kr的加密数据E(Kses,KID‖Kr),并且利用临时密钥Kses解密识别号KID和新密钥Kr。并且,它将新的记录加入密钥保存设备22保存的图11的证明密钥表。认为新记录的内容是解密的识别号KID和新密钥Kr。
接着,密钥分配者终端12准备密钥分配报告,以便发送到密钥保存设备22(图25和27的步骤S25)。
图29代表这样的密钥分配报告的例子。注意,认为图29的密钥分配报告是当分配的验证技术是公用密钥验证时可应用的格式。
在这种情况下,由于核实密钥和证明密钥是相同的,必须防止密钥泄漏给除了服务提供者SP之外的任何人。为此,密钥分配者终端12向密钥保存设备22发送还包括通过服务提供者终端13的固有密钥KSP加密的核实密钥的密钥分配报告。
在图29的密钥分配报告中,Key-ID代表分配的验证技术的识别号。
申请书ID代表用其请求分配当前验证技术的密钥分配申请书的识别号。
SP-ID代表服务提供者终端13(服务提供者SP)的识别号。
截止日期代表所分配验证技术的截止日期。
加密核实密钥代表所分配验证技术的核实密钥Kr,并且代表申请分配的服务提供者终端13(服务提供者SP)的固有密钥KSP加密的加密数据E(KSP,Kr)的格式。
并且,密钥分配者终端12把新记录加入图5的密钥分配表中。新记录的内容将是所分配验证技术的识别号Key-ID、在拥有所分配密钥保存设备22的用户User(IC卡23)的通用帐户下的识别号Acc-ID、所分配密钥保存设备22的识别号HW-ID、所分配服务提供者的识别号SP-ID、所分配验证技术的截止日期、服务内容和核实密钥(证明密钥)。此后,密钥分配者终端12毁掉密钥分配申请书和密钥分配报告(图25和27的步骤S25)。
返回到图24,密钥保存设备22的CPU 51在步骤S17中,接收密钥分配报告(密钥分配者终端12在图25和27的步骤S25中发送的密钥分配报告)。并且,密钥保存设备22的CPU 51从密钥分配报告(图29)和与之相对应的密钥分配申请书(其中SP-ID与申请书ID匹配的密钥分配申请书)(图28)中提取Key-ID、截止日期和服务内容,并且将它们作为新记录加入密钥保存设备22保存的图12的服务信息表。
此时,正如后面所述的那样,密钥分配者终端12向验证过的用户User(IC卡23)开出帐单,以便与服务相对应(图25的步骤S26)。
密钥保存设备22的CPU 51在步骤S18中,向服务提供者终端13发送在步骤S17中接收的密钥分配报告。此后,密钥保存设备22毁掉密钥分配申请书和密钥分配报告。
正如后面所述的那样,服务提供者终端13接收以这种方式从密钥保存设备22发送的密钥分配报告(图26和图27的步骤S43)。并且,服务提供者终端13从密钥分配报告和与之相对应的密钥分配申请书中提取Key-ID、截止日期、服务内容和核实密钥,将核实密钥作为新记录加入图9的验证信息表中。此后,服务提供者终端13毁掉密钥分配申请书和密钥分配报告。
接着参照图25,描述密钥分配者终端设备12执行的“服务选择/密钥分配进程”。
当如上所述,用户终端21在图24和27的步骤S11中,向服务提供者终端13发送所选服务时,正如后面所述的那样,服务提供者终端13接收这个所选服务,准备密钥分配申请书,将其发送到密钥保存设备22(图26和27的步骤S41和S42)。
并且,如上所述,密钥保存设备22在图24和27的步骤S12中接收密钥分配申请书,和在步骤S13中将那个密钥分配申请书发送到密钥分配者终端12。
然后,图18的密钥分配者终端12的CPU 81在步骤S21中接收从密钥保存设备22发送的密钥分配申请书。并且,CPU 81核实包括在其中的消息验证码(图28)。进一步,它检验过去从同一服务提供者接收到具有相同识别号的申请书。
在这些检验之后,CPU 81在步骤S22中,执行“与密钥保存设备的相互验证+密钥共享进程”,并且它在步骤S23中执行“密钥保存设备用户验证进程”。
注意,这里将省略步骤S22中“与密钥保存设备的相互验证+密钥共享进程”的描述,因为参照图27的步骤S14中的上述“与密钥分配者的相互验证+密钥共享进程”详细描述了它。
类似地,这里将省略步骤S23中“密钥保存设备用户验证进程”的描述,因为参照图27的步骤S15中的上述“用户验证响应进程”详细描述了它。
并且,CPU 81在步骤S24中生成新的密钥Kr(和识别号KID),并且将它们发送到密钥保存设备22。
如上所述,密钥保存设备22在图24和27的步骤S16中接收这个新密钥Kr(和这个识别号KID)。
接着,CPU 81在步骤S25中,准备密钥分配报告和将它发送到密钥保存设备22,并且在步骤S26中,向用户终端21(用户User)开出帐单。
此时,如上所述,密钥保存设备22在图24和27的步骤S17和S 18中,接收这个密钥分配报告,以便发送到服务提供者终端13。如后所述,服务提供者终端13接收那个密钥分配报告(图26和27的步骤S43)。
接着参照图26,描述服务提供者终端13(图4)执行的“服务选择/密钥分配进程”。
如上所述,用户终端21在图24和27的步骤S11中,把所选服务发送到服务提供者终端13。
具体地说,在本例中,如上所述,图19的服务提供者终端13的存储部分108存储包含要提供的服务清单的主页(数据)等。
因此,当被用户终端21访问时,CPU 101使这个主页呈现在用户终端21的浏览器上。
当如上所述,用户User浏览通过用户终端21呈现的主页和选择所选服务时,用户终端21发送那个所选服务。
然后,CPU 101在步骤S41中接收那个所选服务,生成密钥分配申请书,并且在步骤S42中将其发送到用户终端21。
此后,如上所述,在执行了图24和27的步骤S12到S17之后,用户终端21在步骤S18中把密钥分配报告发送到服务提供者终端13。
然后,CPU 101在步骤S43中,接收密钥分配报告。并且,CPU 101从密钥分配报告和与之相对应的密钥分配申请书中提取Key-ID、截止日期、服务内容和核实密钥,把核实密钥作为新记录加入图9的验证信息表中。此后,CPU81毁掉密钥分配申请书和密钥分配报告。
接着参照图30和31的流程图和图32到35的箭头图,描述应用本发明第一实施例的验证密钥分配系统1的操作的“密钥使用/服务提供进程(图23的步骤S2中的进程)”。图30代表用户设备11(图4)执行的“密钥使用/服务提供进程”。图31代表服务提供者终端13(图4)执行的“密钥使用/服务提供进程”。
首先参照图30,描述用户设备11(图4)执行的“密钥使用/服务提供进程”。
密钥保存设备22的CPU 51(图16)在步骤S61中选择服务。
具体地说,例如,在本例中,CPU 51把来自密钥保存设备22本身保存的图12的服务信息表的服务内容提供给用户终端21,和用户终端21将其显示在其显示器(图15的输出部分37)上。用户User操作键盘(图15的输入部分36),从显示在显示器上的服务内容中选择与用户希望使用的服务相对应的记录。用户终端21感测用户User选择的服务,并且将其供应给密钥保存设备22。
并且,CPU 51通过通信处理部分57获取它,从而选择服务。
密钥保存设备22的CPU 51在步骤S62中生成服务请求,并且将其发送到服务提供者终端13。
图36代表服务请求的例子。
注意,在本例中,认为发送地址作为服务内容的一部分包括在其中。在图36中,Key-ID代表与用户User选择(在步骤S61中选择)的服务相对应的服务信息表(图12)的记录的Key-ID。
正如后面所述的那样,服务提供者终端13接收服务请求,从图9的验证信息表中提取与包括在服务请求中的Key-ID相对应的核实密钥,并且进一步检查其截止日期还没有过(图31的步骤S81和S82)。注意,下文把这样的一系列处理称为核实密钥选择+截止日期检查。
当确定不存在与图9的验证信息表中的Key-ID相对应的记录,或截止日期过了时,服务提供者终端13确定核实密钥选择+截止日期检查是不可接受的,因此,不提供服务而结束该进程。
另一方面,当确定核实密钥选择+截止日期检查是可接受的时,服务提供者终端13转到图31的步骤S83,并且执行“按目的验证核实进程”。
此时,CPU 51在步骤S63中,执行与步骤S83的“按目的验证核实进程”相对应的“按目的验证响应进程”。
步骤S63和S83的示范性细节显示在图32和33中。
因此,参照图32和33,描述步骤S63和S83的细节。
图32代表不共享密钥的情况的例子。
在图32中,服务提供者终端13在步骤S83-1中,生成随机数Ra,并且向密钥保存设备22发送将Key-ID(下文写成KID)与随机数Ra链接的链接数据KID‖Ra。
此时,当接收到它时,密钥保存设备22的CPU 51在步骤S63-1中,选择与KID相对应的证明密钥(从图11的证明密钥表中获得的证明密钥)Kr。并且,CPU 51在步骤S63-2中,利用证明密钥Kr加密随机数Ra,并且发送(返回)将从计算得出的加密数据E(Kr,Ra)与KID链接的链接数据KID‖E(Kr,Ra)。
当接收到它时,服务提供者终端13在步骤S83-2中,检验可以利用核实密钥Kr解密加密数据E(Kr,Ra)(可以获得随机数Ra),从而检验密钥保存设备22拥有所分配验证技术的核实密钥Kr。
相反,图33代表共享密钥的情况的例子。
在图33中,服务提供者终端13在步骤S83-11中,生成随机数Ra,并且向密钥保存设备22发送将KID与随机数Ra链接的链接数据KID‖Ra。
此时,当接收到它时,密钥保存设备22的CPU 51在步骤S63-11中,生成公用密钥Kses。并且,CPU 51在步骤S63-12中,选择与KID相对应的证明密钥(从图11的证明密钥表获得的证明密钥)Kr,加密将接收的随机数Ra与新生成的公用密钥Kses链接的链接数据Ra‖Kses,并且向服务提供者终端13发送从计算得出的加密数据E(Kr,Ra‖Kses)。
当接收到它时,服务提供者终端13在步骤S83-12中,利用核实密钥Kr解密加密数据E(Kr,Ra‖Kses),以检验它与随机数Ra匹配,从而检验密钥保存设备22拥有所分配验证技术的核实密钥Kr,并且还获得公用密钥Kses(使公用密钥Kses成为临时共享密钥)。
返回到图30,正如后面所述的那样,当服务提供者终端13确定验证取得成功时(图31的步骤S84),CPU 51在步骤S64中,执行使用服务提供者终端13提供的服务的进程。注意,下文把这样的进程称为“服务使用进程”。并且,如有必要,重复这种“服务使用进程”数次。
本例中的“服务使用进程”的细节显示在图34和35中。因此,参照图34和35,描述本例中“服务使用进程”的细节。
图34代表当不使用共享密钥时,即,当执行图32的“按目的验证响应进程”(步骤S63)时执行的“服务使用进程”。
在图34中,密钥保存设备22的CPU 51在步骤S64-1中,向服务提供者终端13发送请求Cmd‖Parm。注意,请求Cmd‖Parm代表将与服务请求相对应的命令Cmd与其变元Parm相链接的链接数据。
假设可能存在一些取决于目的而不需要指定命令Cmd的情况,在那种情况下,省略命令Cmd。
当接收到请求Cmd‖Parm时,服务提供者终端13在步骤S85-1中执行与之相对应的进程,并且在步骤S85-2中,把响应Resp返回(发送)到密钥保存设备22。
CPU 51在步骤S64-2中,接收响应Resp和从响应Resp中获取请求Cmd‖Parm的结果。
相反,图35代表当使用共享密钥时,即,当执行图33的“按目的验证响应进程”(步骤S63)时执行的“服务使用进程”。
在步骤35中,密钥保存设备22的CPU 51在步骤S64-11中,生成请求Cmd‖Parm,利用公用密钥Kses加密它,和将加密数据E(Kses,Cmd‖Parm)发送到服务提供者终端13。
当接收到加密数据E(Kses,Cmd‖Parm)时,服务提供者终端13在步骤S85-11中,利用公用密钥Kses解密它,以获得请求Cmd‖Parm,以执行与之相对应的进程,并且生成响应Resp。并且,服务提供者终端13在步骤S85-12中,利用公用密钥Kses加密响应Resp,把加密数据E(Kses,Resp)返回(发送)到密钥保存设备22(图31的步骤S85)。
CPU 51在步骤S64-12中,接收加密数据E(Kses,Resp),利用公用密钥Kses解密它,并且获得其结果。
注意,正如后面所述的那样,下文把与图34和35的密钥保存设备22执行的“服务使用进程(步骤S64)”相对应的服务提供者终端执行的进程(步骤S85)称为“服务提供进程”。
接着参照图31,描述服务提供者终端13(图4)执行的“密钥使用/服务提供进程”。
如上所述,密钥保存设备22在图30的步骤S61和S62中,选择服务,生成与之相对应的服务请求,并且将其发送到服务提供者终端13。
此时,服务提供者终端13的CPU 101(图19)在步骤S81中,接收服务请求,并且执行上述的“核实密钥选择+截止日期检查”进程。
CPU 101在步骤S82中确定“验证密钥选择+截止日期检查”是否是可接受的,并且,如果确定“验证密钥选择+截止日期检查”是不可接受的(确定为不可接受),那么,结束该进程。
另一方面,如果CPU 101在步骤S82中确定“验证密钥选择+截止日期检查”是可接受的,那么,在步骤S83中执行“按目的验证核实进程”。
注意,这里将省略步骤S83中“按目的验证核实进程”的描述,因为参照图30的步骤S63中的上述“按目的验证响应进程”详细描述了它。
CPU 101在步骤S84中,作为步骤S83的结果,确定验证是否取得成功,并且,如果确定验证没有成功(不成功),那么,结束该进程。
另一方面,如果CPU 101在步骤S84中确定验证成功,那么,在步骤S85中执行“服务提供进程”,此后结束该进程。
注意,这里将省略步骤S85中“服务提供进程”的描述,因为参照上面图30的步骤S64中的“服务使用进程”详细描述了它。
接着参照图37到39的流程图,描述应用本发明第一实施例的验证密钥分配系统1的操作的“密钥删除进程(图23的步骤S6中的进程)”。图37代表用户设备11(图4)执行的“密钥删除进程”,图38代表密钥分配者终端12(图4)执行的“密钥删除进程”,而图39代表服务提供者终端13(图4)执行的“密钥删除进程”。
假设像图37到39的每一个所示的那样,用户设备11、密钥分配者终端12和服务提供者终端13执行的各“密钥删除进程”彼此类似,因此,这里只参照图38描述密钥分配者终端12执行的“密钥删除进程”。
密钥分配者终端12的CPU 81(图18)在步骤S121中获取密钥清除请求。
在本例中,例如,认为用于密钥删除的触发剂是通过输入部分86等从外部给出的,然后,CPU 81获取这种触发剂,作为密钥清除请求。注意,这种触发剂可以定期或在任何时候给出。
CPU 81在步骤S122中,从存储在存储部分88上的图5的密钥分配表中提取第一记录,将那个记录中的截止日期与当前时间相比较,并且在步骤S123中,确定在那个记录中指定的密钥的截止日期是否已到。
当在步骤S123中确定密钥不是在截止日期内的一个时,CPU 81在步骤S125中删除那个记录,并且在步骤S126中确定那个记录(被删记录)是否是最后一个记录。
另一方面,当在步骤S123中确定密钥是在截止日期内的一个时,CPU 81在步骤S126中确定那个记录(被删记录)是否是最后一个记录,而不删除记录(不执行步骤S125)。
当在步骤S126中确定它不是最后一个记录时,CPU 81在步骤S124中提取下一个记录,并且返回到步骤S123,重复往前的步骤。
也就是说,CPU 81依次确定第一到最后一个的各记录是否在截止日期内,删除已过截止日期的任何记录。并且,当结束直到最后一个记录的进程(步骤S123到125的循环)时,CPU 81在步骤S126中确定这是最后一个记录,因此,结束该进程。
注意,认为服务提供者终端13执行的密钥删除进程中用于删除的表格是图9的验证信息表,并且认为密钥保存设备22执行的密钥删除进程中用于删除的表格是图12的服务信息表。并且,当这些记录被删除时,证明密钥表中具有相同Key-ID的记录也被删除。
接着参照图40和41的流程图,描述应用本发明第一实施例的验证密钥分配系统1的操作的“密钥使用终止进程(图23的步骤S7)”。图40代表密钥分配者终端12(图4)执行的“密钥使用终止进程”。图41代表服务提供者终端13(图4)执行的“密钥使用终止进程”。
首先参照图40,描述密钥分配者终端12执行的“密钥使用终止进程”。
当需要使分配的验证技术作废时,密钥分配者终端12的CPU 81(图18)在步骤S161中,根据来自输入部分86的操作者的命令,生成与所述验证技术有关的密钥使用终止请求,并且将其发送到服务提供者终端13。
图42代表这样的密钥使用终止请求的例子。
如图42所示,密钥使用终止请求由例如要终止其使用的验证技术的识别号Key-ID、终止使用的时间和日期Date-time、要终止其使用的验证技术的原始截止日期以及与此有关的消息验证码构成。
消息验证码是利用借助于验证技术分配的服务提供者终端13(服务提供者SP)的固有密钥(从图6的服务提供者密钥表获得的固有密钥)KSP生成的。注意,在本例中,对于所分配的验证技术,认为密钥分配者终端12能够从图5的密钥分配表中、获得借助于那种验证技术分配的服务提供者终端13(服务提供者SP)的识别号SP-ID。
并且,CPU 81在步骤S162中删除密钥和其辅助信息。
具体地说,CPU 81从图5的密钥分配表中删除与要终止其使用的验证技术相对应的记录。
接着参照图41,描述服务提供者终端13执行的“密钥使用终止进程”。
如上所述,密钥分配者终端12在步骤S161中发送例如图42的密钥使用终止请求。
此时,服务提供者终端13的CPU 101(图19)在步骤S181中接收密钥使用终止请求。并且,CPU 101利用它拥有的其固有密钥(从图10的服务提供者固有信息中获得的固有密钥)KSP0检验密钥使用终止请求中的消息验证码。注意,下文把这样的进程称为请求检查。
CPU 101在步骤S182中确定请求检查是否是可接受的,并且,如果它确定请求检查是可接受的,那么,在步骤S183中删除密钥和其辅助信息,然后,结束该进程。
具体地说,CPU 101从图9的验证信息表中删除与具有指定识别号Key-ID的验证技术相对应的记录。
另一方面,如果在步骤S182中确定请求检查是不可接受的(不能接受),那么,CPU 101不执行步骤S183(不删除密钥和其辅助信息)就结束那个进程。
图43代表密钥使用终止请求的另一个例子。这个密钥使用终止请求用在第二实施例中。因此,图43的密钥使用终止请求将在第二实施例中加以描述。
(第二实施例)
图44代表应用本发明第二实施例的验证密钥分配系统201的示范性配置,把相应的标号给予与验证密钥分配系统1的那些部分相对应的部分。
在这个示范性的配置中,取代图4的通用帐户管理者终端15,验证中心终端211还与网络14相连接。
图45代表验证中心终端211的示范性配置。
在图45中,CPU 211到可移除记录媒体231的每一个具有与图15的用户终端21的CPU 31到可移除记录媒体41的各个的配置类似的配置,因此,省略这些描述。
也就是说,在第二实施例中,如图2所示,认为参与者是密钥分配者KA、验证中心CA、用户User和服务提供者SP,并且,在如下的例子中,用户User、密钥分配者KA和服务提供者SP生成的数字签名通过公开密钥验证基础设施来核实。
假设认为密钥分配者终端12(密钥分配者KA)和服务提供者终端13(服务提供者SP)两者都事先知道它们的证书的失效状态(定期收集相关CRL),因此,认为只要求对IC卡(用户User)核实失效状态。
图46到50代表密钥分配者终端12保存的数据的例子。
也就是说,在本例中,例如,在密钥分配者终端12的存储器(图18的存储部分88等)中,存储着如图46所示的密钥分配表、如图47所示的服务提供者密钥表、如图48所示的密钥保存设备密钥表、如图49所示的密钥分配者PKI信息和如图50所示的CA公开密钥信息。
在本例中,例如,把图46的密钥分配表、图47的服务提供者密钥表和图48的密钥保存设备密钥表的每一个当作通过相应Key-ID、SP-ID或HW-ID可检索的数据库来实现。
在图46的密钥分配表中,每个记录对应于进行分配的一种验证技术。
Key-ID代表所分配的验证技术的识别号,并且被指定成唯一的。
Acc-ID代表当分配验证技术时进行支付的用户终端21(用户User)在公开密钥验证基础设施下的识别号。
HW-ID代表对其分配验证技术的密钥保存设备22的识别号。
证明密钥代表验证技术的证明密钥(用于公开密钥密码系统的私有密钥)。
密钥分配申请书和密钥分配报告的每一个代表从对其申请与这个记录相对应的验证技术的分配的服务提供者终端13(服务提供者SP)发出的密钥分配申请书和由密钥分配者终端12(密钥分配者KA)发出以便与密钥分配申请书相对应的密钥分配报告。
密钥分配申请书的例子显示在图51中,和密钥分配报告的例子显示在图52中。
在图51的密钥分配申请书中,申请书ID代表发出这个密钥分配申请书的服务提供者终端13(服务提供者SP)为了使其成为唯一的而加入的密钥分配申请书的识别号。
截止日期代表利用这个密钥分配申请书申请其分配的验证技术所需的截止日期。
SP-ID代表服务提供者终端13(服务提供者SP)的识别号,并且当服务提供者与密钥分配者终端12(密钥分配者KA)订立合同时得到服务提供者终端13(服务提供者SP)同意。
服务内容代表要提供给通过这种验证技术被验证的用户User(用户终端21)的服务(由用户User选择的服务)的内容。
SP数字签名代表服务提供者终端13为整个密钥分配申请书生成的数字签名,以便防止密钥分配申请书被窜改和证明密钥分配申请书是由服务提供者终端13(服务提供者SP)生成的。
在图52的密钥分配报告中,Key-ID代表验证技术的识别号。
申请书ID和SP-ID的每一个代表用来请求分配验证技术的密钥分配申请书的识别号和服务提供者终端12(服务提供者SP)的识别号的各个。
SP-Acc-ID代表在公开密钥验证基础设施下服务提供者终端13(服务提供者SP)的识别号。
截止日期代表所分配验证技术的截止日期。
核实密钥代表所分配验证技术的核实密钥(用于公开密钥密码系统的公开密钥)。
KA数字签名代表由密钥分配者终端12加入整个密钥分配报告中的数字签名,以便防止密钥分配报告被窜改和证明密钥分配报告是由密钥分配者终端12(密钥分配者KA)生成的。
在图47的服务提供者密钥表中,每个记录代表与密钥分配者终端12(密钥分配者KA)订立合同的服务提供者终端13(服务提供者SP)。
SP-ID代表订立合同的服务提供者终端13(服务提供者SP)的识别号,并且被指定成固有的。
SP-address代表与服务提供者终端13联系的地址(URL等)。认为这是当出现验证技术失效时或者当进行询问时进行联系的地方。
SP-Acc-ID代表在公开密钥验证基础设施下服务提供者终端13(服务提供者SP)的识别号。
由于认为图48的密钥保存设备密钥表具有与图7的密钥保存设备密钥表相同的配置,因此省略对它的描述。
图49的密钥分配者PKI信息代表供密钥分配者终端12使用的信息,以便生成在公开密钥验证基础设施下可核实的数字签名,并且密钥分配者PKI信息由证书和私有密钥构成。证书将在以后,与对应于验证中心终端211(验证中心CA)的证书一起,参照图66加以描述。
图50的CA公开密钥信息代表公开密钥验证基础设施的验证中心CA(验证中心终端211)的公开密钥,并且用在对验证中心终端211(验证中心CA)发放的证书进行核实的时候。
图53到58代表服务提供者终端13保存的数据的例子。
也就是说,在本例中,例如,在服务提供者终端13的存储器(图19的存储部分108等)中,存储着如图53所示的验证信息表、如图54所示的服务提供者固有信息、如图55所示的失效密钥表、如图56所示的服务提供者PKI信息、如图57所示的密钥共享参数和如图58所示的CA公开密钥信息。
在本例中,例如,把图53的验证信息表和图55的失效密钥表的每一个当作通过Key-ID可检索的数据库来实现。
在图53的验证信息表中,每个记录对应于一种分配的验证技术。
Key-ID代表验证技术的识别号。
密钥分配申请书代表当申请分配验证技术时生成的图51的密钥分配申请书。
密钥分配报告代表当进行申请的密钥分配时,从密钥分配者终端12(密钥分配者KA)发放的图52的密钥分配报告。
在图54的服务提供者固有信息中,SP-ID代表在服务提供者终端13(服务提供者SP)与密钥分配者终端12(密钥分配者KA)订立密钥分配合同的时候指定的识别号。
认为图55的失效密钥表是其中登记密钥分配者终端12(密钥分配者KA)请求对其终止密钥使用的验证技术的Key-ID以及那个验证技术的原始截止日期的表格。
图56的服务提供者PKI信息代表使服务提供者终端13(服务提供者SP)生成通过公开密钥验证基础设施可核实的数字签名的信息,它由证书和私有密钥构成。
在图57的密钥共享参数中,p和g的每一个代表Diffie-Hellman型密钥共享的参数。更具体地说,认为参数p是大素数。此时,其中参数p是模数的剩余类中除了0之外的元素形成乘法群(multiplicative group),而认为其素数之一(其阶是p-1的元素)是参数g。
图58的CA公开密钥信息代表公开密钥验证基础设施的验证中心CA(验证中心终端211)的公开密钥,并且用在对验证中心终端211发放的证书进行核实的时候。
图59到63代表密钥保存设备22或IC卡23(用户User)保存的数据的例子。
也就是说,在本例中,例如,在密钥保存设备22的数据存储部分53或密钥存储部分54(图16)中,或在IC卡的存储部分71中,存储着如图59所示的证明密钥表、如图60所示的验证信息表、如图61所示的密钥保存设备固有信息、如图62所示所示的用户PKI信息和如图63所示的CA公开密钥信息。
在本例中,例如,把图59的证明密钥表和图60的验证信息表当作通过Key-ID可检索的数据库来实现。
在图59的证明密钥表和图60的验证信息表的每个中的记录对应于密钥分配者终端12(密钥分配者KA)用来分配密钥保存设备(用户User)的验证技术。
图59和60的每一个的Key-ID代表验证技术的识别号。
图59的证明密钥表的证明密钥代表验证技术的证明密钥,并且被认为是公开密钥密码技术的私有密钥。
在图60的验证信息表中,密钥分配申请书代表当申请分配密钥技术时密钥保存设备22(用户User)从服务提供者终端13(服务提供者SP)接收并将其提交给密钥分配者终端12(密钥分配者KA)的图51的密钥分配申请书。
密钥分配报告代表当进行密钥保存设备22(用户User)申请的密钥分配时,从密钥分配者终端12(密钥分配者KA)发放的图52的密钥分配报告。
由于认为图61的密钥保存设备固有信息与图13的密钥保存设备固有信息具有相同的配置,省略对其描述。
图62的用户PKI信息代表公开密钥验证基础设施利用IC卡23要验证的用户User所需的信息,它由证书和私有密钥构成。
图63的CA公开密钥信息代表公开密钥验证基础设施的验证中心CA(验证中心终端211)的公开密钥,并且用在进行验证中心终端211(验证中心CA)发放的证书的核实的时候。
具体地说,图16的密钥存储部分54保存图59的证明密钥表和图61的密钥保存设备固有信息。数据存储部分53保存图60的验证信息表和图63的CA公开密钥信息。数据管理部分55根据从密钥分配者终端12(密钥分配者KA)发送的信息和图60的验证信息表中有关密钥分配报告的截止日期,加入或删除保存在密钥存储部分54和数据存储部分53上的数据的内容。
图62的用户PKI信息被保存在要与密钥保存设备22相连接的IC卡23(存储部分71(图17))上。在本例中,如果将IC卡23与其验证处理部分58(图16)相连接,对于利用图62的用户PKI信息的加密和用于解密的计算和证书的提供,密钥保存设备22可以应用于IC卡23。
图64和65代表验证中心终端211保存的数据的例子。
也就是说,在本例中,例如,在验证中心终端211的存储器(图45的存储部分228等)中,至少存在着发放新证书的如图65所示的CA密钥信息和管理发放的证书的如图64所示的证书表。
图65的CA密钥表由CA私有密钥和CA公开密钥构成。
CA公开密钥代表向验证密钥分配系统201的参与者公开和由该参与者拥有的公开密钥,该参与者如服务提供者终端13(服务提供者SP)、密钥分配者终端12(密钥分配者KA)或密钥保存设备11(用户User)。
在本例中,例如,把图64的证书表当作通过Acc-ID和证书ID可检索的数据库来实现。
在图64的证书表中,每个记录对应于验证中心终端211(验证中心CA)已经发放的有效证书。
Acc-ID代表公开密钥验证基础设施中的实体(在本例中,密钥保存设备22(用户User)、服务提供者终端13(服务提供者SP)和密钥分配者终端12(密钥分配者KA)的每一个)的识别号,并且被指定成固有的。
证书代表有关证书的数据的内容,和证书ID代表证书的识别号。
图66代表验证中心终端211(验证中心CA)发放的证书的例子。
在图66的证书中,Acc-ID代表用户(在这种情况下,包括除了IC卡23(用户User)之外的服务提供者终端13(服务提供者SP)和密钥分配者终端12(密钥分配者KA))在公开密钥验证基础设施下的识别号。
截止日期代表证书的截止日期。
证书ID代表证书的识别号。
公开密钥代表与具有Acc-ID的用户(即,具有Acc-ID的用户拥有保存与公开密钥Kpub0相对应的私有密钥的IC卡)有关的公开密钥。
辅助信息代表与具有Acc-ID的用户有关的其它信息。
CA签名代表验证中心终端211(验证中心CA)为证书的整个数据生成的数字签名。
接着,描述应用本发明第二实施例的验证密钥分配系统201的操作。
验证密钥分配系统201的操作的概况基本上与应用本发明第一实施例的验证密钥分配系统1的操作的概况类似。
因此,下面也参照图23的流程图描述验证密钥分配系统201的操作。
首先,在步骤S1中执行“服务选择/密钥分配进程”。
第二实施例中“服务选择/密钥分配进程”的流程被认为基本上与第一实施例的流程类似。也就是说,第二实施例中的“服务选择/密钥分配进程”是按照上述图27的箭头图执行的。
因此,下面参照图27的箭头图,主要描述与第一实施例的步骤不同的那些步骤,同时,这里适当地省略在第一实施例中描述过的步骤的描述。
如图27所示,首先,用户终端21在步骤S11中,选择服务(所选服务),并且将它发送到服务提供者终端13。
服务提供者终端13在步骤S41中,接收有关的通知,和在步骤S42中,生成发送到密钥保存设备22的图51的密钥分配申请书。
密钥保存设备22在步骤S12中接收和临时保存它,同时,在步骤S13中将它发送到密钥分配者终端12。
当接收到它时,密钥分配者终端12在步骤S21中,核实密钥分配申请书中服务提供者终端13的数字签名。具体地说,还要与图51的密钥分配申请书一起发送服务提供者终端13(服务提供者SP)的证书。
由于第二实施例中的步骤S22(“与密钥保存设备的相互验证+密钥共享进程”)和步骤S14(“与密钥分配者的相互验证+密钥共享进程”)与第一实施例中的那些步骤类似,省略对它们的描述。
相反,第二实施例中的步骤S23(“密钥保存设备用户验证进程”)和步骤S15(“用户验证响应进程”)与如图27所示的步骤,即第一实施例的那些步骤不同。
第二实施例中的步骤S23(“密钥保存设备用户验证进程”)和步骤S15(“用户验证响应进程”)的细节显示在图67中。
因此,下面参照图67,描述第二实施例中的步骤S23(“密钥保存设备用户验证进程”)和步骤S15(“用户验证响应进程”)的细节。
如图67所示,首先,密钥保存设备22(用户设备11)在步骤S15-11中,向验证中心终端211发送包括图66的证书的识别号CID(证书ID)的数据OCSP_REQ。
具体地说,密钥保存设备22(用户设备11)按照OCSP协议(RFC2560)询问验证中心终端211有关从与密钥保存设备22连接的IC卡23获得的用户证书的失效状态。
当接收到数据OCSP_REQ时,验证中心终端211在步骤S191中,检查与识别号CID相对应的证书的有效性(检验具有识别号CID的证书包括在图64的证书表中),并且把检查结果OCSP_REP发送到密钥保存设备22。
具体地说,验证中心终端211通过识别号CID和证书状态status(VALID/INVALID/UNKNOWN)分类接收的数据。
注意,证书状态status(VALID/INVALID/UNKNOWN)被认为是:当它不是验证中心终端211发放的证书时返回UNKNOWN的函数,当在图64的证书表中存在具有匹配证书识别号的记录时返回VALID的函数,而当在图64的证书表中不存在具有匹配证书识别号的记录时返回INVALID的函数。
验证中心终端211在步骤S192中,生成作为检查结果OCSP_REP发送到密钥保存设备22的数据CID‖status‖time‖Sig(CID‖status‖time)。
注意,把分类识别的人员号码CID和证书状态status和检查时间time链接在一起的数据被认为是CID‖status‖time,而放置在其上的验证中心CA(验证中心终端211)的数字签名被认为是Sig(CID‖status‖time)。
当在步骤S15-12中接收到检查结果OCSP_REP时,密钥保存设备22在步骤S15-13中,向密钥分配者终端12发送检查结果OCSP_REP和从与之相连接的IC卡23获得的用户证书CERTb。
当接收到它们时,密钥分配者终端12在步骤S23-11中,从用户的证书CERTb中提取公开密钥,并且检验检查结果OCSP_REP。也就是说,密钥分配者终端12核实检查结果OCSP_REP和CERTb上的数字签名,以检验用户User(IC卡23)的证书有效。
注意,这里描述密钥保存设备22利用OCSP协议获取用户证书的失效状态的例子。但是,例子不限于这一种。例如,可以设计成用户User(密钥保存设备)只把用户证书发送到密钥分配者终端12,而密钥分配者终端12利用相同的协议获取证书的失效状态。
并且,密钥分配者终端12在步骤S23-12中生成发送到密钥保存设备22的随机数Ra。
当在步骤S15-14中接收到随机数Ra时,密钥保存设备22在步骤S15-15中,使IC卡23利用用户User的私有密钥计算随机数Ra的数字签名Sig(Ra)。并且,密钥保存设备22给密钥分配者终端12发送将随机数Ra与数字签名Sig(Ra)相链接的数据Ra‖Sig(Ra)。
当接收到数据Ra‖Sig(Ra)时,密钥分配者终端12在步骤S23-13中,通过包括在其有效性已经得到核实的证书中的公开密钥,从中提取数字签名Sig(Ra),供核实之用。如果其核实结果是正确的,密钥分配者终端12成功地识别出用户User(IC卡23)的Acc-ID。
返回到图27,密钥分配者终端12在步骤S24中,决定要分配给密钥保存设备的验证技术的识别号KID,并且以适当的方式从随机数重新生成公开密钥密码系统的私有密钥和公开密钥对(Kpr,Kpub)。将这对密钥(Kpr,Kpub)用作要重新分配的验证技术的证明密钥和核实密钥。并且,密钥分配者终端12把识别号KID和证明密钥(新密钥)Kpr发送到密钥保存设备22。
具体地说,密钥分配者终端12利用上述与密钥保存设备22共享的临时密钥Kses,把识别号KID和证明密钥(新密钥)Kpr加密成加密数据E(Kses,KID‖Kpr),并且将其发送到密钥保存设备22。
密钥保存设备22在步骤S16中,接收加密数据E(Kses,KID‖Kpr),并且利用临时密钥Kses解密识别号KID和证明密钥(新密钥)Kpr。并且,密钥保存设备22把新记录加入自身保存的图59的证明密钥表。
并且,密钥分配者终端12在步骤S25中,生成发送到密钥保存设备22的图52的密钥分配报告。
同时,密钥分配者终端12将由对其进行分配的验证技术的固有识别号KID、证明密钥Kpr、所分配用户的识别号AID、所分配密钥保存设备的识别号HWID、密钥分配申请书App和密钥分配报告Rep构成的记录加入图46的密钥分配表中。
并且,密钥分配者终端12在步骤S26(图25)中,向具有识别号AID(拥有IC卡23)的用户User开出帐单。
当在步骤S17中接收到图52的密钥分配报告时,密钥保存设备22在步骤S18中,将它发送到服务提供者终端13。
同时,密钥保存设备22将由所分配验证技术的识别号、密钥分配申请书和已经从服务提供者接收的密钥分配报告构成的记录加入图60的验证信息表中。
服务提供者终端13在步骤S43中接收密钥分配报告。并且,服务提供者终端13核实包括在密钥分配报告中的密钥分配者签名。如果验证成功,服务提供者终端13把由验证技术的识别号、已经发送的密钥分配申请书和已经接收的密钥分配报告构成的记录加入图53的验证信息表中。
返回到图23,在执行了步骤S1(“服务选择/密钥分配进程”)之后,在步骤S2中执行“密钥使用/服务提供进程”。
第二实施例中的“密钥使用/服务提供进程”的细节显示在图68和69的流程图中。因此,下面参照图68和69的流程图,描述第二实施例中的“密钥使用/服务提供进程”的细节。
图68代表用户设备11(图44)执行的“密钥使用/服务提供进程”。图69代表服务提供者终端13(图44)执行的“密钥使用/服务提供进程”。
首先参照图68,描述用户设备11执行的“密钥使用/服务提供进程”。
密钥保存设备22(具体地说,CPU 51(图16))在步骤S201中选择服务。
例如,在本例中,密钥保存设备22在用户终端21的显示器(输出部分37(图15))上显示例如来自它自身保存的图60的服务信息表的服务内容,使用户User可以选择与用户希望使用的服务相对应的记录,从而它选择服务。
密钥保存设备22在步骤S202中,向服务提供者终端13发送所选记录的密钥分配申请书和密钥分配报告(下文写成密钥分配申请书+密钥分配报告)。注意,在本例中,认为发送地址包括在例如标题文档中的服务内容中。
正如后面所述的那样,服务提供者终端13接收密钥分配申请书+密钥分配报告。并且,服务提供者终端13检查密钥分配申请书+密钥分配报告。
这种检查涉及到就图51的格式而言有关密钥分配申请书是否正确的确定、就图52的格式而言有关密钥分配报告是否正确的确定、数字签字的核实、有关包括在密钥分配申请书中的申请书ID和SP-ID与包括在密钥分配报告中的那些是否匹配的确定以及有关写入密钥分配报告中的Key-ID是否包括在服务提供者终端13保存的图55的失效密钥表中的确定。当所有这些项的检查都成功时,服务提供者终端13从密钥分配申请书中获取要提供的服务和验证方法(核实密钥)Kpub。下文把这样的一系列处理称为申请书报告检查+核实密钥提取。
当申请书报告检查+核实密钥提取取得成功时,服务提供者终端13执行“按目的验证核实进程”(图69的步骤S221到S223)。
此时,密钥保存设备22在步骤S203中执行与按目的验证核实进程相对应的“按目的验证响应进程”。
也就是说,在密钥保存设备22(用户User)和服务提供者终端13(服务提供者SP)之间通过分配的验证技术进行验证。
第二实施例中的“按目的验证响应进程”的细节显示在图70和71中。
因此,参照图70和71,描述第二实施例中的“按目的验证响应进程”的细节。
图70显示了在密钥保存设备22和服务提供者终端13拥有相应核实密钥Kpub和证明密钥Kpr的情况下进行公开密钥验证的进程(显示“按目的验证核实进程”和“按目的验证响应进程”之间的对应)。
如图70所示,服务提供者终端13在步骤S223-1中,生成随机数Ra,并且向密钥保存设备22发送将随机数Ra与Key-ID(下文写为KID)链接的链接数据KID‖Ra。
当接收到数据KID‖Ra时,密钥保存设备22在步骤S203-1中,提取KID和随机数Ra的每一个,并且选择与KID相对应的证明密钥(从图59的证明密钥表中获得的证明密钥)Kpr。并且,密钥保存设备22通过证明密钥Kpr生成随机数Ra的数字签名Sig(Ra)=D(Kpr,h(Ra))。
密钥保存设备22在步骤S203-2中,向服务提供者终端13发送将数字签名Sig(Ra)与KID链接的链接数据KID‖Sig(Ra)。
当接收到链接数据时,服务提供者终端13在步骤S223-2中,提取KID和数字签名Sig(Ra)的每一个,并且核实数字签名Sig(Ra)满足E(Kpub,Sig(Ra))=h(Ra),即,检验可以通过核实密钥Kpub解密数字签名Sig(Ra)。当核实成功时,这意味着服务提供者终端通过分配的验证技术成功地进行了验证。
相反,图71显示了在共享密钥的情况下,“按目的验证核实进程”和“按目的验证响应进程”之间的对应。
如图71所示,首先,在步骤S223-1中,服务提供者终端13生成随机数Ra和ra,并且从随机数ra计算用于Diffie-Hellman密钥共享的计算值ya=g^ramodp(g的ra次方的余数,其中,p是模数)。
并且,服务提供者终端13向密钥保存设备22发送将这些与Key-ID链接的数据KID‖Ra‖g‖p‖ya。
当接收到数据KID‖Ra‖g‖p‖ya时,密钥保存设备22在步骤S203-11中生成随机数rb。
并且,在步骤S203-12中,密钥保存设备22计算yb=g^rb mod p(g的rb次方的余数,其中,p是模数)。
进一步,密钥保存设备22选择与接收的KID相对应的证明密钥Kpr,利用证明密钥Kpr对接收的Ra计算数字签名SIG(Ra)=D(Kpr,h(Ra)),并且向服务提供者终端13发送将数字签名SIG(Ra)、KID和计算结果yb链接在一起的链接数据KID‖SIG(Ra)‖yb。
在步骤S223-2中,服务提供者终端13利用核实密钥Kpub核实接收的数字签名SIG(Ra),即,核实E(Kpub,SIG(Ra))=h(Ra)成立。当这个验证成功时,这意味着服务提供者终端通过分配的验证技术成功地进行了验证。
在那种情况下,在步骤S203-13中,密钥保存设备22使公用密钥Kses=ya^Rb mod p(ya的Rb次方的余数,其中,p是模数)成为临时共享密钥,并且在步骤S223-3中,服务提供者终端13使公用密钥Kses=yb^Ra mod p(yb的Ra次方的余数,其中,p是模数)成为临时共享密钥。结果,密钥保存设备22和服务提供者终端13可以相互共享公用密钥Kses。
返回到图68,密钥保存设备22在步骤S204中执行上述(参照第一实施例所述)与图34或35相对应的“服务使用进程”。
接着参照图69,描述服务提供者终端13执行的“密钥使用/服务提供进程”。
如上所述,密钥保存设备22在图68的步骤S201中选择服务,并且在步骤S202中向服务提供者终端13发送密钥分配申请书+密钥分配报告。
此时,服务提供者终端13(具体地说,CPU 101(图19))在步骤S221中接收密钥分配申请书+密钥分配报告。
并且,服务提供者终端13在步骤S222中执行“申请书报告检查+核实密钥提取”进程,并且确定“申请书报告检查+核实密钥提取”是否成功。
如果在步骤S222中确定“申请书报告检查+核实密钥提取”失败(未成功),那么,使该进程结束。
另一方面,如果在步骤S222中确定“申请书报告检查+核实密钥提取”成功,那么,服务提供者终端13在步骤S223中执行“按目的验证核实进程”。
注意,参照图68的步骤S203(“按目的验证响应进程”)描述(在上面提及)了“按目的验证核实进程”的细节,这里省略对它的描述。
在步骤S224中,服务提供者终端13确定验证是否成功,如果确定验证失败(未成功),结束该进程。
另一方面,如果在步骤S224中确定验证成功,服务提供者终端13在步骤S225中执行上述(参照第一实施例所述)与图34或35相对应的“服务提供进程”。
返回到图23,在步骤S2(“密钥使用/服务提供进程”)结束之后,执行步骤S6(“密钥删除进程”)和步骤S7(“密钥使用终止进程”)。
应用第二实施例的步骤S6(“密钥删除进程”)与上述应用第一实施例的“密钥删除进程”的步骤类似。也就是说,按照上述图37到39的任何一个流程图执行“密钥删除进程”。
假设在第二实施例中,认为删除对象:在密钥分配者终端12的情况下,是图46的密钥分配表;在服务提供者终端13的情况下,是图53的验证信息表和图55的失效密钥表;和在密钥保存设备22的情况下,是图60的验证信息表和图59的证明密钥表。
应用第二实施例的步骤S7(“密钥使用终止进程”)与上述应用第一实施例的“密钥使用终止进程”的步骤类似。也就是说,按照上述图40和41的流程图执行“密钥使用终止进程”。
假设在第二实施例中,除了在图41的步骤S183中,从图53的验证信息表中删除具有密钥使用终止请求指定的Key-ID的记录的操作之外,必须执行把由Key-ID和截止日期构成的记录加入失效密钥表中的操作。
进一步,由密钥分配者终端12生成和在图40的步骤S161中发送到服务提供者终端13的密钥使用终止请求,被认为在第一实施例中具有图42的格式,但是,被认为在第二实施例中具有如图43所示的格式。
图43的密钥使用终止请求由要终止其使用的验证技术的识别号Key-ID、终止使用的日期/时间Date-time、要终止其使用的验证技术的原始截止日期以及有关的密钥分配者的数字签名(KA数字签名)构成。
注意,对于所分配的验证技术,密钥分配者终端12可以从图46的密钥分配表中有关“密钥分配申请书”的项目中获得利用验证技术被分配的服务提供者的识别号SP-ID。
这样,在应用第二实施例的验证密钥分配系统201中,认为要分配的验证技术是公开密钥验证系统,因此,可以利用不是服务提供者SP(服务提供者终端13)的实体执行“密钥使用/服务提供进程”在“服务使用进程(图68的步骤S204)”和“服务提供进程(图69的步骤S225)之前的步骤(图69的步骤S221到S224)。结果,例如,拥有密钥保存设备22的用户User本身可以利用自身拥有的密钥保存设备22核实所分配的验证技术为使用服务而进行的验证是否成功,从而获得用户可以感到安全的优点。
(第三实施例)
图72代表应用本发明第三实施例的验证密钥分配系统301的示范性配置,把相应的标号给予与图4的验证密钥分配系统1或图44的验证密钥分配系统201相对应的部分。
在这个示范性的配置中,相对于图1的验证密钥分配系统1,验证中心终端211还与网络14相连接。换句话说,相对于图44的验证密钥分配系统201,通用帐户管理者终端15还与网络14相连接。
在第三实施例中,如图3所示,认为参与者是密钥分配者KA、验证中心CA、用户User、服务提供者SP和通用帐户管理者KDC。服务提供者SP(服务提供者终端13)生成通过公开密钥验证基础设施可核实的数字签名,而用户User(密钥保存设备22)通过通用帐户系统验证。下面将描述在这种情况下重新分配验证技术的例子。
注意,密钥分配者终端12(密钥分配者KA)事先知道服务提供者终端13(服务提供者SP)的证书的失效状态(定期收集相关CRL)。
图73到77代表密钥分配者终端12保存的数据的例子。
也就是说,在本例中,例如,在密钥分配者终端12的存储器(图18的存储部分88等)中,存储着如图73所示的密钥分配表、如图74所示的服务提供者密钥表、如图75所示的密钥保存设备密钥表、如图76所示的密钥分配者帐户信息和如图77所示的CA公开密钥信息。
在本例中,例如,把图73的密钥分配表、图74的服务提供者密钥表和图75的密钥保存设备密钥表的每一个当作通过相应Key-ID、SP-ID或HW-ID可检索的数据库来实现。
在图73的密钥分配表中,每一行中的记录对应于进行分配的一种验证技术。
Key-ID代表所分配的验证技术的识别号,并且被指定成固有的。
Acc-ID代表当分配验证技术时进行支付的用户User(密钥保存设备22)在通用帐户下的识别号。
HW-ID代表对其分配验证技术的密钥保存设备22的识别号。
SP-ID代表利用验证技术被分配的服务提供者终端13(服务提供者SP)的识别号。
截止日期代表验证技术的截止日期。
核实密钥代表所分配验证技术的核实密钥(用于公开密钥密码系统的公开密钥)。
证明密钥代表所分配验证技术的证明密钥(用于公开密钥密码系统的私有密钥)。
标题文档代表当进行密钥分配时、服务提供者终端13(服务提供者SP)生成的数据,以便证明要由此提供的服务。
标题文档被配置成例如如图78所示那样。
在图78的标题文档中,Key-ID、核实密钥和截止日期的每个代表用在服务提供时的验证技术的识别号、核实密钥和截止日期的各个。服务内容代表提供给通过具有Key-ID的验证技术被验证的用户User(用户终端21)(拥有密钥保存设备22)的服务的内容。SP数字签名代表服务提供者终端13(服务提供者SP)为标题文档的整个数据生成的数字签名。
在图74的服务提供者密钥表中,每个记录对应于与密钥分配者终端12(密钥分配者KA)订立合同的服务提供者终端13(服务提供者SP)。
SP-ID代表与密钥分配者终端12(密钥分配者KA)订立合同的服务提供者终端13(服务提供者SP)的识别号,并且在订立合同的时候被指定成固有的。
SP-address代表服务提供者终端13的发送地址(URL等)。认为这是当出现验证技术失效时或者当要进行询问时进行联系的地方。
SP-Acc-ID代表在公开密钥验证基础设施下服务提供者终端13(服务提供者SP)的识别号。
固有密钥代表当订立合同时服务提供者终端13(服务提供者SP)和密钥分配者终端12(密钥分配者KA)之间商定的密钥,使用这个密钥是为了保证双方之间的通信的匿名性和完整性。
由于认为图75的密钥保存设备密钥表具有与图7的密钥保存设备密钥表相同的配置,因此省略对它的描述。
由于认为图76的密钥分配者帐户信息具有与图8的密钥分配者帐户信息相同的配置,因此省略对它的描述。
由于认为图77的CA公开密钥信息具有与图50的CA公开密钥信息相同的配置,因此省略对它的描述。
图79代表服务提供者终端13生成的密钥分配申请书的例子,而图80代表密钥分配者终端12生成的密钥分配报告的例子。以后将描述它们的细节。
图81到86代表服务提供者终端13保存的数据的例子。
也就是说,在本例中,例如,在服务提供者终端13的存储器(图19的存储部分108等)中,存储着如图81所示的验证信息表、如图82所示的服务提供者固有信息、如图83所示的失效密钥表、如图84所示的服务提供者PKI信息、如图85所示的密钥共享参数和如图86所示的CA公开密钥信息。
在本例中,例如,把图81的验证信息表和图83的失效密钥表当作通过Key-ID可检索的数据库来实现。
在图81的验证信息表中,每个记录对应于一种分配的验证技术。
Key-ID代表验证技术的识别号。标题文档代表发放给对其进行密钥分配的验证技术的标题文档。
由于认为图82的服务提供者固有信息具有与图10的服务提供者固有信息相同的配置,省略对它的描述。
由于认为图83的失效密钥表、图84的服务提供者PKI信息和图85的密钥共享参数的每个与图55的失效密钥表、图56的服务提供者PKI信息和图57的密钥共享参数的各个具有相同的配置,省略对它们的描述。
由于认为图86的CA公开密钥信息具有与图50的CA公开密钥信息相同的配置,省略对它的描述。
图87到91代表密钥保存设备22或IC卡23(用户User)保存的数据的例子。
也就是说,在本例中,例如,在密钥保存设备22的数据存储部分53或密钥存储部分54(图16)中,或在IC卡23的存储部分71中,存储着如图87所示的证明密钥表、如图88所示的验证信息表、如图89所示的密钥保存设备固有信息、如图90所示的用户帐户信息和如图91所示的CA公开密钥信息。
在本例中,例如,把图87的证明密钥表和图88的验证信息表当作通过Key-ID可检索的数据库来实现。
由于认为图87的证明密钥表、图89的密钥保存设备固有信息和图90的用户帐户信息的每个与图11的证明密钥表、图13的密钥保存设备固有信息和图14的用户帐户信息的各个具有相同的配置,省略对它的描述。
在图88的验证信息表中,每个记录对应于密钥分配者终端12(密钥分配者KA)分配的验证技术。
Key-ID代表验证技术的识别号。标题文档代表发放给对其进行密钥分配的验证技术的标题文档。
由于认为图91的CA公开密钥信息具有与图63的CA公开密钥信息相同的配置,省略对它的描述。
具体地说,图16的密钥存储部分54保存着图87的证明密钥表和图89的密钥保存设备固有信息。数据存储部分53保存着图88的验证信息表和图91的CA公开密钥信息。数据管理部分55按照从密钥分配者终端12(密钥分配者KA)发送的信息和保存在数据存储部分53上的图88的验证信息表中的标题文档的截止日期,加入或删除保存在密钥存储部分54和数据存储部分53上的数据的内容。
图90的用户帐户信息被保存在与密钥保存设备22连接的IC卡23(存储部分71(图17))上。在本例中,如果将IC卡23与其验证处理部分58(图16)相连接,密钥保存设备22可以请求IC卡23利用图90的用户帐户信息进行加密、用于解密的计算和证书的提供。
在图72的帐户管理者终端15的存储器(图20的存储部分128等)中,存储着与图4的帐户管理者终端15保存的信息类似的信息,即,图21的帐户管理表和图22的通用帐户管理密钥。
在图72的验证中心终端211的存储器(图45的存储部分228等)中,存储着与图44的验证中心终端211保存的信息类似的信息,即,图64的证书表和图65的CA公开密钥。
假设在第一实施例中,与图64的证书表的Acc-ID所代表的识别号相对应、在公开密钥验证基础设施中涉及的实体被认为是密钥保存设备22(用户User)、服务提供者终端13(服务提供者SP)和密钥分配者终端12(密钥分配者KA),但是在第三实施例中,被认为只涉及服务提供者终端13(服务提供者SP)。
接着,描述应用本发明第三实施例的验证密钥分配系统301的操作。
验证密钥分配系统301的操作的概况基本上与应用本发明第一实施例的验证密钥分配系统1(和应用本发明第二实施例的验证密钥分配系统201)的操作的概况类似。
因此,下面也参照图23的流程图描述验证密钥分配系统301的操作。
首先,在步骤S1中执行“服务选择/密钥分配进程”。
第三实施例中的“服务选择/密钥分配进程”被认为基本上与第一实施例的“服务选择/密钥分配进程”类似,但是与它稍有不同。
第三实施例中这样的“服务选择/密钥分配进程”的细节显示在图92到94的流程图和图95的箭头图中。图92到94的流程图代表在图95的箭头图所示的各个设备执行的“服务选择/密钥分配进程”。也就是说,图92代表用户设备11(图72)执行的“服务选择/密钥分配进程”;图93代表密钥分配者终端12(图72)执行的“服务选择/密钥分配进程”;而图94代表服务提供者终端13(图72)执行的“服务选择/密钥分配进程”。
因此,下面参照图95的箭头图,主要描述与第一实施例(或第二实施例)的步骤不同的那些步骤,同时,这里适当地省略在第一实施例中描述过的步骤的描述。
在图95中,首先,在步骤S301中,用户终端21(用户设备11)选择服务(所选服务),并且将它发送到服务提供者终端13。
在步骤S341中,服务提供者终端13接收所选服务,并且在步骤S342中,生成发送到密钥保存设备22的密钥分配申请书。
密钥保存设备22(用户设备11)在步骤S302中接收和临时保存它,同时,在步骤S303中将它发送到密钥分配者终端12。
当接收到密钥分配申请书时,在步骤S321中,密钥分配者终端12核实密钥分配申请书中服务提供者终端13(服务提供者SP)的数字签名。图79代表这样的密钥分配申请书的例子。
在图79的密钥分配申请书中,申请书ID代表为了对发出这个密钥分配申请书的服务提供者终端13(服务提供者SP)来说是固有的而要加入的密钥分配申请书的识别号。
截止日期代表利用这个密钥分配申请书申请分配的验证技术所需的截止日期。
SP-ID代表服务提供者终端13(服务提供者SP)的识别号,并且是在服务提供者与密钥分配者终端12(密钥分配者KA)订立合同的时候,服务提供者终端13(服务提供者SP)事先同意的。
消息验证码代表利用服务提供者固有密钥而为密钥分配申请书数据生成的代码,并且防止密钥分配申请书被窜改和证明密钥分配申请书是由服务提供者终端13(服务提供者SP)生成的。
返回到图95,当密钥分配者终端12接收到密钥分配申请书时,密钥保存设备22和密钥分配者终端12的每一个在步骤S322(在密钥分配者终端12这一方的“相互验证+密钥共享进程”)中或在步骤S304(在密钥保存设备22这一方的“相互验证+密钥共享进程”)中执行密钥保存设备22和密钥分配者终端12之间的相互验证+密钥共享进程。
注意,步骤S322和S304的每一个被认为基本上与上述图27的步骤S22和S14的各个类似,因此,省略对它们的描述。
在这个阶段,密钥保存设备22和密钥分配者终端12共享临时密钥Kses。
并且,密钥保存设备22和密钥分配者终端12的每一个执行步骤S323(在密钥分配者终端12这一方的“密钥保存设备用户验证进程”)或步骤305(在密钥保存设备22这一方的“用户验证响应进程”)。
注意,步骤S323和S305的每一个被认为基本上与上述图27的步骤S23和S15的各个类似,因此,省略对它们的描述。
在这个阶段,密钥分配者终端12可以识别拥有密钥保存设备22的用户User(用户终端21)。
密钥分配者终端12在步骤S324中生成发送到密钥保存设备22的新密钥。
具体地说,例如,密钥分配者终端12决定要分配给密钥保存设备22的验证技术的识别号KID,以便不会与前一个(几个)重复,并且,通过适当方法从随机数中重新生成公开密钥密码系统的私有密钥和公开密钥对(Kpr,Kpub)。也就是说,这个密钥对(Kpr,Kpub)被认为是新密钥,并且用作要重新分配的验证技术的证明密钥和核实密钥。
并且,密钥分配者终端12把识别号KID和证明密钥Kpr发送到密钥保存设备22。更具体地说,密钥分配者终端12利用与密钥保存设备22共享的临时密钥,把识别号KID和证明密钥Kpr发送到密钥保存设备22,作为加密数据E(Kses,KID‖Kpr)。
密钥保存设备22在步骤S306中接收新密钥。
具体地说,密钥保存设备22接收加密数据E(Kses,KID‖Kpr),并且解密识别号KID和证明密钥Kpr。并且,它将新记录加入密钥保存设备22保存的图87的证明密钥表中。
并且,在步骤S325中,密钥分配者终端12生成发送到密钥保存设备22的密钥分配报告。
同时,密钥分配者终端12把由所分配验证技术的识别号KID、证明密钥Kpr、核实密钥Kpub、其它分配用户的识别号Acc-ID、对其申请分配的服务提供者的SP-ID、截止日期和所分配密钥保存设备的识别号HWID构成的记录加入(让标题文档部分空着)图73的密钥分配表。
图80代表密钥分配报告的例子。
在图80的密钥分配报告中,Key-ID代表所分配验证技术的识别号。
申请书ID代表用来请求当前分配验证技术的密钥分配申请书的识别号。
截止日期代表所分配验证技术的截止日期。
核实密钥代表所分配验证技术的核实密钥。
消息验证码代表利用服务提供者终端13(服务提供者SP)的固有密钥(从图74的服务提供者密钥表中获得的固有密钥)为密钥分配报告数据生成的代码,并且防止密钥分配报告被窜改和证明密钥分配报告是由密钥分配者终端12(密钥分配者KA)生成的。
返回到图95,在步骤S307中,密钥保存设备22接收这个发送到服务提供者终端13的密钥分配报告。注意,可以将这个密钥分配报告直接从密钥分配者终端12发送到服务提供者终端13。
服务提供者终端13在步骤S343中接收密钥分配报告。并且,服务提供者终端13核实密钥分配报告中密钥分配者的消息验证码。
当验证成功时,在步骤S344中,服务提供者终端13生成发送到密钥保存设备22的图78的标题文档。
此时,密钥保存设备22把验证技术的识别号Key-ID和标题文档作为新记录加入图88的验证信息中。注意,服务提供者终端13可以把标题文档直接发送到密钥分配者终端12和用户终端21的每一个。
密钥分配者终端12接收标题文档,并且向用户User(用户终端21)开出帐单。
具体地说,在检验接收的标题文档上的数字签名是由服务提供者终端13(服务提供者SP)生成的之后,密钥分配者终端12把标题文档加入在上述步骤S325中生成的图73的密钥分配表(空着的标题文档部分)的记录中的标题文档部分。
并且,密钥分配者终端12向在上述步骤S323中被识别的用户User(用户终端21)开出帐单,以便与标题文档中的服务内容和密钥分配的佣金总额相对应。
返回到图23,在以上面的方式完成了步骤S1(“服务选择/密钥分配进程”)之后,在步骤S2中执行“密钥使用/服务提供进程”。
第三实施例中的“密钥使用/服务提供进程”的细节显示在图96和97的流程图中。因此,下面参照图96和97的流程图,描述第三实施例中的“密钥使用/服务提供进程”。
图96代表用户设备11(图72)执行的“密钥使用/服务提供进程”。图97代表服务提供者终端13(图72)执行的“密钥使用/服务提供进程”。
首先参照图96,描述用户设备11执行的“密钥使用/服务提供进程”。
密钥保存设备22(具体地说,CPU 51(图16))在步骤S361中选择服务。
例如,在本例中,密钥保存设备22在用户终端21的显示器(图15的输出部分37)上显示在包括在自身保存的图88的验证信息表中的标题文档中包括的服务内容,使用户User可以选择与用户希望使用的服务相对应的记录,从而它选择服务。
在步骤S362中,密钥保存设备22向服务提供者终端13发送与所选服务相对应的标题文档(图88的验证信息表中所选记录的标题文档)。注意,在本例中,认为发送地址包括在标题文档的服务内容中。
正如后面所述的那样,服务提供者终端13接收标题文档。并且,服务提供者终端13检查标题文档。
这种检查涉及到就图78的格式而言有关标题文档是否正确的确定、数字签名的核实、和有关标题文档的Key-ID是否没有包括在图83的失效密钥表中的确定。如果所有这些项目的检查都成功,服务提供者终端13就从标题文档中获取要提供的服务和验证方法(核实密钥)。下文把这样的一系列处理称为“标题文档检查+核实密钥提取”。
当“标题文档检查+核实密钥提取”成功时,服务提供者终端13执行“按目的验证核实进程”(图97的步骤S381到S383)。
此时,密钥保存设备22在步骤S363中执行与“按目的验证核实进程”相对应的“按目的验证响应进程”。
也就是说,在密钥保存设备22(用户User)和服务提供者终端13(服务提供者SP)之间通过分配的验证技术进行验证。
步骤363(“按目的验证响应进程”)和图97的步骤S383(“按目的验证核实进程”)的每一个被认为基本上与图68的步骤S203和图59的步骤S223的各个类似,因此,省略对它们的描述。注意,如上所述,根据所分配的验证技术,可有两种类型的验证方法:共享临时密钥Kses的方法和不共享这样的密钥的方法。
也就是说,在密钥保存设备22和服务提供者终端13(服务提供者SP)之间通过分配的验证技术进行验证。
密钥保存设备22在步骤S364中执行上述与图34或35相对应的“服务使用进程”。
接着参照图97,描述服务提供者终端13执行的“密钥使用/服务提供进程”。
如上所述,密钥保存设备22在图96的步骤S361中选择服务,并且在步骤S362中把标题文档发送到服务提供者终端13。
此时,服务提供者终端13(具体地说,CPU 101(图19))在步骤S381中接收标题文档。
并且,在步骤S382中,服务提供者终端13执行“标题文档检查+核实密钥提取”进程,以确定“标题文档检查+核实密钥提取”是否成功。
如果在步骤S382中确定“标题文档检查+核实密钥提取”失败(确定为未成功),那么,使该进程结束。
另一方面,如果在步骤S382中确定“标题文档检查+核实密钥提取”成功,那么,在步骤步骤S383中执行上述“按目的验证核实进程”。
在步骤S384中,服务提供者终端13确定验证是否成功,并且,如果确定验证失败(未成功),那么,结束该进程。
另一方面,如果在步骤S384中确定验证成功,那么,服务提供者终端13在步骤S385中执行上述与图34或35相对应的“服务提供进程”。
返回到图23,在以上面的方式结束步骤S2(“密钥使用/服务提供进程”)之后,如有必要,执行步骤S6(“密钥删除进程”)或步骤S7(“密钥使用终止进程”)。
应用第三实施例的步骤S6(“密钥删除进程”)与上述应用第一实施例的“密钥删除进程”类似。也就是说,按照上述图37到39的任何一个流程图执行“密钥删除进程”。
假设在第三实施例中,认为删除对象:在密钥分配者终端12的情况下,是图73的密钥分配表;在服务提供者终端13的情况下,是图81的验证信息表和图83的失效密钥表;而在密钥保存设备22的情况下,是图88的验证信息表和图87的证明密钥表。
应用第三实施例的步骤S7(“密钥使用终止进程”)与上述应用第一实施例的“密钥使用终止进程”类似。也就是说,按照上述图40和41的流程图执行“密钥使用终止进程”。
进一步,由密钥分配者终端12生成和在图40的步骤S161中发送到服务提供者终端13的密钥使用终止请求被认为以与第一实施例类似的方式具有图42的格式。
这样,在应用第三实施例的验证密钥分配系统301中,认为要分配的验证技术是公开密钥验证系统,因此,可以利用不是服务提供者SP(服务提供者终端13)的实体执行“密钥使用/服务提供进程”在“服务使用进程(图96的步骤S364)”和“服务提供进程(图97的步骤S385)之前的步骤(图97的步骤S381到S384)。结果,例如,拥有密钥保存设备22的用户User本身,可以利用自身拥有的密钥保存设备22,核实所分配的验证技术为使用服务而进行的验证是否成功,从而获得用户可以感到安全的优点。
并且,与第二实施例相比,验证只需要一个证书,从而获得可以减少数据量和缩短处理时间的优点。
(第四实施例)
应用本发明第四实施例的验证密钥分配系统的配置与图72的配置类似,因此,省略对它的描述。因此,图72也被引用作应用本发明第四实施例的验证密钥分配系统的配置。
在第四实施例中,密钥分配者AP(密钥分配者终端12)生成通过公开密钥验证基础设施可核实的数字签名,而用户User(密钥保存设备22)通过通用帐户系统被验证。下面将描述在这种情况下重新分配用于公开密钥验证的验证技术的例子。
注意,用户User(密钥保存设备22)和服务提供者SP(服务提供者终端13)事先知道密钥分配者终端12(密钥分配者KA)的证书的失效状态(定期收集相关CRL)。
图98到102代表密钥分配者终端12保存的数据的例子。
也就是说,在本例中,例如,在密钥分配者终端12的存储器(图18的存储部分88等)中,存储着如图98所示的密钥分配表、如图99所示的服务提供者密钥表、如图100所示的密钥保存设备密钥表、如图101所示的密钥分配者PKI信息和如图102所示的CA公开密钥信息。
在本例中,例如,把图98的密钥分配表、图99的服务提供者密钥表和图100的密钥保存设备密钥表的每一个当作通过相应Key-ID、SP-ID或HW-ID可检索的数据库来实现。
在图98的密钥分配表中,每一行中的记录对应于对其进行分配的一种验证技术。
Key-ID代表所分配的验证技术的识别号,并且被指定成固有的。
Acc-ID代表当分配验证技术时进行支付的用户User(用户终端21)在通用帐户下的识别号。
HW-ID代表对其分配验证技术的密钥保存设备22的识别号。
证明密钥代表所分配验证技术的证明密钥(用于公开密钥密码系统的私有密钥)。
标题文档代表当进行密钥分配时、服务提供者终端13(服务提供者SP)生成的数据,以便证明由此要提供的服务。
图103代表标题文档的例子。
在图103的标题文档中,Key-ID、核实密钥和截止日期的每一个代表用在服务提供时的验证技术的识别号、核实密钥和截止日期的各个。
服务内容代表提供给通过具有Key-ID的验证技术要验证的用户User(用户终端21)(拥有密钥保存设备22)的服务的内容。
SP-ID代表提供服务的服务提供者终端13(服务提供者SP)的识别号,并且在服务提供者与密钥分配者终端12(密钥分配者KA)订立合同的时候,被指定给服务提供者终端13(服务提供者SP),以便成为固有的。
KA数字签名代表密钥分配者为标题文档中的整个数据生成的数字签名。
由于图99的服务提供者密钥表、图100的密钥保存设备密钥表和图101的密钥分配者PKI信息的每一个被认为与图47的服务提供者密钥表、图48的密钥保存设备密钥表和图49的密钥分配者PKI信息的各个具有相同的配置,因此,省略对它们的描述。
由于图102的CA公开密钥信息被认为具有与图50的CA公开密钥信息相同的配置,因此,省略对它的描述。
图104代表服务提供者终端13生成的密钥分配申请书的示范性配置。以后再给出对它的描述。
图105到108代表服务提供者终端13保存的数据的例子。
也就是说,在本例中,例如,在服务提供者终端13的存储器(图19的存储部分108等)中,存储着如图105所示的服务提供者固有信息、如图106所示的失效密钥表、如图107所示的密钥共享参数和如图108所示的CA公开密钥信息。
在本例中,例如,把图106的失效密钥表当作通过Key-ID可检索的数据库来实现。
由于图105的服务提供者固有信息、图106的失效密钥表和图107的密钥共享参数的每一个被认为与图82的服务提供者固有信息、图83的失效密钥表和图85的密钥共享参数的各个具有相同的配置,因此,省略对它们的描述。
由于图108的CA公开密钥信息被认为具有与图50的CA公开密钥信息相同的配置,因此,省略对它的描述。
图109到113代表密钥保存设备22或IC卡23(用户User)保存的数据的例子。
也就是说,在本例中,例如,在密钥保存设备22的数据存储部分53或密钥存储部分54(图16)中,或在IC卡23的存储部分71中,存储着如图109所示的证明密钥表、如图110所示的验证信息表、如图111所示的密钥保存设备固有信息、如图112所示的用户帐户信息和如图113所示的CA公开密钥信息。
由于图109的证明密钥表、图110的验证信息表、图111的密钥保存设备固有信息和图112的用户帐户信息的每一个被认为与图87的证明密钥表、图88的验证信息表、图89的密钥保存设备固有信息和图90的用户帐户信息的各个具有相同的配置,因此,省略对它们的描述。
由于图113的CA公开密钥信息被认为具有与图50的CA公开密钥信息相同的配置,因此,省略对它的描述。
例如,图16的密钥存储部分54保存着图109的证明密钥表和图111的密钥保存设备固有信息。数据存储部分53保存着图110的验证信息表和图113的CA公开密钥信息。数据管理部分55按照从密钥分配者终端12(密钥分配者KA)发送的信息和保存在数据存储部分53上的图110的验证信息表中标题文档的截止日期,加入或删除保存在密钥存储部分54和数据存储部分53上的数据的内容。
图112的用户帐户信息被保存在与密钥保存设备22连接的IC卡23(存储部分71(图17))上。在本例中,如果将IC卡23与其验证处理部分58(图16)相连接,密钥保存设备22可以请求IC卡23利用图112的用户帐户信息进行加密、用于解密的计算和证书的提供。
在图72的帐户管理者终端15的存储器(图20的存储部分128等)中,存储着与图4的帐户管理者终端15保存的信息类似的信息,即,图21的帐户管理表和图22的帐户管理者固有密钥。
在图72的验证中心终端211的存储器(图45的存储部分228等)中,存储着与图44的验证中心终端211保存的信息类似的信息,即,图64的证书表和图65的CA公开密钥。
假设在第四实施例中,与图64的证书表中的Acc-ID所代表的识别号相对应,在公开密钥验证基础设施中涉及的实体被认为只有密钥分配者终端12(密钥分配者KA)。
接着,描述应用本发明第四实施例的验证密钥分配系统301的操作。
应用本发明第四实施例的验证密钥分配系统301的操作的概况基本上与应用本发明第三实施例的验证密钥分配系统(和应用本发明第一实施例的验证密钥分配系统1和应用本发明第二实施例的验证密钥分配系统201)的操作的概况类似。
因此,下面也参照图23的流程图描述应用本发明第四实施例的验证密钥分配系统301的操作。
首先,在步骤S1中执行“服务选择/密钥分配进程”。
第四实施例中的“服务选择/密钥分配进程”被认为基本上与第三实施例的类似,但是与它稍有不同。
第四实施例中这样的“服务选择/密钥分配进程”的细节显示在图114到116的流程图和图117的箭头图中。图114到116的流程图代表在图117的箭头图中所示的、各个设备执行的“服务选择/密钥分配进程”。也就是说,图114代表用户设备11(图72)执行的“服务选择/密钥分配进程”;图115代表密钥分配者终端12(图72)执行的“服务选择/密钥分配进程”;而图116代表服务提供者终端13(图72)执行的“服务选择/密钥分配进程”。
因此,下面参照图117的箭头图,主要描述与第三实施例(或第一或第二实施例)不同的那些步骤,同时,这里适当地省略在第三实施例中描述过的步骤的描述。
在图117中,首先,在步骤S401中,用户终端21(用户设备11)选择服务(所选服务),并且将它发送到服务提供者终端13。
服务提供者终端13在步骤S441中接收所选服务,并且在步骤S442中生成发送到密钥保存设备22的密钥分配申请书。
密钥保存设备22(用户设备11)在步骤S402中接收和临时保存它,同时,在步骤S403中将它发送到密钥分配者终端12。
当接收到密钥分配申请书时,在步骤S421中,密钥分配者终端12核实密钥分配申请书中服务提供者终端13(服务提供者SP)的消息验证码。
图104代表这样的密钥分配申请书的例子。
在图104的密钥分配申请书中,申请书ID代表为了对发出这个密钥分配申请书的服务提供者终端13(服务提供者SP)来说是固有的而加入的密钥分配申请书的识别号。
截止日期代表利用这个密钥分配申请书申请分配的验证技术所需的截止日期。
服务内容代表服务提供者终端(服务提供者SP)计划提供给对其进行密钥分配的用户User(用户终端21)的服务的内容。
SP-ID代表服务提供者终端13(服务提供者SP)的识别号,并且是在服务提供者与密钥分配者终端12(密钥分配者KA)订立合同的时候,服务提供者终端13(服务提供者SP)事先同意的。
消息验证码代表利用服务提供者固有密钥为密钥分配申请书数据生成的代码,并且防止密钥分配申请书被窜改和证明密钥分配申请书是由服务提供者终端13(服务提供者SP)生成的。
返回到图117,当密钥分配者终端12接收到密钥分配申请书时,密钥保存设备22和密钥分配者终端12的每一个在步骤S422(在密钥分配者终端12这一方的“相互验证+密钥共享进程”)中或在步骤S404(在密钥保存设备22这一方的“相互验证+密钥共享进程”)中执行密钥保存设备22和密钥分配者终端12之间的相互验证+密钥共享进程。
注意,步骤S422和S404的每一个被认为基本上与上述图27的步骤S22和S14的各个类似,因此,省略对它们的描述。
在这个阶段,密钥保存设备22和密钥分配者终端12共享临时密钥Kses。
并且,密钥保存设备22和密钥分配者终端12的每一个执行步骤S423(在密钥分配者终端12这一方的“密钥保存设备用户验证进程”)或步骤S405(在密钥保存设备22这一方的“用户验证响应进程”)。
注意,步骤S423和S405的每一个被认为基本上与上述图27的步骤S23和S15的各个类似,因此,省略对它们的描述。
在这个阶段,密钥分配者终端12可以识别拥有密钥保存设备22的用户User(用户终端21)。
密钥分配者终端12在步骤S424中生成发送到密钥保存设备22的新密钥。
具体地说,与上述第三实施例相似地,密钥分配者终端12决定要分配给密钥保存设备22的验证技术的识别号KID,以便不会与前一个(几个)重复,并且,通过适当方法从随机数中重新生成公开密钥密码系统的私有密钥和公开密钥对(Kpr,Kpub)。也就是说,这个密钥对(Kpr,Kpub)被认为是新密钥,并且用作要重新分配的验证技术的证明密钥和核实密钥。
并且,密钥分配者终端12把识别号KID和证明密钥Kpr发送到密钥保存设备22。更具体地说,密钥分配者终端12利用与密钥保存设备22共享的临时密钥,把识别号KID和证明密钥Kpr发送到密钥保存设备22,作为加密数据E(Kses,KID‖Kpr)。
密钥保存设备22在步骤S406中接收新密钥。
具体地说,密钥保存设备22接收加密数据E(Kses,KID‖Kpr),并且解密识别号KID和证明密钥Kpr。并且,它将新记录加入密钥保存设备22保存的图109的证明密钥表中。
并且,在步骤S425中,密钥分配者终端12生成发送到密钥保存设备22的标题文档。
也就是说,尽管密钥分配者终端12在第三实施例中(在图95的例子中)生成图80的密钥分配报告,但是在第四实施例中(在图117的例子中)它生成图103的标题文档。
此时,密钥分配者终端12把由对其进行分配的验证技术的识别号KID、所分配用户的识别号Acc-ID、所分配密钥保存设备的识别号HWID、标题文档Rcert和证明密钥Kpr构成的记录加入图98的密钥分配表中。并且,密钥分配者终端12向在步骤S423中识别的用户User(用户终端21)开出帐单,以便与标题文档中的服务内容和密钥分配的佣金总额相对应。
密钥保存设备22在步骤S407中接收标题文档。
并且,在对接收的标题文档检验了数字签名是由密钥分配者终端12(密钥分配者KA)生成的之后,密钥保存设备22把由包括在标题文档中的识别号KID和标题文档构成的新记录加入图110的验证信息表中。
返回到图23,在以上面的方式结束步骤S1(“服务选择/密钥分配进程”)之后,在步骤S2中执行“密钥使用/服务提供进程”。
第四实施例中的“密钥使用/服务提供进程”的流程基本上与第三实施例的流程相似。也就是说,第四实施例中的“密钥使用/服务提供进程”也按照图96和97的流程图来执行。
假设在第四实施例中,标题文档检查(对服务提供者终端13在图97的步骤S381中接收的标题文档进行的检查)被认为涉及到就图103的格式而言有关标题文档是否正确的确定、数字签名的核实和在图106的失效密钥表中是否包括发送的标题文档的Key-ID。
返回到图23,在步骤S2(“密钥使用/服务提供进程”)结束之后,执行步骤S6(“密钥删除进程”)或步骤S7(“密钥使用终止进程”)。
应用第四实施例的步骤S6(“密钥删除进程”)与上述应用第一实施例的“密钥删除进程”的步骤类似。也就是说,按照上述图37到39的任何一个流程图执行“密钥删除进程”。
假设在第四实施例中,认为删除对象:在密钥分配者终端12的情况下,是图98的密钥分配表;在服务提供者终端13的情况下,是图106的失效密钥表;而在密钥保存设备22的情况下,是图110的验证信息表和图109的证明密钥表。
应用第四实施例的步骤S7(“密钥使用终止进程”)与上述应用第二实施例的“密钥使用终止进程”的步骤类似。也就是说,按照上述图40和41的流程图执行“密钥使用终止进程”。
假设在第四实施例中的“密钥使用终止进程”中,服务提供者终端13不保存与第二实施例中的图53的验证信息表相对应的表格,因此,省略从验证信息表中删除记录的进程。
进一步,在相似的第一实施例中,由密钥分配者终端12生成和在图40的步骤S161中发送到服务提供者终端13的密钥使用终止请求,被认为具有图42的格式,而在第四实施例中,它可以是图42或43的任何一种格式。
这样,在应用第四实施例的验证密钥分配系统301中,认为要分配的验证技术是公开密钥验证系统,因此,可以利用不是服务提供者SP(服务提供者终端13)的实体执行“密钥使用/服务提供进程”在“服务使用进程(图96的步骤S364)”和“服务提供进程(图97的步骤S385)”之前的步骤(图97的步骤S381到S384)。结果,拥有密钥保存设备22的用户User本身可以利用自身拥有的密钥保存设备22核实所分配的验证技术为使用服务而进行的验证是否成功,从而获取用户可以感到安全的优点。
并且,与第三实施例相比,可以获得可以减少在密钥分配的时候所需的通信会话的次数的优点。在上文中,通过分成第一到第四实施例来描述应用本发明的验证密钥分配系统。这些验证密钥分配系统可以提供如下面项目(1)到(6)所示的优点。
(1)安排成在要求验证的双方之间分配专有验证技术,以便在双方之间直接进行验证,从而与依赖于诸如Kerberos系统之类的验证中心的方法相比,可以有效地进行验证。
(2)安排成在双方之间分配专有验证技术。因此,即使验证技术需要作废,也可以识别出要通知与之有关的对方,不像如公开密钥验证基础设施那样的只把一种验证技术用于无数个人之间的情况。因此,可以有效地使其失效。
(3)安排成当在双方之间分配专有验证技术时,固定其有目的使用。因此,验证方不必直接识别出被验证方,从而限制通过每种单独的验证技术要提供的服务。结果,当验证技术被滥用时,可以遏制损失,并且,还可以保护被验证方的匿名性。
(4)安排成只有当在双方之间分配专有验证技术时,为了开出帐单的目的才必须识别用户,并且,此后无论什么时候使用验证技术,都不再需要识别用户。这有助于使用户感到安全。
(5)当公开密钥验证用作要在双方之间分配的验证技术时,服务提供者不再必须管理要提供的服务的内容和验证装置。
(6)安排成当公开密钥验证用作要在双方之间分配的验证技术时,用户可以自己检验分配给密钥保存设备的验证技术。这使用户可以感到更加安全。
(第五实施例)
如上所述,第五实施例是与第二实施例相对应的实施例,并且,应用本发明第五实施例的验证密钥分配系统的配置与图44的配置类似,因此,省略对它的描述。因此,图44也被引用作应用本发明第五实施例的验证密钥分配系统的配置。
顺便提一下,在第二实施例中,用于新验证技术的密钥是由密钥分配者终端12生成的,但是在第五实施例中,用于新验证技术的密钥由用户设备11的密钥保存设备22生成。
因此,在第五实施例中,密钥保存设备还需要具有生成用于新验证技术的密钥的功能。
也就是说,在第五实施例中,也与第二实施例类似,用于公开密钥密码系统的私有密钥和公开密钥对(下文称为公开密钥对)(Kpr,Kpub)用作用于新验证技术的密钥。因此,密钥保存设备22需要进一步具有通过例如适当的方法(方法没有具体限制;例如,在IEEE-P1363下定义的标准方法,并且,可以应用那种方法)从随机数重新生成公开密钥对(Kpr,Kpub)的功能。
通过具有上述图16的配置的密钥保存设备22也容易地实现这样的功能。在这种情况下,计算处理部分56利用能够生成随机数的软件生成随机数,并从生成的随机数生成公开密钥对(Kpr,Kpub)存储在密钥存储部分54上。
这样的随机数也可以通过硬件生成。在这种情况下,密钥保存设备22被设计成具有例如上述如图118所示的配置。也就是说,在图118的密钥保存设备22中,给图16的密钥保存设备进一步配备作为硬件的随机数生成部分401,它可以生成生成新密钥所需的随机数。
注意,在第一到第四实施例中,这些描述是在密钥分配者终端12利用软件生成随机数(图18的CPU 81生成随机数)和根据那个随机数生成密钥的假设下给出的。但是,与图118的密钥保存设备22类似,当然也可以进一步把具有基本上与随机数生成部分401类似的功能和配置的硬件(未示出)提供给第一到第四实施例中的密钥分配者终端12,使那个硬件(相当于随机数生成部分401的硬件)生成随机数。
第五实施例中的其它设备,即用户终端21、IC卡23、密钥分配者终端12、服务提供者终端13和验证中心终端211的每一个与第二实施例的相应设备的各个具有基本上类似的功能和配置。因此,省略对其它设备的描述。
进一步,构成应用第五实施例的验证密钥分配系统的设备的每一个,拥有与第二实施例的相应设备的各个保存的数据基本上类似的数据,但是与它们稍有不同。
因此,下面将描述构成应用第五实施例的验证密钥分配系统的设备的每一个保存的数据。
也就是说,在第五实施例中,密钥分配者终端12也保存上述如图47所示的服务提供者密钥表、上述如图48所示的密钥保存设备密钥表、上述如图49所示的密钥分配者PKI信息和上述如图50所示的CA公开密钥信息。
假设在第五实施例中,证明密钥是由用户User拥有的密钥保存设备22生成的,因此,密钥分配者终端12拥有如图119所示的密钥分配表(与图46的密钥分配表相比,不包括证明密钥项的密钥分配表)。
在图119的密钥分配表中,与图46的密钥分配表类似,密钥分配申请书和密钥分配报告的每一个代表对其申请分配与一个记录(行)相对应的验证技术的服务提供者终端13(服务提供者SP)发出的密钥分配申请书和密钥分配者终端12(密钥分配者KA)为此发出的密钥分配报告的各个。
也就是说,在第五实施例中,也可以使用例如上述如图51所示的密钥分配申请书和上述如图52所示的密钥分配报告的每一个。
在第五实施例中,服务提供者终端13也拥有上述如图53所示的验证信息表、上述如图54所示的服务提供者固有信息、上述如图55所示的失效密钥表、上述如图56所示的服务提供者PKI信息、上述如图57所示的密钥共享参数和上述如图58所示的CA公开密钥信息。
在第五实施例中,密钥保存设备22或IC卡23(用户User)也拥有上述如图59所示的证明密钥表、上述如图60所示的验证信息表、上述如图61所示的密钥保存设备固有信息、上述如图62所示的用户PKI信息和上述如图63所示的CA公开密钥信息。
并且,在第五实施例中,如有必要,密钥保存设备22拥有如图120所示的密钥保存设备PKI信息。
图120的密钥保存设备PKI信息代表使密钥保存设备22生成在公开密钥验证基础设施中可核实的数字签名的信息,并且由证书和私有密钥构成。
也就是说,当密钥保存设备22在如后所述的图123的步骤S504中的“与密钥分配者的相互验证+密钥共享进程”中,利用SSL(安全套接层)和TLS(传输层)进行与密钥分配者终端12的相互验证时,使用图120的密钥保存设备PKI信息。
注意,以后将参照图128和129描述利用SSL和TLS的相互验证的细节。
进一步,在第五实施例中,密钥保存设备22自身生成密钥(证明密钥和要与之配对的核实密钥),因此拥有如图121所示的临时保存密钥表,以便临时保存生成的密钥。
详细地说,例如,密钥保存设备22生成图121的临时保存密钥表(把生成的密钥写入临时保存密钥表中的一个记录中),并且当按要求生成密钥时,即,当根据密钥分配者终端12对生成新验证技术的密钥(新密钥)的请求生成密钥时,保存(拥有)表格,其成分是生成的密钥(作为证明密钥Kpr和核实密钥Kpub的密钥对)。
并且,如果它事先保存数个密钥候选者,密钥保存设备22还拥有如图122所示的验证密钥表。也就是说,密钥保存设备22或与密钥保存设备22不同的另一个设备(未示出)事先生成数个密钥候选者(证明密钥(候选者)Kprn和核实密钥(候选者)Kpubn的公开密钥对(Kprn,Kpubn)(其中,n是任意整数值)),并且以索引(Idn)赋予生成的数个密钥候选者的每一个。并且,密钥保存设备22或与密钥保存设备22不同的另一个设备把赋予的数个索引(Idn)和与之相对应的数个密钥候选者(证明密钥(候选者)Kprn和核实密钥(候选者)Kpubn)分别写入验证密钥表的相应记录(行)中,从而它生成验证密钥表。也就是说,验证密钥表由索引、证明密钥(候选者)和核实密钥(候选者)构成。
换句话说,在图122的验证密钥表中,如上所述,可以保存密钥保存设备22本身生成的密钥候选者(公开密钥对(Kprn,Kpubn)),或者可以保存与密钥保存设备22不同的另一个设备生成的密钥候选者(公开密钥对(Kprn,Kpubn))。可替换地,可以混合地保存密钥保存设备22本身生成的密钥候选者(公开密钥对(Kprn,Kpubn))和与密钥保存设备22不同的另一个设备生成的密钥候选者(公开密钥对(Kprn,Kpubn))。
密钥保存设备22事先保存如此生成的图122的验证密钥表,并且根据密钥分配者终端12对生成新验证技术的密钥(新密钥)的请求,从存储在验证密钥表中的数个密钥候选者(公开密钥对(Kprn,Kpubn))中提取预定一个(公开密钥对(Kprk,Kpubk)(其中,k是通过n可表达的整数的一个预定值),作为新密钥,从而它生成新密钥。
并且,密钥保存设备22生成和保存(拥有)图121的临时保存密钥表,其成分是提取的新密钥(公开密钥对(Kprk,Kpubk))。
注意,当密钥保存设备22生成新密钥时,其许多处理是由密钥保存设备22内的计算处理部分56执行的。并且,图121的临时保存密钥表和图122的验证密钥表被保存在密钥保存设备22内的密钥存储部分54(图16或118)上。因此,如上所述,至少可以使计算处理部分56和密钥存储部分54成为防窜改的,从而不会从外界获取或变更其内部保存或处理过的数据(在当前情况下,新密钥、用于保存新密钥的图121的临时保存密钥表或图122的验证密钥表)。
在第五实施例中,验证中心终端211也拥有上述如图64所示的证书表和上述如图65所示的CA密钥信息。
并且,验证中心终端211(验证中心CA)发放如图66所示的证书。
接着,描述应用本发明第五实施例的验证密钥分配系统201(图44)的操作。
第五实施例中验证密钥分配系统201的操作的概况基本上与本发明第二实施例的概况类似。
因此,与第二实施例的描述类似,也参照图23的流程图描述应用本发明第五实施例的验证密钥分配系统201的操作。
首先,在步骤S1中执行“服务选择/密钥分配进程”。
第五实施例中的“服务选择/密钥分配进程”被认为基本上与第二实施例的类似,但是,与它稍有不同。
第五实施例中这样的“服务选择/密钥分配进程”的细节显示在图123到125的流程图和图126的箭头图中。图123到125的流程图代表如图126的箭头图所示的各个设备的“服务选择/密钥分配进程”。也就是说,图123代表用户设备11(图44)执行的“服务选择/密钥分配进程”;图124代表密钥分配者终端12(图44)执行的“服务选择/密钥分配进程”;而图125代表服务提供者终端13(图44)执行的“服务选择/密钥分配进程”。
因此,下面参照图126的箭头图,主要描述与第二实施例的步骤不同的那些步骤,同时,这里适当地省略在第二实施例中描述过的步骤的描述。
如图126所示,首先,在步骤S501中,用户终端21选择服务(所选服务),并且将它发送到服务提供者终端13。
服务提供者终端13在步骤S541中接收所选服务,并且在步骤S542中,生成发送到密钥保存设备22的图51的密钥分配申请书(具体地说,还与密钥分配申请书一起发送服务提供者终端13(服务提供者SP)的证书)。
密钥保存设备22在步骤S502中接收密钥分配申请书和临时保存它,同时,在步骤S503中将它发送到密钥分配者终端12。
当接收到密钥分配申请书时,密钥分配者终端12在步骤S521中核实密钥分配申请书中服务提供者终端13的数字签名。
密钥保存设备22和密钥分配者终端12的每一个执行步骤S522(“与密钥保存设备的相互验证+密钥共享进程”)或步骤S504(“与密钥分配者的相互验证+密钥共享进程”)。
详细地说,例如,如果密钥保存设备22不拥有图120的密钥保存设备PKI信息,那么,认为第五实施例中的步骤S522(“与密钥保存设备的相互验证+密钥共享进程”)和步骤S504(“与密钥分配者的相互验证+密钥共享进程”)与第二实施例的那些步骤类似。因此,省略对它们的描述。
另一方面,例如,当密钥保存设备22拥有图120的密钥保存设备PKI信息时,如上所述,也可能像步骤S522(“与密钥保存设备的相互验证+密钥共享进程”)和步骤S504(“与密钥分配者的相互验证+密钥共享进程”)那样利用SSL和TLS进行相互验证。
注意,以后将参照图128和129描述通过利用SSL和TLS的相互验证执行的步骤S522(“与密钥保存设备的相互验证+密钥共享进程”)和步骤S504(“与密钥分配者的相互验证+密钥共享进程”)。
此后,密钥保存设备22和密钥分配者终端12的每一个执行步骤S523(“密钥保存设备用户验证进程”)或步骤S505(“用户验证响应进程”)。
注意,步骤S523(“密钥保存设备用户验证进程”)和步骤S505(“用户验证响应进程”)被认为与上述第二实施例的那些步骤类似,因此,省略对它们的描述。
顺便提一下,如上所述,在第二实施例中,当执行“密钥保存设备用户验证进程”(与第五实施例的步骤S523(图126)相对应的步骤S23(图27))和“用户验证响应进程”(与第五实施例的步骤S505(图126)相对应的步骤S15)时,密钥分配者终端12在步骤S24(图27)中生成发送到用户设备11(密钥保存设备22)的新密钥,并且用户设备11(密钥保存设备22)在步骤S16中接收新密钥。
相反,在第五实施例中,如图126所示,当密钥分配者终端12这一方在步骤S524中和用户设备11(密钥保存设备22)这一方在步骤S506中执行“密钥保存设备用户验证进程(步骤S523)”和“用户验证响应进程(步骤S505)”时,密钥分配者终端12生成请求密钥保存设备22生成新密钥的请求信息,以发送到密钥保存设备22。当接收到请求信息时,密钥保存设备22自己生成和保存新密钥,并且把生成的新密钥的核实密钥发送到密钥分配者终端12。
注意,在密钥分配者终端12和密钥保存设备22执行的这种相互进程(密钥分配进程)当中,下文把在密钥分配者终端12这一方的进程(图126的例子中的步骤S524)称为“新密钥请求和接收进程”,而把在用户设备11(密钥保存设备22)这一方的进程(图126的例子中的步骤S506)称为“新密钥生成和发送进程”。
这些“新密钥请求和接收进程(步骤S524)”和“新密钥生成和发送进程(步骤S506)”的细节显示在图127的箭头图中。
因此,参照图127的箭头图,描述第五实施例中“新密钥请求和接收进程(步骤S524)”和“新密钥生成和发送进程(步骤S506)”的细节。
如图127所示,首先,密钥分配者终端12在步骤S524-1中生成密钥生成请求″GENERATE-KEY″。作为步骤S522(图126)中“与密钥保存设备的相互验证+密钥共享进程”的结果,密钥分配者终端12利用生成的密钥生成请求″GENERATE-KEY″和与用户设备11(密钥保存设备22)共享的临时密钥Kses生成消息验证码MAC(″GENERATE-KEY″)=E(Kses,h(″GENERATE-KEY″))。并且,密钥分配者终端12将密钥生成请求″GENERATE-KEY″与消息验证码MAC(″GENERATE-KEY″)=E(Kses,h(″GENERATE-KEY″))链接。也就是说,密钥分配者终端12生成链接数据″GENERATE-KEY″‖MAC(″GENERATE-KEY″),作为请求生成新密钥的请求信息。
当密钥分配者终端12在步骤S524-2中发送链接数据″GENERATE-KEY″‖MAC(″GENERATE-KEY″)时,用户设备11(密钥保存设备22)在步骤S506-1中接收它。
密钥保存设备22在步骤S506-2中核实消息验证码,以核实密钥生成请求″GENERATE-KEY″是否被篡改及其有效性。
当核实成功时,在步骤S506-3中,密钥保存设备22重新生成新密钥,即,作为公开密钥密码系统的私有密钥和公开密钥对的公开密钥对(Kpr,Kpub)。这个公开密钥对(Kpr,Kpub)用作要重新分配的验证技术的证明密钥和核实密钥。
具体地说,例如,当密钥保存设备22被配置成如图118所示那样时,随机数生成部分401生成随机数,而计算处理部分56按照通过例如IEEE-P1363规定的方法等,从随机数生成部分401生成的随机数中重新生成公开密钥对(Kpr,Kpub)。
并且,计算处理部分56生成存储在密钥存储部分54上的图121的临时保存密钥表,其成分是生成的公开密钥对(Kpr,Kpub)的两个密钥。
可替换地,例如,当密钥保存设备22被配置成如图118所示那样时,计算处理部分56在时间上早于步骤S506中的“新密钥生成和发送进程”,按照通过例如IEEE-P1363规定的方法等,从随机数生成部分401生成的数个随机数事先分别生成数个公开密钥对(Kprn,Kpubn)(其中,n是任意整数值),并且将作为索引的Idn赋予生成的数个公开密钥对(Kprn,Kpubn)的每一个。
并且,在图122的验证密钥表中的相应n个记录(行)中,计算处理部分56把Idn写入索引项中,把生成的数个公开密钥对(Kprn,Kpubn)的私有密钥Kprn写入证明密钥(候选者)项,并且把生成的数个公开密钥对(Kprn,Kpubn)的公开密钥Kpubn写入核实密钥(候选者)项,此后,它将验证密钥表存储在密钥存储部分54上。
注意,在这种情况下,包括在图122的验证密钥表中的所有密钥候选者(证明密钥(候选者)Kprn和核实密钥(候选者)Kpubn)都是由密钥保存设备22生成的,但是,如上所述,包括在图122的验证密钥表中的所有密钥候选者(证明密钥(候选者)Kprn和核实密钥(候选者)Kpubn)的至少一部分可以由与密钥保存设备22不同的另一个设备生成。
对于以这种方式事先保存在密钥存储部分54上的图122的验证密钥表,当在步骤S506-1中接收到从密钥分配者终端12发送的链接数据″GENERATE-KEY″‖ MAC(″GENERATE-KEY″)时,在步骤S506-2中,密钥保存设备22核实消息验证码,以核实密钥生成请求″GENERATE-KEY″是否被窜改和其有效性。
当核实成功时,在步骤S506中,计算处理部分56提取数个新密钥候选者,即,包括在存储在密钥存储部分54上的图122的验证密钥表中的相应记录(行)中的数个公开密钥对(Kprn,Kpubn)的预定一个(Kprk,Kpubk)(其中,k是通过n表示的整数值的预定一个)。
并且,计算处理部分56生成存储在密钥存储部分54上的图121的临时保存密钥表,其成分是提取的公开密钥对(Kprk,Kpubk)的两个密钥,计算处理部分56还删除图122的验证密钥表中的记录(行k),它与所选公开密钥对(Kprk,Kpubk)相对应。
当以这种方式把图121的临时保存密钥表存储在密钥存储部分54上时,密钥保存设备22在步骤S506-4中发送公开密钥,即核实密钥Kpub。然后,密钥分配者终端12在步骤S524-3中接收它。
具体地说,例如,作为步骤S504(图126)中“与密钥分配者的相互验证+密钥共享进程”的结果,密钥保存设备22利用在步骤S506-3中生成的公开密钥对(Kpr,Kpub)的核实密钥Kpub(保存在图121中的临时保存密钥表中)和与密钥保存终端12共享的临时密钥Kses,生成消息验证码MAC(Kpub)=E(Kses,h(Kpub))。并且,密钥保存设备22将核实密钥Kpub与消息验证码MAC(Kpub)链接。也就是说,密钥保存设备22生成链接数据Kpub‖MAC(Kpub)。
生成的链接数据Kpub‖MAC(Kpub)从用户设备11发送出去,并且由密钥分配者终端12接收。
然后,在步骤S524-4中,密钥分配者终端12核实链接数据Kpub‖MAC(Kpub)中的消息验证码MAC(Kpub)。
返回到图126,当核实成功时,在步骤S525中,密钥分配者终端12生成发送到密钥保存设备22的图52的密钥分配报告。
同时,密钥分配者终端12把由对其进行分配的验证技术的固有识别号KID、所分配用户的识别号AID、所分配密钥保存设备22的识别号HWID、密钥分配申请书App和密钥分配报告Rep构成的记录加入图119的密钥分配表中。
并且,在步骤S526中,密钥分配者终端12向具有识别号AID的用户User(拥有IC卡23)开出帐单。
当在步骤S507中接收到图52的密钥分配报告时,在步骤S507中,密钥保存设备22将由包括在密钥分配报告中的识别号KID和保存在图121的临时保存密钥表中的证明密钥Kpr构成的记录加入自身保存的图59的证明密钥表中。
进一步,密钥保存设备22把由所分配验证技术的识别号KID、密钥分配申请书App和已经从服务提供者接收的密钥分配报告Rep构成的记录加入图60的验证信息表中。
并且,在步骤S508中,密钥保存设备22把在步骤S507中接收的密钥分配报告发送到服务提供者终端13。
同时,密钥保存设备22删除保存在图121的临时保存密钥表中的证明密钥Kpr和核实密钥Kpub。
服务提供者终端13在步骤S543中接收密钥分配报告。并且,服务提供者终端13核实包括在密钥分配报告中的密钥分配者的签名。当核实成功时,服务提供者终端13把由验证技术的识别号KID、已经发送的密钥分配申请书App和接收的密钥分配报告Rep构成的记录加入图53的验证信息表中。
接着参照图128和129,描述利用利用SSL和TLS的相互验证执行的“与密钥保存设备的相互验证+密钥共享进程(步骤S522)”和“与密钥分配者的相互验证+密钥共享进程(步骤S504)”的细节。
SSL和TLS协议是能够避免因特网上诸如“窃听(eavesdropping)”、“窜改(tampering)”或“欺骗(spoofing)”之类的威胁的安全技术。
SSL协议是由NetScap通信公司开发的,现在广泛用作因特网上的密码通信协议。TLS协议是由IETF开发的,并且其标准化由IETF进行,RFC2246向公众开放。
SSL和TLS协议具有如下(a)到(d)所指的特征。
(a)服务器的验证和发送的证明通过数字证书实现;(b)客户机的验证和发送的证明通过数字证书实现;(c)数据的秘密性的保护通过加密实现;(d)数据的窜改的防止通过消息验证码(MAC)实现。
图128显示了在使用这样的SSL和TLS的情况下协议栈的例子。
如图128所示,在使用SSL和TLS的情况下的协议栈具有从底部开始构成的多层结构,各层为有关以太网(商标)等的层411、有关IP(因特网协议)等的层412、有关TCP(传输控制协议)和UDP(用户数据报协议)等的传输层413、有关SSL和TLS等的层414和有关HTTP(超文本传输协议)、FTP(文件传输协议)和TELNET(远程登录协议)等的应用层415。
这样,SSL和TLS协议正好位于有关TCP和UDP等的传输层413之上,和正好位于应用层415之下。也就是说,SSL和TLS协议使用TCP和UDP提供的功能(套接口)等,从而起把安全功能提供给从中获得的数据并且把结果传送给应用程序的作用。因此,SSL和TLS协议具有可以不依赖于应用程序而使用它们的特征。例如,万维网浏览器等具有作为它们的标准功能而包括的那种功能。
如图128所示,有关SSL和TLS的层414大体上划分成两个层:下层414-1和上层414-2。下层414-1一般称为记录协议,它是提供诸如防止数据的加密和窜改的消息摘要功能之类的功能的层。另一方面,上层414-2是包括四种协议的层,这四种协议是握手协议、报警协议、改变密码规范(ChangeCipher Spec)协议和应用数据协议。上层414-2配有防止欺骗的验证功能和为开始SSL/TLS会话而执行的协商功能。
协商功能是在通信之前执行一些预处理,如检验通信对方是可信方和检验加密算法可被双方使用的功能。
现在参照图129,描述利用例如这四种协议的握手协议执行的“与密钥保存设备的相互验证+密钥共享进程(步骤S522)”和“与密钥分配者的相互验证+密钥共享进程(步骤S504)”的细节。
也就是说,图129是说明利用普通SSL中的握手协议执行的“与密钥保存设备的相互验证+密钥共享进程(步骤S522)”和“与密钥分配者的相互验证+密钥共享进程(步骤S504)”的细节的箭头图。
首先,当用户设备11(密钥保存设备22)建立SSL连接时,密钥分配者终端12在步骤S522-1中,将呼叫请求消息发送到密钥保存设备22。
当在步骤S504-1中接收到呼叫请求消息时,密钥保存设备22在步骤S504-2中,把客户机呼叫消息发送到密钥分配者终端12。
注意,客户机呼叫消息是把包括SSL版本、支持加密算法、压缩算法和时间标记的信息通知密钥分配者终端的消息。
当在步骤S522-2中接收到客户机呼叫消息时,密钥分配者终端12在步骤S522-3中把服务器呼叫消息发送到密钥保存设备22。
密钥保存设备22在步骤S504-3中接收服务器呼叫消息。
注意,服务器呼叫消息是代表对客户机呼叫消息的响应的消息,它包括加密算法、压缩算法和密钥分配者终端12选择的会话ID。
随后,密钥分配者终端12在步骤S522-4中,向密钥保存设备22发送附加了图49的密钥分配者PKI信息中的证书CERTKA的服务器证书消息。
当在步骤S504-4中接收到证书CERTKA(服务器证书消息)时,密钥保存设备22在步骤S504-5中核实证书CERTKA,即,核实密钥分配者KA,以便取决于验证是否成功,检验它是否是密钥分配者KA。
注意,当密钥分配者终端12不保存证书等时,在步骤S522-5中从密钥分配者终端12发送诸如服务器密钥交换之类的消息,和在步骤S504-6中由密钥保存设备22接收它。
当密钥分配者终端12在步骤S522-6中,为了检验密钥保存设备22而发送请求证书的消息(这样的消息也被称为证书请求)时,密钥保存设备22在步骤S504-7中接收该消息。
当密钥分配者终端12在步骤S522-7中发送代表服务器的响应结束的服务器呼叫完成消息时,密钥保存设备22在步骤S504-8中接收该消息。
密钥保存设备22在步骤S504-9中,向密钥分配者终端12发送附加了包括在图120的密钥保存设备PKI信息中的证书CERTHW0的服务器证书消息。
密钥分配者终端12在步骤S522-8中接收证书CERTHW0(服务器证书消息)。
当密钥保存设备22在步骤S504-10中发送从中得出进行SSL密码通信的临时密钥Kssl作为客户机密钥交换消息的信息时,密钥分配者终端12在步骤S522-9中接收该消息。也就是说,密钥保存设备22和密钥分配者终端12共享从中得出进行SSL密码通信的临时密钥Kssl的信息。
密钥保存设备22在步骤S504-11中,把密钥保存设备22的数字签名发送到密钥分配者终端12,作为客户机核实消息。
当在步骤S522-10中接收到客户机核实消息时,密钥分配者终端12在步骤S522-11中进行在步骤S522-8中接收的证书CERTHW0的核实,即,进行密钥保存设备22的核实,以便取决于核实是否成功来检验它是否是密钥保存设备22。
密钥分配者终端12在步骤S522-12中,根据与在步骤S522-9中接收的客户机密钥交换消息相对应的信息(与密钥保存设备22共享的信息),生成用于进行SSL密码通信的临时密钥Kssl(要与密钥保存设备22共享的会话密钥Kssel)。
另一方面,密钥保存设备22还在步骤S504-12中,根据与在步骤S504-10中发送的客户机密钥交换消息相对应的信息(与密钥分配者终端12共享的信息),生成用于进行SSL密码通信的临时密钥Kssl(要与密钥分配者终端12共享的会话密钥Kssel)。
当执行上面的处理时,密钥分配者终端12和密钥保存设备22的每一个在步骤S522-13和步骤S504-13的各个中,相互发送和接收指示握手协议结束的事实的完成消息。
这样,在SSL中,密钥分配者终端12和密钥保存设备22的每一个在这个时刻(在步骤S522-13和步骤S504-13结束时),共享用于SSL密码通信的临时密钥Kssl。
注意,在RFC2246中规定了上述每一个消息。
并且,在本发明中,密钥保存设备22在步骤S504-14中生成随机数(临时密钥)Kses。密钥保存设备22利用通过SSL协议与密钥分配者终端12共享的密钥Kssl(在步骤S504-12中生成的用于进行SSL密码通信的临时密钥Kssl),加密生成的密钥(随机数)Kses。也就是说,密钥保存设备22生成数据E(Kssl,Kses)。进一步,密钥保存设备22生成消息验证码MAC(E(Kssl,Kses))=E(Kssl,E(Kssl,Kses))。密钥保存设备22将数据E(Kssl,Kses)与消息验证码MAC(E(Kssl,Kses))链接。也就是说,密钥保存设备22生成链接数据E(Kssl,Kses)‖MAC(E(Kssl,Kses))。
并且,密钥保存设备22在步骤S504-15中,把链接数据E(Kssl,Kses)‖MAC(E(Kssl,Kses))发送到密钥分配者终端12。
然后,密钥分配者终端12在步骤S522-14中接收链接数据E(Kssl,Kses)‖MAC(E(Kssl,Kses)),并且提取消息验证码MAC(E(Kssl,Kses))中的核实随机数Kses(密钥保存设备22在步骤S504-15中生成的临时密钥Kses)。也就是说,密钥分配者终端12核实消息验证码MAC(E(Kssl,Kses)),并且解密与密钥保存设备22共享的核实随机数Kses。
注意,如果密钥保存设备22保存如图120所示的密钥保存设备PKI信息,那么,如图129所示利用SSL和TLS执行的“与密钥保存设备的相互验证+密钥共享进程”和“与密钥分配者的相互验证+密钥共享进程”被认为不仅可应用于第五实施例,而且可应用于上述第一实施例到第四实施例和后面要描述的第六实施例的任何一个。
返回到图23,在执行了步骤S1(“服务选择/密钥分配进程”)之后,在步骤S2中执行“密钥使用/服务提供进程”。
第五实施例中的“密钥使用/服务提供进程”与第二实施例的类似。也就是说,在第五实施例中,也按照上述图68和69的流程图执行“密钥使用/服务提供进程”。
在步骤S2(“密钥使用/服务提供进程”)结束之后,如有必要,执行步骤S6(“密钥删除进程”)和步骤S7(“密钥使用终止进程”)。
第五实施例中的“密钥删除进程”(步骤S6)与上述第二实施例的类似,也就是说,在第五实施例中,也按照上述图37到39的流程图执行“密钥删除进程”。
假设,在第五实施例中,认为删除对象,在密钥分配者终端12的情况下,是图119的密钥分配表;在服务提供者终端13的情况下,是图53的验证信息表和图55的失效密钥表;而在密钥保存设备22的情况下,是图59的证明密钥表和图60的验证信息表。
第五实施例中的“密钥使用终止进程”(步骤S7)与上述第二实施例的类似。也就是说,在第五实施例中,也按照上述图40和41的流程图执行“密钥使用终止进程”。
这样,应用第五实施例的验证密钥分配系统201是与第二实施例相对应的实施例,因此,当然可以提供上述(1)到(6)中的优点。
并且,应用第五实施例的验证密钥分配系统201还可以提供如下(7)到(10)所示的优点。
(7)在要求验证的双方之间分配专有验证技术时,用户拥有的设备生成用于验证技术的密钥(公开密钥对),从而基本上不可能泄漏私有密钥,因此可以提高安全性。
(8)在要求验证的双方之间分配专有验证技术时,用户拥有的设备生成用于验证技术的密钥(公开密钥对),从而可以减轻密钥分配者这一部分的负担。
(9)事先生成用于验证的密钥,从而可以防止在密钥分配的时候处理密钥生成的延迟。
(10)万一私有密钥泄漏,也可以使泄漏源的地点局限于用户拥有的密钥保存设备。
(第六实施例)
如上所述,第六实施例是与第四实施例相对应的实施例,并且,应用本发明第六实施例的验证密钥分配系统的配置与图72的配置类似,因此,省略对它的描述。因此,图72也被引用作应用本发明第六实施例的验证密钥分配系统的配置。
顺便提一下,在第四实施例中,用于新验证技术的密钥是由密钥分配者终端12生成的,但是,在第六实施例中,用于新验证技术的密钥由用户设备11的密钥保存设备22生成。
因此,在第六实施例中,与第五实施例类似,密钥保存设备22还需要具有生成用于新验证技术的密钥的功能。
也就是说,在第六实施例中,也与第二和第四实施例类似,作为用于公开密钥密码系统的私有密钥和公开密钥对的公开密钥对(Kpr,Kpub)用作用于新验证技术的密钥。因此,密钥保存设备22需要进一步具有通过例如适当的方法(对这些方法没有具体限制;例如,在IEEE-P1363中定义标准方法,并且,可以应用那种方法),从随机数中重新生成公开密钥对(Kpr,Kpub)的功能。
通过具有上述图16的配置的密钥保存设备22也可以容易地实现这样的功能。在这种情况下,计算处理部分56利用能够生成随机数的软件生成随机数,和从生成的随机数中生成存储在密钥存储部分54上的公开密钥对(Kpr,Kpub)。
注意,在第六实施例中,硬件也可以生成随机数。在这种情况下,密钥保存设备22被设计成具有例如上述图118所示的配置。也就是说,作为硬件的随机数生成部分401生成随机数。
第六实施例中的其它设备,即用户终端21、IC卡23、密钥分配者终端12、服务提供者终端13、通用帐户管理者终端15和验证中心终端211的每一个与第四实施例的相应设备的各个具有基本上类似的功能和配置。因此,省略对其它设备的描述。
进一步,构成应用第六实施例的验证密钥分配系统的设备的每一个保存与第四实施例的相应设备的各个保存的数据基本上类似的数据,但是与它们稍有不同。
因此,下面将描述构成应用第六实施例的验证密钥分配系统的设备的每一个保存的数据。
也就是说,在第六实施例中,密钥分配者终端12也拥有上述如图99所示的服务提供者密钥表、上述如图100所示的密钥保存设备密钥表、上述如图101所示的密钥分配者PKI信息和上述如图102所示的CA公开密钥信息。
假设在第六实施例中,证明密钥是由用户User拥有的密钥保存设备22生成的,因此,密钥分配者终端12拥有如图130所示的密钥分配表(与图73的密钥分配表相比,不包括有关证明密钥的项的密钥分配表)。
注意,在图130的密钥分配表中,与图73的密钥分配表类似,标题文档代表当进行密钥分配时,服务提供者终端13(服务提供者SP)为了证明要由其提供的服务而生成的数据。
也就是说,在第六实施例中,也可以使用例如上述图103所示的标题文档。
在第六实施例中,服务提供者终端13也拥有上述如图105所示的服务提供者固有信息、上述如图106所示的失效密钥表、上述如图107所示的密钥共享参数和上述如图108所示的CA公开密钥信息。
进一步,在第六实施例中,服务提供者终端13还生成图104的密钥分配申请书。
在第六实施例中,密钥保存设备22或IC卡23(用户User)也拥有上述如图109所示的证明密钥表、上述如图110所示的验证信息表、上述如图111所示的密钥保存设备固有信息、上述如图112所示的用户帐户信息和上述如图113所示的CA公开密钥信息。
并且,在第六实施例中,当在如后所述的图131的步骤S604中的“与密钥分配者的相互验证+密钥共享进程”中,利用SSL和TLS进行与密钥分配者终端12的相互验证时,密钥保存设备22拥有上述如图120所示的密钥保存设备PKI信息。
进一步,在第六实施例中,密钥保存设备22自身生成密钥(证明密钥和与其配对的核实密钥),因此,拥有上述如图121所示的临时保存密钥表,以便临时保存生成的密钥。
也就是说,在第六实施例中,密钥保存设备22还生成图121的临时保存密钥表(把生成的密钥写入临时保存密钥表中的记录中),并且当按要求生成密钥时,即,当密钥分配者终端12对生成用于新验证技术的密钥(新密钥)的请求生成密钥(公开密钥对(Kpr,Kpub))时,保存(拥有)其成分是生成的密钥(公开密钥对(Kpr,Kpub)的两个密钥)的表格。
并且,在第六实施例中,如果事先保存数个密钥候选者,密钥保存设备22还拥有上述如图122所示的验证密钥表。
也就是说,密钥保存设备22事先保存自身或另一个设备(未示出)生成的图122的验证密钥表,并且,根据密钥分配者终端12对生成用于新验证技术的密钥(新密钥)的请求,从存储在验证密钥表中的数个密钥候选者中提取预定一个(公开密钥对(Kprk,Kpubk)),作为新密钥,从而生成新密钥。
并且,密钥保存设备22生成和保存(拥有)其成分是生成的新密钥(作为提取的新密钥候选者的公开密钥对(Kprk,Kpubk))的图121的临时保存密钥表。
在第六实施例中,帐户管理者终端15还拥有上述图21的帐户管理表和上述图22的帐户管理者固有密钥。
在第六实施例中,验证中心终端211也拥有上述如图64所示的证书表和上述如图65所示的CA密钥信息。
并且,验证中心终端211(验证中心CA)发放如图66所示的证书。
接着,描述应用本发明第六实施例的验证密钥分配系统301(图72)的操作。
第六实施例中验证密钥分配系统301的操作的概况基本上与本发明第四实施例类似。
因此,与第四实施例的描述类似,也参照图23的流程图描述应用本发明第六实施例的验证密钥分配系统301的操作。
首先,在步骤S1中执行“服务选择/密钥分配进程”。
第六实施例中的“服务选择/密钥分配进程”被认为基本上与第四实施例的类似,但是,与它稍有不同。
第六实施例中这样的“服务选择/密钥分配进程”的细节显示在图131到133的流程图和图134的箭头图中。图131到133的流程图代表如图134的箭头图所示的各个设备执行的“服务选择/密钥分配进程”。也就是说,图131代表用户设备11(图72)执行的“服务选择/密钥分配进程”;图132代表密钥分配者终端12(图72)执行的“服务选择/密钥分配进程”;和图133代表服务提供者终端13(图72)执行的“服务选择/密钥分配进程”。
因此,下面参照图134的箭头图,主要描述与第四实施例的步骤不同的那些步骤,同时,这里适当地省略在第四实施例中描述过的步骤的描述。
如图134所示,首先,用户终端21在步骤S601中,选择服务(所选服务),并且将它发送到服务提供者终端13。
服务提供者终端13在步骤S641中,接收所选服务,和在步骤S642中,生成发送到密钥保存设备22的图104的密钥分配申请书。
密钥保存设备22在步骤S602中接收密钥分配申请书和临时保存它,同时,在步骤S603中将它发送到密钥分配者终端12。
当接收到密钥分配申请书时,密钥分配者终端12在步骤S621中核实密钥分配申请书中服务提供者终端13的消息验证码。
当密钥分配者终端12接收到密钥分配申请书时,密钥保存设备22和密钥分配者终端12的每一个执行步骤S622(在密钥分配者终端12这一方的“与密钥保存设备的相互验证+密钥共享进程”)或步骤S604(在密钥保存设备22这一方的“与密钥分配者的相互验证+密钥共享进程”)。
详细地说,例如,如果密钥保存设备22不拥有图120的密钥保存设备PKI信息,那么,认为第六实施例中的步骤S522(“与密钥保存设备的相互验证+密钥共享进程”)和步骤S504(“与密钥分配者的相互验证+密钥共享进程”)与上述第四实施例的那些步骤是类似进程。因此,省略对它们的描述。
另一方面,在步骤S622(“与密钥保存设备的相互验证+密钥共享进程”)中和在步骤S604(“与密钥分配者的相互验证+密钥共享进程”)中,例如,当密钥保存设备22拥有图120的密钥保存设备PKI信息时,如上所述,例如执行上述图129所示的进程(利用SSL和TLS的进程)。注意,这些利用SSL和TLS的进程在上面也阐述过,因此,也省略对它们的描述。
并且,密钥保存设备22和密钥分配者终端12的每一个执行步骤S623(在密钥分配者终端12这一方的“密钥保存设备用户验证进程”)或步骤S605(在密钥保存设备22这一方的“用户验证响应进程”)。
注意,第六实施例中的步骤S623(“密钥保存设备用户验证进程”)和步骤S605(“用户验证响应进程”)被认为与上述第四实施例中的那些步骤类似,因此,省略对它们的描述。
顺便提一下,如上所述,在第四实施例中,当执行“密钥保存设备用户验证进程”(与第六实施例的步骤S623(图134)相对应的步骤S423(图117))和“用户验证响应进程”(与第六实施例的步骤S605(图134)相对应的步骤S405(图117))时,密钥分配者终端12在步骤S424(图117)中生成发送到用户设备22的新密钥,并且用户设备22在步骤S406中接收新密钥。
相反,在第六实施例中,如图134所示,与第五实施例类似,当执行“密钥保存设备用户验证进程(步骤S623)”和“用户验证响应进程(步骤S605)”时,密钥分配者终端12和用户设备11(密钥保存设备22)的每一个执行“新密钥请求和接收进程(步骤S624)”或“新密钥生成和发送进程(步骤S606)”。
第六实施例中“新密钥请求和接收进程(步骤S624)”和“新密钥生成和发送进程(步骤S606)”的细节显示在图135的箭头图中。
因此,参照图135的箭头图,描述第六实施例中“新密钥请求和接收进程(步骤S624)”和“新密钥生成和发送进程(步骤S606)”的细节。
如图135所示,首先,密钥分配者终端12在步骤S624-1中生成密钥生成请求″GENERATE-KEY″。作为步骤S622(图134)中“与密钥保存设备的相互验证+密钥共享进程”的结果,密钥分配者终端12利用生成的密钥生成请求″GENERATE-KEY″和与用户设备11(密钥保存设备22)共享的临时密钥Kses、生成消息验证码MAC(″GENERATE-KEY″)=E(Kses,h(″GENERATE-KEY″))。并且,密钥分配者终端12将密钥生成请求″GENERATE-KEY″与消息验证码MAC(″GENERATE-KEY″)=E(Kses,h(″GENERATE-KEY″))链接。也就是说,密钥分配者终端12生成链接数据″GENERATE-KEY″‖MAC(″GENERATE-KEY″),作为请求生成新密钥的请求信息。
当密钥分配者终端12在步骤S624-2中发送链接数据″GENERATE-KEY″‖MAC(″GENERATE-KEY″)时,用户设备11(密钥保存设备22)在步骤S606-1中接收它。
并且,密钥保存设备22在步骤S606-2中核实消息验证码,以核实密钥生成请求″GENERATE-KEY″是否被窜改和其有效性。
当验证成功时,密钥保存设备22在步骤S606-3中重新生成新密钥,即,作为用于公开密钥密码系统的私有密钥和公开密钥对的公开密钥对(Kpr,Kpub)。这个公开密钥对(Kpr,Kpub)用作要重新分配的用于验证技术的证明密钥和核实密钥。
具体地说,例如,如果密钥保存设备22被配置成如图118所示那样,随机数生成部分401生成随机数,并且计算处理部分56按照例如IEEE-P1363等规定的方法,从随机数生成部分401生成的随机数中重新生成公开密钥对(Kpr,Kpub)。
并且,计算处理部分56生成存储在密钥存储部分54上的图121的临时保存密钥表,其成分是生成的公开密钥对(Kpr,Kpub)的两个密钥。
可替换地,例如,如果密钥保存设备22被配置成如图118所示那样,计算处理部分56在时间上早于步骤S606中的“新密钥生成和发送进程”,按照例如IEEE-P1363等规定的方法,从随机数生成部分401生成的数个随机数中事先分别生成数个公开密钥对(Kprn,Kpubn),并且赋予生成的数个公开密钥对(Kprn,Kpubn)的每一个作为索引的Idn。
并且,在存储在密钥存储部分54上的、图122所示的验证密钥表中的相应n个记录(行)中,计算处理部分56把Idn写入索引项,把生成的数个公开密钥对(Kprn,Kpubn)的私有密钥Kprn写入证明密钥项,和把生成的数个公开密钥对(Kprn,Kpubn)的公开密钥Kpubn写入核实密钥项。
注意,在当前情况下,包括在图122的验证密钥表中的所有密钥候选者(证明密钥(候选者)Kprn和核实密钥(候选者)Kpubn)都是由密钥保存设备22生成的,但是,如上所述,包括在图122的验证密钥表中的所有密钥候选者(证明密钥(候选者)Kprn和核实密钥(候选者)Kpubn)的至少一部分可以由与密钥保存设备22不同的另一个设备生成。
对于以这种方式事先保存在密钥存储部分54上的图122的验证密钥表,当在步骤S606-1中接收到从密钥分配者终端12发送的链接数据″GENERATE-KEY″‖MAC(″GENERATE-KEY″)时,密钥保存设备22在步骤S606-2中核实消息验证码,以核实密钥生成请求″GENERATE-KEY″是否被窜改和其有效性。
当核实成功时,计算处理部分56在步骤S560-3中提取数个新密钥候选者,即包括在存储在密钥存储部分54上的图122的验证密钥表中的各记录(行)中的数个公开密钥对(Kprn,Kpubn)的预定一个(Kprnk,Kpubk)(其中k是通过n表示的整数值的预定一个),从而生成新密钥。也就是说,生成的新密钥(提取的公开密钥对(Kprnk,Kpubk))用作要重新分配的用于验证技术的证明密钥和核实密钥。
并且,计算处理部分56生成存储在密钥存储部分54上的图121的临时保存密钥表,其成分是所选的公开密钥对(Kprnk,Kpubk)的两个密钥,并且还删除图122的验证密钥表中与所选公开密钥对(Kprnk,Kpubk)相对应的记录(行k)。
当以这种方式把图121的临时保存密钥表存储在密钥存储部分54上时,密钥保存设备22在步骤S606-4中发送公开密钥,即核实密钥Kpub。然后,密钥分配者终端12在步骤S624-3中接收它。
具体地说,例如,作为步骤S604(图134)中“与密钥分配者的相互验证+密钥共享进程”的结果,密钥保存设备22利用在步骤S606-3中生成(保存在图121中的临时保存密钥表中)的公开密钥对(Kpr,Kpub)的核实密钥Kpub和与密钥保存终端12共享的临时密钥Kses,生成消息验证码MAC(Kpub)=E(Kses,h(Kpub))。并且,密钥保存设备22将核实密钥Kpub与消息验证码MAC(Kpub)链接。也就是说,密钥保存设备22生成链接数据Kpub‖MAC(Kpub)。
生成的链接数据Kpub‖MAC(Kpub)从用户设备11发送,并且由密钥分配者终端12接收。
然后,密钥分配者终端12在步骤S624-4中核实链接数据Kpub‖MAC(Kpub)的消息验证码MAC(Kpub)。
返回到图134,当核实成功时,密钥分配者终端12在步骤S625中生成发送到密钥保存设备22的图103的标题文档。
同时,密钥分配者终端12把由对其进行分配的验证技术的唯一识别号KID、所分配用户的识别号AID、所分配密钥保存设备的识别号HWID、标题文档Rcert和核实密钥Kpub等构成的记录加入图130的密钥分配表中。
并且,密钥分配者终端12在步骤S626中向在步骤S622中的“与密钥保存设备的相互验证+密钥共享进程”中识别的用户User(用户终端21)开出帐单,以便与标题文档中的服务内容和密钥分配所得的佣金(commission)总额相对应。
密钥保存设备22在步骤S607中接收标题文档。
并且,在检验了数字签名是由密钥分配者终端12(密钥分配者KA)生成的之后,在接收的标题文档上,密钥保存设备22把由包括在标题文档中的识别号KID和标题文档Rcert构成的新记录加入图110的验证信息表中。
进一步,密钥保存设备22把由包括在标题文档中的识别号KID和保存在图121的临时保存密钥表中的证明密钥Kpr构成的新记录加入图109的证明密钥表中。
此后,密钥保存设备22删除保存在图121的临时保存密钥表中的证明密钥Kpr和核实密钥Kpub。
返回到图23,在执行了步骤S1(“服务选择/密钥分配进程”)之后,在步骤S2中执行“密钥使用/服务提供进程”。
第六实施例中的“密钥使用/服务提供进程”与第四实施例的类似。也就是说,在第六实施例中也按照上述图114和116的流程图(图117的箭头图)执行“密钥使用/服务提供进程”。
在步骤S2(“密钥使用/服务提供进程”)结束之后,如有必要,执行步骤S6(“密钥删除进程”)和步骤S7(“密钥使用终止进程”)。
第六实施例的“密钥删除进程”(步骤S6)与上述第四实施例的(即,第二实施例的“密钥删除进程”)类似。也就是说,在第六实施例中也按照上述图37到39的任何一个流程图执行“密钥删除进程”。
假设在第六实施例中,认为删除对象,在密钥分配者终端12的情况下,是图130的密钥分配表;在服务提供者终端13的情况下,是图106的失效密钥表;而在密钥保存设备22的情况下,是图109的证明密钥表和图110的验证信息表。
第六实施例的“密钥使用终止进程”(步骤S7)与上述第四实施例的类似。也就是说,在第六实施例中也按照上述图40和41的流程图执行“密钥使用终止进程”。
假设在第六实施例中的“密钥使用终止进程”中,与第四实施例类似,服务提供者终端13不保存与第二实施例中的图53的验证信息表相对应的表格,因此,省略从验证信息表中删除记录的步骤。
并且,在类似第一实施例中,由密钥分配者终端12生成和在图40的步骤S161中发送到服务提供者终端13的密钥使用终止请求的格式被认为图42的格式,而在第六实施例中,与第四实施例类似,被认为是图42和43的格式的任何一种。
这样,应用第六实施例的验证密钥分配系统301是与第四实施例相对应的实施例,因此,当然可以提供上述(1)到(6)中的优点。
并且,应用第六实施例的验证密钥分配系统301使用户User拥有的密钥保存设备22生成与第五实施例类似的新密钥,因此,当然还可以提供上面(7)到(10)中所示的优点。
并且,与第五和第六实施例类似,也可以容易地实现与第一和第三实施例相对应、其中用户User拥有的密钥保存设备22生成新密钥的实施例。
也就是说,与第五和第六实施例类似,用户User拥有的密钥保存设备22生成新密钥的技术可以进一步应用于第一和第三实施例。
注意,执行上述一系列进程的程序是从网络和记录媒体安装的。这种记录媒体不仅可以由要附加到驱动器40、90、110、130或230中的、为了把程序提供给拥有者等而与如图15、18、19、20和45所示的设备的主体分开分发的记录着程序的可移除记录媒体(包式媒体)41、91、111、131或231构成,诸如磁盘(包括软盘)、光盘(包括CD-ROM(只读光盘存储器)和DVD(数字多功能盘))、磁光盘(包括MD(小型盘))或半导体存储器之类,而且可以由如事先合并在设备的主体中而提供给用户的记录着程序的ROM 32、82、102、122或222和包括在存储部分38、88、108或228中的硬盘等构成。
注意,在本说明书中,执行上述一系列进程的步骤不仅包括像所描写的次序那样按时序执行的进程,而且包括即使未必按时序处理它们,也并行地或独立地执行的进程。
并且,在本说明书中,系统代表由数个设备和处理部分构成的设备的整个部分。
工业可应用性
像前所述,根据本发明,服务提供者可以验证用户。并且,根据本发明,当服务提供者验证用户时,可以提高它验证的效率和安全性。

Claims (59)

1.一种由第一到第三信息处理设备构成的信息处理系统,所述信息处理系统的特征在于:
所述第一信息处理设备生成可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥,把所述生成的第一密钥发送到所述第二信息处理设备,并且还把所述生成的第二密钥发送到所述第三信息处理设备;
所述第二信息处理设备接收所述第一信息处理设备发送的所述第一密钥,并保存;
所述第三信息处理设备接收所述第一信息处理设备发送的所述第二密钥,并保存;和
所述第二信息处理设备根据所述验证技术,利用所述保存的第一密钥和所述第三信息处理设备保存的所述第二密钥,验证所述第三信息处理设备。
2.根据权利要求1所述的信息处理系统,其特征在于:
所述验证技术是公用密钥验证;和
所述第一密钥和所述第二密钥是相同的密钥。
3.根据权利要求1所述的信息处理系统,其特征在于:
所述验证技术是公开密钥验证;和
所述第一密钥和所述第二密钥是不同的密钥。
4.一种用于由第一到第三信息处理设备构成的信息处理系统的信息处理方法,所述信息处理方法的特征在于:
所述第一信息处理设备生成可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥,把所述生成的第一密钥发送到所述第二信息处理设备,并且把所述生成的第二密钥发送到所述第三信息处理设备;
所述第二信息处理设备接收所述第一信息处理设备发送的所述第一密钥,并保存;
所述第三信息处理设备接收所述第一信息处理设备发送的所述第二密钥,并保存;和
所述第二信息处理设备利用所述保存的第一密钥和所述第三信息处理设备保存的所述第二密钥,验证所述第三信息处理设备。
5.一种信息处理设备,其特征在于包括:
生成装置,用于生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与所述第一密钥配对的第二密钥;和
发送装置,用于把所述生成装置生成的所述第一密钥发送到所述另一个第一信息处理设备,和把所述生成装置生成的所述第二密钥发送到所述另一个第二信息处理设备。
6.根据权利要求5所述的信息处理设备,其特征在于:
所述验证技术是公用密钥验证;和
所述生成装置生成的所述第一密钥和所述第二密钥是相同的密钥。
7.根据权利要求5所述的信息处理设备,其特征在于:
所述验证技术是公开密钥验证,和
所述生成装置生成的所述第一密钥和所述第二密钥是不同的密钥。
8.根据权利要求5所述的信息处理设备,其特征在于还包括:
识别装置,用于当把用于验证的信息输入所述另一个第二信息处理设备中或将用于验证的预定设备与所述另一个第二信息处理设备相连接时,识别输入所述信息的用户或所述连接的设备,
其中,当所述识别装置识别出把所述信息输入到所述另一个第二信息处理设备的所述用户或与所述另一个第二信息处理设备相连接的所述设备时,所述生成装置生成所述第一和所述第二密钥。
9.根据权利要求8所述的信息处理设备,其特征在于:
所述识别装置通过利用SSL(安全套接层)或TLS(传输层安全)识别把所述信息输入到所述另一个第二信息处理设备的所述用户或与所述另一个第二信息处理设备相连接的所述设备。
10.根据权利要求5所述的信息处理设备,其特征在于还包括:
开出帐单装置,用于当所述生成装置生成所述第一和所述第二密钥时,利用所述第一和所述第二密钥,为提供给作为所述发送装置向其发送所述第一密钥的对方、要由所述另一个第一信息处理设备验证的所述另一个第二信息处理设备的服务确定费用,和用于针对所述服务的所述费用,向所述识别装置识别的、把所述信息输入到所述另一个第二信息处理设备的所述用户开出帐单,或向所述识别装置识别的、与所述另一个第二信息处理设备连接的所述设备识别的用户开出帐单。
11.根据权利要求10所述的信息处理设备,其特征在于:
所述开出帐单装置针对所述服务的所述费用,并且还针对与所述生成装置生成的所述第一和所述第二密钥有关的费用,向所述另一个第二信息处理设备开出帐单。
12.一种用于信息处理设备的信息处理方法,所述信息处理方法的特征在于包括:
生成步骤,用于生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与所述第一密钥配对的第二密钥;和
发送步骤,用于把所述生成步骤生成的所述第一密钥发送到所述另一个第一信息处理设备,和把所述生成步骤生成的所述第二密钥发送到所述另一个第二信息处理设备。
13.一种其中记录着计算机可读程序的记录媒体,用于控制信息处理设备的计算机的所述程序的特征在于包括:
生成步骤,用于生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与所述第一密钥配对的第二密钥;和
发送步骤,用于把所述生成步骤生成的所述第一密钥发送到所述另一个第一信息处理设备,并且还把所述生成步骤生成的所述第二密钥发送到所述另一个第二信息处理设备。
14.一种程序,其特征在于使控制信息处理设备的计算机执行:
生成步骤,用于生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与所述第一密钥配对的第二密钥;和
发送步骤,用于把所述生成步骤生成的所述第一密钥发送到所述另一个第一信息处理设备,和把所述生成步骤生成的所述第二密钥发送到所述另一个第二信息处理设备。
15.一种信息处理设备,其特征在于包括:
接收装置,用于接收另一个第一信息处理设备发送和可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥当中的至少所述第一密钥;
保存装置,用于保存所述接收装置接收的所述第一密钥;和
验证装置,用于根据所述验证技术,利用所述保存装置保存的所述第一密钥和所述另一个第二信息处理设备保存的所述第二密钥,验证所述另一个第二信息处理设备。
16.根据权利要求15所述的信息处理设备,其特征在于:
所述验证技术是公用密钥验证;和
所述第一密钥和所述第二密钥是相同的密钥。
17.根据权利要求15所述的信息处理设备,其特征在于:
所述验证技术是公开密钥验证;和
所述第一密钥和所述第二密钥是不同的密钥。
18.一种用于信息处理设备的信息处理方法,所述信息处理方法的特征在于包括:
接收步骤,用于接收另一个第一信息处理设备发送和可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥当中的至少所述第一密钥;
保存步骤,用于保存通过所述接收步骤接收的所述第一密钥;和
验证步骤,用于根据所述验证技术,利用通过所述保存步骤保存的所述第一密钥和所述另一个第二信息处理设备保存的所述第二密钥,验证所述另一个第二信息处理设备。
19.一种其中记录着计算机可读程序的记录媒体,用于控制信息处理设备的计算机的所述程序的特征在于包括:
接收步骤,用于接收另一个第一信息处理设备发送和可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥当中的至少所述第一密钥;
保存步骤,用于保存通过所述接收步骤接收的所述第一密钥;和
验证步骤,用于根据所述验证技术,利用通过所述保存步骤保存的所述第一密钥和所述另一个第二信息处理设备保存的所述第二密钥,验证所述另一个第二信息处理设备。
20.一种程序,其特征在于使控制处理设备的计算机执行:
接收步骤,用于接收另一个第一信息处理设备发送和可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥当中的至少所述第一密钥;
保存步骤,用于保存通过所述接收步骤接收的所述第一密钥;和
验证步骤,用于根据所述验证技术,利用通过所述保存步骤保存的所述第一密钥和所述另一个第二信息处理设备保存的所述第二密钥,验证所述另一个第二信息处理设备。
21.一种信息处理设备,其特征在于包括:
接收装置,用于接收另一个第一信息处理设备发送和可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥当中的至少所述第二密钥;
保存装置,用于保存所述接收装置接收的所述第二密钥;和
响应装置,用于当保存所述第一密钥的另一个第二信息处理设备根据所述验证技术验证所述信息处理设备时,利用所述保存装置保存的所述第二密钥,把预定响应发送到所述另一个第二信息处理设备。
22.根据权利要求21所述的信息处理设备,其特征在于:
所述验证技术是公用密钥验证;和
所述第一密钥和所述第二密钥是相同的密钥。
23.根据权利要求21所述的信息处理设备,其特征在于:
所述验证技术是公开密钥验证;和
所述第一密钥和所述第二密钥是不同的密钥。
24.根据权利要求21所述的信息处理设备,其特征在于还包括:
输入装置,用于输入供所述另一个第二信息处理设备验证的信息。
25.根据权利要求21所述的信息处理设备,其特征在于还包括:
连接装置,用于连接当所述另一个第二信息处理设备验证时使用的预定设备。
26.根据权利要求21所述的信息处理设备,其特征在于:
与所述连接装置连接的所述设备是IC卡。
27.根据权利要求21所述的信息处理设备,其特征在于:
所述保存装置是防窜改的。
28.一种用于信息处理设备的信息处理方法,所述信息处理方法的特征在于包括:
接收步骤,用于接收另一个第一信息处理设备发送和可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥当中的至少所述第二密钥;
保存控制步骤,用于控制通过所述接收步骤接收的所述第二密钥的保存;和
响应步骤,用于当保存所述第一密钥的另一个第二信息处理设备根据所述验证技术验证所述信息处理设备时,利用通过所述保存控制步骤控制其保存的所述第二密钥,把预定响应发送到所述另一个第二信息处理设备。
29.一种其中记录着计算机可读程序的记录媒体,用于控制信息处理设备的计算机的所述程序的特征在于包括:
接收步骤,用于接收另一个第一信息处理设备发送和可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥当中的至少所述第二密钥;
保存控制步骤,用于控制通过所述接收步骤接收的所述第二密钥的保存;和
响应步骤,用于当保存所述第一密钥的另一个第二信息处理设备根据所述验证技术验证所述信息处理设备时,利用通过所述保存控制步骤控制其保存的所述第二密钥,把预定响应发送到所述另一个第二信息处理设备。
30.一种程序,其特征在于使控制信息处理设备的计算机执行:
接收步骤,用于接收另一个第一信息处理设备发送和可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥当中的至少所述第二密钥;
保存控制步骤,用于控制通过所述接收步骤接收的所述第二密钥的保存;和
响应步骤,用于当保存所述第一密钥的另一个第二信息处理设备根据所述验证技术验证所述信息处理设备时,利用通过所述保存控制步骤控制其保存的所述第二密钥,把预定响应发送到所述另一个第二信息处理设备。
31.一种由第一到第三信息处理设备构成的信息处理系统,所述信息处理系统的特征在于:
所述第一信息处理设备生成请求生成可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥的请求信息,以发送到所述第二信息处理设备;
当接收到来自所述第一信息处理设备的所述请求信息时,所述第二信息处理设备生成所述第一密钥和所述第二密钥的每一个,把所述生成的第一密钥发送到所述第三信息处理设备,并保存所述生成的第二密钥;
所述第三信息处理设备接收所述第二信息处理设备发送的所述第一密钥,并保存;和
所述第三信息处理设备根据所述验证技术,利用所述保存的第一密钥和所述第二信息处理设备保存的所述第二密钥,验证所述第二信息处理设备。
32.根据权利要求31所述的信息处理系统,其特征在于:
所述验证技术是公开密钥验证;和
所述第一密钥和所述第二密钥是不同的密钥。
33.一种用于由第一到第三信息处理设备构成的信息处理系统的信息处理方法,所述信息处理方法的特征在于:
所述第一信息处理设备生成请求生成可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥的请求信息,以发送到所述第二信息处理设备;
当接收到来自所述第一信息处理设备的所述请求信息时,所述第二信息处理设备生成所述第一密钥和所述第二密钥的每一个,把所述生成的第一密钥发送到所述第三信息处理设备,并保存所述生成的第二密钥;
所述第三信息处理设备接收所述第二信息处理设备发送的所述第一密钥,并保存;和
所述第三信息处理设备根据所述验证技术,利用所述保存的第一密钥和所述第二信息处理设备保存的所述第二密钥,验证所述第二信息处理设备。
34.一种信息处理设备,其特征在于包括:
生成装置,用于生成请求生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与所述第一密钥配对的第二密钥的请求信息;和
发送装置,用于把所述生成装置生成的所述请求信息发送到所述另一个第二信息处理设备。
35.根据权利要求34所述的信息处理设备,其特征在于:
所述验证技术是公开密钥验证;和
所述生成装置生成的所述第一密钥和所述第二密钥是不同的密钥。
36.根据权利要求34所述的信息处理设备,其特征在于还包括:
识别装置,用于当把用于验证的信息输入所述另一个第二信息处理设备中或将用于验证的预定设备与所述另一个第二信息处理设备相连接时,识别输入所述信息的用户或所述连接的设备,
其中,当识别出把所述信息输入到所述另一个第二信息处理设备的所述用户或与所述另一个第二信息处理设备相连接的所述设备时,所述生成装置生成所述请求信息。
37.根据权利要求36所述的信息处理设备,其特征在于:
所述识别装置通过利用SSL(安全套接层)或TLS(传输层安全)识别把所述信息输入到所述另一个第二信息处理设备的所述用户或与所述另一个第二信息处理设备相连接的所述设备。
38.根据权利要求34所述的信息处理设备,其特征在于还包括:
开出帐单装置,用于当所述发送装置把所述请求信息发送到所述另一个第二信息处理设备时,利用所述第一密钥和所述第二密钥,为提供给要由所述另一个第一信息处理设备验证的所述另一个第二信息处理设备的服务确定费用,并且针对所述服务的所述费用,向所述识别装置识别的、把所述信息输入到所述另一个第二信息处理设备的所述用户开出帐单,或向所述识别装置识别的、与所述另一个第二信息处理设备连接的所述设备识别的用户开出帐单。
39.根据权利要求38所述的信息处理设备,其特征在于:
所述开出帐单装置针对所述服务的所述费用,并且还针对与所述另一个第二信息处理设备为响应所述发送装置发送给所述另一个第二信息处理设备的所述请求信息而生成的所述第一和所述第二密钥有关的费用,向所述另一个第二信息处理设备开出帐单。
40.一种用于信息处理设备的信息处理方法,所述信息处理方法的特征在于包括:
生成步骤,用于生成请求生成当另一个第一信息处理设备根据预定验证技术验证另一个第二信息处理设备时使用的第一密钥和要与所述第一密钥配对的第二密钥的请求信息;和
发送步骤,用于把通过所述生成步骤生成的所述请求信息发送到所述另一个第二信息处理设备。
41.一种其中记录着计算机可读程序的记录媒体,用于控制信息处理设备的计算机的所述程序的特征在于包括:
生成步骤,用于生成请求另一个第二信息处理设备生成当另一个第一信息处理设备根据预定验证技术验证所述另一个第二信息处理设备时使用的第一密钥和要与所述第一密钥配对的第二密钥的请求信息。
42.一种程序,其特征在于使控制信息处理设备的计算机执行:
生成步骤,用于生成请求另一个第二信息处理设备生成当另一个第一信息处理设备根据预定验证技术验证所述另一个第二信息处理设备时使用的第一密钥和要与所述第一密钥配对的第二密钥的请求信息。
43.一种信息处理设备,其特征在于包括:
接收装置,用于当另一个第二信息处理设备在另一个第一信息处理设备的请求下,生成可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥并且发送所述生成的第一密钥时,接收所述第一密钥;
保存装置,用于保存所述接收装置接收的所述第一密钥;和
验证装置,用于根据所述验证技术,利用所述保存装置保存的所述第一密钥和所述另一个第二信息处理设备保存的所述第二密钥,验证所述另一个第二信息处理设备。
44.根据权利要求43所述的信息处理设备,其特征在于:
所述验证技术是公开密钥验证;和
所述第一密钥和所述第二密钥是不同的密钥。
45.一种用于信息处理设备的信息处理方法,所述信息处理方法的特征在于包括:
接收步骤,用于当另一个第二信息处理设备在另一个第一信息处理设备的请求下,生成可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥并且发送所述生成的第一密钥时,接收所述第一密钥;
保存步骤,用于保存通过所述接收步骤接收的所述第一密钥;和
验证步骤,用于根据所述验证技术,利用通过所述保存步骤保存的所述第一密钥和所述另一个第二信息处理设备保存的所述第二密钥,验证所述另一个第二信息处理设备。
46.一种其中记录着计算机可读程序的记录媒体,用于控制信息处理设备的计算机的所述程序的特征在于包括:
验证步骤,用于根据预定验证技术,在另一个第二信息处理设备根据另一个第一信息处理设备的请求而生成并且可以通过所述预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥当中,利用所述信息处理设备本身保存的所述第一密钥和所述另一个第二信息处理设备保存的所述第二密钥,验证所述另一个第二信息处理设备。
47.一种程序,其特征在于使控制信息处理设备的计算机执行:
验证步骤,用于根据预定验证技术,在另一个第二信息处理设备根据另一个第一信息处理设备的请求而生成并且可以通过所述预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥当中,利用所述信息处理设备本身保存的所述第一密钥和所述另一个第二信息处理设备保存的所述第二密钥,验证所述另一个第二信息处理设备。
48.一种信息处理设备,其特征在于包括:
接收装置,用于接收另一个第一信息处理设备发送的、请求生成可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥的请求信息;
密钥生成装置,用于根据所述接收装置接收的所述请求信息,生成所述第一密钥和所述第二密钥;
发送装置,用于把所述密钥生成装置生成的所述第一密钥和所述第二密钥的所述第一密钥发送到另一个第二信息处理设备;
保存装置,用于保存所述密钥生成装置生成的所述第一密钥和所述第二密钥的所述第二密钥;和
响应生成装置,用于当保存所述发送装置发送的所述第一密钥的所述另一个第二信息处理设备根据所述验证技术验证所述信息处理设备时,利用所述保存装置保存的所述第二密钥生成预定响应,
其中,所述发送装置把所述响应生成装置生成的所述响应发送到所述另一个第二信息处理设备。
49.根据权利要求48所述的信息处理设备,其特征在于:
所述验证技术是公开密钥验证;和
所述第一密钥和所述第二密钥是不同的密钥。
50.根据权利要求48所述的信息处理设备,其特征在于:
所述密钥生成装置在所述接收装置接收到所述请求信息之后,重新生成所述第一密钥和所述第二密钥。
51.根据权利要求48所述的信息处理设备,其特征在于:
所述保存装置事先保存数个第一密钥候选者和要分别与所述数个第一密钥候选者配对的数个第二密钥候选者;和
所述密钥生成装置提取所述保存装置事先保存的所述数个第一密钥候选者和数个第二密钥候选者当中的预定第一密钥候选者和要与之配对的第二密钥候选者,使所述提取的第一密钥候选者成为所述第一密钥和使所述提取的第二密钥候选者成为所述第二密钥,从而生成所述第一密钥和所述第二密钥。
52.根据权利要求51所述的信息处理设备,其特征在于:
所述密钥生成装置生成所述数个第一密钥候选者和所述数个第二密钥候选者。
53.根据权利要求48所述的信息处理设备,其特征在于还包括:
输入装置,用于输入供所述另一个第二信息处理设备验证的信息。
54.根据权利要求48所述的信息处理设备,其特征在于还包括:
连接装置,用于连接当所述另一个第二信息处理设备验证时使用的预定设备。
55.根据权利要求54所述的信息处理设备,其特征在于:
与所述连接装置连接的所述设备是IC卡。
56.根据权利要求48所述的信息处理设备,其特征在于:
所述保存装置是防窜改的。
57.一种用于信息处理设备的信息处理方法,所述信息处理方法的特征在于包括:
接收步骤,用于接收另一个第一信息处理设备发送的、请求生成可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥的请求信息;
密钥生成步骤,用于根据通过所述接收步骤接收的所述请求信息,生成所述第一密钥和所述第二密钥;
密钥发送步骤,用于把通过所述密钥生成步骤生成的所述第一密钥和所述第二密钥的所述第一密钥发送到另一个第二信息处理设备;
保存步骤,用于保存通过所述密钥生成步骤生成的所述第一密钥和所述第二密钥的所述第二密钥;和
响应生成步骤,用于当保存通过所述密钥发送步骤发送的所述第一密钥的所述另一个第二信息处理设备根据所述验证技术验证所述信息处理设备时,利用通过所述保存步骤保存的所述第二密钥生成预定响应;和
响应发送步骤,用于把通过所述响应生成步骤生成的所述响应发送到所述另一个第二信息处理设备。
58.一种其中记录着计算机可读程序的记录媒体,用于控制信息处理设备的计算机的所述程序的特征在于包括:
密钥生成步骤,用于根据为请求生成可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥而从另一个第二信息处理设备发送到所述信息处理设备的请求信息,生成要发送到另一个第二信息处理设备的所述第一密钥和要由所述信息处理设备保存的所述第二密钥;和
响应生成步骤,用于当保存所述发送的第一密钥的所述另一个第二信息处理设备根据所述验证技术验证所述信息处理设备时,利用所述信息处理设备保存的所述第二密钥生成预定响应。
59.一种程序,其特征在于使控制信息处理设备的计算机执行:
密钥生成步骤,用于根据为请求生成可以通过预定验证技术使用的第一密钥和要与所述第一密钥配对的第二密钥而从另一个第二信息处理设备发送到所述信息处理设备的请求信息,生成要发送到另一个第二信息处理设备的所述第一密钥和要由所述信息处理设备保存的所述第二密钥;和
响应生成步骤,用于当保存所述发送的第一密钥的所述另一个第二信息处理设备根据所述验证技术验证所述信息处理设备时,利用所述信息处理设备保存的所述第二密钥生成预定响应。
CNB038010577A 2002-05-24 2003-05-02 信息处理系统和方法、信息处理设备和方法 Expired - Fee Related CN100338907C (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP149925/2002 2002-05-24
JP2002149925 2002-05-24
JP69304/2003 2003-03-14
JP2003069304A JP2004048660A (ja) 2002-05-24 2003-03-14 情報処理システムおよび方法、情報処理装置および方法、記録媒体、並びにプログラム
PCT/JP2003/005605 WO2003101042A1 (fr) 2002-05-24 2003-05-02 Procede, systeme et dispositif de traitement d'informations, support d'enregistrement et programme

Publications (2)

Publication Number Publication Date
CN1565103A true CN1565103A (zh) 2005-01-12
CN100338907C CN100338907C (zh) 2007-09-19

Family

ID=29585969

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB038010577A Expired - Fee Related CN100338907C (zh) 2002-05-24 2003-05-02 信息处理系统和方法、信息处理设备和方法

Country Status (7)

Country Link
US (1) US20050105735A1 (zh)
EP (1) EP1508993A1 (zh)
JP (1) JP2004048660A (zh)
KR (1) KR20050008627A (zh)
CN (1) CN100338907C (zh)
AU (1) AU2003234777A1 (zh)
WO (1) WO2003101042A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008040196A1 (fr) * 2006-09-06 2008-04-10 Huawei Technologies Co., Ltd. Procédé de génération de sak, procédé réalisant la sécurité mac et dispositif de réseau
CN110022320A (zh) * 2019-04-08 2019-07-16 北京深思数盾科技股份有限公司 一种通信配对方法及通信装置
CN112612255A (zh) * 2020-12-24 2021-04-06 特劢丝软件科技(上海)有限公司 数据采集方法、装置、电子设备、存储介质

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7499550B2 (en) * 2004-02-09 2009-03-03 International Business Machines Corporation System and method for protecting a title key in a secure distribution system for recordable media content
FR2867001B1 (fr) * 2004-02-27 2006-06-16 Gemplus Card Int Procede de production d'un certificat numerique, certificat numerique associe, et procede d'utilisation d'un tel certificat numerique
US8010783B1 (en) 2004-04-15 2011-08-30 Aol Inc. Service provider invocation
US7783884B2 (en) 2004-04-21 2010-08-24 Panasonic Corporation Content providing system, information processing device and memory card
JP2006033267A (ja) * 2004-07-14 2006-02-02 Sony Corp 情報処理システム、情報処理方法、情報処理装置、並びにプログラム
US20120115455A1 (en) * 2004-07-26 2012-05-10 Bindu Rama Rao Secure bootstrap provisioning of electronic devices in carrier networks
US20080250246A1 (en) * 2005-07-26 2008-10-09 France Telecom Method for Controlling Secure Transactions Using a Single Multiple Dual-Key Device, Corresponding Physical Deivce, System and Computer Program
KR100667002B1 (ko) * 2006-02-21 2007-01-10 삼성전자주식회사 Ip 시스템의 동적 보안 장치 및 그 방법
JP2007288254A (ja) * 2006-04-12 2007-11-01 Sony Corp 通信システム、通信装置および方法、並びにプログラム
JP2010505161A (ja) * 2006-09-29 2010-02-18 スカンメル,ダン 電子取引でユーザのアイデンティティを検証するシステムおよび方法
JP5026049B2 (ja) * 2006-10-25 2012-09-12 ソニー株式会社 メディアドライブ装置、メディアドライブ装置の動作方法、プログラム、プログラム記録媒体
JP4371327B2 (ja) * 2007-10-24 2009-11-25 富士通株式会社 申請処理プログラム、申請処理方法、および仲介サーバ装置、並びに仲介サーバシステム
KR101495722B1 (ko) * 2008-01-31 2015-02-26 삼성전자주식회사 홈 네트워크에서의 통신 보안성을 보장하는 방법 및 이를위한 장치
JP4965512B2 (ja) * 2008-06-02 2012-07-04 株式会社バッファロー 認証システム、情報処理装置、記憶装置、認証方法及びそのプログラム
JP2011008701A (ja) * 2009-06-29 2011-01-13 Sony Corp 情報処理サーバ、情報処理装置、および情報処理方法
US8688512B2 (en) 2011-02-17 2014-04-01 Boku, Inc. Offer insertion system
US8799162B2 (en) 2011-11-30 2014-08-05 Boku, Inc. Pass-through payment system
CN103136875B (zh) * 2011-12-05 2015-04-08 航天信息股份有限公司 使用动态密码对税控收款机进行时限管理的方法及系统
US9111301B2 (en) 2011-12-13 2015-08-18 Boku, Inc. Activating an account based on an SMS message
US9129320B2 (en) 2012-02-08 2015-09-08 Boku, Inc. Default phone bill charging
US8630904B2 (en) 2012-02-14 2014-01-14 Boku, Inc. Transaction authentication with a variable-type user-stored account identifier
JP5766780B2 (ja) * 2013-12-27 2015-08-19 株式会社パレス興業 デバイス間暗号通信方法及びこれを用いたデータ通信方法
FR3019416A1 (fr) * 2014-03-28 2015-10-02 Orange Procede de traitement de donnees
US11950300B2 (en) * 2021-07-09 2024-04-02 Soundhound, Inc. Using a smartphone to control another device by voice

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5091942A (en) * 1990-07-23 1992-02-25 Ericsson Ge Mobile Communications Holding, Inc. Authentication system for digital cellular communications
US5144667A (en) * 1990-12-20 1992-09-01 Delco Electronics Corporation Method of secure remote access
JP3337892B2 (ja) * 1996-01-31 2002-10-28 キヤノン株式会社 電子商取引システム及び通信装置
US5809141A (en) * 1996-07-30 1998-09-15 Ericsson Inc. Method and apparatus for enabling mobile-to-mobile calls in a communication system
US6061451A (en) * 1996-09-03 2000-05-09 Digital Vision Laboratories Corporation Apparatus and method for receiving and decrypting encrypted data and protecting decrypted data from illegal use
JPH10149396A (ja) * 1996-11-19 1998-06-02 Advance Co Ltd 商取引システム
JPH10336172A (ja) * 1997-06-04 1998-12-18 Kyushu Syst Joho Gijutsu Kenkyusho 電子認証用公開鍵の管理方法
JPH11355268A (ja) * 1998-06-09 1999-12-24 Sony Corp 情報処理装置および方法、情報処理システム、並びに提供媒体
US6338140B1 (en) * 1998-07-27 2002-01-08 Iridium Llc Method and system for validating subscriber identities in a communications network
EP0998073B1 (en) * 1998-10-30 2006-06-14 Matsushita Electric Industrial Co., Ltd. Method and system for inter-equipment authentication and key delivery
JP2000138674A (ja) * 1998-10-30 2000-05-16 Matsushita Electric Ind Co Ltd 機器認証および暗号通信システム
JP2000268097A (ja) * 1999-03-18 2000-09-29 Nippon Telegr & Teleph Corp <Ntt> 電子情報購入方法及びそのプログラム記録媒体
JP2000299682A (ja) * 1999-04-13 2000-10-24 Matsushita Electric Ind Co Ltd 認証書取得装置および認証書取得方法
US7280970B2 (en) * 1999-10-04 2007-10-09 Beepcard Ltd. Sonic/ultrasonic authentication device
JP3762163B2 (ja) * 1999-10-21 2006-04-05 日本電信電話株式会社 耐タンパ性装置によるサービス提供方法,サービス提供システムおよび認証装置のプログラム記録媒体
JP4586237B2 (ja) * 2000-05-23 2010-11-24 沖電気工業株式会社 生体照合システム
JP2002139998A (ja) * 2000-11-01 2002-05-17 Sony Corp 属性確認処理を含むデータ通信システムおよび属性確認処理を含むデータ通信方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008040196A1 (fr) * 2006-09-06 2008-04-10 Huawei Technologies Co., Ltd. Procédé de génération de sak, procédé réalisant la sécurité mac et dispositif de réseau
CN110022320A (zh) * 2019-04-08 2019-07-16 北京深思数盾科技股份有限公司 一种通信配对方法及通信装置
CN112612255A (zh) * 2020-12-24 2021-04-06 特劢丝软件科技(上海)有限公司 数据采集方法、装置、电子设备、存储介质
CN112612255B (zh) * 2020-12-24 2021-10-12 上海赛美特软件科技有限公司 数据采集方法、装置、电子设备、存储介质

Also Published As

Publication number Publication date
KR20050008627A (ko) 2005-01-21
EP1508993A1 (en) 2005-02-23
US20050105735A1 (en) 2005-05-19
CN100338907C (zh) 2007-09-19
JP2004048660A (ja) 2004-02-12
WO2003101042A1 (fr) 2003-12-04
AU2003234777A1 (en) 2003-12-12

Similar Documents

Publication Publication Date Title
CN100338907C (zh) 信息处理系统和方法、信息处理设备和方法
CN1249972C (zh) 使用多个服务器的远程密码验证的系统和方法
CN1695123A (zh) 万维网服务之间的安全措施的动态协商
CN1273901C (zh) 用于计算机装置验证的系统和方法
CN1246781C (zh) 信息处理系统
CN1290052C (zh) 个人电子价值银行系统
CN1252581C (zh) 保密文件和/或认证文件的远控打印
CN1736082A (zh) 分组许可系统以及其服务器及客户端
CN1242587C (zh) 高速、灵活的加密系统的方法及设备
CN1579065A (zh) 用于数据供应、交易和电子投票的方法和系统
CN1460225A (zh) 数据处理系统、存储设备、数据处理装置、及数据处理方法、以及程序
CN1303065A (zh) 数据库管理装置和加密/解密系统
CN1914649A (zh) 认证系统, 认证设备,以及记录介质
CN1476580A (zh) 内容使用权管理系统和管理方法
CN1947372A (zh) 个人信息管理装置、分散密钥存储装置、个人信息管理系统
CN1675879A (zh) 数据处理系统、数据处理装置及其方法和计算机程序
CN1365474A (zh) 认证装置
CN1941699A (zh) 密码方法、主机系统、可信平台模块和计算机安排
CN1695339A (zh) 用于万维网服务的动态互通性合同
CN1504028A (zh) 利用瞬时模数的密码验证
CN1833398A (zh) 安全数据解析器方法和系统
CN1300402A (zh) 信息处理设备、信息处理方法和提供介质
CN1711740A (zh) 轻度可扩展验证协议的密码预处理
CN1758590A (zh) 信息处理装置、信息处理方法和程序
CN1756150A (zh) 信息管理仪器、信息管理方法和程序

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070919