CN1909452A - 用于更新用于公共密钥密码的密钥的系统和方法 - Google Patents

用于更新用于公共密钥密码的密钥的系统和方法 Download PDF

Info

Publication number
CN1909452A
CN1909452A CNA2006101084264A CN200610108426A CN1909452A CN 1909452 A CN1909452 A CN 1909452A CN A2006101084264 A CNA2006101084264 A CN A2006101084264A CN 200610108426 A CN200610108426 A CN 200610108426A CN 1909452 A CN1909452 A CN 1909452A
Authority
CN
China
Prior art keywords
public keys
data set
sequence
value
public
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
CNA2006101084264A
Other languages
English (en)
Other versions
CN100521601C (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.)
SAP SE
Original Assignee
SAP SE
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 SAP SE filed Critical SAP SE
Publication of CN1909452A publication Critical patent/CN1909452A/zh
Application granted granted Critical
Publication of CN100521601C publication Critical patent/CN100521601C/zh
Active 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/3236Cryptographic 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 cryptographic hash functions
    • 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/80Wireless

Abstract

本发明的一个实施例包括一种提供系统(100),用于提供公共密钥序列到接收系统(200),其中所述序列的每个公共密钥与私有密钥相关,并适用于公共密钥密码程序。所述提供系统(100)包括计算单元(110)和发送单元(120)。所述计算单元(110)被配置来:生成所述公共密钥和相关密钥的序列,并计算多个数据组,所述多个数据组的一个数据组包括公共密钥和验证值。所述验证值是将散列函数应用到下一个数据组而得到的结果,所述下一个数据组包括在所述序列中后面的另外的公共密钥。所述发送单元(120)被配置来提供所述多个数据给接收系统(200)。

Description

用于更新用于公共密钥密码的密钥的系统和方法
技术领域
本发明一般涉及电子数据处理领域,具体涉及提供安全的电子交易。
背景技术
在当今的世界里,电子通信已经达到了高的水准。诸如个人、公司或官方代理的多方使用诸如因特网的电子基础设施(infrastructures)来进行通信。因而经常希望电子交易(electronic transaction),即数据的电子交换是安全的。例如,安全的交易意味着文档的发送者可以被以可靠的途径来识别,或者文档不能被截获该文档传输的未经授权的人所读取。
一种提供这种安全电子交易方面的非常有效的途径是使用公共密钥密码(public key cryptography,PKC)。PKC涉及到PKC方法及一对互补密钥,包括公共密钥和与该公共密钥相关的私有密钥。PKC方法和所述密钥可以被选择,以致基于对所述互补密钥中的一个的认知,不可能确定另外的互补密钥。PKC方法或算法的示例是RSA,以该方法的发明者的名字来命名,Rivest、Shamir和Adelman或EIGamal。通常,公共密钥被给与一方或多方,而私有密钥被一方安全地保管,并且不会被其他方所取得。电子格式的数据可以使用PKC方法以及公共密钥或私有密钥来加密。而所加密的数据的解密需要用其互补密钥来应用PKC方法来恢复所述数据。一般,PKC被认为是安全的。这意味着,PKC方法以及互补密钥的长度被这样来选择,以致对PKC的破坏(breaking)会花费相当长的时间,例如,利用今天可用到的知识以及计算资源需要1000年以上的时间。
使用PKC的程序(procedure)的两个基本应用是加密和签名。加密的一个示例是第一方被提供了公共密钥,并使用该公共密钥加密文档。该文档被发送给第二方,然后第二方用私有密钥解密所加密的文档。签名的一个示例是第一方将消息和签名一起进行发送。所述签名是通过利用私有密钥对代表所述消息的数据进行加密来计算的。接收该消息和签名的第二方可以用已经被提供给第二方的公共密钥来解密所述签名。然后第二方可以比较解密的签名和所述消息的表现,并且在相一致的情况下,推定该签名是被拥有可信的(authentic)私有密钥的第一方所计算的。
PKC程序依赖于这样一个事实:一方接收公共密钥,而该公共密钥是由一个可信提供方提供的。即使PKC方法是安全的,在非可信方(non-authenticparty)提供非可信的公共密钥的情况下,PKC程序也是不安全的。在加密应用的示例中,非可信方可能可以读取用公共密钥加密的文档,因为该非可信方拥有相关的私有密钥。而在签名应用的示例中,非可信方可能可以发送具有签名的非可信的消息,从而导致了该消息是由可信方所发送的错误结论。
从而,一般希望以安全的途径来提供公共密钥。并且,希望以安全的途径来提供另外的公共密钥,因为,例如,已使用的公共密钥已经不再安全或是因为已使用的公共密钥被安排了进行更新。已使用的公共密钥不安全的一个原因可以是,例如,该已使用的公共密钥已经受到了未经授权的人的访问的威胁。另一个原因可以是由于新技术的发展使得已使用的密钥无法提供所需的安全级别来对抗对PKC程序的破坏。
发明内容
本发明下列实施例的一个共同任务涉及一种安全途径来将公共密钥序列从提供系统传输到接收系统。
本发明的第一实施例的特征在于提供一种提供系统,用于提供公共密钥序列。所述第一实施例的任务涉及公共密钥序列的安全提供。所述安全提供是传输公共密钥序列的安全途径的一部分。提供系统具有计算单元和发送单元。计算单元生成公共密钥序列,并计算使能所述序列的安全提供的数据组。所述数据组与所述序列的公共密钥相关,以致提供另外的公共密钥来代替已使用的公共密钥是安全的,即,在另外的公共密钥和先前提供的数据组之间的关系是安全的。一般,安全关系利用今天的知识和计算资源来破坏是不切实际的。所述关系是安全的,即使在已使用的公共密钥或者与所述已使用的公共密钥相关的私有密钥是不安全的情况下。在这样一种情况下,已使用的公共密钥或私有密钥不可被用于提供另外的密钥的安全途径。由于这种关系,另外的密钥可以通过自动的途径来安全地提供。所述自动途径对于提供系统和连接到发送单元的通信信道是快速和有效的,因为另外的公共密钥可以仅使用一个消息来提供。而且,所述一个消息可能是短的并具有少的开销数据(short with few overhead data),即,提供安全性的数据组的数据在大小上与另外的公共密钥是可比的。并且,第一实施例还允许使用一个通信信道来以提供公共密钥序列,而不需要例如通过电子邮件提供数据给经授权的人来执行手动活动。所述提供系统公开在独立权利要求1中,并且提供系统的其它的附加特征还公开在引用权利要求1的其它权利要求中。
本发明的第二实施例的特征在于提供一种接收系统,用于鉴定公共密钥序列。第二实施例的任务是对从提供系统接收的公共密钥的安全鉴定。所述安全鉴定是传输所述序列的安全途径的另一部分。所述接收系统具有接收单元和鉴定单元。接收单元接收数据组,而鉴定单元利用在另外的公共密钥和先前提供的数据组之间的安全关系对另外的公共密钥进行鉴定。所述先前提供的数据组是在包括另外的公共密钥的数据组之前被接收单元接收的。肯定的鉴定结果确认了所述另外的公共密钥是安全的,并且因此可应用于安全的公共密钥密码程序(cryptography procedure)。第二实施例提供了与第一实施例类似的优点:公共密钥可以以快速和有效的自动途径来进行鉴定,因为只需要处理具有少的开销数据的消息。而且,第二实施例的接收单元可以只连接到一个通信信道。所述接收系统被公开在独立权利要求6中,并且接收系统的其它的附加特征还被公开在引用权利要求6的其它权利要求中。
本发明的第三实施例的特征在于提供一种计算机实施的方法,用于提供公共密钥序列。第三实施例的任务是以安全的途径来提供所述序列。第三实施例包括生成所述序列,提供数据组以及提供下一个数据组。第三实施例的任务与第一实施例的任务类似,并且第三实施例的特征对应第一实施例的特征。因此,第三实施例共享连接所述自动途径的第一实施例的优点,即,对于通信信道的数量是快速和有效的。第三实施例被公开在权利要求11中,其附加特征被公开在引用权利要求11的其它权利要求中。
本发明的第四实施例的特征在于提供一种计算机实施的方法,用于鉴定公共密钥序列。第四实施例的任务是以安全的途径对公共密钥进行鉴定。第四实施例包括接收数据组、接收下一个数据组、计算测试散列值、以及鉴定下一个数据组的下一个密钥。第四实施例的任务与第二实施例的任务类似,并且第四实施例的特征对应于第二实施例的特征。从而,第四实施例共享连接所述自动途径的第二实施例的优点,即,对于通信信道的数量是快速和有效的。第四实施例被公开在权利要求17中,其附加特征被公开在引用权利要求17的其它权利要求中。
第五实施例致力于用于执行第三实施例的步骤的计算机程序产品。从而,第五实施例的任务和潜在的优点对应于第三实施例的任务和潜在的优点。第五实施例被公开在权利要求23中。
第六实施例致力于用于执行第四实施例的步骤的计算机程序产品。从而,第六实施例的任务和潜在的优点对应于第四实施例的任务和潜在的优点。第五实施例被公开在权利要求24中。
附图说明
图1是用于提供系统和接收系统的示例实施例的简图。
图2A是提供系统的实施例的数据以及数据之间关系的示意图。
图2B是接收系统的实施例的数据以及数据之间关系的示意图。
图3示出了根据本发明的实施例的数据以及数据之间关系。
图4示出了根据本发明的实施例的数据以及数据之间关系的另一个示例。
图5是根据本发明的方法的简化流程图。
图6是根据另一个本发明的方法的简化流程图。
具体实施方式
下面的示例和描述是为了说明本发明的实施例,而不是为了限制本发明的范围。
图1是提供系统100和接收系统200的示例实施例的简图。提供系统100的实施例具有两个组件,计算单元110和发送单元120。接收系统200的实施例也具有两个组件,接收单元210和鉴定单元210。图中两个单元之间的箭头表示在两个单元之间的接口,用于以箭头所示方向传送数据。提供系统100的实施例可应用于以安全途径将公共密钥序列提供到接收系统200的实施例。所述序列中的每个公共密钥都涉及私有密钥,并可应用于公共密钥密码(PKC)程序。PKC程序应用PKC方法或算法来在双方之间提供安全的电子交易。PKC程序通常是指一方拥有私有密钥或具有对该私有密钥的访问,而另一方拥有相关的公共密钥或具有对相关公共密钥的访问。根据PKC方法,私有密钥和相关公共密钥必须由一个计算机系统一起来生成。从而,相关密钥之一,即,公共密钥被从一方的一个计算机系统传输到另一方的另一个计算机系统。对于在双方之间的安全PKC程序,使用多于一对的相关密钥是有用的,因为已使用的密钥对例如会在使用一段时间之后不能提供特定的安全级别。利用提供系统和接收系统,公共密钥的序列被以安全的途径来传输,即,所述接收的公共密钥能够被检查是否由可信方提供。
提供系统100的实施例包括计算单元110,其被配置来生成公共密钥和相关私有密钥的序列。而且,计算单元被配置来计算多个数据组,其中所述多个数据组中的数据组包括公共密钥和验证值。所述多个数据组的一个或多个另外的数据组的每一个都包括另外的公共密钥和另外的验证值。所述验证值是将散列函数应用于下一个数据组而得到的结果,所述下一个数据组包括在所述序列中的公共密钥之后的另外的公共密钥。在所述公共密钥具有在所述序列中后面的另外的公共密钥的情况下,即,所述公共密钥不是所述序列的最后一个密钥的情况下,所述数据组包括验证值。所述验证值使能接收系统对所述序列中后面的另外的公共密钥的鉴定。对所述数据以及数据之间的关系的其它细节将被显示在下面的附图中,以及在对应所述下面附图的以下部分中解释。例如,所述计算单元可以是计算机的处理单元,或者例如可以包括两个不同的计算机,其中一个生成公共密钥和相关私有密钥的序列,而另外的计算多个数据组。所述提供系统还包括发送单元120,其被配置来为接收系统提供多个数据组。例如,所述发送单元被包括在计算机中,并且所述计算单元也属于该计算机,或者发送单元可以是一个独立的计算机系统,并且数据组在被发送给接收系统前先被传送到该计算机系统。在另一个示例中,所述发送单元实施为计算机程序,该计算机程序提供到因特网的接口。数据可以使用该接口来发送,并且数据以标准格式通过因特网路由到达目标系统(addressed system),即,可以由因特网来提供到所述接收系统的连接。在另一个示例中,在提供系统和接收系统之间的专用连接可以用作在系统之间传输数据的通信信道。
用于鉴定公共密钥序列的接收系统200的实施例包括接收单元210,其被配置来从提供系统接收多个数据组。接收系统的鉴定单元220被配置来鉴定所接收的数据组的公共密钥。这是通过将散列函数应用到数据组来计算测试散列值,并比较所述测试散列值和包括所述序列中先前公共密钥的先前数据组的验证值来实现的。通常,先前的数据组是在所述数据组之前接收到的。验证值和测试散列值的同一性是肯定的鉴定结果,因此,公共密钥的使用对PKC程序是安全的。类似于提供系统的单元,接收系统的单元也可以是计算机的一部分或计算机系统。在另一个示例中,所述单元可以在不同的计算机上,并且一单元还可以包括多于一个计算机。而且,接收单元可以是在计算机上运行的计算机程序,该计算机具有提供到提供系统的通信信道的接口。所述通信信道可以包括因特网,通过因特网所接收的数据以标准格式来路由。
图2A是提供系统的实施例的数据以及数据之间关系的示意图340。所述数据包括数据组DS(i+1)343和下一个数据组DS(i+2)341。在附图中,数据组根据在序列中所包括的公共密钥的位置来计算(enumerated)。索引i表示从1到m-2范围内的示例整数值,其中所述序列具有m个公共密钥。数据组DS(i+1)343包括公共密钥PuK(i+1)和验证值PV(i+1)342。所述验证值PV(i+1)342已经通过将散列函数应用到所述下一个数据组DS(i+2)341来计算。散列函数的示例为诸如MD4、SHA-256、SHA-512、Snefru、或Tiger的标准化的散列函数。还有其它非标准化的散列函数可以被用于本实施例的实施。
在提供系统的实施例中,所述数据组还包括更新数据,更新数据包括一个或多个以下信息:日期,数据组的公共密钥在该日期被安排用下一个公共密钥来替换;PKC方法的标识(identification),利用其可以应用所述下一个密钥;所述下一个公共密钥的长度;应用到下一个数据组的散列函数的标识。在另一个实施例中,更新数据可以还包括与鉴定所提供的公共密钥有关的数据。而用于替换所述序列的密钥以及另外的更新数据的日期必须在提供所述序列的第一数据组之前被确定。日期还可以与替换密钥的日期的其它的时间规范(specification of a time)相关联。但是,在一示例的情况下,可以比所安排的时间更早地来提供一组公共密钥,以用于替换先前的公共密钥。其原因可以是一个或多个公共密钥受损,因而是不安全的。在所述示例的情况下,因为所述公共密钥比所安排的时间更早地被用于替换,所以公共密钥组(group)的替换日期不再有效,从而不会改变更新数据。在附图中,示例的更新数据由UD(i+1)来表示。例如,更新数据UD(i+1)可以指定公共密钥PuK(i+1)被安排用包括在数据组DS(i+2)中的公共密钥PuK(i+2)来替换的日期。例如,更新数据UD(i+1)还指定PKC方法,利用该PKC方法来应用公共密钥Puk(i+1)。该PKC方法可以不同于已经用先前的公共密钥PuK(i)被使用的先前的PKC方法。这样的PKC方法的变换可以增加安全级别,因为例如将来的某个时候可以使用更复杂和更安全的PKC,而这样的PKC需要更多的计算机资源用于PKC程序。类似地,在另一个示例中,用于计算多个验证值的第一散列函数可以不同于用于计算另外多个验证值的第二散列函数。在另一个示例中,例如通过避免更高等级冲突发生(by beingcollision-free with a higher level),可以在将来的某个时候用到使用较多计算机资源但是提供更高的安全级别的散列函数。
而且,在提供系统的另一个实施例中,计算单元还被配置来计算一个签名值。签名值是将利用私有密钥的PKC方法应用到已经被应用到数据组的散列函数的结果而得到的结果。所述私有密钥与数据组的公共密钥相关。换句话说,PKC方法被用作签名应用(signing application),即,用于生成数据组的签名。另一个实施例的发送单元还被配置来与数据组一起提供签名值。在附图中,散列函数被应用到数据组DS(i+1)343以给出散列值344并应用PKC方法,即,具有私有密钥PrK(i+1)的签名函数导致签名值SV(i+1)345。在其它示例中,可以通过将具有私有密钥Prk(i+1)的签名函数直接应用到数据组DS(i+1)来计算。
在提供系统的示例中,所生成的序列的公共密钥的长度可以比先前生成的序列的公共密钥的长度更长。这会在将来提供比保持公共密钥的长度恒定更高的安全级别。这是因为今天被认为是安全的长度在例如10年以后也不再是安全的了,因为预期可用的计算机资源会更高。例如,对应于预期增加的可被破坏公共密钥的一方使用的计算机资源,序列的公共密钥的长度每5年就要加倍。在该示例中,用于PKC方法RSA的密钥一开始具有2048位的长度,然后相应地加倍。在提供系统的另一个实施例中,可应用序列的一个公共密钥的公共密钥密码方法不同于可应用序列的一个下一个公共密钥的PKC方法。这种PKC方法的改变可以通过在更新数据中指定可应用的PKC方法来方便地通信。
图2B是接收系统的实施例的数据以及数据之间关系的示意图350。所述数据包括已经从提供系统接收的数据组DS(i+1)343和先前接收的数据组DS(i)的先前的验证值PV(i)355。
在接收系统中,测试散列值352通过将散列函数应用到数据组DS(i+1)343来计算。测试散列值352与验证值PV(i)355进行比较。
在示例中,所接收的数据组还可以包括更新数据,该更新数据包括一个或多个以下信息:日期,数据组的公共密钥在该日期被安排(scheduled)用下一个公共密钥来替换;公共密钥密码方法的标识,利用其可以应用所述下一个密钥;所述下一个公共密钥的长度;被应用到所述数据组后面的数据组的散列函数的标识。
接收系统的接收单元还被配置来与所述所接收的数据组一起接收签名值,并且鉴定单元被配置来通过再计算原始值来对所接收的数据组的公共密钥进行鉴定。通过应用具有所接收的数据组的公共密钥的PKC方法来从所述签名值中计算所述原始值。所述鉴定还包括比较计算的原始值与数据组的测试散列值。在附图中,数据组DS(i+1)343与所述签名值SV(i+1)345相关联。在一个示例中,数据组DS(i+1)343和签名值SV(i+1)345之间的关联可以由提供系统通过在一个消息中发送DS(i+1)343和SV(i+1)345来创建。在这种情况下,接收系统能够通过识别所述消息中DS(i+1)343和SV(i+1)345来识别所述关联。在另一个示例中,DS(i+1)343和SV(i-1)345可以在分开的消息中发送,而所述关联可以以两个消息的共同识别符(identifier)来创建。原始值353可以通过将具有公共密钥PuK(i+1)的识别函数应用到SV(i+1)345来创建。该原始值353被与测试散列值352进行比较。具有PuK(i+1)的识别函数与具有PrK(i+1)的签名函数互补,即,所述识别函数对已经用签名函数进行加密的自变量(argument)进行解密,并给出签名函数的原始自变量。这样的识别函数与签名函数之间的关系依照使用以所述相关密钥进行加密和解密的方法的PKC。
在接收系统的另一个实施例中,序列的公共密钥的长度比序列的先前公共密钥的长度更长。而且,可应用所接收的数据组的公共密钥的PKC方法不同于可应用另外的所接收的数据组的另外的公共密钥的PKC方法。考虑到所述序列的总寿命,这两种特征增加了公共密钥的安全级别。
图3示出了根据本发明的示例实施例的数据以及数据之间的关系。数据的第一部分310和关系涉及由提供系统的实施例提供的两个公共密钥的序列,其由接收系统的实施例接收。第一数据组311包括第一公共密钥PuK(1)、更新数据UD(1)、和验证值PV(1)。第一部分310的实施例不使用签名值来提供附加的安全级别。根据接收系统的实施例,第一公共密钥可以用本领域技术人员所熟知的方式来进行鉴定。例如,这可以通过使用另外的通信信道来检查公共密钥PuK(1)以及UD(1)和PV(1)的真实性来实现。第二数据组312只提供第二公共密钥PuK(2),因为PuK(2)是序列的最后一个公共密钥。根据实施例,该第二公共密钥PuK(2)可用于鉴定检查313。鉴定检查313包括对PV(1)和H值的比较,该H值是将散列函数应用到第二公共密钥PuK(2)的结果。在鉴定检查失败的情况下,即,所述比较展示了在PV(1)和H之间的不同,则PuK(2)被认为是不安全的。使用接收系统的一方可以联络使用提供系统的一方,他们可以商定如何继续PKC程序。可以搜索所述检查失败的原因,或者生成新的公共和私有密钥的序列,以继续PKC程序。
数据的第二部分320和关系涉及根据实施例的n个公共密钥的序列。显示了验证值的一部分,以及该部分的验证值如何与后面的验证值相关。作为一个实例,第一验证值PV(1)依赖于第二验证值PV(2),而第二验证值PV(2)又依赖于第三验证值PV(3)。因此,第一验证值依赖于后面的验证值,一直到验证值PV(n-1)。这意味着在提供第一数据组321之前,公共密钥和后面数据组的更新数据是可用的。在第一数据组321之后,相应地提供和接收第二数据组322。第二公共密钥PuK(2)可以通过鉴定检查323来进行鉴定,该鉴定检查323比较第一验证值PV(1)和通过将散列函数应用到第二数据组322而计算的值。后面的数据组可应用到鉴定检查。对于其公共密钥PuK(i+1)被鉴定检查325进行鉴定的编号(i+1)324的数据组示出了这一点。最后的数据组326包括在鉴定检查327中进行检查的公共密钥PuK(n)。提供数据组的日期以及公共密钥替换先前的公共密钥的日期被安排先于提供第一数据组321。但是,也期望在稍后某个时刻脱离该时间安排。作为示例,公共密钥编号i=42可以被用于PKC程序,但是用于PKC程序的下一个公共密钥被希望是公共密钥编号i=100。一个原因可以是公共密钥编号i=100较长,因此比先前的公共密钥更安全。在这种情况下,包括编号i=42到i=100的公共密钥的数据组在很短的一段时间内被顺序地提供,以致对于PKC程序的编号i=43到i=99的公共密钥不会被访问。如所希望的,用于PKC程序的公共密钥被有效地从编号i=42变到i=100。这也可以通过将包括编号i=42到i=100的公共密钥的数据组放到一个消息中,并将这个消息提供到接收系统来实现。根据本发明的实施例,接收系统可以顺序地检查包括在所述一个消息中的数据组。
图4示出了根据本发明的实施例的数据以及数据之间关系的另一个示例330。所述数据和关系包括签名值,并且还可以是根据提供系统的实施例(参见图2A)以及根据接收系统的实施例(参见图2B)的数据的示例。所述数据和关系属于与两个公共密钥的序列的传输相关的部分330。第一数据组包括公共密钥PuK(1)、更新数据UD(1)、和验证值PV(1)。第一数据组被提供签名值SV(1)。第一数据组和签名值SV(1)之间的关联331可以通过将第一数据组和签名值SV(1)放入一个消息中来实施。第一鉴定检查332包括比较通过将散列函数应用到第一数据组计算的第一测试散列值与第一原始值。第一原始值是通过将具有第一私有密钥的检验函数应用到第一签名值SV(1)来计算的。第二关联333包括第二数据组和第二签名值SV(2)。第二鉴定检查334包括两个比较。一个比较使用第一验证值PV(1)检查第二密钥PuK(2)的真实性,而另一个比较使用具有第二公共密钥PuK(2)的检验函数。
图5是根据本发明的方法400的简化的流程图。方法400是计算机实施的方法,用于将公共密钥的序列提供到接收系统。方法400包括提供系统生成公共密钥的序列410,以及将数据组提供到接收系统420。所述数据组包括序列的公共密钥,其具有序列中的下一个公共密钥,以及包括验证值,其是将散列函数应用到下一个数据组而得到的结果。所述方法还包括将下一个数据组提供到接收系统430,所述下一个数据组包括下一个公共密钥。在示例中,所述下一个数据组还包括下一个验证值。所述下一个验证值是将散列函数应用到包括在序列中再下一个(further following)公共密钥的再下一个数据组而得到的结果。在示例中,包括了下一个验证值,因为所述下一个公共密钥具有在序列中后面的再下一个公共密钥。方法400还包括提供数据组的签名值的可选择的方法步骤440。在图5和图6中,可选择的方法步骤由虚线表示。所述签名值是将具有私有密钥的PKC方法应用到已经被应用到数据组的散列函数的结果而得到的结果。该私有密钥与所述数据组的公共密钥相关。在方法400中,其它可选择的方法步骤包括为另外的数据组而重复进行提供。所述另外的数据组包括在序列中的、在所述先前提供的公共密钥后面的另外的公共密钥。而且,所述下一个数据组包括下一个验证值,所述下一个验证值是将散列函数应用到所述另外的数据组而得到的结果。在一示例中,所述另外的数据组还可以包括另外的验证值。所述另外的验证值是将散列函数应用到数据组而得到的结果,该数据组包括在所述序列中另外的密钥后面的再另外的公共密钥。在示例中,包括了另外的验证值,因为所述另外的公共密钥具有在序列中后面的再另外的公共密钥。提供另外的数据组的可选择的方法步骤通过检查在序列中后面是否还存在另外的公共密钥的条件来实施。如果条件满足,则重复方法步骤430和440。重复所述方法步骤的时间点可以在提供包括所述序列的第一公共密钥的第一数据组之前被安排。在各个时间点之间的周期可以为例如一个月。
在该实施例中,所提供的数据组还包括更新数据,其包括与鉴定所提供的公共密钥相关的数据。这样的更新数据可以例如包括PKC方法的识别符,以及散列函数的识别符。本领域的技术人员应当理解,方法400的方法步骤可以按照不同的次序来执行。例如,提供签名值440可以在提供下一个数据组430之前执行。
图6是根据本发明的另一个方法500的简化的流程图。方法500体现了一种计算机实施的方法,用于鉴定从提供系统接收的公共密钥的序列的公共密钥。所述实施例包括接收系统接收数据组510,该数据组包括公共密钥以及作为散列函数结果的验证值,并且所述公共密钥还有在序列中的下一个公共密钥。所述实施例还包括接收包括下一个公共密钥的下一个数据组520。在示例中,所述下一个数据还可以包括作为应用散列函数结果的下一个验证值。在所述下一个公共密钥具有在序列中后面的再下一个公共密钥的情况下,可以包括所述验证值。所述实施例包括通过将散列函数应用到所述下一个数据组来计算测试散列值530,以及鉴定所述下一个公共密钥540。鉴定下一个密钥540是通过比较数据组的验证值与测试散列值来进行的,其中验证值与测试散列值的同一性是肯定的鉴定结果。所述实施例还包括可选择的方法步骤:接收所述下一个数据组的签名值550;通过应用具有所述下一个数据组的公共密钥的公共密钥密码方法来从签名值计算原始值560;以及利用进一步的比较来鉴定所述下一个公共密钥570。利用进一步比较的鉴定570是通过进一步比较所计算的原始值与下一个数据组的测试散列值来进行的。肯定的鉴定结果意味着鉴定540与鉴定570的方法步骤的比较值的同一性。
方法500还包括重复下列步骤:接收包括另外的公共密钥的另外的数据组;通过将散列函数应用到另外的数据组来计算另外的测试散列值;以及鉴定另外的公共密钥。此外,所述下一个数据组还包括可以被用于鉴定另外的公共密钥的下一个验证值。在示例中,步骤的重复可以进行多次。一般,鉴定540可以通过比较包括在先前的数据组中的先前的验证值与从当前数据组中计算的测试散列值来进行。所述先前的数据组包括序列中先前的公共密钥,而当前数据组包括序列中在所述先前的公共密钥之后的当前的公共密钥。此外,方法500包括比较通过应用检验函数而计算的另外的原始值与另外的签名值来鉴定另外的公共密钥570。通过检查序列中后面是否存在另外的公共密钥的情况482来在方法500中实施重复另外的方法步骤。因此也重复通过进一步比较进行的鉴定570。验证值与测试散列值的同一性,以及原始值与测试散列值的同一性是肯定的鉴定结果。在另外的公共密钥具有序列中后面的再另外的公共密钥的情况下,包括了另外的验证值。在所述实施例中,所接收的数据组还包括更新数据,该更新数据包括与鉴定所接收的数据组的公共密钥相关的数据。这样的数据例如包括公共密钥密码方法的标识和散列函数的标识。本领域的技术人员应当理解,方法500的方法步骤可以按照不同的次序来执行。例如,接收签名值550可以在接收下一个数据组520之前执行。
本发明的另一个实施例是一种计算机程序产品,其包括可由计算机系统执行的指令,并且,其使计算机系统执行用于提供所述序列的方法400的方法步骤。在另一个示例中,计算机程序产品可以包括与用于提供所述序列的另一个方法的方法步骤相关的指令。另一个实施例是包括可由计算机系统执行的指令的另一个计算机程序产品,并且,其使该计算机系统执行用于鉴定公共密钥的方法500的方法步骤。在另一个示例中,另一个计算机程序产品可以包括与用于鉴定公共密钥的另一个实施例的方法步骤相关的指令。
PKC程序的示例涉及由认证授权(certification authority)发布的证明(certificate)。在该示例中,所述证明包括参与方的身份(identity)、发给所述参与方的公共密钥、以及认证授权的签名。例如,所述参与方可以是个人、组织或服务器。在示例中,所述签名是在PKC签名应用的构架中创建的,即,通过用私有密钥加密所述参与方的身份和公共密钥来计算所述签名。所述签名使得接收所述证明的另一个参与方能够检查在所述公共密钥和来自该证明的身份之间的关联性的真实性。假设所述公共密钥是真实的,则因此另一个参与方能够检查该证明。用于这样一种应用的认证授权的私有密钥和相关公共密钥对(pairs)也被称为根密钥。希望检查真实性的另一个参与方需要以安全途径提供的所述根密钥的公共密钥。所述另一个参与方可以是例如由银行交易所使用的超文本传输协议安全(HTTPS)服务器。在示例中,认证授权的根密钥的公共密钥必须要以尽可能安全而且自动的途径传播到许多其他的参与方,而且,用另外的根密钥的公共密钥替换一个根密钥的公共密钥也希望是安全和自动的。如一个示例,认证授权可以产生1000个密钥,以便在之后的15年间使用所述根密钥来进行认证。具有第一操作的公共密钥的第一数据组可以以已建立的途径来分发,例如,记录(brand on)在智能卡上,然后分发该智能卡。
如上所述,在本发明的范围内的实施例包括计算机程序产品。所述计算机程序产品包括计算机可读介质,用于携载或具有计算机可执行的指令,即可以计算机系统执行的指令或用于携载在其上存储的数据结构。这样的计算机可读介质可以是任何可用的介质,可以被通用或专用计算机访问。作为示例,这样的计算机可读介质可以包括RAM、ROM、EPROM、CD-ROM或其它光盘存储器、磁盘存储器或其它磁存储设备,或者其它任何可以被用来以计算机可执行指令的形式携载或存储想要的程序代码的介质,并且该介质能够被通用或专用计算机访问。当信息经由网络或另外的通信连接(硬连线、无线或硬连线或无线的组合)被传送或提供到计算机时,该计算机可以恰当地将所述连接视为一个计算机可读介质。因此,任何这样的连接都可以恰当地被称为计算机可读介质。而上述举例的组合也应当被包括在计算机可读介质的范围内。例如,计算机可执行指令包括指令和数据,所述指令和数据使得通用计算机、专用计算机或专用处理设备执行特定的功能或一组功能。而且,计算机可执行指令包括例如这样的指令,该指令必须被计算机处理以便将它转换为可由计算机执行的格式。计算机可执行指令可以为源格式(sourceformat),可以编译或解释以获得可执行格式的指令。在计算机可执行指令是被转换的情况下,第一计算机可以例如将该计算机可执行指令转换为可执行的格式,而第二计算机可以执行该被转换的指令。
本发明以一般的方法步骤的上下文来描述,其可以通过由网络环境中的计算机执行计算机程序产品而以一个实施例实施,所述计算机程序产品包括计算机可执行指令,诸如程序代码。一般,程序模块包括例如例程、程序、对象、组件、或数据结构,以执行特定任务或实施特定抽象数据类型。计算机可执行指令、相关联的数据结构、以及程序模块,代表了用于执行这里所公开的方法的步骤的程序代码的示例。
这样的可执行指令或相关联的数据结构的特定序列代表了用于实施在这样的步骤中所描述的功能的相应动作的示例。
在一些实施例中,本发明可以在使用到一个或多个具有处理器的远程计算机的逻辑连接的网络环境中操作。逻辑连接可以包括例如局域网(LAN)或广域网(WAN)。这里表示的例子仅仅是为了示例目的而不是为了进行限制。这样的网络环境普遍为办公室范围内(office-wide)或企业范围内(enterprise-wide)的计算机网络、内联网和因特网。本领域技术人员应当理解,这样的网络计算机环境典型地将包围有多种类型的计算机系统配置,包括个人计算机、手持设备、多处理器系统、基于微型处理器的或可编程的消费电子产品、网络PC、迷你计算机、大型计算机等。本发明也可以在分布式计算环境中实行,在其中任务可以由通过通信网络链接的(通过硬连线链接、无线链接、或通过硬连线或无线连接的组合)本地或远程处理设备来执行。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备两者。
用于实施本发明的全部系统或部分系统的示例系统可以包括以传统计算机形式的通用计算设备,包括处理单元、系统存储器、以及将包括系统存储器的各种系统组件耦合到处理单元的系统总线。所述系统存储器可以包括只读存储器(ROM)和随机存取存储器(RAM)。该计算机还可以包括用于从磁硬盘读取和向磁硬盘写入的磁硬盘驱动、用于从可移动磁盘读取和向可移动磁盘写入的磁盘驱动、以及用于从可移动光盘读取和向可移动光盘写入的光盘驱动,诸如CD-ROM或其它光介质。所述驱动和它们的相关联的计算机可读介质提供了对计算机可执行指令、数据结构、程序模块以及用于计算机的其它数据的非易失性的存储。
本发明的软件和网络实施可以用标准编程技术以基于规则的逻辑和其它逻辑来实现,以实现各种数据库搜索步骤、相关步骤、比较步骤和决定步骤。应当注意到在这里以及权利要求书中所使用的术语“组件”是包含了使用一行或多行软件代码的实施,和/或硬件实施、和/或用于接收手动输入的设备。
为了展示以及说明的目的,已经在前面给出了对本发明的实施例的描述。应当理解这样的说明不是为了穷举的目的,或是为了将本发明限定为所公开的形式,根据上述教导能够进行修改和变化,或从对本发明的实践中获得。选择所述实施例并进行描述是为了解释本发明的原理,并且其实际应用使得本领域技术人员可以在各种实施例中使用本发明,并进行适于预期的特定用途的各种改变。

Claims (20)

1.一种提供系统(100),用于将公共密钥序列提供到接收系统(200),其中所述序列的每个公共密钥都与私有密钥相关,并适用于公共密钥密码程序;所述提供系统(100)包括:
计算单元(110),被配置来:生成所述公共密钥的序列以及相关的私有密钥,并计算多个数据组(311、312、321、322、324、326、331、333、343),所述多个数据组的数据组(343)包括公共密钥和验证值(342),所述验证值(342)是将散列函数应用到包括在所述序列中后面的另外的公共密钥的下一个数据组(341)而得到的结果;和
发送单元(120),被配置来提供所述多个数据组(311、312、321、322、324、326、331、333、343)到所述接收系统(200)。
2.如权利要求1所述的提供系统(100),其中,所述数据组(311、312、321、322、324、326、331、333、343)还包括更新数据,其包括一个或多个以下信息:日期,所述数据组的公共密钥在该日期被安排用下一个公共密钥来替换;公共密钥密码方法的标识,利用其可以应用所述下一个密钥;所述下一个公共密钥的长度;已经被应用到所述下一个数据组的散列函数的标识。
3.如权利要求1或2所述的提供系统,其中所述计算单元还被配置来计算签名值(345),所述签名值是将利用私有密钥的公共密钥密码方法应用到已经被应用到所述数据组(343)的散列函数的结果而得到的结果,其中所述私有密钥与所述数据组(343)的公共密钥相关,并且其中所述发送单元还被配置来与所述数据组(343)一起提供所述签名值(345)。
4.如权利要求1至3的任何一项所述的提供系统,其中所述序列的所生成的公共密钥的长度比所述序列的先前生成的公共密钥的长度更长。
5.如权利要求1至4的任何一项所述的提供系统,其中使用所述序列的公共密钥的公共密钥密码方法不同于使用所述序列的另外的公共密钥的另外的公共密钥密码方法。
6.一种接收系统(200),用于鉴定从提供系统(100)接收的公共密钥序列的公共密钥,其中每个公共密钥都与私有密钥相关,并且适用于公共密钥密码程序;所述接收系统(200)包括:
接收单元(210),被配置来从所述提供系统(100)接收多个数据组(311、312、321、322、324、326、331、333、343),所述多个数据组的数据组(343)包括公共密钥;
鉴定单元(220),被配置来鉴定所述数据组(343)的公共密钥,这是通过计算将散列函数应用到数据组(343)而得到的测试散列值(352),并比较所述测试散列值(352)和先前数据组的验证值(355)来执行的,其中所述验证值(355)与所述测试散列值(352)的同一性是肯定的鉴定结果。
7.如权利要求6所述的接收系统,其中所述数据组(311、312、321、322、324、326、331、333、343)还包括更新数据,其包括一个或多个以下信息:日期,所述数据组的公共密钥在该日期被安排用下一个公共密钥来替换;公共密钥密码方法的标识,利用该方法可以应用所述下一个密钥;所述下一个公共密钥的长度;已经被应用到所述下一个数据组的散列函数的标识。
8.如权利要求6或7所述的接收系统,其中所述接收单元(210)还被配置来与所述数据组(343)一起接收签名值(345),而鉴定单元(220)被配置来鉴定所述数据组(343)的公共密钥,这是通过使用所述公共密钥应用公共密钥密码方法来进一步从所述签名值(345)计算原始值(353),并比较所计算的原始值(353)与所述数据组(343)的测试散列值(352)来执行的。
9.如权利要求7至8的任何一项所述的接收系统,其中,所述序列的公共密钥的长度长于所述序列的先前公共密钥的长度。
10.如权利要求6至9的任何一项所述的接收系统,其中使用所接收的数据组的公共密钥的公共密钥密码方法不同于使用另外接收的数据组的另外的公共密钥的另外的公共密钥密码方法。
11.一种计算机实施的方法(400),用于将公共密钥序列提供到接收系统(200),其中所述序列的每个公共密钥都与私有密钥相关,并适用于公共密钥密码程序;所述方法(400)包括提供系统(100):
生成(410)公共密钥序列;
提供(420)数据组(311、312、321、322、324、326、331、333、343)到所述接收系统(200),所述数据组(311、312、321、322、324、326、331、333、343)包括所述序列的公共密钥,其具有在序列中的下一个公共密钥,而所述数据组还包括验证值(342),该验证值是将散列函数应用到下一个数据组(341)而得到的结果;
提供(430)所述下一个数据组(341)到所述接收系统(200),所述下一个数据组(341)包括所述下一个公共密钥。
12.如权利要求11所述的方法,其中,为包括另外的公共密钥的另外的数据组而重复所述提供(430)步骤,并且,其中所述下一个数据组(341)还包括将散列函数应用到所述另外的数据组而得到的结果的下一个验证值。
13.如权利要求11或12所述的方法,其中,所述数据组(311、312、321、322、324、326、331、333、343)还包括更新数据,其包括与鉴定所提供的公共密钥相关的数据。
14.如权利要求11至13的任何一项所述的方法,还为数据组(343)提供(440)签名值(345),所述签名值是将使用私有密钥的公共密钥密码方法应用到已经被应用到所述数据组(343)的散列函数的结果而得到的结果,其中所述私有密钥与所述数据组的(343)的公共密钥相关。
15.一种计算机实施的方法(500),用于鉴定从提供系统(100)接收的公共密钥序列的公共密钥,其中,每个公共密钥都与私有密钥相关,并且适用于公共密钥密码程序;所述方法包括接收系统(200):
接收数据组,该数据组包括具有在所述序列中的下一个公共密钥的公共密钥,还包括作为散列函数结果的验证值(355)。;
接收(520)下一个数据组(343),该数据组包括所述下一个公共密钥;
通过应用散列函数到所述下一个数据组(343)来计算(530)测试散列值(352);
通过比较所述数据组的验证值(355)和所述测试散列值(352)来鉴定(540)所述下一个公共密钥;其中所述验证值(355)与所述测试散列值(352)的同一性是肯定的鉴定结果。
16.如权利要求15所述的方法,其中,为包括另外的公共密钥的另外的数据组(341)而重复接收(520)、计算(530)和鉴定(540)的步骤,并且其中所述下一个数据组(343)还包括作为散列函数结果的下一个验证值(342)。
17.如权利要求15或16所述的方法,其中所接收的数据组还包括更新数据,其包括与鉴定所接收的数据组的公共密钥相关的数据。
18.如权利要求15至17的任何一项所述的方法,进一步为下一个数据组(343)接收(550)签名值(345),通过使用所述下一个数据组(343)的下一个公共密钥应用公共密钥密码方法、从所述签名值(345)计算(560)原始值(353),并通过进一步比较所计算的原始值(353)和所述下一个数据组(343)的测试散列值(352)来鉴定(570)所述下一个公共密钥。
19.一种计算机程序产品,包括可以被计算机系统执行的指令,并使得计算机系统执行权利要求11至14的任何一项的方法的方法步骤。
20.一种计算机程序产品,包括可以被计算机系统执行的指令,并使得计算机系统执行权利要求15至18的任何一项方法的步骤。
CNB2006101084264A 2005-08-05 2006-08-02 用于更新用于公共密钥密码的密钥的系统和方法 Active CN100521601C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP05017140A EP1750389B1 (en) 2005-08-05 2005-08-05 System and method for updating keys used for public key cryptography
EP05017140.4 2005-08-05

Publications (2)

Publication Number Publication Date
CN1909452A true CN1909452A (zh) 2007-02-07
CN100521601C CN100521601C (zh) 2009-07-29

Family

ID=35431060

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006101084264A Active CN100521601C (zh) 2005-08-05 2006-08-02 用于更新用于公共密钥密码的密钥的系统和方法

Country Status (6)

Country Link
US (1) US7974415B2 (zh)
EP (1) EP1750389B1 (zh)
JP (1) JP4593533B2 (zh)
CN (1) CN100521601C (zh)
AT (1) ATE374478T1 (zh)
DE (1) DE602005002652T2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110235134A (zh) * 2017-01-26 2019-09-13 微软技术许可有限责任公司 使用洁净室供应来寻址可信执行环境

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8214638B1 (en) * 2006-09-26 2012-07-03 Hewlett-Packard Development Company, L.P. Using multiple certificates to distribute public keys
CN101170407B (zh) * 2007-12-03 2011-01-12 北京深思洛克软件技术股份有限公司 一种安全地生成密钥对和传送公钥或证书申请文件的方法
EP2104269A1 (en) 2008-03-17 2009-09-23 Robert Bosch Gmbh An electronic control unit (ECU) and a method for verifying data integrity
JP5324813B2 (ja) * 2008-04-28 2013-10-23 Kddi株式会社 鍵生成装置、証明書生成装置、サービス提供システム、鍵生成方法、証明書生成方法、サービス提供方法およびプログラム
FR2931326A1 (fr) * 2008-05-16 2009-11-20 St Microelectronics Rousset Verification d'integrite d'une cle de chiffrement
CN101286840B (zh) * 2008-05-29 2014-07-30 西安西电捷通无线网络通信股份有限公司 一种利用公钥密码技术的密钥分配方法及其系统
US8392711B2 (en) * 2009-05-27 2013-03-05 Avaya Inc. Staged establishment of secure strings of symbols
US9026805B2 (en) 2010-12-30 2015-05-05 Microsoft Technology Licensing, Llc Key management using trusted platform modules
US10298684B2 (en) 2011-04-01 2019-05-21 International Business Machines Corporation Adaptive replication of dispersed data to improve data access performance
US11418580B2 (en) 2011-04-01 2022-08-16 Pure Storage, Inc. Selective generation of secure signatures in a distributed storage network
US8874990B2 (en) * 2011-04-01 2014-10-28 Cleversafe, Inc. Pre-fetching data segments stored in a dispersed storage network
US8948399B2 (en) * 2011-05-27 2015-02-03 Novell, Inc. Dynamic key management
US9008316B2 (en) * 2012-03-29 2015-04-14 Microsoft Technology Licensing, Llc Role-based distributed key management
US9285981B1 (en) 2012-07-16 2016-03-15 Wickr Inc. Discouraging screen capture
US10129260B1 (en) 2013-06-25 2018-11-13 Wickr Inc. Mutual privacy management
US9830089B1 (en) 2013-06-25 2017-11-28 Wickr Inc. Digital data sanitization
US9866591B1 (en) 2013-06-25 2018-01-09 Wickr Inc. Enterprise messaging platform
US10567349B2 (en) 2013-06-25 2020-02-18 Wickr Inc. Secure time-to-live
JP6312344B2 (ja) * 2014-02-18 2018-04-18 日本電信電話株式会社 セキュリティ装置、その方法、およびプログラム
US9698976B1 (en) 2014-02-24 2017-07-04 Wickr Inc. Key management and dynamic perfect forward secrecy
US9584530B1 (en) 2014-06-27 2017-02-28 Wickr Inc. In-band identity verification and man-in-the-middle defense
US9928149B2 (en) * 2014-08-29 2018-03-27 Cynny Space Srl Systems and methods to maintain data integrity and redundancy in a computing system having multiple computers
US9654288B1 (en) 2014-12-11 2017-05-16 Wickr Inc. Securing group communications
US9590956B1 (en) 2015-12-18 2017-03-07 Wickr Inc. Decentralized authoritative messaging
US10291607B1 (en) 2016-02-02 2019-05-14 Wickr Inc. Providing real-time events to applications
CN105915333B (zh) * 2016-03-15 2019-08-23 南京邮电大学 一种基于属性加密的高效密钥分发方法
US9596079B1 (en) 2016-04-14 2017-03-14 Wickr Inc. Secure telecommunications
US9602477B1 (en) 2016-04-14 2017-03-21 Wickr Inc. Secure file transfer
TWI608722B (zh) * 2016-06-23 2017-12-11 Public key certificate method
CN110050437B (zh) * 2016-09-06 2020-10-23 华为技术有限公司 分布式证书注册的装置和方法
US10855566B2 (en) 2016-09-30 2020-12-01 Sap Se Efficiency and performance in Internet-of-Things scenarios
SG11202102543WA (en) 2018-10-02 2021-04-29 Capital One Services Llc Systems and methods for cryptographic authentication of contactless cards
US20220417036A1 (en) * 2021-06-29 2022-12-29 Amazon Technologies, Inc. Identity authority

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3080382B2 (ja) * 1990-02-21 2000-08-28 株式会社日立製作所 暗号通信システム
WO1998032113A1 (fr) * 1997-01-17 1998-07-23 Ntt Data Corporation Procede et systeme de controle de cle pour signature electronique
US6820202B1 (en) * 1998-11-09 2004-11-16 First Data Corporation Account authority digital signature (AADS) system
US6976162B1 (en) * 2000-06-28 2005-12-13 Intel Corporation Platform and method for establishing provable identities while maintaining privacy
JP2002297548A (ja) * 2001-03-30 2002-10-11 Matsushita Electric Ind Co Ltd 端末登録システムとそれを構成する装置及び方法
JP3890959B2 (ja) * 2001-11-22 2007-03-07 株式会社日立製作所 公開鍵証明書の生成システム及び検証システム
JP3897613B2 (ja) * 2002-02-27 2007-03-28 株式会社日立製作所 公開鍵暗号方式における登録局サーバの運用方法、登録局サーバ、及びプログラム
EP1349033B1 (en) * 2002-03-26 2004-03-31 Soteres GmbH A method of protecting the integrity of a computer program
JP4504099B2 (ja) * 2003-06-25 2010-07-14 株式会社リコー デジタル証明書管理システム、デジタル証明書管理装置、デジタル証明書管理方法、更新手順決定方法およびプログラム
JP2007506392A (ja) * 2003-09-22 2007-03-15 イムプシス ディジタル セキュリティ アクチボラゲット データ通信機密保護の仕組みおよび方法
US20050120203A1 (en) * 2003-12-01 2005-06-02 Ryhwei Yeh Methods, systems and computer program products for automatic rekeying in an authentication environment
US7983420B2 (en) * 2004-05-24 2011-07-19 Sharp Laboratories Of America, Inc. Imaging job authorization
US7693280B2 (en) * 2005-04-22 2010-04-06 Microsoft Corporation Rights management system for streamed multimedia content
US7613915B2 (en) * 2006-11-09 2009-11-03 BroadOn Communications Corp Method for programming on-chip non-volatile memory in a secure processor, and a device so programmed

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110235134A (zh) * 2017-01-26 2019-09-13 微软技术许可有限责任公司 使用洁净室供应来寻址可信执行环境
CN110235134B (zh) * 2017-01-26 2023-09-08 微软技术许可有限责任公司 使用洁净室供应来寻址可信执行环境

Also Published As

Publication number Publication date
US20070116269A1 (en) 2007-05-24
EP1750389A1 (en) 2007-02-07
JP4593533B2 (ja) 2010-12-08
DE602005002652D1 (de) 2007-11-08
EP1750389B1 (en) 2007-09-26
US7974415B2 (en) 2011-07-05
DE602005002652T2 (de) 2008-07-10
JP2007049708A (ja) 2007-02-22
ATE374478T1 (de) 2007-10-15
CN100521601C (zh) 2009-07-29

Similar Documents

Publication Publication Date Title
CN100521601C (zh) 用于更新用于公共密钥密码的密钥的系统和方法
US11811912B1 (en) Cryptographic algorithm status transition
US10516662B2 (en) System and method for authenticating the legitimacy of a request for a resource by a user
US10742420B1 (en) Quantum-resistant double signature system
CN109743171B (zh) 一种解决多方数字签名、时间戳及加密的密钥串联方法
JP3858527B2 (ja) データ生成装置およびデータ検証装置ならびにその方法
JP4788212B2 (ja) デジタル署名プログラム及びデジタル署名システム
US20050228999A1 (en) Audit records for digitally signed documents
CN101136046A (zh) 电子签名验证系统及方法
WO2009115903A1 (en) Method and system to provide fine granular integrity to digital data
CN112906056A (zh) 一种基于区块链的云存储密钥安全管理方法
CN113610526A (zh) 一种数据信任方法、装置、电子设备及存储介质
CN115442047A (zh) 一种业务管理文件的电子签章方法及系统
Sullivan et al. Open to a fault: On the passive compromise of {TLS} keys via transient errors
CN114553532A (zh) 数据安全传输方法、装置、电子设备及存储介质
Bray Implementing Cryptography Using Python
CN1241353C (zh) 自动可恢复自动可认证密码系统
CN1820450A (zh) Diffie-Hellman数字签名的生成和验证
Hartung Advanced Cryptographic Techniques for Protecting Log Data
CN101043334A (zh) 加密和认证数据以及解密和验证数据真实性的方法和装置
CN114465731B (zh) 基于区块链的电池可信加密管理系统和方法
US7035403B2 (en) Encryption method and apparatus with escrow guarantees
Resul et al. Cryptolog: A new approach to provide log security for digital forensics
Jochen et al. A framework for tamper detection marking of mobile applications
Yu et al. Improvement of a remote data possession checking protocol from algebraic signatures

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