CN116601918A - 使用基于时间的中间证书颁发机构表示证书有效期 - Google Patents
使用基于时间的中间证书颁发机构表示证书有效期 Download PDFInfo
- Publication number
- CN116601918A CN116601918A CN202180083223.7A CN202180083223A CN116601918A CN 116601918 A CN116601918 A CN 116601918A CN 202180083223 A CN202180083223 A CN 202180083223A CN 116601918 A CN116601918 A CN 116601918A
- Authority
- CN
- China
- Prior art keywords
- certificate
- certificate authority
- intermediate certificate
- chain
- authority
- 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
Links
- 238000012795 verification Methods 0.000 claims abstract description 95
- 238000000034 method Methods 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims description 46
- 230000015654 memory Effects 0.000 claims description 31
- 230000006870 function Effects 0.000 claims description 10
- 238000009795 derivation Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 11
- 238000004590 computer program Methods 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 102000036364 Cullin Ring E3 Ligases Human genes 0.000 description 1
- 108091007045 Cullin Ring E3 Ligases Proteins 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3263—Cryptographic 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
- H04L9/3268—Cryptographic 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 using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3263—Cryptographic 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
- H04L9/3265—Cryptographic 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 using certificate chains, trees or paths; Hierarchical trust model
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Storage Device Security (AREA)
Abstract
用于表示证书有效期的方法(800)包括从根证书颁发机构(310R)获得根数字证书(210R)并生成中间证书颁发机构(310N)链。每个中间证书颁发机构包括由中间证书颁发机构数字签名的相应的中间证书(210N)和相应的验证时间段(312),该验证时间段指示允许中间证书颁发机构对证书进行数字签名的时间范围。相应的验证时间段包括链中较低的每个中间证书颁发机构的验证时间段。该方法包括生成证书吊销列表(510)和生成多个最终实体证书(210L)。该方法包括,在链中最低的中间证书颁发机构的相应的验证时间段已经过期之后,向证书吊销列表中添加多个最终实体证书中的一个或多个。
Description
技术领域
此公开涉及使用基于时间的中间证书颁发机构表示证书有效期。
背景技术
数字证书是通常用于在网络上建立公钥的所有权的电子文档。一旦为特定用户或实体建立了公钥的所有权,就可以使用公钥与用户或实体进行安全通信。数字证书通常具有内嵌的基于时间的有效期,限制了数字证书的有效时段。有效时段已经到期后,证书将不再有效。这要求从与证书相关联的公钥的声称所有者接收该证书的每个设备都具有可靠的时钟,以便比较当前时间和有效时段。数字证书也可以通过使用证书吊销列表在其预定到期日期之前吊销。
发明内容
该公开的一个方面提供了一种方法,用于使用基于时间的中间证书颁发机构表示证书有效期。所述方法包括在数据处理硬件处,从根证书颁发机构获得由所述根证书颁发机构数字签名的根数字证书。该方法还包括由所述数据处理硬件生成中间证书颁发机构链。所述中间证书颁发机构链中每个相应的中间证书颁发机构包括由所述中间证书颁发机构或所述根证书颁发机构数字签名的相应的中间证书,所述中间证书颁发机构或所述根证书颁发机构在所述中间证书颁发机构链中紧邻且高于所述相应的中间证书颁发机构,以及相应的验证时间段,所述相应的验证时间段指示允许所述相应的中间证书颁发机构对中间证书和最终实体证书进行数字签名的时间范围,所述相应的中间证书颁发机构的所述相应的验证时间段包括在所述中间证书颁发机构链中低于所述相应的中间证书颁发机构的每个中间证书颁发机构的所述验证时间段。该方法还包括由所述数据处理硬件为所述中间证书颁发机构链生成证书吊销列表。该方法还包括由所述数据处理硬件从所述中间证书颁发机构链中的最低中间证书颁发机构生成多个最终实体证书。所述多个最终实体证书的每个最终实体证书由所述中间证书颁发机构链中的最低中间证书颁发机构进行数字签名。该方法还包括,在所述中间证书颁发机构链中的最低中间证书颁发机构的所述相应的验证时间段已经过期之后,由所述数据处理硬件将所述中间证书颁发机构链中的最低中间证书颁发机构生成的所述多个最终实体证书中的一个或多个添加到所述证书吊销列表中。
本公开的实现可以包括下列一个或多个可选特性。在一些实现中,当由中间证书颁发机构链中的相应的中间证书颁发机构数字签名的每个最终实体证书已添加到所述证书吊销列表中,且当前时间是在所述相应的中间证书颁发机构的所述相应的验证时间段结束时或之后,所述方法包括由所述数据处理硬件将所述多个最终实体证书中的每一个从所述证书吊销列表中移除,以及由所述数据处理硬件将与所述相应的中间证书颁发机构相关联的所述相应的中间证书添加到证书吊销列表中。在一些示例中,所述方法包括在与所述中间证书颁发机构链中的相应的中间证书颁发机构相关联的所述相应的验证时间段已经过期之后,由所述数据处理硬件生成与验证时间段相关联的另一个中间证书颁发机构,所述验证时间段和与所述相应的中间证书颁发机构相关联的所述验证时间段具有相同的持续时间。所述方法还可以包括由所述数据处理硬件用所述中间证书颁发机构链中的所述另一中间证书颁发机构替换所述相应的中间证书颁发机构。所述方法还可以包括,在用所述另一中间证书颁发机构替换所述相应的中间证书颁发机构之后,由所述数据处理硬件生成由所述另一中间证书颁发机构数字签名而不是由所述相应的中间证书颁发机构数字签名的最终实体证书。
可选地,每个验证时间段与天、周、月、季度或年中的一个相关联。在一些实现中,每个最终实体证书都没有有效期时间。在一些例子中,所述方法包括由所述数据处理硬件确定所述多个最终实体证书中的相应的最终实体证书被破坏,以及由所述数据处理硬件将所述相应的最终实体证书添加到证书吊销列表中。
每个中间证书颁发机构都可以与从公共种子值派生的唯一密钥相关联。在一些实现中,每个唯一密钥都是使用密钥派生函数派生的。可选地,所述相应的中间证书颁发机构的所述相应的验证时间段短于所述中间证书颁发机构链中比所述相应的中间证书颁发机构更高的任何中间证书颁发机构的所述验证时间段。在一些实现中,所述方法进一步包括由所述数据处理硬件确定多个最终实体证书中的相应的最终实体证书已经轮换,以及由所述数据处理硬件将所述相应的最终实体证书添加到证书吊销列表中。
本公开的另一方面提供了数据处理硬件和与所述数据处理硬件通信的存储器硬件。所述存储器硬件存储指令,所述指令在所述数据处理硬件上执行时使所述数据处理硬件进行操作。所述操作包括,从根证书颁发机构获得由所述根证书颁发机构数字签名的根数字证书。所述操作还包括生成中间证书颁发机构链。所述中间证书颁发机构链中的每个相应的中间证书颁发机构包括由所述中间证书颁发机构或根证书颁发机构数字签名的相应的中间证书,所述中间证书颁发机构或所述根证书颁发机构在所述中间证书颁发机构链中紧邻且高于所述相应的中间证书颁发机构,以及相应的验证时间段,所述相应的验证时间段指示允许所述相应的中间证书颁发机构对中间证书和最终实体证书进行数字签名的时间范围。所述相应的中间证书颁发机构的所述相应验证时间段包括在所述中间证书颁发机构链中低于所述相应中间证书颁发机构的每个中间证书颁发机构的所述验证时间段。所述操作还包括为所述中间证书颁发机构链生成证书吊销列表。所述操作还包括从所述中间证书颁发机构链中的最低中间证书颁发机构生成多个最终实体证书。所述多个最终实体证书中的每个最终实体证书由所述中间证书颁发机构链中的最低中间证书颁发机构进行数字签名。所述操作还包括,在所述中间证书颁发机构链中的最低中间证书颁发机构的所述相应的验证时间段已经过期之后,将所述中间证书颁发机构链中的最低中间证书颁发机构生成的所述多个最终实体证书中的一个或多个添加到所述证书吊销列表中。
此方面可以包括以下一个或多个可选特性。在一些实现中,当由所述中间证书颁发机构链中的相应的中间证书颁发机构数字签名的每个最终实体证书已添加到证书吊销列表中,并且当前时间处于所述相应的中间证书颁发机构的所述相应的验证时间段结束时或之后,所述操作包括将所述多个叶证书中的每一个从所述证书吊销列表中移除,以及将与所述相应的中间证书颁发机构相关联的所述相应的中间证书添加到所述证书吊销列表中。在一些示例中,所述操作包括,在与所述中间证书颁发机构链中的相应的中间证书颁发机构相关联的所述相应的验证时间段已经过期之后,生成与验证时间段相关联的另一中间证书颁发机构,所述验证时间段和与所述相应的中间证书颁发机构相关联的所述验证时间段具有相同的持续时间。所述操作还可以包括用所述中间证书颁发机构链中的所述另一中间证书颁发机构替换所述相应的中间证书颁发机构。所述操作还可以包括,在用所述另一中间证书颁发机构替换所述相应的中间证书颁发机构之后,生成由所述另一中间证书颁发机构数字签名而不是由所述相应的中间证书颁发机构数字签名的最终实体证书。
可选地,每个验证时间段与天、周、月、季度或年中的一个相关联。在一些实现中,每个最终实体证书没有有效期时间。在一些示例中,所述操作包括,确定所述多个最终实体证书中的相应的最终实体证书被破坏,并将所述相应的最终实体证书添加到所述证书吊销列表中。
每个中间证书颁发机构可以与从公共种子值派生的唯一密钥相关联。在一些实现中,每个唯一密钥是使用密钥派生函数派生的。可选地,所述相应的中间证书颁发机构的所述相应的验证时间段短于所述中间证书颁发机构链中比所述相应的中间证书颁发机构更高的任何中间证书颁发机构的所述验证时间段。在一些实现中,所述方法进一步包括确定所述多个最终实体证书中的相应的最终实体证书已被轮换,以及将所述相应的最终实体证书添加到证书吊销列表中。
本公开的一个或多个实施方式的细节在下面的附图和说明中阐述。其他方面、特征和优点将从说明书和附图以及权利要求书中显而易见。
附图说明
图1是用于表示证书有效期的示例***的示意图。
图2是使用中间证书颁发机构的信任链的示意图。
图3是基于时间的中间证书颁发机构的链的示意图。
图4A-4C是基于时间的中间证书颁发机构的示例链的示意图。
图5A-5C是从证书吊销列表添加和移除的证书的示意图。
图6是密钥派生函数的参数表。
图7是基于时间的中间证书颁发机构的链的多个实例的示意图。
图8是表示证书有效期的方法的操作的示例安排的流程图。
图9是可以用于实施本文所述的***和方法的示例计算设备的示意图。
各种附图中的类似的附图标记指示类似的元素。
具体实施方式
数字证书(也称为公钥证书或身份证书)通常用于以加密方式将公钥的所有权与特定实体链接。例如,当用户试图与实体(例如,经由超文本传输安全协议(HTTPS)的网站)建立安全通信时,用户将需要使用该实体的公钥来加密通信。为了验证加密通信时使用的公钥实际上属于用户希望与之通信的实体,用户将接收到该实体的数字证书,该数字证书表明该实体对公钥的所有权。数字证书通常由证书颁发机构签名。只要用户信任证书颁发机构,用户就可以信任该实体拥有数字证书引用的公钥。
证书颁发机构(CA)是颁发和签名数字证书的实体。通常,CA是已建立的实体,它们已获得足够的声誉和信任,客户将接受由CA签名的数字证书是合法的。通常,数字证书申请人生成密钥对(即,私钥和公钥)和证书签名请求(CSR)。CSR包括公钥和要被包括在证书中的其他信息(例如,实体的名称或标识符、域名信息、联系信息等)。申请人将CSR发送给受信任的CA。CA接收CSR并独立验证CSR内包括的信息是否正确。如果CA相信信息是正确的,则CA(使用CA自己的私钥)签名数字证书,该数字证书包括申请人的公钥和其他识别信息。然后,CA将已签名的数字证书提供给申请人。
当第三方希望与证书的接收者进行安全通信时,接收者可以将数字证书提交给第三方。第三方可以使用数字证书经由CA的公钥来确认CA的签名。第三方也可以确认申请人拥有与数字证书所列公钥相关联的私钥,并且该数字证书自签名后未被修改。第三方现在可以信任数字证书提供的公钥属于第三方希望与之通信的实体。
受信任的CA发布通常称为根证书的内容。此根证书是CA使用自己的私钥自签名的数字证书,并公开提供CA的公钥。使用根证书,第三方可以验证CA颁发的使用与根证书相同的私钥签名的任何证书。为了限制根证书的暴露,中间CA可以由根CA分配证书,这些中间CA又可以向实体颁发最终实体证书(也称为叶证书)。即,如下面更详细地解释的,根CA和一个或多个中间CA可以形成CA“链”,链中的最后一个中间CA向最终实体颁发最终实体证书。希望验证最终实体证书的一方将沿着链一直到达根CA。
数字证书通常具有到期时间或有效时段。例如,数字证书可以包括其有效时段的起点和有效时段的终点(即,其到期点)。有效时段结束后,数字证书不再有效,并且第三方不应再接受该证书作为相应公钥的所有权的证据。虽然有效,但有效时段必须要求接收方(即,接收到数字证书并希望对其进行认证的一方)能够可靠访问当前时间。然而,希望验证数字证书的一些设备可能无法访问当前时间(例如,一些网络设备,如交换机或网络控制器,没有时钟或没有精确的时钟),使得有效时段在这些情况下不可靠,特别是对于有效时段较短的证书(即,频繁轮换的数字证书)。
另一种使数字证书无效的方法是发布证书吊销列表(CRL)。通常,此列表仅用于在数字证书预定到期日期之前吊销数字证书。例如,如果已知数字证书已被破坏,则即使该数字证书的有效时段还未到期,该数字证书也可能被添加到CRL中。在验证数字证书时,一方除了通过参考当前时间来确保有效时段还未到期外,还将检查该证书未在颁发证书的CA发布的CRL中列出。因此,CRL可以用来吊销没有有效期(或有效期很长)的证书,以允许不能可靠访问当前时间的设备有效地确定数字证书的有效性。然而,这样的CRL会无限制地增长,最终变得太大而无法有效。
本文的实施方式针对数字证书管理***,该***提供频繁轮换的数字证书(在本文中也称为“证书”)的有效吊销,而不依赖于证书的有效期或客户端设备的时钟。该***包括基于时间的中间证书颁发机构(CA)的链,每个CA都与各自的验证时间段相关联或包含各自的验证时间段。中间CA链和各自的验证时间段将到期时间编码到中间CA链所颁发的证书中。基于各自的验证时间段,将中间CA链所颁发的数字证书添加到证书吊销列表(CRL)中。随着证书轮换(即,被更新的证书所取代),或者当证书或CA被破坏时,该***可以在适当的时候将证书添加到CRL中。一旦该***将相应中间CA颁发的每个数字证书都添加到CRL中,该***就可以吊销颁发给该中间CA的数字证书,并修剪相应中间CA颁发的所有证书的CRL,从而确保所有证书仍然被吊销,而CRL不会过度增长。
参考图1,在一些实施方式中,示例数字证书管理***100包括远程***140。远程***140可以是具有可伸缩/弹性资源142的多个计算机或分布式***(例如,云环境),包括计算资源144(例如,数据处理硬件)和/或存储资源146(例如,存储器硬件)。
远程***140被配置为获取根证书210,210R(例如,X.509证书)。例如,远程***140从独立的根证书颁发机构310,310R接收根证书210R。或者,远程***140包括根证书颁发机构310R,并生成根证书210R本身。根CA 310R使用根CA 310R拥有的公钥220R对根证书210R进行数字签名。即,如公钥加密学中众所周知的,只有根CA 310R拥有与公钥220R相关联的私钥(未显示)。远程***140生成中间CA 310,310Na–n的链。链中的每个中间CA 310N包括相应的中间证书210,210Na-n或与相应的中间证书210,210Na-n相关联,该相应的中间证书210,210Na-n由中间CA 310N链中紧邻且高于对应的中间CA 310N的中间CA 310N数字签名。远程***140可以使用任何适当的签名算法对证书210进行签名。链中最高的中间CA310N的相应中间证书210N由根CA 310R签名,从而建立了信任链。链中最低的中间CA(即,给定示例中的中间CA 310Nc)经由例如网络20,20a向最终实体30颁发最终实体证书210L(例如,X.509证书)。当第三方,诸如用户12,经由用户设备10希望与最终实体30进行通信时,最终实体30向用户设备10提供最终实体证书210L(例如,经由网络20b)。即,中间CA 310N链中最低的中间CA 310N生成一个或多个最终实体证书210L。生成的每个最终实体证书210L都由中间CA 310N链中最低的中间CA 310N进行数字签名。在一些示例中,每个最终实体证书210L不包括有效期。在其他示例中,每个最终实体证书210L包括最大或非常长的有效期时间长度/持续时间(例如,一年或多年)。
现在参考图2,远程***通过使用链中紧邻且更高的中间CA 310N的公钥220N对链中的每个证书210进行签名,在中间证书310N之间建立信任链200。这里,根证书210R包括根CA的公钥220R、根CA的标识(ID)230R和根CA的签名240R。根CA签名240R由与根CA公钥220R相关联的私钥(未显示)签名。
根CA 310R维护根证书210R,并向链中的第一中间CA 310Na颁发中间证书210Na。该证书包括根CA ID 230R和根CA签名240R(由与根证书210R的根CA签名240R相同的私钥签名)。中间证书210Na还包括第一中间CA 310Na的ID 230Na和第一中间CA 310Na的公钥220Na。该证书建立了第一中间CA对其公钥220Na的所有权。
继续沿着链向上,第一中间CA 310Na向第二中间CA 310Nb颁发另一中间证书210Nb。该中间证书210Nb包括第一中间CA 310Na的签名240Na和ID 230Na。中间证书210Nb还包括第二中间CA 310Nb的ID 230Nb和公钥220Nb。这个链可以持续任意长度,直到最终中间CA 310Nn向实体30提供最终实体证书310L,该最终实体证书310L包括最终中间CA 310Nn的ID 230Nn和签名240Nn。最终实体证书还包括实体30的ID 230E和公钥220E。这些链接的证书210提供了信任链,该信任链允许第三方验证实体对公钥220E的所有权,一直验证到根颁发机构310R。
回到参考图1,链中的每个中间CA 310N还包括相应的验证时间段312,312,该应的验证时间段312,312指示允许对应的中间CA 310N对数字证书210N、210L进行数字签名的时间范围。即,每个中间CA 310N都是基于时间的,并且每个中间CA 310N的验证时间段312建立了对应的中间CA 310N被允许颁发证书210的时间范围。例如,链中最后一个中间CA 310N(即,给定示例中的310Nc)的验证时间段312建立了允许对应的中间CA 310N颁发最终实体证书210L的时间范围。与分配给数字证书210的有效期(需要设备访问时钟来确定有效期何时过期)相反,验证时间段312与中间CA 310N相关联,从而指示在验证时间段312之后,链中没有数字证书210N由相应的中间CA 310N进行了数字签名。
现在参考图3,中间CA 310N的链300包括示例性的验证时间段312a-e。在这里,链包括顶部的根CA 310R和下一个可选切换CA 310S。切换CA 310S可能没有关联的验证时间段,而是将权限从根CA 310R委托给其他中间CA 310N。切换CA 310S下面是两个中间CA310Na1、310Na2,分别具有2020年的验证时间段312a1和2021年的验证时间段312a2。链中接下来是两个中间CA 310b1、310b2,分别具有第一季度的验证时间段312b1和第二季度的验证时间段312b2。链中接下来是两个中间CA 310c1、310C2,分别具有1月的验证时间段312c1和2月的验证时间段312c2。链继续向下是两个中间CA 310d1、310d2,分别具有第1周的验证时间段312d1和第2周的验证时间段312d2。最后,链中的最后是两个中间CA310d1、310d2,分别具有第1天的验证时间段312d1和第2天的验证时间段312d2。
这些中间CA 310中的每个将只在与相应的中间CA 310相关联的验证时间段312内的一段时间期间颁发证书210N、210L。例如,中间CA 310Ne1可以只在2020年1月1日的24小时内颁发证书210L。一旦到2020年1月2日,验证时间段312e1将结束,并且中间CA 310Ne2的验证时间段312e2开始。同样,对于从2020年1月1日至2020年1月7日的时间段,中间CA310Nd1(“第1周”)可以颁发证书210N,而从2020年1月8日至2020年1月14的时间段,中间CA310Nd2(“第2周”)可以颁发证书210N。在一些实施方式中,每个中间CA 310N的相应验证时间段312短于中间CA 310N链中高于相应中间CA 310N的任何中间CA 310N的验证时间段312。例如,“1月”中间CA 310Nc1的验证时间段312(即,一个月)比链中较高的中间CA 310N(即,Q1中间CA 310Nb1和2020中间CA 310Na1)的验证时间段312短。即,随着中间CA 310N链的下降,验证时间段312变短。
现在参考图4A-4C,在一些示例中,在任何时间点只有单个中间CA 310N链是活动的。图4A中的链400a示出了2020年1月1日的活动链。只有活动的中间CA 310N可以颁发证书210。这里,根CA 310R向切换CA 310S提供证书210NS,切换CA 310S向中间CA 310Na1提供证书201Na,中间CA 310Na1向中间CA 310Nb1提供证书210Nb,中间CA 310Nb1又向中间CA310Nc1提供证书210Nc。类似地,中间CA 310Nc1向中间CA 310Nd1提供证书210Nd1,中间CA310Nd1又向中间CA 310Ne1提供证书210Ne1。
因为在该示例中,中间CA 310Ne1(即,第1天)是链的“底部”,所以该中间CA 310Ne1向请求实体30提供最终实体证书210L。但是,可以包括验证时间段312任何间隔上的任意数量的中间CA 310N。这里,验证时间段312包括年、季度、月、周和天。另外或可选地,可以使用与日历日期一致的任何其他时间段,例如小时或十年或其他有限时间段(例如,10小时、100小时、1000小时等)。
继续图4A的示例,图4B示出了2020年1月2日(即,图4A日期后一天)的活动链400b。在一些实施方式中,在与中间CA 310N链中的相应中间CA 310N相关联的相应验证时间段312过期之后,远程***生成与验证时间段312相关联的另一中间CA 310N,该验证时间段312具有和与相应中间CA 310N相关联的验证时间段312相同的持续时间。然而,新的验证时间段312包括原始验证时间段312过期之后的一段时间。远程***140用中间CA 310N链中的其他中间CA 310N替换相应的中间CA 310B。
在这种情况下,由于与中间CA 310Ne1相关联的验证时间段312已经过期(即,“第1天”或2020年1月1日),活动链已经用第2天中间CA 310Ne2取代了第1天中间CA 310Ne1。第1周中间CA 310Nd1向第2天中间CA 310Ne2颁发中间证书210Ne2,且在该验证时间段312期间(即,在2020年1月2日期间),第2天中间CA 310Ne2代替第1天中间CA 310Ne1颁发最终实体证书210L。换句话说,在一些实施方式中,在用其他中间CA 310N(例如,第2天中间CA 310Ne2)替换相应的中间CA 310N(例如,第1天中间CA 310Ne1)之后,远程***140生成由其他中间CA 310N数字签名而不是由相应的中间CA 310N数字签名的最终实体证书210L。即,第2天中间CA 310Ne2开始颁发最终实体证书210L,而第1天中间CA 310Ne1不再颁发最终实体证书210L。
在又一示例中,图4C示出了2020年1月8日(即,图4A日期后7天)的活动链400c。现在,与第1周中间CA 310Nd1相关联的验证时间段312已经过期,并且1月中间证书颁发机构310Nc1已经向第2周中间CA 310Nd2颁发了新的中间证书210Nd2。同样,第二周中间CA310Nd2向新的第一天中间CA 310Ne3颁发了新的证书210Ne3。第二周中间CA 310Nd2将在2020年1月8日至2020年1月14日的时间段期间颁发证书210N,而第一天中间CA 310Ne3将在2020年1月8日颁发最终实体证书210L。
回到参考图1,远程***140生成证书吊销列表(CRL)510。虽然在给定的示例中,***100在中间CA 310N链的顶层(即,图1中的中间CA 310Na)提供了单个聚合CRL 510,但每个中间CA 310N也可以包括其自己相应的CRL 510。CRL 510包含***100已经颁发和随后吊销的每个证书210N,210L的列表。
现在参考图5A-5C,在中间CA 310N链中最低的中间CA 310N的相应验证时间段312已经过期之后,远程***140可以在CRL 510中添加从中间CA 310N链中最低的中间CA 310N生成的最终实体证书210L中的一个或多个。即,通常,证书210N,210L可以在与颁发证书的中间CA 310相关联的验证时间段312已经经过或过期之后的任何点添加到CRL 510中。因此,远程***140有效地吊销数字证书210,而不依赖于证书本身中记录的到期时间或客户端设备的时钟。
值得注意的是,证书210N、210L没有必须添加到CRL 510的特定点,实际上时间可能有很大差异。在一些示例中,远程***140在相应的验证时间段312过期之前将证书210添加到CRL 510。例如,如果证书210或颁发CA 310已被破坏(例如,私钥暴露),远程***140可以提前吊销证书210(即,在有效时段312过期之前)。在这里,远程***140确定相应的最终实体证书210L已被破坏,并立即将相应的最终实体证书210L添加到CRL 510中。
另一方面,在将证书210添加到CRL 510之前,远程***140可以在验证时间段312过期后等待任意时间。例如,远程***140在吊销原始证书210之前等待,直到替换证书210(即,具有在后颁发日期的证书210)到位(即,证书210已被成功轮换),以确保没有服务失效。因此,即使在与相应的中间CA 210相关联的验证时间段312过期之后,也可能需要一段时间来吊销由相应的中间CA 310颁发的每个证书210。
在图5A的示例图500a中,第一天中间CA 310Ne1在其验证时间段312期间颁发了6个最终实体证书210L。此时,第一天中间CA 310Ne1的验证时间段312已经过期,并且远程***140已经向CRL 510添加了6个最终实体证书210L中的4个(即,最终实体证书210La、210Lc、210Le、210Lf)。然而,由第一天中间CA 310Ne1颁发的两个最终实体证书210Lb,210Ld仍然未被吊销。现在参考图5B中的示例图500b,在这个时间点,远程***140已经将第一天中间CA 310Ne1颁发的所有六个证书210添加到CRL 510。因此,CRL 510包括基于第一天中间CA 310Ne1颁发的证书210的总共六个条目。
在图5C的示例图500c中,在一些实施方式中,远程***140通过从CRL 510中移除第一天中间CA 310Ne1颁发的每个最终实体证书210L,并将与第一天中间CA 310Ne1相关联的相应中间证书210Ne1添加到CRL 510中,来修剪CRL 510。即,当中间CA 210链中相应的中间CA 310N数字签名的每个最终实体证书210L都已添加到CRL 510中,且当前时间处于相应的中间CA 310N的相应验证时间段312结束时或之后(即,相应的中间CA 310N不能颁发任何新的证书210),远程***140可以将相应中间CA 310颁发的证书210的CRL 510中的所有条目替换为相应中间CA 310的证书210N。换句话说,一旦远程***140向CRL 510添加了中间CA 310N,层次结构中较低的每个证书210都可以从CRL 510中修剪。随着这个过程沿着中间CA 310链向上移动,这将大大减小CRL 510的大小。在示出的示例中,2020年结束后,不再列出全年期间潜在颁发的数千或数百万个证书210,而是将CRL 510分解或压缩为仅颁发给2020中间CA 310Na1的证书的单个条目。必须注意的是,添加颁发给CA 310的证书210会破坏信任链,因此该CA颁发的所有证书210都会立即被吊销。因此,通常情况下,除非有其他原因(即,如果CA 310已被破坏,则可能需要吊销其所有证书210,而不管验证时间段312的状态如何),否则CA的证书210都不会被添加到CRL 510中,直到相应CA 310颁发的所有证书210都已被吊销。
现在参考图6,数字证书管理***100为每个生成的中间证书颁发机构310N生成唯一密钥220N(例如,公钥和私钥)。在链中最低的中间CA 310N的验证时间段312为一天,并且链中最高的CA 310N的验证时间段312为一年(图3)的示例中,数字证书管理***100每年必须生成、存储和分发434个密钥(即:365天+52周+12个月+4个季度+1年),每个密钥在相应的中间CA 310N颁发任何证书210之前提供给相应的中间CA 310N。
为了减少密钥管理开销,在一些实施方式中,每个中间CA 310N与从公共种子值派生的唯一密钥220N相关联。在一些示例中,每个唯一密钥220N是使用密钥派生函数(KDF)710(图7)派生的。KDF是加密函数,它从单个秘密值,如主密钥720(图7),派生一个或多个密钥。例如,KDF 710基于一步密钥推导,该推导接受秘密字节字符串(即,主密钥720)和特定密钥字节字符串作为输入。
可选地,对特定密钥字节字符串进行确定性编码。在一些示例中,相应的中间CA310N的特定密钥字节字符串包括沿着链向下到相应中间CA 310N的编码路径以及路径中的数个步骤(例如,位)。特定密钥字节字符串可以包括其他信息,例如密钥的用途和其他情境。表600提供了中间CA 310N链的示例性特定密钥字节字符串信息。表600包括标签610列、路径620列和编码路径630列。标签610指示相应中间CA 310N的标识符(例如,切换、2020、第一季度、一月、第一周、第一天等)。路径620指示中间CA 310N链中从链的顶端到相应中间CA310N的每个中间CA 310N。例如,“一月”中间CA 310N的路径包括2020年、第一季度和一月。类似地,“第一天”中间CA 310N的路径包括2020年、第一季度、1月、第一周和第一天。
编码路径630包括路径620的路径长度632,该路径长度632依赖于路径620中的中间CA 310N的数量。编码路径630还包括路径620的路径编码634。例如,中间CA 310N“一季度”的编码路径630具有[2]的路径长度632(因为对应的路径620包括2020和第一季度),以及[2020](用于年)和[1](用于第一季度)的路径编码634。类似地,第一周的编码路径630具有[4](2020,第一季度,一月,第1周)的路径长度632以及[2020][1][1][1](用于2020年,第一季度,一月和第一周)的路径编码634。在另一示例中(未示出),具有包括2021年4月9日的验证时间段312的中间CA 310N的编码路径630包括[5]的路径长度632和[2021][2][1][2][2]的编码路径634,用于2021年、2021年第二季度、第二季度的第一个月、该月的第二周和该周的第二天。
每个编码的部分(即括号中的每个部分)可以被编码为一个或多个字节(例如,作为大端整数)。远程***140向KDF 710提供编码路径630和密匙以为每个中间CA 310N生成唯一密钥。还考虑了其他确定地派生密钥的方法。例如,远程***140使用密钥层次结构模型来生成密钥位,并为每个中间CA 310N将密钥位划分为密钥派生密钥。密钥派生函数可以支持任何类型的签名算法(诸如椭圆曲线、RSA等)。给定相同的密钥,远程***140生成的每个密钥220N可以完全确定。即,提供相同密钥的远程***140可以为每个中间CA 130N生成相同密钥220N。
现在参考图7,在一些实施方式中,远程***140执行中间CA 310N链的多个实例730,730a-n。多个实例可以提供额外的冗余(以防失败)、增加的负载能力和其他好处。然而,每个实例必须为每个中间CA 310N生成相同的密钥,以便验证已颁发证书210的用户设备10或其他实体可以使用任何可用的实例730。因为,在一些示例中,KDF 710确定性地生成密钥220N,所以密钥220N的分发和同步被大大简化了。在这里,远程***将密钥720共享给每个实例730的KDF 710。因为每个实例使用有着相同密钥720的相同KDF 710,所以分发给每个中间CA 310N的生成的密钥220是相同的。因此,远程***仅共享和同步单个密钥(主密钥720)来同步每个实例730。
图8是用于使用基于时间的中间证书颁发机构来表示证书有效期的方法800的操作的示例性安排的流程图。在操作802中,方法800包括在数据处理硬件144上,从根证书颁发机构310R获取由根证书颁发机构310R数字签名的根数字证书210R。在操作804中,方法800包括由数据处理硬件144生成中间证书颁发机构310N的链。中间证书颁发机构310N链中的每个相应的中间证书颁发机构310N包括由中间证书颁发机构310N或根证书颁发机构310R数字签名的相应中间证书210N,该中间证书颁发机构310N或根证书颁发机构310R在中间证书颁发机构310N链中紧邻且高于相应中间证书颁发机构310N。每个相应的中间证书颁发机构310N还包括相应的验证时间段312,以指示相应的中间证书颁发机构310N被允许对中间证书210N和最终实体证书210L进行数字签名的时间范围。相应中间证书颁发机构310N的相应验证接收到312包括在中间证书颁发机构310N链中低于相应中间证书颁发机构310N的每个中间证书颁发机构310N的相应验证时间段312。
在操作806中,方法800包括由数据处理硬件144生成用于中间证书颁发机构310N链的证书吊销列表510。在操作808中,方法800包括由数据处理硬件144从中间证书颁发机构310N链中的最低中间证书颁发机构310N生成多个最终实体证书210L。多个最终实体证书210L中的每个最终实体证书210L由中间证书颁发机构310N链中最低的中间证书颁发机构310N进行数字签名。在中间证书颁发机构310N链中最低中间证书颁发机构310N的相应验证时间段312已经过期之后,在操作810中,方法800包括由数据处理硬件144向证书吊销列表510添加从中间证书颁发机构310N链中最低中间证书颁发机构310N生成的多个最终实体证书210L中的一个或多个。
图9是可以用于实施本文档中描述的***和方法的示例计算设备900的示意图。计算设备900用来代表各种形式的数字计算机,例如笔记本电脑、台式电脑、工作站、掌上电脑、服务器、刀片服务器、大型机和其他适当的计算机。这里显示的组件,它们的连接和关系,以及它们的功能,只是作为示例,并不意味着限制本文档中描述和/或声称的发明的实施方式。
计算设备900包括处理器910、存储器920、存储设备930、连接存储器920和高速扩展端口950的高速接口/控制器940,以及连接低速总线970和存储设备930的低速接口/控制器960。每个组件910、920、930、940、950和960都使用不同的总线互连,并且可以安装在公共主板上或用其他适当的方式。处理器910可以处理在计算设备900内执行的指令,包括存储在存储器920或存储设备930上的指令,用于在外部输入/输出设备上显示图形用户界面(GUI)的图形信息,例如耦合到高速接口940的显示器980。在其他实施方式中,可以根据需要使用多个处理器和/或多个总线,以及多个存储器和存储器类型。此外,可以连接多个计算设备900,其中每个设备提供必要操作的一部分(例如,作为服务器组、刀片服务器组或多处理器***)。
存储器920在计算设备900内非易失性地存储信息。存储器920可以是计算机可读介质、易失性存储器单元或非易失性存储器单元。非易失性存储器920可以是物理设备,用于在临时或永久的基础上存储供计算设备900使用的程序(例如,指令序列)或数据(例如,程序状态信息)。非易失性存储器的例子包括但不限于闪存和只读存储器(ROM)/可编程只读存储器(PROM)/可擦除可编程只读存储器(EPROM)/带电可擦除可编程只读存储器(EEPROM)(例如,通常用于固件,如引导程序)。易失性存储器的例子包括但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、相变存储器(PCM)以及磁盘或磁带。
存储设备930能够为计算设备900提供大容量存储。在一些实施方式中,存储设备930是计算机可读介质。在各种不同的实施方式中,存储设备930可以是软盘设备、硬盘设备、光盘设备或磁带设备、闪存或其他类似的固态存储设备或设备阵列,包括存储区域网络或其他配置中的设备。在其他实施方式中,计算机程序产品有形地包含在一个信息载体中。计算机程序产品包含指令,这些指令在执行时执行一个或多个正如上述的方法。信息载体为计算机或机器可读介质,如存储器920、存储设备930或处理器910上的存储器。
高速控制器940为计算设备900管理带宽密集型操作,而低速控制器960管理较低带宽密集型操作。这样的职责分配只是示例性的。在一些实施方式中,高速控制器940耦合到存储器920,显示器980(例如,通过图形处理器或加速器),并耦合到高速扩展端口950,该端口可以接受各种扩展卡(未显示)。在一些实施方式中,低速控制器960耦合到存储设备930和低速扩展端口990。包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口990可以通过网络适配器耦合到一个或多个输入/输出设备,例如键盘、定点设备、扫描仪或网络设备,例如交换机或路由器。
如图所示,计算设备900可以以许多不同的形式实施。例如,它可以作为标准服务器900a实施或在服务器组900a中多次实施,可以作为笔记本电脑900b实施,或者作为机架服务器***900c的一部分实施。
本文所述***和技术的各种实施方式可以在数字电子和/或光学电路、集成电路、专门设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合中实现。这些不同的实施方式可以包括在一个或多个计算机程序中的实施方式,这些计算机程序在包括至少一个可编程处理器的可编程***上是可执行和/或可解释的,该可编程处理器可以是专用的或通用的,耦合以从存储***、至少一个输入设备和至少一个输出设备接收数据和指令,并向其传输数据和指令。
软件应用(即,软件资源)可以指使计算设备执行任务的计算机软件。在一些示例中,软件应用可能被称为“应用程、“app”或“程序”。示例应用包括但不限于***诊断应用、***管理应用、***维护应用、文字处理应用、电子表格应用、消息应用、流媒体应用、社交网络应用和游戏应用。
这些计算机程序(也称为程序、软件、软件应用程序或代码)包括对可编程处理器的机器指令,可以用高级程序和/或面向对象的编程语言和/或汇编/机器语言实现。如本文所使用,术语“机器可读介质”和”计算机可读介质“是指用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、非易失性计算机可读介质、仪器和/或设备(例如,磁盘、光盘、存储器、可编程逻辑器件),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。
本规范中描述的进程和逻辑流可以由一个或多个可编程处理器(也称为数据处理硬件)执行,通过操作输入数据并生成输出来执行一个或多个计算机程序以执行功能。过程和逻辑流也可以通过专用逻辑电路来执行,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。例如,适合于执行计算机程序的处理器,包括通用和专用的微处理器,以及任何类型的数字计算机的任一或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者中接收指令和数据。计算机的基本部件是执行指令的处理器和一个或多个存储指令和数据的存储设备。通常,计算机还将包括,或在操作上耦合一个或多个用于存储数据的大容量存储设备,例如,磁盘,磁光盘或光盘,来接收数据或向其传输数据,或两者都包含。然而,计算机不需要这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,举例来说,包括半导体存储设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM光盘。处理器和存储器可以由专用逻辑电路补充或集成在其中。
为了提供与用户的交互,本公开的一个或多个方面可以在具有显示设备的计算机上实施,例如CRT(阴极射线管)、LCD(液晶显示器)显示器或用于向用户显示信息的触摸屏,以及任选的键盘和定点设备,例如鼠标或轨迹球,用户可以通过其向计算机提供输入。其他类型的设备也可以用来提供与用户的互动;例如,提供给用户的反馈可以是任何形式的感官反馈,如视觉反馈、听觉反馈或触觉反馈;用户的输入可以以任何形式接收,包括声学、语音或触觉输入。此外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过向用户客户端设备上的网页浏览器发送网页以响应从网页浏览器接收的请求。
已经描述了许多实施方式。然而,应当理解的是,在不背离本公开的精神和范围的情况下,可以作出各种修改。相应地,其他实施方式在下列权利要求的范围内。
Claims (22)
1.一种方法(800),其特征在于,包括:
在数据处理硬件(144)处,从根证书颁发机构(310R)获得由所述根证书颁发机构(310R)数字签名的根数字证书(210R);
由所述数据处理硬件(144)生成中间证书颁发机构(310N)链,所述中间证书颁发机构(310N)链中的每个相应的中间证书颁发机构(310N)包括:
由所述中间证书颁发机构(310N)或所述根证书颁发机构(310R)数字签名的相应的中间证书(210N),所述中间证书颁发机构(310N)或所述根证书颁发机构(310R)在所述中间证书颁发机构(310N)链中紧邻且高于所述相应的中间证书颁发机构(310N);以及
相应的验证时间段(312),所述相应的验证时间段(312)指示允许所述相应的中间证书颁发机构(310N)对中间证书(210N)和最终实体证书(210L)进行数字签名的时间范围,所述相应的中间证书颁发机构(310N)的所述相应的验证时间段(312)包括在所述中间证书颁发机构(310N)链中低于所述相应的中间证书颁发机构(310N)的每个中间证书颁发机构(310N)的所述验证时间段(312);
由所述数据处理硬件(144)为所述中间证书颁发机构(310N)链生成证书吊销列表(510);
由所述数据处理硬件(144)从所述中间证书颁发机构(310N)链中的最低中间证书颁发机构(310N)生成多个最终实体证书(210L),所述多个最终实体证书(210L)中的每个最终实体证书(210L)由所述中间证书颁发机构(310N)链中的最低中间证书颁发机构(310N)进行数字签名;以及
在所述中间证书颁发机构(310N)链中的最低中间证书颁发机构(310N)的所述相应的验证时间段(312)已经过期之后,由所述数据处理硬件(144)将所述中间证书颁发机构(310N)链中的最低中间证书颁发机构(310N)生成的所述多个最终实体证书(210L)中的一个或多个添加到所述证书吊销列表(510)中。
2.根据权利要求1所述的方法(800),其特征在于,进一步包括,当由所述中间证书颁发机构(310N)链中的相应的中间证书颁发机构(310N)数字签名的每个最终实体证书(210L)已添加到所述证书吊销列表(510)中,且当前时间是在所述相应的中间证书颁发机构(310N)的所述相应的验证时间段(312)结束时或之后:
由所述数据处理硬件(144)将所述多个最终实体证书(210L)中的每一个从所述证书吊销列表(510)中移除;以及
由所述数据处理硬件(144)将与所述相应的中间证书颁发机构(310N)相关联的所述相应的中间证书(210N)添加到所述证书吊销列表(510)中。
3.根据权利要求1或2所述的方法(800),其特征在于,进一步包括,在与所述中间证书颁发机构(310N)链中的相应的中间证书颁发机构(310N)相关联的所述相应的验证时间段(312)已经过期之后:
由所述数据处理硬件(144)生成与验证时间段(312)相关联的另一中间证书颁发机构(310N),所述验证时间段(312)和与所述相应的中间证书颁发机构(310N)相关联的所述验证时间段(312)具有相同的持续时间;以及
由所述数据处理硬件(144)用所述中间证书颁发机构(310N)链中的所述另一中间证书颁发机构(310N)替换所述相应的中间证书颁发机构(310N)。
4.根据权利要求3所述的方法(800),其特征在于,进一步包括,在用所述另一中间证书颁发机构(310N)替换所述相应的中间证书颁发机构(310N)之后,由所述数据处理硬件(144)生成由所述另一中间证书颁发机构(310N)数字签名而不是由所述相应的中间证书颁发机构(310N)数字签名的最终实体证书(210L)。
5.根据权利要求1-4中任一项所述的方法(800),其特征在于,每个验证时间段(312)与天、周、月、季度或年中的一个相关联。
6.根据权利要求1-5中任一项所述的方法(800),其特征在于,每个最终实体证书(212L)没有到期时间。
7.根据权利要求1-6中任一项所述的方法(800),其特征在于,进一步包括:
由所述数据处理硬件(144)确定所述多个最终实体证书(210L)中的相应的最终实体证书(210L)被破坏;以及
由所述数据处理硬件(144)将所述相应的最终实体证书(210L)添加到所述证书吊销列表(510)中。
8.根据权利要求1-7中任一项所述的方法(800),其特征在于,每个中间证书颁发机构(310N)与从公共种子值派生的唯一密钥(220N)相关联。
9.根据权利要求8所述的方法(800),其特征在于,每个唯一密钥(220N)是使用密钥派生函数派生的。
10.根据权利要求1-9中任一项所述的方法(800),其特征在于,所述相应的中间证书颁发机构(310N)的所述相应的验证时间段(312)短于所述中间证书颁发机构(310N)链中比所述相应的中间证书颁发机构(310N)更高的任何中间证书颁发机构(310N)的所述验证时间段(312)。
11.根据权利要求1-10中任一项所述的方法(800),其特征在于,进一步包括:
由所述数据处理硬件(144)确定所述多个最终实体证书(210L)中的相应的最终实体证书(210L)已被轮换;以及
由所述数据处理硬件(144)将所述相应的最终实体证书(210L)添加到所述证书吊销列表(510)中。
12.一种***(100),其特征在于,包括:
数据处理硬件(144);以及
与所述数据处理硬件(144)进行通信的存储器硬件(146),所述存储器硬件(146)存储指令,所述指令在所述数据处理硬件(144)上执行时使所述数据处理硬件(144)进行操作,所述操作包括:
从根证书颁发机构(310R)获得由所述根证书颁发机构(310R)数字签名的根数字证书(210R);
生成中间证书颁发机构(310N)链,所述中间证书颁发机构(310N)链中的每个相应的中间证书颁发机构(310N)包括:
由所述中间证书颁发机构(310N)或所述根证书颁发机构(310R)数字签名的相应的中间证书(210N),所述中间证书颁发机构(310N)或所述根证书颁发机构(310R)在所述中间证书颁发机构(310N)链中紧邻且高于所述相应的中间证书颁发机构(310N);以及
相应的验证时间段(312),所述相应的验证时间段(312)指示允许所述相应的中间证书颁发机构(310N)对中间证书(210N)和最终实体证书(210L)进行数字签名的时间范围,所述相应的中间证书颁发机构(310N)的所述相应的验证时间段(312)包括在所述中间证书颁发机构(310N)链中低于所述相应的中间证书颁发机构(310N)的每个中间证书颁发机构(310N)的所述验证时间段(312);
为所述中间证书颁发机构(310N)链生成证书吊销列表(510);
从所述中间证书颁发机构(310N)链中的最低中间证书颁发机构(310N)生成多个最终实体证书(210L),所述多个最终实体证书(210L)中的每个最终实体证书(210L)由所述中间证书颁发机构(310N)链中的最低中间证书颁发机构(310N)进行数字签名;以及
在所述中间证书颁发机构(310N)链中的最低中间证书颁发机构(310N)的所述相应的验证时间段(312)已经过期之后,由所述数据处理硬件(144)将所述中间证书颁发机构(310N)链中的最低中间证书颁发机构(310N)生成的所述多个最终实体证书(210L)中的一个或多个添加到所述证书吊销列表(510)中。
13.根据权利要求12所述的***(100),其特征在于,所述操作进一步包括,当由所述中间证书颁发机构(310N)链中的相应的中间证书颁发机构(310N)数字签名的每个最终实体证书(210L)已添加到所述证书吊销列表(510)中,且当前时间是在所述相应的中间证书颁发机构(310N)的所述相应的验证时间段(312)结束时或之后:
将所述多个最终实体证书(210L)中的每一个从所述证书吊销列表(510)中移除;以及
将与所述相应的中间证书颁发机构(310N)相关联的所述相应的中间证书(210N)添加到所述证书吊销列表(510)中。
14.根据权利要求12或13所述的***(100),其特征在于,所述操作进一步包括,在与所述中间证书颁发机构(310N)链中的相应的中间证书颁发机构(310N)相关联的所述相应的验证时间段(312)已经过期之后:
生成与验证时间段(312)相关联的另一中间证书颁发机构(310N),所述验证时间段(312)和与所述相应的中间证书颁发机构(310N)相关联的所述验证时间段(312)具有相同的持续时间;以及
用所述中间证书颁发机构(310N)链中的所述另一中间证书颁发机构(310N)替换所述相应的中间证书颁发机构(310N)。
15.根据权利要求14所述的***(100),其特征在于,所述操作进一步包括,在用所述另一中间证书颁发机构(310N)替换所述相应的中间证书颁发机构(310N)之后,由所述数据处理硬件(144)生成由所述另一中间证书颁发机构(310N)数字签名而不是由所述相应的中间证书颁发机构(310N)数字签名的最终实体证书(210L)。
16.根据权利要求12-15中任一项所述的***(100),其特征在于,每个验证时间段(312)与天、周、月、季度或年中的一个相关联。
17.根据权利要求12-16中任一项所述的***(100),其特征在于,每个最终实体证书(212L)没有到期时间。
18.根据权利要求12-17中任一项所述的***(100),其特征在于,所述操作进一步包括:
确定所述多个最终实体证书(210L)中的相应的最终实体证书(210L)被破坏;以及
将所述相应的最终实体证书(210L)添加到所述证书吊销列表(510)中。
19.根据权利要求12-18中任一项所述的***(100),其特征在于,每个中间证书颁发机构(310N)与从公共种子值派生的唯一密钥(220N)相关联。
20.根据权利要求19所述的***(100),其特征在于,每个唯一密钥(220N)是使用密钥派生函数派生的。
21.根据权利要求12-20中任一项所述的***(100),其特征在于,所述相应的中间证书颁发机构(310N)的所述相应的验证时间段(312)短于所述中间证书颁发机构(310N)链中比所述相应的中间证书颁发机构(310N)更高的任何中间证书颁发机构(310N)的所述验证时间段(312)。
22.根据权利要求12-21中任一项所述的***(100),其特征在于,进一步包括:
确定所述多个最终实体证书(210L)中的相应的最终实体证书(210L)已被轮换;以及
将所述相应的最终实体证书(210L)添加到所述证书吊销列表(510)中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/069,178 | 2020-10-13 | ||
US17/069,178 US11683188B2 (en) | 2020-10-13 | 2020-10-13 | Representing certificate expiration with time-based intermediate certificate authorities |
PCT/US2021/054448 WO2022081493A1 (en) | 2020-10-13 | 2021-10-11 | Representing certificate expiration with time-based intermediate certificate authorities |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116601918A true CN116601918A (zh) | 2023-08-15 |
CN116601918B CN116601918B (zh) | 2024-06-04 |
Family
ID=78516947
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180083223.7A Active CN116601918B (zh) | 2020-10-13 | 2021-10-11 | 使用基于时间的中间证书颁发机构表示证书有效期 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11683188B2 (zh) |
EP (1) | EP4218201A1 (zh) |
JP (1) | JP7394262B2 (zh) |
KR (1) | KR20230084303A (zh) |
CN (1) | CN116601918B (zh) |
WO (1) | WO2022081493A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230239164A1 (en) * | 2022-01-26 | 2023-07-27 | Microsoft Technology Licensing, Llc | Embedding intermediate certificate in digital certificate |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040128504A1 (en) * | 2002-09-30 | 2004-07-01 | Tero Kivinen | Method for producing certificate revocation lists |
US20060200661A1 (en) * | 2000-05-16 | 2006-09-07 | Wesley Doonan | Method and apparatus for self-authenticating digital records |
CN107005416A (zh) * | 2014-12-15 | 2017-08-01 | 亚马逊技术有限公司 | 基于长持续时间数字证书验证的短持续时间数字证书颁发 |
US20170295025A1 (en) * | 2014-10-07 | 2017-10-12 | Arm Ip Limited | Method, hardware and digital certificate for authentication of connected devices |
CN109918888A (zh) * | 2019-01-15 | 2019-06-21 | 如般量子科技有限公司 | 基于公钥池的抗量子证书颁发方法及颁发*** |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8181017B2 (en) | 2004-10-22 | 2012-05-15 | Nds Limited | Certificate renewal |
EP2442485B1 (en) * | 2004-10-22 | 2015-12-30 | NDS Limited | Certificate renewal |
DE112017007707T5 (de) * | 2017-06-30 | 2020-03-19 | Motorola Solutions, Inc. | Lebenszyklusmanagementverfahren und vorrichtung für gesicherte zertifikate und vertrauensketten |
-
2020
- 2020-10-13 US US17/069,178 patent/US11683188B2/en active Active
-
2021
- 2021-10-11 WO PCT/US2021/054448 patent/WO2022081493A1/en active Application Filing
- 2021-10-11 CN CN202180083223.7A patent/CN116601918B/zh active Active
- 2021-10-11 EP EP21802512.0A patent/EP4218201A1/en active Pending
- 2021-10-11 KR KR1020237015969A patent/KR20230084303A/ko unknown
- 2021-10-11 JP JP2023522532A patent/JP7394262B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060200661A1 (en) * | 2000-05-16 | 2006-09-07 | Wesley Doonan | Method and apparatus for self-authenticating digital records |
US20040128504A1 (en) * | 2002-09-30 | 2004-07-01 | Tero Kivinen | Method for producing certificate revocation lists |
US20170295025A1 (en) * | 2014-10-07 | 2017-10-12 | Arm Ip Limited | Method, hardware and digital certificate for authentication of connected devices |
CN107005416A (zh) * | 2014-12-15 | 2017-08-01 | 亚马逊技术有限公司 | 基于长持续时间数字证书验证的短持续时间数字证书颁发 |
CN109918888A (zh) * | 2019-01-15 | 2019-06-21 | 如般量子科技有限公司 | 基于公钥池的抗量子证书颁发方法及颁发*** |
Also Published As
Publication number | Publication date |
---|---|
CN116601918B (zh) | 2024-06-04 |
US11683188B2 (en) | 2023-06-20 |
US20220116229A1 (en) | 2022-04-14 |
WO2022081493A1 (en) | 2022-04-21 |
JP7394262B2 (ja) | 2023-12-07 |
KR20230084303A (ko) | 2023-06-12 |
EP4218201A1 (en) | 2023-08-02 |
JP2023541326A (ja) | 2023-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10848325B1 (en) | Systems and methods for notary agent for public key infrastructure names | |
US11228452B2 (en) | Distributed certificate authority | |
AU2017223158B2 (en) | Blockchain-implemented method for control and distribution of digital content | |
EP2545677B1 (en) | Automated certificate management | |
US20200084027A1 (en) | Systems and methods for encryption of data on a blockchain | |
US11700132B2 (en) | Systems and methods for secure event and log management | |
US9112704B2 (en) | Systems, methods and apparatuses for securing root certificates | |
CN109547445B (zh) | 一种验证客户端网络请求合法的方法及*** | |
US20080034204A1 (en) | Communications Network Security Certificate Revocation | |
US8745380B2 (en) | Pre-encoding a cached certificate revocation list | |
US20130061035A1 (en) | Method and system for sharing encrypted content | |
US20110167258A1 (en) | Efficient Secure Cloud-Based Processing of Certificate Status Information | |
JP2022501971A (ja) | 鍵管理のための方法、ユーザ・デバイス、管理デバイス、記憶媒体及びコンピュータ・プログラム製品 | |
Khodaei et al. | Scaling pseudonymous authentication for large mobile systems | |
CN108696356B (zh) | 一种基于区块链的数字证书删除方法、装置及*** | |
CN112396421B (zh) | 一种基于区块链通证的身份认证***及方法 | |
CN112152778A (zh) | 一种节点管理方法、装置、及电子设备 | |
CN116601918B (zh) | 使用基于时间的中间证书颁发机构表示证书有效期 | |
Noroozi et al. | VPKIaaS: A highly-available and dynamically-scalable vehicular public-key infrastructure | |
CN110912892A (zh) | 一种证书管理方法、装置、电子设备及存储介质 | |
US20160365985A1 (en) | Method and system for recursively embedded certificate renewal and revocation | |
US20230269099A1 (en) | Revocation of certificates issued by distributed servers | |
CN111343126A (zh) | 一种处理数字证书申请的方法和*** | |
WO2024139741A1 (zh) | 基于区块链的证书管理方法、***及相关装置 | |
Duckwall et al. | Abusing kerberos |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |