CN101877639A - 信息处理设备、密钥更新方法和程序 - Google Patents

信息处理设备、密钥更新方法和程序 Download PDF

Info

Publication number
CN101877639A
CN101877639A CN2010101677139A CN201010167713A CN101877639A CN 101877639 A CN101877639 A CN 101877639A CN 2010101677139 A CN2010101677139 A CN 2010101677139A CN 201010167713 A CN201010167713 A CN 201010167713A CN 101877639 A CN101877639 A CN 101877639A
Authority
CN
China
Prior art keywords
signature
key
authentication secret
alternative
electronic
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
CN2010101677139A
Other languages
English (en)
Other versions
CN101877639B (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 CN101877639A publication Critical patent/CN101877639A/zh
Application granted granted Critical
Publication of CN101877639B publication Critical patent/CN101877639B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/3247Cryptographic 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 digital signatures
    • 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
    • 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/80Wireless

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种信息处理设备、密钥更新方法和程序,其中信息处理设备包括:签名生成部件,其通过使用与验证密钥KV相关联的签名密钥KS来生成电子签名σ;以及替代密钥生成部件,其对于由签名生成部件将电子签名σ附于其的电子文档m,生成能够验证电子签名σ的有效性的替代验证密钥KV′(KV′≠KV)、以及与替代验证密钥KV′相关联的替代签名密钥KS′(KS′≠KS)。在预定情况下,将验证密钥KV和签名密钥KS更新为替代验证密钥KV′和替代签名密钥KS′。

Description

信息处理设备、密钥更新方法和程序
技术领域
本发明涉及一种信息处理设备、密钥更新方法和程序。
背景技术
典型地,文档创建者在文档上放置签名、印章等(下文中的签名),以便证实证明其创建者。签名明确地表示签名人对文档内容负责。对于纸质文档,文档创建者亲手对它们签名。另一方面,对于电子文档,难以给电子文档盖章,或者签名人难以亲手对电子文档签名。因此,为了基于电子签名唯一地标识签名人,通常使用用于将被称为电子签名的数据附于电子文档的方法。近年来,各种文档被计算机化,并且电子签名变得日益重要。在这种情形下,在很多情况下电子签名对伪造的抵抗变成问题。虽然这对于附于纸质文档的签名也同样成立,但是由于电子数据可以容易地被拷贝,因此电子数据通常需要更谨慎。
电子签名方案的一个例子是基于解决离散对数问题的困难的ElGamal签名方案。在ElGamal方案中,首先,签名人生成用于生成电子签名的签名密钥、以及用于验证电子签名的有效性的验证密钥。然后,签名人使得验证密钥公开可用。签名人通过使用签名密钥和电子文档来生成电子签名,并且将电子签名与电子文档一起提供给验证者。然后,验证者可以通过使用公开可用的验证密钥来验证电子签名。在ElGamal签名方案的情况下,当试图从验证密钥生成签名密钥或电子签名时,需要解决计算上难以解决的离散对数问题。这对于试图从电子签名生成签名密钥的情况也是成立的。
然而,如果签名密钥由于某种原因被暴露给第三方,则第三方可以自由地伪造电子签名。因此,如果签名密钥被暴露,则难以在真正的签名人的电子签名和第三方使用所暴露的签名密钥伪造的电子签名之间进行区分。在签名被附于电子文档的情况下,可以容易地在副本和原始文档之间进行区分,但是在电子数据的情况下,由于副本和原始文档是相同的,因此难以在它们之间进行区分。因此,在发现签名密钥暴露时的阶段,采取用于使电子签名、签名密钥和验证密钥无效的措施。在这种情况下,电子签名所附的电子文档实际上也无效。
为了减小由这种签名密钥暴露导致的破坏而设计了各种系统。例如,日本专利第3640785号公开了一种方法,其中针对每个签名密钥设置有效期,并且废止有效期过期的签名密钥(参见图21)。使用该方法,如果签名密钥被暴露,则与关联于所暴露的密钥的周期之前和之后的周期相关联的签名密钥可以保持有效。因此,不需要使在除与所暴露的签名密钥相关联的周期之外的周期内生成的电子签名、以及电子签名所附的电子文档无效。结果,可以减少要无效的电子文档量。
发明内容
然而,即使在使用日本专利第3640785号中公开的技术时,以所暴露的签名密钥生成的所有电子签名也都无效,并且电子签名所附的所有电子文档实际上也变为无效。自然地,当签名密钥即使未暴露但是由于某种原因也将无效时,相应的电子文档也将无效。如上所述,电子签名的角色与置于在纸质文档上的签名相同。因此,即使对电子文档,根据文档的类型也存在不易再次将电子签名附于电子文档的情况。因此,为了不致使电子签名无效,严格地管理电子签名以防其暴露是非常重要的。然而,难以确保签名密钥的暴露绝对不发生。
因此,本发明是鉴于前述问题提出的,并且期望提供一种新颖和改进的信息处理设备、密钥更新方法和程序,其使得即使在用于生成电子签名的签名密钥被暴露时,也能够更新签名密钥和验证密钥而无需使电子签名无效。
为了克服前述问题,根据本发明一个实施例的一种信息处理设备包括:签名生成部件,其通过使用与验证密钥KV相关联的签名密钥KS来生成电子签名σ;以及替代密钥生成部件,其对于由签名生成部件将电子签名σ附于其的电子文档m,生成能够验证电子签名σ的有效性的替代验证密钥KV′(KV′≠KV)、以及与替代验证密钥KV′相关联的替代签名密钥KS′(KS′≠KS)。在预定情况下,将验证密钥KV和签名密钥KS更新为替代验证密钥KV′和替代签名密钥KS′。
当签名生成部件对于N个电子文档mj生成了N个电子签名σj(j=1,....,N,并且N≥2)时,替代密钥生成部件可以生成替代验证密钥KV′、以及与替代验证密钥KV′相关联的替代签名密钥KS′,其中该替代验证密钥KV′能够验证对于电子文档和电子签名的N个组合(mj,σj)的M个组合(2≤M≤N)的电子签名的有效性。
当签名密钥KS被暴露时或者当过去预定周期时,替代密钥生成部件可以生成替代验证密钥KV′和替代签名密钥KS′,以将验证密钥KV和签名密钥KS更新为替代验证密钥KV′和替代签名密钥KS′。
当替代签名密钥KS′被暴露时或者当过去预定周期时,替代密钥生成部件可以生成替代验证密钥KV″(KV″≠KV′,KV″≠KV)和替代签名密钥KS″(KS″≠KS′,KS″≠KS),以将替代验证密钥KV′和替代签名密钥KS′更新为替代验证密钥KV″和替代签名密钥KS″。
替代密钥生成部件还可以包括:第一元素选择器,其任意地选择要包含在替代签名密钥KS′中的第一元素;第二元素确定器,其通过使用第一元素来确定要包含在替代验证密钥KV′中的第二元素;元素计算器,其确定方程的解,在该方程中,以第一和第二元素来替换包含在验证方程中的、与第一和第二元素相关联且包含在验证密钥KV和签名密钥KS中的元素,并且与第一和第二元素无关联且包含在验证密钥KV和签名密钥KS中的元素是未知的,其中该验证方程用于通过使用验证密钥KV来验证电子签名σ的有效性;以及替代密钥确定器,其确定至少包含第一元素选择器选择的第一元素的替代签名密钥KS′、以及至少包含第二元素确定器确定的第二元素和元素计算器执行的确定的结果的替代验证密钥KV′。
验证方程可以被表示为:
gu=yr*α*ry*smod p  (p是质数),
其中r和s表示包含在电子签名σ中的两个参数,y表示有关电子文档m以及与第二元素相关联且包含在验证密钥KV中的元素的参数,α表示与元素计算器执行的确定的结果相关联且包含在验证密钥KV中的元素,并且u表示对于电子文档m以及参数r和y的哈希值。
根据本发明另一实施例的一种密钥更新方法包括以下步骤:通过使用与验证密钥KV相关联的签名密钥KS来生成电子签名σ;对于在签名生成步骤中将电子签名σ附于其的电子文档m,生成能够验证电子签名σ的有效性的替代验证密钥KV′(KV′≠KV)、以及与替代验证密钥KV′相关联的替代签名密钥KS′(KS′≠KS);以及在预定情况下,将验证密钥KV和签名密钥KS更新为在替代密钥生成步骤中生成的替代验证密钥KV′和替代签名密钥KS′。
根据本发明另一实施例的一种程序使计算机实现:签名生成功能,其通过使用与验证密钥KV相关联的签名密钥KS来生成电子签名σ;替代密钥生成功能,其对于通过签名生成功能将电子签名σ附于其的电子文档m,生成能够验证电子签名σ的有效性的替代验证密钥KV′(KV′≠KV)、以及与替代验证密钥KV′相关联的替代签名密钥KS′(KS′≠KS);以及更新功能,其在预定情况下,将验证密钥KV和签名密钥KS更新为通过替代密钥生成功能生成的替代验证密钥KV′和替代签名密钥KS′。
如上所述,根据本发明,即使在用于生成电子签名的签名密钥被暴露时,也可以更新签名密钥和验证密钥而无需使电子签名无效。
附图说明
图1是示意性地示出在用于生成电子签名的签名密钥被暴露时所出现的问题的图;
图2是示出替代验证密钥的特性的图;
图3是示出SC08方案中的实体配置的一个例子的图,SC08方案是可替代密钥电子签名系统的一个例子;
图4是示出SC08方案中的替代密钥生成方法、电子签名生成方法和电子签名验证方法的流程图;
图5是示出SC08方案中的替代密钥生成方法的流程图;
图6是示出SC08方案中的系统参数生成和提供方法的流程图;
图7是示出SC08方案中的电子签名生成方法的流程图;
图8是示出SC08方案中的电子签名验证方法的流程图;
图9是示出SC08方案中的替代密钥生成方法的详情的流程图;
图10是示出根据本发明一个实施例的可替代密钥电子签名方案中的实体配置的一个例子的图;
图11是示出根据实施例的可替代密钥电子签名方案中的替代密钥生成方法、密钥更新方法、电子签名生成方法和电子签名验证方法的流程图;
图12是示出根据实施例的密钥更新方法与其它密钥更新方法之间的比较的图;
图13是示出根据实施例的电子签名生成方法的流程图;
图14是示出根据实施例的电子签名验证方法的流程图;
图15是示出根据实施例的替代密钥生成方法的详情的流程图;
图16是示出根据实施例的密钥更新系统的配置例子、以及签名人终端和验证者终端的功能配置例子的图;
图17是示出根据扩展方案的电子签名生成方法的流程图,该扩展方案是根据实施例的替代密钥生成方法的扩展;
图18是示出根据实施例的扩展方案的电子签名验证方法的流程图;
图19是示出根据实施例的扩展方案的替代密钥生成方法的详情的流程图;
图20是示出根据实施例的签名人终端和验证者终端的硬件配置例子的图;以及
图21是示意性地示出根据限时电子签名方案的密钥更新方法的图。
具体实施方式
下面将参考附图详细地描述本发明的优选实施例。在这里及附图中,以相同标号表示具有基本上相同功能配置的元件,并且不给出重复描述。
[描述流程]
现在将简要地描述下面关于本发明实施例给出的描述流程。首先,参考图1简要地描述在电子签名方案中签名密钥被暴露时出现的问题。另外,参考图21简短地描述针对签名密钥暴露的典型对策,并且讨论所述对策的问题。接下来,参考图2描述在根据实施例的密钥更新方法中使用的替代密钥的特性。
另外,参考图3到9,结合由Koichi Sakumoto和Keisuke Tanaka发表的″Key-Substitutable Signature″,The 2008 Symposium onCryptography and Information Security,宫崎,日本,1月22日至25日,2008的方案(在下文中被称为“SC08方案”)的例子,详细地描述替代密钥生成方法。
在根据实施例的密钥更新方法中使用的替代密钥生成方法是采用创新途径以便应用于SC08方案中的密钥更新系统的方法。因此,虽然根据实施例的替代密钥生成方法不同于SC08方案,但是其概念有助于更好地理解实施例的技术内容,因此详细地进行描述。
此后,参考图10到16详细地描述根据实施例的可替代密钥电子签名方案、以及其密钥更新系统的配置。首先,参考图10描述根据实施例的密钥更新系统中所包括的实体的配置例子。此后,参考图11描述由签名人和验证者执行的过程。其后,参考图12描述根据实施例的密钥更新方法与其它密钥更新方法之间的不同,同时比较方案。
其后,参考图13到15描述用于根据实施例的可替代密钥电子签名方案的具体算法。此后,参考图16描述根据实施例的密钥更新系统的系统配置、以及签名人终端和验证者终端的功能配置。接下来,参考图17到19描述根据实施例的密钥更新方法的一个扩展例子。结合扩展方法,描述用于为多个对(电子签名和电子文档的)生成替代密钥的方法。其后,参考图20描述根据实施例的签名人终端和验证者终端的硬件配置例子。
(描述内容)
1.实施例
1-1:签名密钥的暴露
1-2:限时签名方案
1-3:SC08方案
1-3-1:系统配置
1-3-2:替代密钥生成方法
1-3-3:算法
1-4:本方案
1-4-1:系统配置
1-4-2:密钥更新方法比较
1-4-3:算法
1-4-4:终端的功能配置
1-5:扩展方案
1-5-1:算法
1-6:终端的硬件配置例子
<1.实施例>
现在将描述本发明的实施例。实施例提出了如下方案(在下文中被称为“本方案”):该方案用于在即使电子签名所使用的签名密钥被暴露时,也能将签名密钥更新为另一签名密钥而无需使先前以该签名密钥生成的电子签名无效。换句话说,通过本方案,即使在所暴露签名密钥被废止时,先前使用该签名密钥所签名的电子文档也保持有效。下面将描述本方案。
[1-1:签名密钥的暴露]
首先,将参考图1简要地描述签名密钥的暴露。图1示意性地示出在用于生成附于电子文档m的电子签名σ的签名密钥sk被暴露时所出现的问题。
如图1所示,可以使用与签名密钥sk配对的认证验证密钥pk来验证通过使用签名密钥sk而附于电子文档m的认证电子签名σ。验证密钥pk是公开可用的。认证电子签名σ的验证使用预定的验证方程。也就是说,验证者通过将电子文档m、电子签名σ和验证密钥pk的信息输入到预定验证方程并且确定预定验证方程是否成立来验证电子签名σ的有效性。其中以上述方式确定用于电子文档m的电子签名σ是对于验证密钥pk的认证电子签名的情况被称为“验证密钥pk接受电子文档m和电子签名σ的对(m,σ)”。
签名密钥sk由签名人秘密管理并且通常不为其他人所知。不用说,签名人管理签名密钥sk,使得即使验证者也不知。然而,难以确保签名密钥sk的暴露绝对不发生。例如,签名人使用的终端受到侵袭从而导致存储在该终端中的签名密钥sk的信息泄露的事件也是非常可能的。当由于某种原因签名密钥sk被暴露给其他人(在下文中被称为“攻击者”)时(在步骤S1中),攻击者可以将电子签名σ附于任意文档。换句话说,攻击者可以伪造电子签名σ。
现在将作为示例讨论攻击者使用所暴露的签名密钥sk将电子签名σ附于电子文档m1的情况。在这种情况下,由于附于电子文档m1的电子签名σ是以认证签名密钥sk生成的签名,因此电子签名σ被验证密钥pk接受。也就是说,电子签名σ被接受作为认证签名人的签名,虽然它是由攻击者生成的签名。例如,当电子文档m1是房地产销售合同时,认证签名人拥有的房地产有可能在他或她注意到之前,在没有他/她的许可的情况下被售出。
因此,当发现签名密钥sk的暴露时,认证签名人使签名密钥sk无效(在步骤S2中)。当签名密钥sk无效时,与签名密钥sk配对的验证密钥pk也变为无效。另外,以签名密钥sk生成的电子签名σ变为无效。例如,在电子文档m是合同的情况下,当电子签名σ变为无效时,使用电子文档m达成的合同变为无效。当电子文档m是诸如内部文档的低重要性文档时,可以使用重新生成的签名密钥sk′再次将电子签名σ′附于该电子文档。然而,当电子文档m是诸如与第三方达成的合同的重要文档时,在很多情况下不可以简单地将电子签名σ′附于该电子文档。
鉴于该情形,本发明人构想出生成另一验证密钥pk′的想法,该验证密钥pk′仅仅接受先前由认证签名人附于电子文档m的电子签名σ而不接受攻击者伪造的电子签名σ。至今采取了各种措施来处理先前生成的电子签名σ由于签名密钥sk的暴露而变为无效的问题。然而,这种措施中有许多旨在减轻电子签名σ由于签名密钥sk的暴露而无效的影响,而没有提供用于保存要无效的电子签名σ的手段。现在将介绍限时签名方案作为针对签名密钥sk暴露的措施的一个例子。
[1-2:限时签名方案]
限时签名方案是如图21所示的方案。在这个方案中,在每个预定周期更新签名密钥sk。另一方面,验证密钥pk在所有周期保持相同。例如,在周期1内,使用签名密钥sk1并且生成仅仅在周期1内有效的电子签名。当时间过去并且到达周期2时,使用仅仅在周期2内有效的签名密钥sk2来生成仅仅在周期2内有效的电子签名。在这个方案的情况下,如果在周期2内使用签名密钥sk1来生成电子签名,则该电子签名不为验证密钥pk所接受。
因此,如果如在图21的情况B中签名密钥sk1、sk3和sk4被暴露,并且如在情况C中周期1、3和4内的电子签名无效,则在周期2、5、...内的电子签名保持有效。因此,具有在周期2、5、...内使用签名密钥sk2、sk5、...生成的电子签名的电子文档不必无效。然而,具有在周期1、3和4内生成的电子签名的电子文档被使得无效。因此,这个方案没有为上述问题提供基本解决方案。为了解决上述问题,仍然需要提供用于保存以暴露之前的签名密钥sk生成的电子签名σ的手段。
[1-3:SC08方案]
如上所述,本方案涉及如下方法:其中使用另一签名密钥sk′(在下文中被称为替代签名密钥sk′)来废止所暴露的签名密钥sk而无需使电子文档m和电子签名σ无效,所述另一签名密钥sk′接受在暴露之前由签名人使用签名密钥sk生成的电子文档m和电子签名σ的对。换句话说,本方案涉及用于将所暴露的签名密钥sk更新为替代签名密钥sk′的方法。用于生成如本方案的密钥更新方案所使用的替代签名密钥sk′、以及与替代签名密钥sk′配对的验证密钥pk′(在下文中的替代验证密钥pk′)的方法目前是不可用的。然而,关于替代签名密钥sk′和替代验证密钥pk′(在下文中可以被称为“替代密钥”)的概念,由Sakumoto和Tanaka作出的有关研究结果的报告(SC08方案)是可用的。因此,在详细描述本方案之前将描述SC08方案。
[替代验证密钥pk′的特性]
首先,将参考图2简要地描述替代验证密钥pk′的特性。如上所述,替代验证密钥pk′是用于接受以签名密钥sk生成的电子签名σ和电子签名σ所附的电子文档m的密钥。因此,对于电子文档m和电子签名σ的对而生成替代验证密钥pk′。自然地,替代验证密钥pk′不同于与签名密钥sk配对的验证密钥pk。
替代验证密钥pk′至少具有以下条件:(1)除签名人之外没有人可以在未经许可的情况下生成替代验证密钥pk′;以及(2)以与替代验证密钥pk′配对的替代签名密钥sk′生成的电子签名σ′不能以签名密钥sk和验证密钥pk伪造。条件(1)提供对密钥替换攻击的抵抗。条件(2)使得可以防止伪造以替代签名密钥sk′生成的电子签名σ′。在SC08方案中,提出了用于生成这种替代密钥的方案。
[1-3-1:系统配置]
在SC08方案中,预想五个实体作为电子签名系统中的模型。如图3所示,在SC08方案中预想的五个实体是系统管理员、签名人、验证者、证书管理机构和替代签名人(在下文中被称为“替代密钥生成者”)。系统管理员是通过使用系统参数生成算法(SetupKSS)来生成系统参数cp的实体。签名人是如下实体:其通过使用密钥生成算法(GenKSS)来生成对签名人唯一的签名密钥sk、以及与签名密钥sk配对的验证密钥pk。签名人还通过使用签名生成算法(SigKSS)来生成用于电子文档m的电子签名σ。
验证者是通过使用签名验证算法(VerKSS)来验证附于电子文档m的电子签名σ的有效性的实体。替代密钥生成者是如下实体:其通过使用替代密钥生成算法<ORG(sk),SUB>来生成替代签名密钥sk′、以及与替代签名密钥sk′配对的替代验证密钥pk′。在生成用于电子文档m以及附于电子文档m的电子签名σ的替代密钥期间,替代密钥生成者在与作为附于电子文档m的电子签名σ的生成者的签名人交互的同时生成替代密钥。证书管理机构是用于发布证书的实体,该证书用于保证签名人生成的验证密钥或者替代密钥生成者生成的替代验证密钥的有效性。
通过执行如图4所示的过程,那些实体生成签名密钥sk、验证密钥pk、电子签名σ、替代签名密钥sk′和替代验证密钥pk′,并且验证电子签名σ。假定系统管理员已经通过使用系统参数生成算法(SetupKSS)生成了系统参数cp。通过使用SetupKSS生成系统参数cp被表示为:
cp=SetupKSS(1λ)(1)
其中1λ表示安全参数。
(通过签名人的密钥生成处理)
首先,将描述签名人执行的密钥生成过程。如图4所示,在密钥生成处理中,签名人从系统管理员获得系统参数cp。其后,签名人将系统参数cp输入到密钥生成算法(GenKSS),以生成签名密钥sk和验证密钥pk的对。通过使用GenKSS生成(sk,pk)被表示为:
(sk,pk)=GenKSS(cp)(2)
当使用密钥生成算法(GenKSS)来生成签名密钥sk和验证密钥pk时,签名人存储所生成的签名密钥sk和验证密钥pk的对。在适当时,签名人向证书管理机构登记验证密钥pk作为他/她的验证密钥,并且接收其证书。
(通过签名人的签名生成处理)
接下来,将描述签名人执行的签名生成过程。如图4所示,签名人准备要签名的电子文档m和所存储的签名密钥sk。然后,签名人将签名密钥sk和电子文档m输入到签名生成算法(SigKSS),以生成电子签名σ。通过使用SigKSS生成电子签名σ被表示为:
σ=SigKSS(sk,m)(3)
签名人将通过方程(3)生成的电子签名σ(算法输出值)设为电子文档m的电子签名σ。
(通过签名人和替代密钥生成者的替代密钥生成处理)
接下来,将给出通过签名人和替代密钥生成者的协作执行的替代密钥生成过程的概要的描述。下面描述替代密钥生成方法的详情。首先,签名人准备电子文档m、电子签名σ、用于生成电子签名σ的签名密钥sk、以及与签名密钥sk配对的验证密钥pk。然后,签名人将所准备的电子文档m、电子签名σ和验证密钥pk提供到替代密钥生成者。替代密钥生成者从签名人获得电子文档m、电子签名σ和验证密钥pk。
其后,签名人和替代密钥生成者将验证密钥pk、电子文档m和电子签名σ作为共同参数输入到替代密钥生成算法<ORG(sk),SUB>。另外,通过与替代密钥生成者的交互,签名人向替代密钥生成者提供信息,该信息使替代密钥生成者能够通过使用签名密钥sk的信息来生成替代密钥。然后,替代密钥生成者生成替代验证密钥pk′以及与替代验证密钥pk′配对的替代签名密钥sk′,其中替代验证密钥pk′将接受电子文档m和电子签名σ。
通过使用<ORG(sk),SUB>生成sk′和pk′被表示为:
(sk′,pk′)=<ORG(sk),SUB>(pk,m,σ)(4)
其中ORG表示签名人并且SUB表示替代密钥生成者。也就是说,ORG(sk)表示在替代密钥生成算法中签名人使用签名密钥sk。然而,签名密钥sk不对替代密钥生成者SUB公开并且由签名人ORG使用来执行封闭计算,并且仅仅将计算结果提供到替代密钥生成者。下面描述处理的详情。当基于上述方程(4)生成替代签名密钥sk′和替代验证密钥pk′时,在适当时,替代密钥生成者向证书管理机构登记替代验证密钥pk′作为他/她的验证密钥,并且接收其证书。
(通过验证者的签名验证处理)
接下来,将描述验证者执行的过程。验证者首先从签名人获得电子签名σ、电子文档m和验证密钥pk。接下来,在适当时,基于证书管理机构的证书,验证者检查验证密钥pk是否确实是签名人的验证密钥。然后,验证者将验证密钥pk、电子文档m和电子签名σ输入到签名验证算法(VerKSS),以确定验证结果vout是0(错误)还是1(接受)。通过使用VerKSS确定验证结果vout被表示为:
vout=VerKSS(pk,m,σ)(5)
根据基于方程(5)确定的验证结果vout,验证者接受vout=1的(σ,m),并且拒绝vout=0的(σ,m)。这同样适用于使用替代验证密钥pk′来执行验证过程的情况。
如上所述,在SC08方案中,签名人和替代密钥生成者彼此交互以生成替代验证密钥pk′,其将接受以签名密钥sk生成并附于电子文档m的电子签名σ。SC08方案最初不是为实现密钥更新方法而设计的,而是用于使不同于签名人的实体(替代密钥生成者)能够以安全的方式生成替代密钥的技术。在SC08方案中,与真正的签名人交互是生成替代密钥的需要,以便防止在未经许可的情况下生成替代密钥。因此,如上所述,替代密钥生成处理采用基于交互的方案,其中针对各种类型的输入信息而采取创新途径。下面将结合更具体的例子详细地描述替代密钥生成方法。
[1-3-2:替代密钥生成方法]
首先,参考图5。图5是示出SC08方案中的替代密钥生成算法<ORG(sk),SUB>内的处理的一般流程的图。如图5所示,假定验证密钥pk、电子文档m和电子签名σ已经被输入到签名人和替代密钥生成者两者作为共享信息。签名人也使用签名密钥sK。然而,要注意,为了防止替代密钥生成者伪造签名人的电子签名,不将签名密钥sk提供到替代密钥生成者。
替代密钥生成者生成替代签名密钥sk′并且使用替代签名密钥sk′的信息来生成替代验证密钥pk′的部分信息。如上所述,替代验证密钥pk′将要接受以签名密钥sk生成的电子签名σ。因此,不知道签名密钥sk的信息的替代密钥生成者在没有获取到签名密钥sk的信息的情况下无法生成替代验证密钥pk′。替代验证密钥pk′还要接受以替代签名密钥sk′生成的电子签名σ′(σ′≠σ)。因此,替代验证密钥pk′必须包含有关替代签名密钥sk′的信息。出于该原因,如上所述,由替代密钥生成者生成要包含在替代验证密钥pk′中的部分信息。
将由替代密钥生成者生成的、要包含在替代验证密钥pk′中的部分信息从替代密钥生成者提供到签名人(在步骤S12中)。在接收到替代验证密钥pk′的部分信息时,签名人生成随机数并且将该随机数提供到替代密钥生成者(在步骤S14中)。在从签名人接收到随机数时,替代密钥生成者使用所接收的随机数来将用于生成替代验证密钥pk′的替代签名密钥sk′的信息提供到签名人(在步骤S16中)。如上所述,替代验证密钥pk′还将要接收以替代签名密钥sk′生成的电子签名σ′。因此,必须将有关替代签名密钥sk′的信息提供到签名人。
然而,如果签名人已知替代签名密钥sk′,则可以在未经许可的情况下使用以替代签名密钥sk′生成的电子签名σ′。因此,通过随机数的使用,替代密钥生成者向签名人提供采用如下形式的有关替代签名密钥sk′的信息:在该形式中,替代签名密钥sk′不为签名人所识别并且可以生成替代验证密钥pk′。当接收到这种有关替代签名密钥sk′的信息时,签名人生成替代验证密钥pk′(在步骤S18中)。此后,签名人将所生成的替代验证密钥pk′提供到替代密钥生成者(在步骤S20中)。也就是说,虽然在SC08方案中如此称作替代密钥生成者,但是实际上签名人生成替代验证密钥pk′。
通过上述方法生成替代签名密钥sk′和替代验证密钥pk′。到此为止参考图5描述了SC08方案中的替代密钥生成处理的一般流程。然而,在上面的描述中,没有给出计算方法的具体描述。因此,下面将详细地描述用于实现图5所示的处理步骤的内容的具体计算算法。
[1-3-3:算法]
在描述用于替代密钥生成算法的具体计算之前,给出SC08方案中的系统参数生成算法、密钥生成算法、签名生成算法和签名验证算法的描述。这些算法彼此相关,并且包含用于实现替代密钥生成算法且作为SC08方案的特性的元素。
(系统参数生成算法)
首先,将参考图6描述以上述方程(1)表示的系统参数生成算法(SetupKSS)。图6是示出系统参数生成算法中的一个具体计算例子的流程图。系统管理员执行系统参数生成算法。
在系统参数生成算法中,首先,在步骤S30中,对于质数q=3(mod4),选择λ位质数p使得满足:
p=2q+1(6)
接下来,在步骤S32中,选择针对阶数p的Zp *的生成器g。在这种情况下,Zp表示以质数p为模的整数有限域,并且Zp *表示其乘法群。在步骤S34中,将包含质数p和生成器g的系统参数cp设置成使得cp=(g,p)。到此为止的描述涉及系统参数生成算法。当如上所述地生成系统参数cp时,在步骤S36中,系统管理员将系统参数cp提供到各个实体。在下面的描述中,假定系统参数cp已经被提供到各个实体。
(密钥生成算法和签名生成算法)
接下来,将参考图7描述以上述方程(2)表示的密钥生成算法(GenKSS)和以上述方程(3)表示的签名生成算法。图7是示出密钥生成算法和签名生成算法(SigKSS)中的一个具体计算例子的流程图。签名人执行密钥生成算法和签名生成算法。
首先,将描述密钥生成算法。在密钥生成算法中,首先,在步骤S40中,随机地选择Zq的生成器x1和x2。接下来,在步骤S42中,使用所选生成器x1和x2来确定y1和y2,其被表示为:
y1=gx1modp    (7)
y2=gx2modp    (8)
接下来,在步骤S44中,随机地选择Zq *的生成器α。在步骤S46中,随机地选择{0,1}λ的生成器w。可以适当地修改步骤S44和S46中的处理过程。到此为止的描述涉及密钥生成算法。作为上述计算的结果,生成验证密钥pk和签名密钥sk分别被表示为:
pk=(y1,y2,α,w)(9)
sk=(x1,x2,α)(10)
接下来,将描述签名生成算法。如上述方程(3)表示的那样,将通过密钥生成算法生成的签名密钥sk以及电子文档m输入到签名生成算法。然而,由于验证密钥pk也已确定,因此还可以将验证密钥pk加入输入值。通过如此改变输入值,例如,当在签名生成算法中包括与以方程(7)或(8)表示的y1或y2相同的算术方程时,不必执行计算处理。在下面的描述中,分别以y1和y2表示包含与上述方程(7)和(8)相同的算术方程的部分。
在签名生成算法中,首先,在步骤S50中,随机地选择Zq *的生成器k1。接下来,在步骤S52中,使用所选生成器k1来确定r1,其被表示为:
r1=gk1modp    (11)
接下来,在步骤S54中,使用r1、x1和x2来确定k2,其被表示为:
k2=h3(r1,x1,x2)(12)
其中h3()是哈希函数。哈希函数是用于从比特序列a∈{0,1}*生成特定范围内的数值的函数。通过将比特序列应用于哈希函数而获得的值被称为“哈希值”。在方程(12)中,作为参数给出的r1、x1和x2例如以其比特序列耦合,并且被输入到哈希函数h3。要注意,针对参数输入而执行的处理不限于耦合。
在步骤S56中,使用所确定的k2来确定r2,其被表示为:
r2=gk2modp    (13)
接下来,在步骤S58中,使用电子签名σ所附的电子文档m、在上述计算中确定的参数r1和r2、以及包含在验证密钥pk中的y1和y2(其还可以从x1和x2生成)来确定参数c和d,其被表示为:
c=h1(m,r1,r2,y1,y2,w)(14)
d=h2(m,r1,r2,y1,y2,w)(15)
其中h1()和h2()是哈希函数。例如,在耦合之后,将参数m、r1、r2、y1、y2和w输入到各个哈希函数。要注意,针对参数输入而执行的处理不限于耦合。
在步骤S60中,使用所确定的参数c和d来确定y和r,其被表示为:
y=y1·y2c modp(16)
r=r1·r2dmodp(17)
接下来,在步骤S62中,使用在步骤S50到S60中获得的参数来确定Zq的生成器s,使得满足:
H(c,r,y)=(x1+c·x2)r·α+(k1+d·k2)y·smod q    (18)
其中H()是哈希函数。例如,在耦合之后,将参数c、r和y输入到哈希函数。要注意,针对参数输入而执行的处理不限于耦合。上述计算产生电子签名σ,其被表示为:
σ=(r1,r2,s)(19)
(签名验证算法)
接下来,将参考图8描述以上述方程(5)表示的签名验证算法。图8是示出SC08方案中的签名验证算法内的一个具体计算例子的流程图。验证者执行签名验证算法。
首先,在步骤S70中,验证者获得公开可用的验证密钥pk(参见方程(9))。在步骤S72中,验证者从签名人获得电子签名σ(参见方程(19))和电子文档m。验证者将所获得的信息输入到签名验证算法,以验证电子签名σ。假定验证者还预先获得了系统参数。
在步骤S74中,在SC08方案的签名验证算法中,根据上述方程(14)、(15)、(16)和(17)确定参数c、d、y和r。然后,将所确定的参数代入验证方程(A),其被表示为:
gH(c,r,y)=yr·α·ry·smod p  (20)
并且在步骤S76中验证验证方程(A)是否成立。当在步骤S78中验证方程(A)成立时,在步骤S80中将电子签名σ看作认证了的并且输出表示“接受”的输出值vout=1,从而结束系列处理。另一方面,当在步骤S78中验证验证方程(A)不成立时,在步骤S82中输出表示错误的输出值vout=0,从而结束系列处理。作为上述计算的结果,用于电子文档m的电子签名σ的有效性被验证。
(SC08方案的思想)
不用多说,电子签名方案以其验证方程的形式进行管理。上述验证方程(A)对SC08方案是唯一的。通过修改ElGamal-签名-方案验证方程来推导验证方程(A),其被表示为:
电子签名:σ=(r,s)、r=gkmodp
签名密钥: sk = x &Element; Z p *
验证密钥:pk=y=g*modp
验证方程:gH(m,r)=yr·rsmodp  (21)
对于ElGamal签名系统,当对于阶数q的Zp *的生成器g用作关于质数q和p的系统参数时,仅仅存在一个接受电子文档m和电子签名σ的对的验证密钥pk,其中p=2*q+1并且q=3(mod 4)。因此,当试图基于ElGamal签名方案的验证方程而配置签名生成系统时,通常不生成替代密钥。因此,所设计的是以如上述方程(20)表示的SC08方案验证方程(A)。将稍微更详细地描述SC08方案的思想。
首先,在SC08方案中,加入验证密钥pk的元素并且修改验证方程。在这种情况下,还给出以下考虑:(1)可以通过与认证签名人的交互来生成替代密钥;以及(2)除非执行与认证签名人的交互,否则在未经许可的情况下无法生成替代验证密钥。Sakumoto等人首先注意到这样的事实:即使在给定验证密钥时,ElGamal签名方案也不具有能够计算满足验证方程的电子签名的属性。通过注意ElGamal签名方案的该属性并且参考以方程(21)表示的验证方程,Sakumoto等人还注意到当出现在验证方程中的元素(即电子签名的元素r和验证密钥的元素y)对称时,即使在给定电子签名时,也不能计算满足验证方程的验证密钥。在这种情况下使用的术语“对称”指的是形式(ab*ba),其中b被显示在a的肩部(指数),并且a被显示在b的肩部(指数)。
基于该思想,Sakumoto等人将参数α加入验证密钥pk,其被表示为:
pk=(y,α)(22)
并且将验证方程转换为如下表示的验证方程:
gH(m,r,y)=yr·α·ry·smod p    (23)
将参数α加入验证密钥pk使得可以生成替代密钥。然而,使用验证方程(23)允许替代密钥生成者计算原始签名密钥sk,其中验证方程(23)基于以方程(22)表示验证密钥pk而成立。例如,对于替代签名密钥sk′=x′和替代验证密钥pk′=(y′,α′),替代密钥生成者可以基于以下而确定应当由签名人秘密保存的参数k:
H(m,r,y′)=x′·r·α+k·y′·smodq(24)
另外,已知使用原始签名sk=x满足:
H(m,r,y)=x·r·α+k·y·smod q    (25)
因此,参数k的使用使得可以根据方程(25)确定签名密钥sk。
因此,Sakumoto等人复制包含在以方程(9)和(10)表示的签名密钥sk和验证密钥pk中的参数,以便防止替代密钥生成者生成原始签名密钥sk。自然地,包含在替代签名密钥sk′和替代验证密钥pk′中的参数也被复制。在SC08方案中,还给出考虑,以便防止签名人生成由替代密钥生成者秘密保存的替代签名密钥sk′。SC08方案是基于该思想的。现在将给出基于该思想实现的SC08方案替代密钥生成算法的描述。
(替代密钥生成算法)
接下来,将参考图9描述以上述方程(4)表示的替代密钥生成算法。图9是示出SC08方案的替代密钥生成算法中的一个具体计算例子的流程图。替代密钥生成算法基于交互协议并且通过签名人和替代密钥生成者之间的交互来实现。
在替代密钥生成算法中,首先,在步骤S100中,签名人输入签名密钥sk。然而,不将签名密钥sk提供到替代密钥生成者。在步骤S102中,替代密钥生成者随机地选择Zq的生成器x1′和x2′,以确定如下表示的y1′和y2′:
y1′=gx1′modp  (26)
y2′=gx2′modp  (27)
其中x1′和x2′是要包含在替代签名密钥sk′中的参数,并且y1′和y2′是要包含在替代验证密钥pk′中的参数。在步骤S104中,替代密钥生成者将y1′和y2′提供给签名人。接下来,在步骤S106中,签名人随机地选择Zq的生成器w′。在步骤S108中,签名人将w′提供给替代密钥生成者。
在接收到w′时,在步骤S110中,替代密钥生成者使用w′来确定分别表示如下的c′和z:
c′=h1(m,r1,r2,y1′,y2′,w′)(28)
z=x1′+c′·x2′mod q    (29)
接下来,在步骤S112中,替代密钥生成者将z提供到签名人。要注意,z包含构成替代签名密钥sk′的部分的参数x1′和x2′,并且以x1′和x2′不可单独识别的形式被提供到签名人。接下来,在接收到z时,签名人通过使用上述方程(14)、(15)、(16)和(17)来确定c、d、y和r,并且确定满足方程(18)的k。在很多情况下,签名人不具有参数k1和k2。因此,在这种情况下,要重新计算参数k1和k2。
不用说,当签名人具有参数k1和k2时,可以省略这些计算。签名人通过使用上述方程(12)来确定k2,然后通过代入所确定的k和k2来确定k1:
k1=k-d·k2modq(30)
在这个阶段,获得了参数k1和k2。接下来,签名人基于上述方程(28)确定c′。签名人还基于以下确定d′:
d′=h2(m,r1,r2,y1′,y2′,w′)(31)
接下来,签名人基于以下确定y′和r′:
y′=y1′y2′c′modp  (32)
r′=r1·r2d′modp(33)
另外,通过使用所确定的y′,签名人验证下面的方程(34)是否成立。
y′=gzmod p    (34)
在这种情况下,当方程(34)不成立时,签名人输出错误,从而结束系列处理。
接下来,在步骤S114中,签名人确定α′,其满足:
H(c′,r′,y′)=z·r′·α′+(k1+d′·k2)y′·smod q    (35)
此后,签名人将参数α′提供到替代密钥生成者。参数α′与参数y1′、y2′和w′组合,以生成替代验证密钥pk′。当α′包含在替代签名密钥sk′中时,这表示此时还生成替代签名密钥sk′。该安排可以使得由签名人生成替代验证密钥pk′并且将其提供到替代签名人。在SC08方案中,执行上述方法以生成替代验证密钥pk′和替代签名密钥sk′。
上面详细地描述了SC08方案。下面将描述根据本方案的密钥更新方法。根据本方案的替代密钥生成方法是如下方法:该方法在遵循根据SC08方案的替代密钥生成方法的基本思想的同时,采用方案以便应用于密钥更新方案。因此,关于针对上述SC08方案替代密钥生成方法而给出的考虑,将详细地描述使用根据本方案的密钥更新方法的替代密钥生成方法。
[1-4:本方案]
本方案提出一种方法,其用于在即使用于电子签名的签名密钥被暴露时,也将该签名密钥更新为替代签名密钥而无需使先前以该签名密钥生成的电子签名无效。虽然本方案与SC08方案的类似之处在于使用了替代密钥,但是要注意,与上述SC08方案不同,本方案涉及密钥更新方法。
[1-4-1:系统配置]
首先,将描述根据本方案的系统配置。在本方案中,预想四个实体作为电子签名系统中的模型。如图10所示,本方案中所预想的四个实体是系统管理员、签名人(替代密钥生成者)、验证者和证书管理机构。虽然在SC08方案中将替代签名人预想为替代密钥生成者,但是在本方案中签名人充当替代密钥生成者的实体。系统管理员是用于通过使用系统参数生成算法(Setup)来生成系统参数cp的实体。
签名人是用于通过使用密钥生成算法(Gen)来生成对签名人唯一的签名密钥sk、以及与签名密钥sk配对的验证密钥pk的实体。签名人还通过使用签名生成算法(Sig)来生成用于电子文档m的电子签名σ。签名人还通过使用替代密钥生成算法来生成替代签名密钥sk′、以及与替代签名密钥sk′配对的替代验证密钥pk′。验证者是用于通过使用签名验证算法(Ver)来验证附于电子文档m的电子签名σ的有效性的实体。证书管理机构是用于发布证书的实体,该证书用于保证签名人生成的验证密钥或替代验证密钥的有效性。
通过执行根据本方案的过程,如图11所示,那些实体生成签名密钥sk、验证密钥pk、电子签名σ、替代签名密钥sk′和替代验证密钥pk′,并且验证电子签名σ。假定系统管理员已经使用系统参数生成算法(Setup)生成了系统参数cp。通过使用系统参数生成算法(Setup)生成系统参数cp被表示为:
cp=Setup(1λ)(36)
其中1λ表示安全参数。
(通过签名人的密钥生成处理)
首先,将描述签名人执行的密钥生成过程。如图11所示,在密钥生成处理中,签名人从系统管理员获得系统参数cp。其后,签名人将系统参数cp输入到密钥生成算法(Gen),以生成签名密钥sk和验证密钥pk的对。通过使用Gen生成(sk,pk)被表示为:
(sk,pk)=Gen(cp)(37)
当使用密钥生成算法(Gen)来生成签名密钥sk和验证密钥pk时,签名人存储所生成的签名密钥sk和验证密钥pk的对。在适当时,签名人向证书管理机构登记验证密钥pk作为他/她的验证密钥并且接收其证书。(通过签名人的签名生成处理)
接下来,将描述签名人执行的签名生成过程。如图11所示,签名人准备要签名的电子文档m和所存储的签名密钥sk。然后,签名人将签名密钥sk和电子文档m输入到签名生成算法(Sig),以生成电子签名σ。通过使用Sig生成电子签名σ被表示为:
σ=Sig(sk,m)(38)
然后,签名人将通过方程(38)生成的电子签名σ(算法输出值)设为用于电子文档m的电子签名σ。
(通过签名人的替代密钥生成处理)
接下来,将描述签名人执行的替代密钥生成过程的概要。这个过程可以在签名密钥sk被暴露时执行或者可以预先执行。首先,签名人准备电子文档m、电子签名σ、用于生成电子签名σ的签名密钥sk、以及与签名密钥sk配对的验证密钥pk。然后,签名人将所准备的电子文档m、电子签名σ和签名密钥sk输入到替代密钥生成算法,以生成替代验证密钥pk′和替代签名密钥sk′的对。此后,签名人存储替代签名密钥sk′和替代验证密钥pk′的对。然后,在适当时,签名人请求证书管理机构以便废止验证密钥pk,向证书管理机构重新登记替代验证密钥pk′,并且接收证书。
(通过验证者的签名验证处理)
接下来,将描述验证者执行的过程。首先,验证者从签名人获得电子签名σ、电子文档m和验证密钥pk。接下来,在适当时,基于证书管理机构的证书,验证者检查验证密钥pk是否确实是签名人的验证密钥。然后,验证者将验证密钥pk、电子文档m和电子签名σ输入到签名验证算法(Ver),以确定验证结果vout是0(错误)还是1(接受)。通过使用Ver确定验证结果vout被表示为:
vout=Ver(pk,m,σ)(39)
根据基于方程(39)确定的验证结果vout,验证者接受vout=1的(σ,m),而拒绝vout=0的(σ,m)。这同样适用于使用替代验证密钥pk′来执行验证过程的情况。
如上所述,在本方案中,使用替代签名密钥sk′和替代验证密钥pk′来更新原始的签名密钥sk和验证密钥pk。因此,即使在签名密钥sk和验证密钥pk被废止时,先前由签名人通过使用签名密钥sk生成的电子签名σ也可以保持有效。现在,将描述本发明的有效性,同时比较本方案和典型电子签名方案中的密钥更新方法。
[1-4-2:密钥更新方法比较]
参考图12。方案A表示典型电子签名系统中的密钥更新方案。在方案A中,通过使用更新前的签名密钥sk为电子文档m生成的电子签名σ为更新前的验证密钥pk所接受,但是不为更新的验证密钥pk′所接受。因此,在密钥更新之后,通过使用更新的签名密钥sk′为电子文档m′生成的电子签名σ′是有效的,而更新前的电子签名σ变为无效。不必说,密钥更新后的电子签名σ′为更新的验证密钥pk′所接受。
接下来,参考图12中的方案B。方案B表示限时电子签名系统中的密钥更新方案。在方案B中,在每个周期更新签名密钥。另一方面,验证密钥pk在所有周期保持不更新。在周期1中以签名密钥sk1生成的电子签名σ1被接受为周期1内的签名。类似地,在周期2中以签名密钥sk2生成的电子签名σ2被接受为周期2内的签名。因此,即使当周期1内的签名密钥sk1被废止时,在周期2中以签名密钥sk2生成的电子签名σ2也保持有效。然而,周期1内的电子签名σ1变为无效。上面已经参考图21描述了该方案的问题。
接下来,参考图12中的方案C。方案C表示根据本方案的密钥更新方案。如在方案C中,当使用本方案时,通过使用更新前的签名密钥sk为电子文档m生成的电子签名σ为更新的验证密钥pk′(替代验证密钥pk′)所接受。因此,即使在更新前的签名密钥sk和验证密钥pk被废止时,密钥更新前的电子签名σ的有效性也不会丧失。该效果不能通过使用如上所述的方案A和B的任何密钥更新方案来提供。现在,将基于本方案的上述技术特征来描述本方案的具体算法。
[1-4-3:算法]
现在,将给出根据本方案的密钥生成算法、签名生成算法、签名验证算法和替代密钥生成算法的描述。由于根据本方案的系统参数生成算法与SC08方案中的基本上相同,因此下面不给出其描述。那些算法彼此相关,其中每个具有用于实现根据本方案的替代密钥生成算法的特性元素。
(密钥生成算法和签名生成算法)
首先,将参考图13描述以上述方程(37)表示的密钥生成算法(Gen)和以上述方程(38)表示的签名生成算法(Sig)。签名人执行密钥生成算法和签名生成算法。图13是示出密钥生成算法和签名生成算法中的一个具体计算例子的流程图。可以在本方案的思想范围内适当地进行改变。要注意,任何作出这种改变的配置同样包括在本方案的技术范围内。
首先,将描述密钥生成算法。在密钥生成算法中,首先,在步骤S130中,随机地选择Zq的生成器x1和x2。接下来,在步骤S132中,使用所选生成器x1和x2来确定y1和y2,其被表示为:
y1=gx1modp  (40)
y2=gx2modp  (41)
接下来,在步骤S134中,随机地选择Zq *的生成器α。可以适当地修改步骤S134中的处理过程。因此,到此为止的描述涉及密钥生成算法。作为上述计算的结果,生成分别如下表示的验证密钥pk和签名密钥sk:
pk=(y1,y2,α)(42)
sk=(x1,x2,α)(43)
要注意,以方程(42)表示的验证密钥pk的配置与SC08方案中的配置不同。
接下来,将描述签名生成算法。如上述方程(38)所表示的那样,将通过密钥生成算法生成的签名密钥sk和电子文档m输入到签名生成算法。然而,由于验证密钥pk也已确定,因此也可以将验证密钥pk加入到输入值。通过如此改变输入值,例如,当签名生成算法中包括与以方程(40)或(41)表示的y1或y2相同的算术方程时,不必执行计算处理。在下面的描述中,分别以y1和y2表示包含与上述方程(40)和(41)相同的算术方程的部分。
在签名生成算法中,首先,在步骤S136中,随机地选择Zq *的生成器k。接下来,在步骤S138中,使用所选k来确定r,其被表示为:
r=gkmodp    (44)
接下来,在步骤S140中,使用电子签名σ所附的电子文档m、上述计算中确定的参数r、以及包含在验证密钥pk中的y1和y2(其也可以从x1和x2生成)来确定参数c,其被表示为:
c=h1(m,r,y1,y2)(45)
其中h1()是哈希函数。例如,在耦合之后,将参数m、r、y1和y2输入到哈希函数。要注意,针对参数输入而执行的处理不限于耦合。还要注意,输入到哈希函数h1的参数的配置与SC08方案中的配置不同。
在步骤S142中,使用所确定的参数c来确定y,其被表示为:
y=y1·y2c modp    (46)
接下来,在步骤S144中,使用在步骤S130到S142中获得的参数来确定Zq的生成器s,使得满足:
H(c,r,y)=(x1+c·x2)r·α+k·y·s mod q    (47)
其中H()是哈希函数。例如,在耦合之后,将参数c、r和y输入到哈希函数。要注意,针对参数输入而执行的处理不限于耦合。上述计算产生电子签名σ,其被表示为:
σ=(r,s)(48)
(签名验证算法)
接下来,将参考图14描述以上述方程(39)表示的签名验证算法。图14是示出根据本方案的签名验证算法中的一个具体计算例子的流程图。验证者执行签名验证算法。
在步骤S150中,验证者获得公开可用的验证密钥pk(参见方程(42))。在步骤S152中,验证者从签名人获得电子签名σ(参见方程(48))和电子文档m。验证者将所获得的信息输入到签名验证算法,以验证电子签名σ。假定验证者还预先获得系统参数cp。
在步骤S154中,在签名验证算法中,根据上述方程(45)和(46)确定参数c和y。然后,将所确定的参数代入验证方程(A),其被表示为:
gH(c,r,y)=yr·α·ry·s mod p  (49)
并且在步骤S156中验证验证方程(A)是否成立。当在步骤S158中验证方程(A)成立时,在步骤S160中将电子签名σ看作认证了的并且输出表示“接受”的输出值vout=1,从而结束系列处理。另一方面,当在步骤S158中验证方程(A)不成立时,在步骤S162中输出表示错误的输出值vout=0,从而结束系列处理。作为上述计算的结果,用于电子文档m的电子签名σ的有效性被验证。以方程(49)表示的验证方程(A)具有与SC08方案中的验证方程(A)相同的形式。因此,本方案也遵循SC08方案提供的、依赖于验证方程(A)的形式的安全性。
(替代密钥生成算法)
接下来,将参考图15描述根据本方案的替代密钥生成算法。图15是示出根据本方案的替代密钥生成算法中的一个具体计算例子的流程图。与SC08方案不同,由于不存在替代签名人实体,因此根据本方案的替代密钥生成算法没有采用基于交互的形式。因此,在本方案中,可以排除用于向签名人(替代密钥生成者)隐藏替代签名密钥sk′的信息的元素。例如,在SC08方案中,为了向替代密钥生成者隐藏参数k(其应当由签名人保密),将参数k复制为k1和k2,并且使用参数d。然而,在本方案中,可以省去那些元素。下面将详细地给出描述。
在替代密钥生成算法中,首先,在步骤S170中,随机地选择Zq的生成器x1′和x2′。接下来,在步骤S172中,确定y1′和y2′,其被表示为:
y1′=gx1′modp    (50)
y2′=gx2′modp  (51)
其中x1′和x2′是要包含在替代签名密钥sk′中的参数,并且y1′和y2′是要包含在替代验证密钥pk′中的参数。接下来,在步骤S174中,基于上述方程(45)和(46)确定c和y。在步骤S176中,使用所确定的c和y来确定满足上述方程(47)的k。在很多情况下,签名人不具有参数k。因此,在这种情况下,如上所述地重新计算参数k。
不用说,当签名人具有参数k时,可以省略这些计算。在步骤S178中,基于以下确定c′和y′:
c′=h1(m,r,y1′,y2′)(52)
y′=y1′·y2′c′modp    (53)
接下来,在步骤S180中,使用所确定的参数c′和y′来确定α′,其满足:
H(c′,r′,y′)=(x1′+c′·x2′)r′·α′+k·y′·smodq(54)
在步骤S182中,参数α′与参数y1′和y2′彼此组合,以生成替代验证密钥pk′。当在步骤S182中α′包含在替代签名密钥sk′中时,这表示此时还生成替代签名密钥sk′。
通过上述方法,生成替代密钥。使用替代密钥来更新密钥使得即使知道签名密钥sk的攻击者也难以知道替代签名密钥sk′。也就是说,对于更新的替代验证密钥pk′,确保了电子签名σ′的伪造证据。这点将进一步描述。
假定sk是更新前的签名密钥,假定pk是验证密钥,假定sk′是更新的签名密钥(替代签名密钥),假定pk′是验证密钥(替代验证密钥),并且假定σ是通过使用签名密钥sk为电子文档m生成的电子签名。如上所述,在根据本方案的密钥生成算法和替代密钥生成算法中,分别将包含在签名密钥sk和替代签名密钥sk′中的参数x和x′复制为(x1,x2)和(x1′,x2′)。包括在上述方程(54)中的参数c′是依赖于验证密钥和电子签名的参数。因此,即使攻击者知道更新前的签名密钥sk,他或她也不能从包括在方程(54)中的一个识别两个未知变量x1′和x2′。另外,要由替代验证密钥pk′接受的电子签名的生成包括x1′+c′*x2′的信息,并且其计算使用x1′和x2′。这使得难以伪造要由替代验证密钥pk′接受的电子签名。因此,使用根据本方案的密钥更新方案使得可以以安全方式更新密钥而无需使与所暴露的签名密钥相关联的电子签名所附的电子文档无效。
[1-4-4:终端的功能配置]
现在,将参考图16简要地描述根据本方案的、能够执行上述算法的系统配置。图16示出了签名人使用的签名人终端100和验证者使用的验证者终端200的功能配置。签名人终端100和验证者终端200通过网络10连接。系统管理员和证书管理机构使用的终端未示出。
(签名人终端100)
首先,将描述签名人终端100的功能配置。如图16所示,签名人终端100通常具有存储部件102、密钥生成部件104、签名生成部件106、通信部件108、替代密钥生成部件110和更新控制器112。
存储部件102用作如下装置:其用于存储系统参数cp、电子文档m以及用于执行算法的程序。密钥生成部件104从存储部件102读取系统参数cp和密钥生成算法执行程序,以生成签名密钥sk和验证密钥pk。密钥生成部件104生成的签名密钥sk和验证密钥pk被输入到签名生成部件106。签名生成部件106从存储部件102读取系统参数cp和签名生成算法执行程序,并且使用所输入的签名密钥sk(或验证密钥pk)和电子文档m来生成要附于电子文档m的电子签名σ。签名生成部件106生成的电子签名σ以及电子文档m从通信部件108通过网络10提供到验证者终端200。
如果签名密钥sk被暴露,则在更新控制器112的控制下执行密钥更新。首先,更新控制器112使替代密钥生成部件110生成替代签名密钥sk′和替代验证密钥pk′,其取代签名生成部件106生成的签名密钥sk和验证密钥pk。在这种情况下,替代密钥生成部件110从存储部件102读取替代密钥生成算法执行程序,并且使用电子签名σ和签有所暴露的签名密钥sk的电子文档m来生成替代签名密钥sk′和替代验证密钥pk′。替代密钥生成部件110生成的替代签名密钥sk′被输入到签名生成部件106,并且用于密钥更新后的签名生成。另一方面,替代验证密钥pk′被使得公开可用。以这种方式,签名人终端100具有用于执行由签名人根据本方案执行的算法的功能。因此,通过签名人终端100的使用来实现根据本方案的密钥更新方法。
(验证者终端200)
接下来,将描述验证者终端200的功能配置。如图16所示,验证者终端200通常具有通信部件202、参数生成部件204、存储部件206和验证处理器208。存储部件206存储系统参数cp、要由验证者执行的算法执行程序等等。
当通信部件202通过网络10从签名人终端100获得电子文档m和电子签名σ时,将电子文档m和电子签名σ输入到参数生成部件204。参数生成部件204生成用于输入到验证方程的参数。参数生成部件204例如生成参数c等等,其中参数c依赖于电子文档m和电子签名σ并且以方程(45)表示。参数生成部件204确定的参数被输入到验证处理器208。验证处理器208将验证密钥pk、电子文档m、电子签名σ、以及参数生成部件204生成的参数输入到验证方程。基于验证方程是否成立,验证处理器208确定是接受还是拒绝电子签名σ。以这种方式,验证者终端200具有用于执行要由验证者根据本方案执行的算法的功能。因此,通过验证者终端200的使用来实现根据本方案的密钥更新方法。
上面描述了根据本方案的密钥更新方法。使用本方案使得可以解决如下问题:在用于生成电子签名的签名密钥被暴露时,致使电子签名无效。另外,即使当用于生成电子签名的签名密钥被暴露时,也可以更新用于电子签名的签名密钥以及验证密钥而无需使电子签名无效。
[1-5:扩展方案]
根据本方案的上述技术涉及用于对于一组电子文档和电子签名而生成替代签名密钥和替代验证密钥的方法。因此,本方案的上述技术被扩展成提供用于对于多组电子文档和电子签名而生成替代签名密钥和替代验证密钥的方法(在下文中被称为“扩展方案”)。下面将给出如下方法的描述:该方法用于对于小于N组的电子文档和电子签名(m1,σ1),...,(mn,σn)而生成替代签名密钥sk′和替代验证密钥pk′,其中N≥n≥2。
(1-5-1:算法)
下面将依次描述根据扩展方案的密钥生成算法(Gen)、签名生成算法(Sig)、签名验证算法和替代密钥生成算法。由于根据扩展方案的系统参数生成算法与SC08方案中的基本上相同,因此下面不给出其描述。那些算法彼此关联,其中每个具有用于实现根据扩展方案的替代密钥生成算法的特性配置。
(密钥生成算法和签名生成算法)
现在,将参考图17描述根据扩展方案的密钥生成算法和签名生成算法。签名人执行密钥生成算法和签名生成算法。图17是示出密钥生成算法和签名生成算法中的一个具体计算例子的流程图。可以在扩展方案的思想范围内适当地进行改变。要注意,任何作出这种改变的配置也包括在扩展方案的技术范围内。
首先,将描述密钥生成算法。在密钥生成算法中,首先,在步骤S200中,随机地选择Zq的生成器x1,...,xL+1,其中L≥2。接下来,在步骤S202中,使用所选生成器x1,...,xL+1来确定yj(j=1,...,L+1),其被表示为:
y j = g x j mod p , j = 1 , . . . , L + 1 - - - ( 55 )
接下来,在步骤S204中,随机地选择Zq *的生成器α1,...,αL。可以适当地改变步骤S204中的处理过程。到此为止的描述涉及密钥生成算法。作为上述计算的结果,生成验证密钥pk和签名密钥sk分别被表示如下:
pk=(y1,…,yL+1,α1,…,αL)(56)
sk=(x1,…,xL+1,α1,…,αL)(57)
接下来,将描述签名生成算法。将电子文档m和通过密钥生成算法生成的签名密钥sk输入到签名生成算法。然而,由于验证密钥pk也已经被确定,因此还可以将验证密钥pk加入到输入值。通过如此改变输入值,例如,当签名生成算法中包括与以上述方程(55)表示的yj(j=1,...,L+1)相同的算术方程时,不必执行计算处理。在下面的描述中,以yj(j=1,...,L+1)表示包含与方程(55)相同的算术方程的部分。
在签名生成算法中,首先,在步骤S206中,随机地选择Zq *的生成器k。接下来,在步骤S208中,使用所选生成器k来确定r,其被表示为:
r=gkmodp    (58)
接下来,在步骤S210中,使用电子签名σ所附的电子文档m、上述计算中确定的参数r、以及包含在验证密钥pk中的y1,...,yL+1(其也可以从x1,...,xL+1生成)来确定参数cj(j=1,...,L),其被表示为:
cj=h1(j,m,r,y1,…,yL+1),j=1,…,L    (59)
其中h1()是哈希函数。例如,在耦合之后,将参数m、r和y1,...,yL+1输入到哈希函数。要注意,针对参数输入而执行的处理不限于耦合。
在步骤S210中,使用所确定的参数c1,...,cL来确定Y和α,其被表示为:
Y = y 1 &CenterDot; y 2 c 1 . . . y L + 1 c L mod p - - - ( 60 )
α=c1·α1+…+cL·αLmodp  (61)
接下来,在步骤S212中,使用在步骤S200到S210中获得的参数来确定Zq的生成器s,使得满足:
H(r,Y,c1…,cL)
=(x1+c1·x2+…+cL·xL+1)r·α+k·Y·smod q    (62)
其中H()是哈希函数。例如,在耦合之后,将参数r、Y和c1,...,cL输入到哈希函数。要注意,针对参数输入而执行的处理不限于耦合。上述计算产生电子签名σ,其被表示为:
σ=(r,s)(63)
(签名验证算法)
接下来,将参考图18描述根据扩展方案的签名验证算法。图18是示出签名验证算法中的一个具体计算例子的流程图。验证者执行签名验证算法。
在步骤S220中,验证者获得公开可用的验证密钥pk(参见方程(56))。在步骤S222中,验证者从签名人获得电子签名σ(参见方程(63))和电子文档m。验证者将所获得的信息输入到签名验证算法,以验证电子签名σ。假定验证者还预先获得了系统参数cp。
在步骤S224中,在签名验证算法中,根据上述方程(59)、(60)和(61)确定参数c1,...,cL、Y和α。然后,将所确定的参数代入验证方程(B),其被表示为:
g H ( r , Y , c 1 , . . . , c L ) = Y r &CenterDot; &alpha; &CenterDot; r Y &CenterDot; s mod p - - - ( 64 )
并且在步骤S226中验证验证方程(B)是否成立。当在步骤S228中验证方程(B)成立时,在步骤S230中将电子签名σ看作认证了的并且输出表示“接受”的输出值vout=1,从而结束系列处理。另一方面,当在步骤S228中验证方程(B)不成立时,在步骤S232中输出表示错误的输出值vout=0,从而结束系列处理。作为上述计算的结果,用于电子文档m的电子签名σ的有效性被验证。
(替代密钥生成算法)
接下来,将参考图19描述根据扩展方案的替代密钥生成算法。图19是示出替代密钥生成算法中的一个具体计算例子的流程图。
在替代密钥生成算法中,首先,在步骤S240中,随机地选择Zq的生成器x1′,...,xM+1′,其中M是满足M≥n的整数。在这种情况下,当验证密钥和签名密钥被限制为固定长度的密钥时,M和L可以彼此相等。接下来,在步骤S242中,确定yj′(j=1,...,n+1),其被表示为:
y j &prime; = g x j &prime; mod p , j = 1 , . . . , M + 1 - - - ( 65 )
其中x1′,...,xM+1′是要包含在替代签名密钥sk′中的参数,并且y1′,...,yM+1′是要包含在替代验证密钥pk′中的参数。接下来,在步骤S244中,基于以下确定cij、Yi和αi″(i=1,...,n并且j=1,...,L)。cij=h1(j,mi,ri,y1,…,yL+1),
i=1,…,n,j=1,…,L    (66)
Y i = y 1 &CenterDot; y 2 c i 1 . . . y L + 1 c iL mod p , i = 1 , . . . , n - - - ( 67 )
αi″=ci1·α1+…+ciL·αL modp,i=1,…,n  (68)
接下来,在步骤S246中,使用所确定的cij、Yi和αi″(i=1,...,n并且j=1,...,L)来确定ki,其满足:
H(ri,Yi,ci1,…,ciL)=(x1+cil·x2+…+ciL·xL+1)ri·αi
+ki·Yi·simod q,i=1,…,n    (69)
其中包括在方程(69)中的si是包含在电子签名σi=(ri,si)中的参数,电子签名σi=(ri,si)用于输入到替代密钥生成算法的n组电子文档mi和电子签名σi。在很多情况下,签名人不具有参数ki。因此,在这种情况下,如上所述地重新计算参数ki(i=1,...,n)。
接下来,在步骤S248中,分别基于以下确定cij′(i=1,...,n并且j=1,...,M)和yi′(i=1,...,n):
cij′=h1(j,mi,ri,y1′,…,yM+1′),
i=1,…,n,j=1,…,M    (70)
Y i &prime; = y 1 &prime; &CenterDot; y 2 &prime; C i 1 &prime; . . . y M + 1 &prime; c iM &prime; mod p , i = 1 , . . . , n - - - ( 71 )
接下来,在步骤S249中,基于所确定的参数cij′和yi′(i=1,...,n并且j=1,...,M)而确定αi (3)(i=1,...,n),使得满足:
H(ri,Yi′,ci1′,…,ciM′)=(x1+ci1′·x2+…+ciM′·xM+1)ri·αi (3)
+ki·Yi′·si mod q,i=1,…,n    (72)
接下来,在步骤S250中,基于所确定的参数cij′和αi (3)(i=1,...,n并且j=1,...,M)而确定α1′,...,αM′,使得满足以下表示的联立线性方程:
αi (3)=ci1′·α1′+…+ciM′·αM′modp,i=1,…,n    (73)
在步骤S252中,确定以方程(73)表示的联立线性方程的解是否存在。当不存在解时,处理返回到步骤S240中的处理。当存在解时,处理进入步骤S254中的处理。当处理进入步骤S254时,将替代验证密钥pk′和替代签名密钥sk′设成被表示为:
pk′=(y1′,…,yM+1′,α1′,…,αM′)(74)
sk′=(x1′,…,xM+1′,α1′,…,αM′)(75)
使用上述方法使得可以为多组电子签名和电子文档生成替代密钥。结果,还可以使用替代密钥来更新用于多组电子签名和电子文档的密钥。用于多组电子签名和电子文档的替代密钥的可用性还使得可以提高密钥更新的效率。
[1-6:终端的硬件配置]
可以使用例如图20所示的信息处理设备的硬件配置来实现上述签名人终端100和验证者终端200中所包括的部件的功能。也就是说,通过使用计算程序控制图20所示的硬件来实现各个部件的功能。硬件可以采用任何形式,例如,个人计算机、移动信息终端(诸如移动电话、PHS或PDA)、游戏控制台或家用信息电器。PHS是个人手持式电话系统的缩写。PDA是个人数字助理的缩写。
如图20所示,硬件通常具有CPU 902、ROM 904、RAM 906、主机总线908和电桥910。硬件还具有外部总线912、接口914、输入部件916、输出部件918、存储部件920、驱动器922、连接端口924和通信部件926。CPU是中央处理单元的缩写。ROM是只读存储器的缩写。RAM是随机存取存储器的缩写。
CPU 902用作计算处理设备或控制设备,并且基于存储在ROM 904、RAM 906、存储部件920或可拆卸记录介质928中的各种程序而控制各个部件的部分或全部操作。ROM 904用作用于存储要读取到CPU 902的程序、用于计算的数据等等的装置。RAM 906临时地或永久地存储例如要读取到CPU 902的程序、以及在程序执行期间适当变化的各种参数。
上述部件经由例如可以执行高速数据传输的主机总线908而相互连接。主机总线908又经由例如电桥910而连接到外部总线912。外部总线912的数据传送速度相对较低。输入部件916的例子包括鼠标、键盘、触摸板、按钮、开关和控制杆。输入部件916的另一例子是遥控器,其能够通过利用红外线或其它类型的无线电波来传送控制信号。
输出部件918通过例如显示设备(诸如CRT设备、LCD、PDP设备或ELD)、音频输出设备(诸如扬声器或耳机)、打印机、移动电话和传真机来实现。也就是说,输出部件918用作用于在视觉或听觉上向用户通知有关所获得信息的装置。CRT是阴极射线管的缩写。LCD是液晶显示器的缩写。PDP是等离子体显示面板的缩写。ELD是电致发光显示器的缩写。
存储部件920是用于存储各种类型数据的设备。存储部件920的例子包括磁存储设备(诸如HDD)、半导体存储设备、光存储设备和磁光存储设备。HDD是硬盘驱动器的缩写。
驱动器922是用于读取存储在可拆卸记录介质928中/上的信息或者将信息写入到其中的设备。可拆卸记录介质928的例子包括磁盘、光盘、磁光盘和半导体存储器。可拆卸记录介质928的其它具体例子包括DVD介质、蓝光介质、HD DVD介质和半导体存储介质。不用说,可拆卸记录介质928可以通过例如电子设备或装有非接触式IC芯片的IC卡来实现。IC是集成电路的缩写。
连接端口924是用于与外部设备930等连接的端口。连接端口924的例子包括USB端口、IEEE(电气和电子工程师学会)1394端口、SCSI端口、RS-232C端口和光学音频端子。外部设备930的例子包括打印机、移动音乐播放器、数码相机、数码摄像机和IC记录器。USB是通用串行总线的缩写。SCSI是小型计算机系统接口的缩写。
通信部件926是用于与网络932连接的通信设备。通信部件926的例子包括有线或无线LAN、蓝牙
Figure GSA00000102651200341
设备、以及用于WUSB的通信卡、用于光通信的路由器、用于ADSL的路由器和用于各种通信的调制解调器。连接到通信部件926的网络932可以由有线或无线链接的网络构成。例子包括因特网、家庭LAN、红外通信链路、可见光通信链路、广播网和卫星通信链路。LAN是局域网的缩写。WUSB是无线USB的缩写。ADSL是异步数字用户线的缩写。
本申请包含与2009年5月1日向日本专利局提交的日本优先权专利申请JP 2009-112080中公开的主题内容相关的主题内容,在此通过引用将其全文合并于此。
虽然上面参考附图描述了本发明的优选实施例,但是不用说本发明不限于特定实施例。本领域的技术人员应该清楚,可以在所附权利要求的范围内对实施例进行各种变更和修改,并且自然地,应当理解这种变化和修改也包括在本发明的技术范围内。

Claims (8)

1.一种信息处理设备,其包括:
签名生成部件,其通过使用与验证密钥KV相关联的签名密钥KS来生成电子签名σ;以及
替代密钥生成部件,其对于由所述签名生成部件将所述电子签名σ附于其的电子文档m,生成能够验证所述电子签名σ的有效性的替代验证密钥KV′(KV′≠KV)、以及与所述替代验证密钥KV′相关联的替代签名密钥KS′(KS′≠KS);
其中,在预定情况下,将所述验证密钥KV和所述签名密钥KS更新为所述替代验证密钥KV′和所述替代签名密钥KS′。
2.根据权利要求1所述的信息处理设备,其中当所述签名生成部件对于N个电子文档mj生成N个电子签名σj(j=1,...,N,并且N≥2)时,所述替代密钥生成部件生成所述替代验证密钥KV′、以及与所述替代验证密钥KV′关联的所述替代签名密钥KS′,其中所述替代验证密钥KV′能够对所述电子文档和所述电子签名的N个组合(mj,σj)中的M个组合(2≤M≤N)验证所述电子签名的有效性。
3.根据权利要求1或2所述的信息处理设备,其中当所述签名密钥KS被暴露时或者当过去预定周期时,所述替代密钥生成部件生成所述替代验证密钥KV′和所述替代签名密钥KS′,以将所述验证密钥KV和所述签名密钥KS更新为所述替代验证密钥KV′和所述替代签名密钥KS′。
4.根据权利要求3所述的信息处理设备,其中,当所述替代签名密钥KS′被暴露时或者当过去预定周期时,所述替代密钥生成部件生成替代验证密钥KV″(KV″≠KV′,KV″≠KV)和替代签名密钥KS″(KS″≠KS′,KS″≠KS),以将所述替代验证密钥KV′和所述替代签名密钥KS′更新为所述替代验证密钥KV″和所述替代签名密钥KS″。
5.根据权利要求1或2所述的信息处理设备,其中,所述替代密钥生成部件包括:
第一元素选择器,其任意地选择要包含在所述替代签名密钥KS′中的第一元素;
第二元素确定器,其通过使用所述第一元素来确定要包含在所述替代验证密钥KV′中的第二元素;
元素计算器,其确定方程的解,在所述方程中以所述第一和第二元素来替代包含在验证方程中的元素,所述验证方程用于通过使用所述验证密钥KV来验证所述电子签名σ的有效性,所述元素与所述第一和第二元素相关联且包含在所述验证密钥KV和所述签名密钥KS中,并且与所述第一和第二元素无关联且包含在所述验证密钥KV和所述签名密钥KS中的元素是未知的;以及
替代密钥确定器,其确定至少包含由所述第一元素选择器选择的所述第一元素的所述替代签名密钥KS′、以及至少包含由所述第二元素确定器确定的所述第二元素和由所述元素计算器执行的确定的结果的所述替代验证密钥KV′。
6.根据权利要求5所述的信息处理设备,其中所述验证方程被表示为:
gu=yr*α*ry*s mod p(p是质数),
其中r和s表示包含在所述电子签名σ中的两个参数,y表示有关所述电子文档m以及与所述第二元素相关联且包含在所述验证密钥KV中的元素的参数,α表示与由所述元素计算器执行的确定的结果相关联且包含在所述验证密钥KV中的元素,并且u表示对于所述电子文档m以及参数r和y的哈希值。
7.一种密钥更新方法,其包括以下步骤:
通过使用与验证密钥KV相关联的签名密钥KS来生成电子签名σ;
对于在所述签名生成步骤中将所述电子签名σ附于其的电子文档m,生成能够验证所述电子签名σ的有效性的替代验证密钥KV′(KV′≠KV)、以及与所述替代验证密钥KV′相关联的替代签名密钥KS′(KS′≠KS);以及
在预定情况下,将所述验证密钥KV和所述签名密钥KS更新为在所述替代密钥生成步骤中生成的所述替代验证密钥KV′和所述替代签名密钥KS′。
8.一种程序,其使计算机实现:
签名生成功能,其通过使用与验证密钥KV相关联的签名密钥KS来生成电子签名σ;
替代密钥生成功能,其对于通过所述签名生成功能将所述电子签名σ附于其的电子文档m,生成能够验证所述电子签名σ的有效性的替代验证密钥KV′(KV′≠KV)、以及与所述替代验证密钥KV′相关联的替代签名密钥KS′(KS′≠KS);以及
更新功能,其在预定情况下,将所述验证密钥KV和所述签名密钥KS更新为通过所述替代密钥生成功能生成的所述替代验证密钥KV′和所述替代签名密钥KS′。
CN2010101677139A 2009-05-01 2010-04-22 信息处理设备、密钥更新方法和程序 Expired - Fee Related CN101877639B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-112080 2009-05-01
JP2009112080A JP5458657B2 (ja) 2009-05-01 2009-05-01 情報処理装置、鍵更新方法、及びプログラム

Publications (2)

Publication Number Publication Date
CN101877639A true CN101877639A (zh) 2010-11-03
CN101877639B CN101877639B (zh) 2013-07-17

Family

ID=42342777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010101677139A Expired - Fee Related CN101877639B (zh) 2009-05-01 2010-04-22 信息处理设备、密钥更新方法和程序

Country Status (4)

Country Link
US (1) US8370633B2 (zh)
EP (1) EP2247025B1 (zh)
JP (1) JP5458657B2 (zh)
CN (1) CN101877639B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016074506A1 (zh) * 2014-11-14 2016-05-19 华为技术有限公司 应用程序完整性验证方法及网络设备
CN109644132A (zh) * 2016-08-26 2019-04-16 微软技术许可有限责任公司 对象的信任验证过程中的演进签名
CN110543773A (zh) * 2019-08-29 2019-12-06 北京艾摩瑞策科技有限公司 知识问答平台用户的区块链私钥的代签方法及其装置

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10284519B1 (en) * 2012-01-23 2019-05-07 Amazon Technologies, Inc. Dynamically updating authentication schemes
US8739308B1 (en) 2012-03-27 2014-05-27 Amazon Technologies, Inc. Source identification for unauthorized copies of content
US8892865B1 (en) 2012-03-27 2014-11-18 Amazon Technologies, Inc. Multiple authority key derivation
US9215076B1 (en) * 2012-03-27 2015-12-15 Amazon Technologies, Inc. Key generation for hierarchical data access
US20150022844A1 (en) * 2013-07-16 2015-01-22 Hewlett-Packard Development Company, L.P. User credentials for performing multifunction device workflow action
JP6265783B2 (ja) * 2014-03-06 2018-01-24 キヤノン株式会社 暗号化/復号化システム及びその制御方法、並びにプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6377692B1 (en) * 1997-01-17 2002-04-23 Ntt Data Corporation Method and system for controlling key for electronic signature
CN1526217A (zh) * 2001-05-23 2004-09-01 ��ķɭ���ó�׹�˾ 保护和识别消息的保密设备和方法
CN101107808A (zh) * 2005-01-24 2008-01-16 松下电器产业株式会社 署名生成装置及署名验证装置
CN101107809A (zh) * 2005-01-24 2008-01-16 松下电器产业株式会社 签名生成装置、密钥生成装置和签名生成方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3640785B2 (ja) 1997-01-17 2005-04-20 株式会社エヌ・ティ・ティ・データ 電子署名用の鍵管理方法及びシステム
US6978017B2 (en) * 1997-10-14 2005-12-20 Entrust Limited Method and system for providing updated encryption key pairs and digital signature key pairs in a public key system
US7707420B1 (en) * 1999-06-23 2010-04-27 Research In Motion Limited Public key encryption with digital signature scheme
US7159114B1 (en) * 2001-04-23 2007-01-02 Diebold, Incorporated System and method of securely installing a terminal master key on an automated banking machine
JP3997085B2 (ja) * 2001-12-28 2007-10-24 キヤノン株式会社 画像生成装置
JP4717329B2 (ja) * 2003-03-14 2011-07-06 キヤノン株式会社 デジタル署名生成装置
WO2006103851A1 (ja) * 2005-03-28 2006-10-05 Matsushita Electric Industrial Co., Ltd. 冪値生成装置
JP5446453B2 (ja) * 2009-04-30 2014-03-19 ソニー株式会社 情報処理装置、電子署名生成システム、電子署名用の鍵生成方法、情報処理方法、及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6377692B1 (en) * 1997-01-17 2002-04-23 Ntt Data Corporation Method and system for controlling key for electronic signature
CN1526217A (zh) * 2001-05-23 2004-09-01 ��ķɭ���ó�׹�˾ 保护和识别消息的保密设备和方法
CN101107808A (zh) * 2005-01-24 2008-01-16 松下电器产业株式会社 署名生成装置及署名验证装置
CN101107809A (zh) * 2005-01-24 2008-01-16 松下电器产业株式会社 签名生成装置、密钥生成装置和签名生成方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016074506A1 (zh) * 2014-11-14 2016-05-19 华为技术有限公司 应用程序完整性验证方法及网络设备
US10846393B2 (en) 2014-11-14 2020-11-24 Huawei Technologies Co., Ltd. Application program integrity verification method and network device
CN109644132A (zh) * 2016-08-26 2019-04-16 微软技术许可有限责任公司 对象的信任验证过程中的演进签名
CN109644132B (zh) * 2016-08-26 2021-12-10 微软技术许可有限责任公司 用于验证对象的信任的系统和方法
CN110543773A (zh) * 2019-08-29 2019-12-06 北京艾摩瑞策科技有限公司 知识问答平台用户的区块链私钥的代签方法及其装置

Also Published As

Publication number Publication date
EP2247025B1 (en) 2012-07-18
EP2247025A1 (en) 2010-11-03
JP5458657B2 (ja) 2014-04-02
US20100281264A1 (en) 2010-11-04
US8370633B2 (en) 2013-02-05
JP2010262109A (ja) 2010-11-18
CN101877639B (zh) 2013-07-17

Similar Documents

Publication Publication Date Title
CN101877639B (zh) 信息处理设备、密钥更新方法和程序
JP5790319B2 (ja) 署名検証装置、署名検証方法、プログラム、及び記録媒体
CN104011781B (zh) 信息处理设备、信息处理方法
US8452974B2 (en) Image processing apparatus, electronic signature generation system, electronic signature key generation method, image processing method, and program
CN107967557A (zh) 基于区块链的可修改信誉评价系统及方法、电子支付系统
WO2012001796A1 (ja) 個体別情報生成装置及び個体別情報生成方法
JP5790318B2 (ja) 情報処理装置、署名生成装置、情報処理方法、署名生成方法、及びプログラム
CN102263639A (zh) 认证装置、认证方法、程序和签名生成装置
CN112765268A (zh) 基于区块链的数据隐私保护方法、装置及设备
JP5099003B2 (ja) グループ署名システムおよび情報処理方法
US11676111B1 (en) Apparatuses and methods for determining and processing dormant user data in a job resume immutable sequential listing
CN115664675B (zh) 基于sm2算法的可追踪环签名方法、系统、设备及介质
CN110602190B (zh) 区块链共识的方法及区块链节点和存储装置
CN103718501A (zh) 信息处理设备、信息处理方法、程序和记录介质
US20230254136A1 (en) Apparatus and methods for validating user data
WO2013129084A1 (ja) 情報処理装置、情報処理方法、及びプログラム
CN103748830A (zh) 信息处理设备、签名提供方法、签名验证方法、程序和记录介质
CN112466032A (zh) 电子投票方法、装置及电子设备
WO2013129119A1 (ja) 情報処理装置、情報処理方法、及びプログラム
JP2014068139A (ja) 送信装置、受信装置、送信方法、受信方法及びプログラム
CN115694820A (zh) 一种格数字签名方法及相关设备
JP2013047726A (ja) 情報処理装置、署名生成装置、署名検証装置、情報処理方法、署名生成方法、及び署名検証方法
WO2013031413A1 (ja) 情報処理装置、情報処理方法、プログラム、及び記録媒体
CN103718228A (zh) 信息处理设备和信息处理方法
CN118199926A (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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130717

Termination date: 20150422

EXPY Termination of patent right or utility model