CN106533691A - 一种数字证书有效性的验证方法及装置 - Google Patents
一种数字证书有效性的验证方法及装置 Download PDFInfo
- Publication number
- CN106533691A CN106533691A CN201610906979.8A CN201610906979A CN106533691A CN 106533691 A CN106533691 A CN 106533691A CN 201610906979 A CN201610906979 A CN 201610906979A CN 106533691 A CN106533691 A CN 106533691A
- Authority
- CN
- China
- Prior art keywords
- certificate
- digital
- digital certificate
- identification information
- certificates
- 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.)
- Pending
Links
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/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
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)
Abstract
本发明涉及网络安全领域,公开了一种数字证书有效性的验证方法及装置,包括:确定N级数字证书,其中所述N级数字证书中第1级数字证书是根据待验证数字证书的标识信息遍历证书管理机构确定的,后一级数字证书的标识信息与前一级数字证书的颁发者证书的标识信息相同,第N级数字证书为根证书,N为正整数;根据确定的N级数字证书,构建证书链,其中构建的证书链中包括N张数字证书,且同一证书链中的任意两张数字证书的级数不同;若证书链构建成功,则确定所述待验证数字证书有效。本发明用以提高验证数字证书有效性的准确度。
Description
技术领域
本发明涉及网络安全领域,尤其涉及一种数字证书有效性的验证方法及装置。
背景技术
数字证书就是互联网通讯中标志通讯各方身份信息的一串数字,提供了一种在互联网上验证通信实体身份的方式,数字证书不是数字身份证,而是身份认证机构盖在数字身份证上的一个章或印(或者说加在数字身份证上的一个签名)。数字证书在电子商务中是一种权威性的文档,证书的颁发者必须具有可信赖性,它是由权威机构—证书管理机构,又称为数字证书授权机构(Certifi证书管理机构te Authority)发行的,人们可以在网上用它来识别对方的身份。数字证书是一种安全机制,它能保证实现和完成PKI(公钥基础设施,Public Key Infrastructure)的身份认证、完整性、保密性及不可否认性的安全服务。
为了保证网络上的信息安全,数字证书也必须具有唯一性和可靠性。为了达到这一目的,需要对数字证书进行验证。在当前的证书验证中,用户将数字证书数据发给验证中心,验证中心根据数字证书的颁发者,在指定的证书库中通过比较DN(唯一甄别名,Distinguished Name),从证书库中查找出数字证书的颁发者证书。但是可能会出现该数字证书的颁发者证书系统升级,颁发者证书的DN不变,而摘要算法或密钥等改变,因此,会出现不同的颁发者证书使用同一个DN的情况。此时,可能会出现虽然待验证的数字证书是有效的,但通过比较DN来查找证书,由于找到的证书不是想要验证的数字证书,而是DN相同的数字证书,进一步对找到的证书验证不通过而得出待验证的数字证书无效的结论。因此,通过这种方式对数字证书进行验证,很可能得到错误的结果。
发明内容
本发明实施例提供一种数字证书有效性的验证方法及装置,用以提高验证数字证书有效性的准确度。
本发明实施例提供的数字证书有效性的验证方法包括:
确定N级数字证书,其中所述N级数字证书中第1级数字证书是根据待验证数字证书的标识信息遍历证书管理机构确定的,后一级数字证书的标识信息与前一级数字证书的颁发者证书的标识信息相同,第N级数字证书为根证书,N为正整数;
根据确定的N级数字证书,构建证书链,其中构建的证书链中包括N张数字证书,且同一证书链中的任意两张数字证书的级数不同;
若证书链构建成功,则确定所述待验证数字证书有效。
可选的,所述确定N级数字证书,包括:
根据所述待验证数字证书的标识信息,遍历所述证书管理机构查找到标识信息与所述待验证证书的标识信息相同的第1级数字证书;
根据第m级数字证书的颁发者证书的标识信息,遍历所述证书管理机构查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的第m+1级数字证书,其中,1≤m<N,且m为整数。
可选的,所述根据所述待验证数字证书的标识信息,从证书管理机构证书管理机构中查找到标识信息与所述待验证证书的标识信息相同的第1级数字证书之后,还包括:
若查找到标识信息与所述待验证证书的标识信息相同的多张数字证书,则根据所述待验证数字证书的句柄,从查找到的所述多张数字证书中确定一张数字证书,作为所述第1级数字证书;
所述根据第m级数字证书的颁发者证书的标识信息,遍历所述证书管理机构查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的第m+1级数字证书之后,还包括:
若查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的多张数字证书,则用查找到的所述多张数字证书的公钥分别对所述第m级数字证书的数字签名进行验证,验证签名成功的数字证书作为所述第m+1级数字证书。
可选的,所述根据确定的N级数字证书,构建证书链,包括:
利用第k+1级数字证书的公钥,验证第k级数字证书的数字签名,其中,1≤k<N,且k为整数;
若从第1级数字证书到根证书均解密成功,则证书链构建成功。
可选的,所述确定N级数字证书之后,所述根据确定的N级数字证书,构建证书链之前,还包括:
针对所述N级数字证书中的每一级数字证书,进行有效性验证,若所述数字证书的有效性验证通过,则利用所述数字证书构建证书链;
所述数字证书的有效性验证至少包括所述数字证书的有效期验证或证书吊销列表CRL查询。
可选的,所述根据确定的N级数字证书,构建证书链之后,还包括:
若证书链构建失败,则返回失败码。
一种数字证书有效性的验证装置,包括:
查询模块,用于确定N级数字证书,其中所述N级数字证书中第1级数字证书是根据待验证数字证书的标识信息确定的,后一级数字证书的标识信息与前一级数字证书的颁发者证书的标识信息相同,第N级数字证书为根证书,N为正整数;
构建模块,用于根据确定的N级数字证书,构建证书链,其中构建的证书链中包括N张数字证书,且同一证书链中的任意两张数字证书的级数不同;
反馈模块,用于若证书链构建成功,则确定所述待验证数字证书有效。
可选的,所述查询模块,具体用于:
根据所述待验证数字证书的标识信息,从证书管理机构中查找到标识信息与所述待验证证书的标识信息相同的第1级数字证书;
根据第m级数字证书的标识信息,从所述证书管理机构中查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的第m+1级数字证书,其中,1≤m<N,且m为整数。
可选的,所述查询模块,具体用于:
若查找到标识信息与所述待验证证书的标识信息相同的多张数字证书,则根据所述待验证数字证书句柄中的摘要算法,公钥长度等信息,从查找到的所述多张数字证书中确定一张数字证书,作为所述第1级数字证书;
若查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的多张数字证书,则用查找到的所述多张数字证书的公钥分别对所述第m级数字证书的数字签名进行验证,验证签名成功的数字证书作为所述第m+1级数字证书。
可选的,所述构建模块,具体用于:
利用第k+1级数字证书的公钥,验证第k级数字证书的数字签名,其中,1≤k<N,且k为整数;
若从第1级数字证书到根证书均验证签名成功,则证书链构建成功。
可选的,还包括验证模块,用于:
针对所述N级数字证书中的每一级数字证书,进行有效性验证,若所述数字证书的有效性验证通过,则所述构建模块利用所述数字证书构建证书链;
所述数字证书的有效性验证至少包括所述数字证书的有效期验证或证书吊销列表CRL查询。
可选的,所述反馈模块,还用于:若证书链构建失败,则返回失败码。
本发明实施例中,根据待验证数字证书的标识信息,遍历证书管理机构或证书存储机构,确定标识信息与该待验证数字证书的标识信息相同的数字证书,作为第1级数字证书。根据第1级数字证书的颁发者证书的标识信息,遍历证书管理机构或证书存储机构,确定第2级数字证书,第2级数字证书的标识信息与该第1级数字证书的颁发者证书的标识信息相同。然后根据第2级数字证书的颁发者证书的标识信息,遍历证书管理机构或证书存储机构,确定第3级数字证书,第3级数字证书的标识信息与第2级数字证书的颁发者证书的标识信息相同。以此类推,针对每个第N级数字证书,根据该第N级数字证书的颁发者证书的标识信息,遍历证书管理机构或证书存储机构,确定第N+1级数字证书,其中,每个第N+1级数字证书的标识信息与该第N级数字证书的颁发者证书的标识信息相同,直至每个第N+1级数字证书均为根证书。然后以第1级数字证书为起点,根证书为终点,由级数较低的数字证书向级数较高的数字证书建立证书链,若证书链构建成功,则确定待验证证书有效。由于可能出现两个或多个数字证书的标识信息相同而内容不同的情况,本发明实施例中,不是根据待验证数字证书的标识信息找出一个标识信息相同的数字证书就对其进行验证,而是遍历证书管理机构或证书存储机构,将所有标识信息与待验证数字证书的标识信息相同的数字证书均找出,同理找出标识信息与颁发者证书的标识信息相同的所有数字证书。这样可以避免单个数字证书获取并验证时出现的证书链无法构建,进而错误地认为待验证数字证书无效的情况,可以提高验证数字证书有效性的准确度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中数字证书有效性的验证方法的流程图;
图2为本发明实施例中一种具体的数字证书有效性的验证方法的流程图;
图3为本发明实施例中一种数字证书有效性的验证装置的示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在数字证书系统中,当系统升级时,数字证书的颁发者证书的摘要算法可能会由sha1升级为sha256,或者密钥由1024位升级为2048位,而颁发者证书的DN不变。依照现有技术对数字证书进行验证时,根据用户发送的数字证书的相关数据,获取该数字证书的颁发者证书的DN,从本地证书库中查找DN相同的颁发者证书。此时,若存在两个或多个相同DN的数字证书,则找到的颁发者证书可能是系统未升级的数字证书,如密钥为1024位的数字证书,而用户传来的数字证书是系统已升级的,其密钥为2048位。由于已找到DN相同的数字证书,则跳出在本地数据库中的查找,对找到的数字证书进行验证,并开始构建证书链。由于找到的数字证书的密钥与用户发来的数字证书的密钥不一致,因此无法成功建立证书链。而基于此确定用户发来的数字证书无效是不正确的。
为了解决上述问题,本发明实施例提供了一种数字证书有效性的验证方法,该方法的流程如图1所示,方法可以包括如下步骤:
S101、确定N级数字证书,其中所述N级数字证书中第1级数字证书是根据待验证数字证书的标识信息遍历证书管理机构确定的,后一级数字证书的标识信息与前一级数字证书的颁发者证书的标识信息相同,第N级数字证书为根证书,N为正整数。
S102、根据确定的N级数字证书,构建证书链,其中构建的证书链中包括N张数字证书,且同一证书链中的任意两张数字证书的级数不同。
S103、若证书链构建成功,则确定所述待验证数字证书有效。
本发明实施例中,根据待验证数字证书的标识信息,遍历证书管理机构或证书存储机构,从DN相同的多张数字证书中确定标识信息与该待验证数字证书的标识信息相同的一张数字证书,作为第1级数字证书。根据第1级数字证书的颁发者证书的标识信息,遍历证书管理机构或证书存储机构,确定第2级数字证书,从第2级的多张数字证书的标识信息与该第1级数字证书的颁发者证书的标识信息相同的一张数字证书。然后根据第2级数字证书的颁发者证书的标识信息,遍历证书管理机构或证书存储机构,确定第3级数字证书,从第3级的多张数字证书的标识信息与第2级数字证书的颁发者证书的标识信息相同。以此类推,针对每个第N级数字证书,根据该第N级数字证书的颁发者证书的标识信息,遍历证书管理机构或证书存储机构,确定第N+1级数字证书,根据信息在多张数字证书中确定一张,其中,每个第N+1级数字证书的标识信息与该第N级数字证书的颁发者证书的标识信息相同,直至最后第N+1级数字证书为根证书。然后以第1级数字证书为起点,根证书为终点,由级数较低的数字证书向级数较高的数字证书建立证书链,若证书链构建成功,则确定待验证证书有效。由于可能出现两个或多个数字证书的标识信息相同而内容不同的情况,本发明实施例中,不是根据待验证数字证书的标识信息找出一个标识信息相同的数字证书就对其进行验证,而是遍历证书管理机构或证书存储机构,将所有标识信息与待验证数字证书的标识信息相同的数字证书均找出,同理找出标识信息与颁发者证书的标识信息相同的所有数字证书。这样可以避免单个数字证书获取并验证时出现的证书链无法构建,进而错误地认为待验证数字证书无效的情况,或者证书链构建成功,但是不是要验证的证书的情况,可以提高验证数字证书有效性的准确度。
本发明实施例中N级证书组中的所有数字证书均为遍历本地证书库中获得,即步骤101包括:
根据所述待验证数字证书的标识信息,遍历所述证书管理机构或证书存储机构查找到标识信息与所述待验证证书的标识信息相同的第1级数字证书;
根据第m级数字证书的标识信息,遍历所述证书管理机构或证书存储机构查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的第m+1级数字证书,其中,1≤m<N,且m为整数。
具体来说,接收到用户发送的待验证数字证书的标识信息,即待验证数字证书的DN后,通过比较DN,从证书管理机构或证书存储机构中查找与待验证数字证书的DN相同的数字证书,作为第1级数字证书。当找到一张DN相同的数字证书后不退出查找过程,而是继续根据该DN进行查找,直至遍历完本地证书库中的所有数字证书。因此,找到的第1级数字证书可能有一张或多张,也可能没有第1级数字证书。若没有第1级数字证书,则表明在证书库中查找不到待验证的数字证书,即该待验证的数字证书无效。若找到一张或多张第1级数字证书,即可利用找到的第1级数字证书构建证书链。
与第1级数字证书类似的是,对于第1级数字证书之后的数字证书,也为遍历证书库获得。具体来说,确定第1级数字证书的颁发者证书,根据第1级数字证书的颁发者证书的标识信息,遍历证书库,查找到标识信息与第1级数字证书的颁发者证书的标识信息相同的数字证书,作为第2级数字证书。确定相应的第2级数字证书的颁发者证书,根据第2第级数字证书的颁发者证书的标识信息,遍历证书库,查找到标识信息与第2级数字证书的颁发者证书的标识信息相同的数字证书,作为第3级数字证书。以此类推,根据第m级数字证书的颁发者证书的标识信息,遍历证书库,查找到标识信息与第m级数字证书的颁发者证书的标识信息相同的数字证书,做为第m+1级数字证书。直至确定出第N级数字证书为根证书。
根据待识别数字证书的标识信息查找到的数字证书,可能为一张,也有可能为多张,若查找到一张数字证书,则该数字证书为第1级数字证书,若查找到多张数字证书,还需从这多张数字证书中确定出与待识别数字证书相符的,作为第1级数字证书。
从而,所述根据所述待验证数字证书的标识信息,从证书管理机构中查找到标识信息与所述待验证证书的标识信息相同的第1级数字证书之后,还包括:
若查找到标识信息与所述待验证证书的标识信息相同的多张数字证书,则根据所述待验证数字证书的句柄,从查找到的所述多张数字证书中确定一张数字证书,作为所述第1级数字证书。
数字证书的句柄即相当于数字证书的指针,可以根据数字证书的句柄获取该数字证书相关的所有信息,如DN、有效期、序列号等等。由于系统升级时,颁发者证书的DN可能不变,而摘要算法或密钥等其它内容改变,因此,仅根据颁发者证书的DN可能会查找到多张DN相同而其余内容不同的数字证书,这些找到的多张数字证书,并不全是上一级数字证书的颁发者证书,因此需进一步验证,确定出唯一一张数字证书,即为上一级数字证书的颁发者证书。本发明实施例根据数字证书的句柄,来验证查找到的多张数字证书。
例如,对于待验证数字证书,用户将待验证数字证书的句柄发送给根据用户发送的待验证数字证书的句柄,然后根据句柄确定的待验证数字证书的DN从证书库中查找到DN与待验证数字证书的DN相同的数字证书。若查找到多张数字证书,则根据待验证数字证书的句柄,确定待验证数字证书的其它信息,如加密算法、密钥等,与查找到的多张数字证书进行对照,从找到的多张数字证书中确定出与待验证数字证书各方面信息均相同的数字证书,作为第1级数字证书。这里,若查找到的多张数字证书均与待验证数字证书均不相同,则认为本地证书库中没有待验证数字证书的存档,可以判定待验证数字证书无效。此外,若根据DN只找到一个数字证书,也需要根据待验证数字证书的句柄对找到的一张数字证书进行验证,若各个相关信息均相同,则将找到的数字证书作为第1级数字证书。
之后根据数字证书的颁发者证书的DN找到的数字证书若为多张,则用找到的多张数字证书分别对该数字证书验证签名,从多张数字证书中确定出与颁发者证书相符的唯一一张数字证书。即,根据第m级数字证书的颁发者证书的标识信息,遍历所述证书管理机构查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的第m+1级数字证书之后,还包括:
若查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的多张数字证书,则用查找到的所述多张数字证书的公钥分别对所述第m级数字证书的数字签名进行解密,解密成功的数字证书作为所述第m+1级数字证书。
之后,根据第1级数字证书的句柄可以确定出第1级数字证书的颁发者证书,从而能根据第1级数字证书的颁发者证书的DN,从证书库中查找DN相同的数字证书。利用找到的多张数字证书对第1级数字证书进行验证签名,确定出一张数字证书为第1级数字证书的颁发者证书,作为第2级数字证书。与确定第2级数字证书相类似,第3级数字证书、第4级数字证书……直至第N级数字证书均可根据前一级数字证书的颁发者证书的DN从证书库中查找验证,最终每一级确定出一张数字证书。
利用每一级的数字证书构建证书链,即步骤S103包括:
利用第k+1级数字证书的公钥,解密第k级数字证书的数字签名,其中,1≤k<N,且k为整数;
若从第1级数字证书到根证书均解密成功,并且每一级数字证书的有效性,CRL证书吊销列表均验证成功,则证书链构建成功。
进一步,为了增加有效性验证结果的准确性,需验证找到的各个数字证书的有效性,即步骤S102之后,步骤S103之前,包括:
针对所述N级数字证书中的每一级数字证书,进行有效性验证,若所述数字证书的有效性验证通过,则利用所述数字证书构建证书链;
所述数字证书的有效性验证至少包括以下内容之一:所述数字证书的序列号验证、有效期验证和证书吊销列表CRL(证书吊销列表,Certifi证书管理机构te Revo证书管理机构tion List)查询。
具体来说,在建立证书链之前,需对每个数字证书进行有效性验证。只有当数字证书被证明是有效的,才会作为证书链中的一个元素,构建证书链。数字证书的有效性验证至少包括有效期验证或CRL查询。
有效期验证就是检查数字证书使用的日期是否合法,是否过期。CRL查询,是检查数字证书是否已经作废,并发布在CRL中。数字证书因私钥泄密等原因,需要废止时,需向证书管理机构声明作废。证书管理机构实时地在证书库中进行发布,以供访问时进行查询。
上述有效性验证还可以包括如数字证书的序列号验证。序列号验证是指核查数字证书的签名实体序列号是否与签发者证书的序列号相一致,从而验证数字证书的真伪。验证操作过程是:该数字证书中的序列号,与证书管理机构证书中的证书序列号,二者应该相一致,否则认为该数字证书不是可信任的证书管理机构所签发,即待验证数字证书无效。
需要说明的是,本发明实施例中的有效性验证不仅限于上述三项内容,上述内容仅为举例,不作限制。
本发明实施例中,若某数字证书未通过有效性验证,则证书链无法成功建立,也认为待验证数字证书无效,返回失败码。
为了更清楚地理解本发明,下面以具体实例对上述流程进行详细描述,其中,具体流程如图2所示,包括:
S201、接收用户发送的待验证数字证书X的句柄。
S202、根据数字证书X的句柄,取出数字证书X的DN。
S203、遍历证书库,找出DN与数字证书X的DN相同的数字证书。
S204、根据数字证书X的句柄,从DN与数字证书X的DN相同的数字证书中确定出第1级数字证书。
S205、i=1。
S206、根据第i级数字证书的句柄获取第i级数字证书的颁发者证书的DN,根据第i级数字证书的颁发者证书的DN,遍历证书库,找出DN与第i级数字证书的颁发者证书的DN相同的数字证书。
S207、根据第i级数字证书的句柄,从DN与第i级数字证书的颁发者证书的DN相同的数字证书中确定出第i+1级数字证书,从找到的一张或多张数字证书中确定一张数字证书为第i+1级数字证书。
S208、判断第i+1级数字证书是否为根证书,若是,则执行步骤S210;否则执行步骤S209。
S209、i++,执行步骤S206。
S210、对每一级数字证书进行有效性验证。
S211、判断每一级数字证书是否均有效,若每一级数字证书均验证为有效,则执行步骤S212;否则执行步骤215。
S212、利用每一级数字证书,构建证书链。
S213、若证书链构建成功,执行步骤S214,否则执行步骤S215。
S214、数字证书X有效。
S215、数字证书X无效,返回失败码。
基于相同的技术构思,本发明实施例还提供一种数字证书有效性的验证装置,如图3所示,包括:
查询模块1,用于确定N级数字证书,其中所述N级数字证书中第1级数字证书是根据待验证数字证书的标识信息确定的,后一级数字证书的标识信息与前一级数字证书的颁发者证书的标识信息相同,第N级数字证书为根证书,N为正整数;
构建模块2,用于根据确定的N级数字证书,构建证书链,其中构建的证书链中包括N张数字证书,且同一证书链中的任意两张数字证书的级数不同;
反馈模块3,用于若证书链构建成功,则确定所述待验证数字证书有效。
可选的,所述查询模块1,具体用于:
根据所述待验证数字证书的标识信息,从证书管理机构中查找到标识信息与所述待验证证书的标识信息相同的第1级数字证书;
根据第m级数字证书的标识信息,从所述证书管理机构中查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的第m+1级数字证书,其中,1≤m<N,且m为整数。
可选的,所述查询模块1,具体用于:
若查找到标识信息与所述待验证证书的标识信息相同的多张数字证书,则根据所述待验证数字证书句柄中的摘要算法,公钥长度等信息,从查找到的所述多张数字证书中确定一张数字证书,作为所述第1级数字证书;
若查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的多张数字证书,则用查找到的所述多张数字证书的公钥分别对所述第m级数字证书的数字签名进行解密,解密成功的数字证书作为所述第m+1级数字证书。
可选的,所述构建模块2,具体用于:
利用第k+1级数字证书的公钥,解密第k级数字证书的数字签名,其中,1≤k<N,且k为整数;
若从第1级数字证书到根证书均解密成功,则证书链构建成功。
可选的,还包括验证模块4,用于:
针对所述N级数字证书中的每一级数字证书,进行有效性验证,若所述数字证书的有效性验证通过,则所述构建模块利用所述数字证书构建证书链;
所述数字证书的有效性验证至少包括所述数字证书的有效期验证或证书吊销列表CRL查询。
可选的,所述反馈模块3,还用于:若证书链构建失败,则返回失败码。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (12)
1.一种数字证书有效性的验证方法,其特征在于,包括:
确定N级数字证书,其中所述N级数字证书中第1级数字证书是根据待验证数字证书的标识信息遍历证书管理机构确定的,后一级数字证书的标识信息与前一级数字证书的颁发者证书的标识信息相同,第N级数字证书为根证书,N为正整数;
根据确定的N级数字证书,构建证书链,其中构建的证书链中包括N张数字证书,且同一证书链中的任意两张数字证书的级数不同;
若证书链构建成功,则确定所述待验证数字证书有效。
2.如权利要求1所述的方法,其特征在于,所述确定N级数字证书,包括:
根据所述待验证数字证书的标识信息,遍历所述证书管理机构查找到标识信息与所述待验证证书的标识信息相同的第1级数字证书;
根据第m级数字证书的颁发者证书的标识信息,遍历所述证书管理机构查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的第m+1级数字证书,其中,1≤m<N,且m为整数。
3.如权利要求2所述的方法,其特征在于,所述根据所述待验证数字证书的标识信息,从证书管理机构证书管理机构中查找到标识信息与所述待验证证书的标识信息相同的第1级数字证书之后,还包括:
若查找到标识信息与所述待验证证书的标识信息相同的多张数字证书,则根据所述待验证数字证书的句柄,从查找到的所述多张数字证书中确定一张数字证书,作为所述第1级数字证书;
所述根据第m级数字证书的颁发者证书的标识信息,遍历所述证书管理机构查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的第m+1级数字证书之后,还包括:
若查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的多张数字证书,则用查找到的所述多张数字证书的公钥分别对所述第m级数字证书的数字签名进行解密,解密成功的数字证书作为所述第m+1级数字证书。
4.如权利要求1所述的方法,其特征在于,所述根据确定的N级数字证书,构建证书链,包括:
利用第k+1级数字证书的公钥,验证第k级数字证书的数字签名,其中,1≤k<N,且k为整数;
若从第1级数字证书到根证书均验证签名成功,则证书链构建成功。
5.如权利要求1所述的方法,其特征在于,所述确定N级数字证书之后,所述根据确定的N级数字证书,构建证书链之前,还包括:
针对所述N级数字证书中的每一级数字证书,进行有效性验证,若所述数字证书的有效性验证通过,则利用所述数字证书构建证书链;
所述数字证书的有效性验证至少包括所述数字证书的有效期验证或证书吊销列表CRL查询。
6.如权利要求1至5任一项所述的方法,其特征在于,所述根据确定的N级数字证书,构建证书链之后,还包括:
若证书链构建失败,则返回失败码。
7.一种数字证书有效性的验证装置,其特征在于,包括:
查询模块,用于确定N级数字证书,其中所述N级数字证书中第1级数字证书是根据待验证数字证书的标识信息确定的,后一级数字证书的标识信息与前一级数字证书的颁发者证书的标识信息相同,第N级数字证书为根证书,N为正整数;
构建模块,用于根据确定的N级数字证书,构建证书链,其中构建的证书链中包括N张数字证书,且同一证书链中的任意两张数字证书的级数不同;
反馈模块,用于若证书链构建成功,则确定所述待验证数字证书有效。
8.如权利要求7所述的装置,其特征在于,所述查询模块,具体用于:
根据所述待验证数字证书的标识信息,从证书管理机构中查找到标识信息与所述待验证证书的标识信息相同的第1级数字证书;
根据第m级数字证书的标识信息,从所述证书管理机构中查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的第m+1级数字证书,其中,1≤m<N,且m为整数。
9.如权利要求8所述的装置,其特征在于,所述查询模块,具体用于:
若查找到标识信息与所述待验证证书的标识信息相同的多张数字证书,则根据所述待验证数字证书句柄中的摘要算法,公钥长度等信息,从查找到的所述多张数字证书中确定一张数字证书,作为所述第1级数字证书;
若查找到标识信息与所述第m级数字证书的颁发者证书的标识信息相同的多张数字证书,则用查找到的所述多张数字证书的公钥分别对所述第m级数字证书的数字签名进行签名验证,签名验证成功的数字证书作为所述第m+1级数字证书。
10.如权利要求7所述的装置,其特征在于,所述构建模块,具体用于:
利用第k+1级数字证书的公钥,解密第k级数字证书的数字签名,其中,1≤k<N,且k为整数;
若从第1级数字证书到根证书均解密成功,则证书链构建成功。
11.如权利要求7所述的装置,其特征在于,还包括验证模块,用于:
针对所述N级数字证书中的每一级数字证书,进行有效性验证,若所述数字证书的有效性验证通过,则所述构建模块利用所述数字证书构建证书链;
所述数字证书的有效性验证至少包括所述数字证书的有效期验证或证书吊销列表CRL查询。
12.如权利要求7所述的装置,其特征在于,所述反馈模块,还用于:
若证书链构建失败,则返回失败码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610906979.8A CN106533691A (zh) | 2016-10-18 | 2016-10-18 | 一种数字证书有效性的验证方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610906979.8A CN106533691A (zh) | 2016-10-18 | 2016-10-18 | 一种数字证书有效性的验证方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106533691A true CN106533691A (zh) | 2017-03-22 |
Family
ID=58332125
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610906979.8A Pending CN106533691A (zh) | 2016-10-18 | 2016-10-18 | 一种数字证书有效性的验证方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106533691A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108683507A (zh) * | 2018-05-03 | 2018-10-19 | 湖南东方华龙信息科技有限公司 | 通过可追溯链表验证云端证书完整性的方法 |
CN108989046A (zh) * | 2018-07-18 | 2018-12-11 | 成都知道创宇信息技术有限公司 | 一种ssl证书链自动补全方法 |
CN109326061A (zh) * | 2018-09-10 | 2019-02-12 | 惠尔丰电子(北京)有限公司 | 智能pos的防切机方法 |
WO2019233204A1 (zh) * | 2018-06-06 | 2019-12-12 | 腾讯科技(深圳)有限公司 | 密钥管理方法、装置、系统、存储介质和计算机设备 |
CN111492617A (zh) * | 2017-11-08 | 2020-08-04 | 西门子歌美飒可再生能源公司 | 用于验证数字证书的方法和验证设备 |
CN112187708A (zh) * | 2019-07-05 | 2021-01-05 | 上海云盾信息技术有限公司 | 数字证书的证书链的自动补全方法及设备 |
CN114189341A (zh) * | 2021-12-10 | 2022-03-15 | 北京泰尔英福科技有限公司 | 基于区块链标识的数字证书分级处理方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1691579A (zh) * | 2004-04-22 | 2005-11-02 | 微软公司 | 根据多个链式数字证书在内容保护系统中呈现数字内容 |
US20080130898A1 (en) * | 2006-10-16 | 2008-06-05 | Nokia Corporation | Identifiers in a communication system |
CN101674304A (zh) * | 2009-10-15 | 2010-03-17 | 浙江师范大学 | 一种网络身份认证系统及方法 |
CN102833754A (zh) * | 2012-08-17 | 2012-12-19 | 中国电力科学研究院 | 一种基于数字证书的移动设备可信接入方法 |
CN105653951A (zh) * | 2014-12-02 | 2016-06-08 | 卡巴斯基实验室股份制公司 | 基于数字证书的信任等级来反病毒检查文件的系统和方法 |
-
2016
- 2016-10-18 CN CN201610906979.8A patent/CN106533691A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1691579A (zh) * | 2004-04-22 | 2005-11-02 | 微软公司 | 根据多个链式数字证书在内容保护系统中呈现数字内容 |
US20080130898A1 (en) * | 2006-10-16 | 2008-06-05 | Nokia Corporation | Identifiers in a communication system |
CN101674304A (zh) * | 2009-10-15 | 2010-03-17 | 浙江师范大学 | 一种网络身份认证系统及方法 |
CN102833754A (zh) * | 2012-08-17 | 2012-12-19 | 中国电力科学研究院 | 一种基于数字证书的移动设备可信接入方法 |
CN105653951A (zh) * | 2014-12-02 | 2016-06-08 | 卡巴斯基实验室股份制公司 | 基于数字证书的信任等级来反病毒检查文件的系统和方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111492617A (zh) * | 2017-11-08 | 2020-08-04 | 西门子歌美飒可再生能源公司 | 用于验证数字证书的方法和验证设备 |
CN108683507A (zh) * | 2018-05-03 | 2018-10-19 | 湖南东方华龙信息科技有限公司 | 通过可追溯链表验证云端证书完整性的方法 |
CN108683507B (zh) * | 2018-05-03 | 2021-06-29 | 湖南东方华龙信息科技有限公司 | 通过可追溯链表验证云端证书完整性的方法 |
WO2019233204A1 (zh) * | 2018-06-06 | 2019-12-12 | 腾讯科技(深圳)有限公司 | 密钥管理方法、装置、系统、存储介质和计算机设备 |
US11516020B2 (en) | 2018-06-06 | 2022-11-29 | Tencent Technology (Shenzhen) Company Limited | Key management method, apparatus, and system, storage medium, and computer device |
CN108989046A (zh) * | 2018-07-18 | 2018-12-11 | 成都知道创宇信息技术有限公司 | 一种ssl证书链自动补全方法 |
CN108989046B (zh) * | 2018-07-18 | 2021-05-04 | 成都知道创宇信息技术有限公司 | 一种ssl证书链自动补全方法 |
CN109326061A (zh) * | 2018-09-10 | 2019-02-12 | 惠尔丰电子(北京)有限公司 | 智能pos的防切机方法 |
CN112187708A (zh) * | 2019-07-05 | 2021-01-05 | 上海云盾信息技术有限公司 | 数字证书的证书链的自动补全方法及设备 |
CN112187708B (zh) * | 2019-07-05 | 2023-07-28 | 上海云盾信息技术有限公司 | 数字证书的证书链的自动补全方法及设备 |
CN114189341A (zh) * | 2021-12-10 | 2022-03-15 | 北京泰尔英福科技有限公司 | 基于区块链标识的数字证书分级处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106533691A (zh) | 一种数字证书有效性的验证方法及装置 | |
CN109522698B (zh) | 基于区块链的用户认证方法及终端设备 | |
CN109951489B (zh) | 一种数字身份认证方法、设备、装置、系统及存储介质 | |
CN110473105B (zh) | 一种区块链交易结算方法、系统及相关设备 | |
CN110517147B (zh) | 交易数据处理方法、装置、系统及计算机可读存储介质 | |
JP4774235B2 (ja) | 証明書失効リストの分配管理方法 | |
CN102271042B (zh) | 数字证书认证方法、系统、USB Key设备和服务器 | |
US20180316661A1 (en) | Method and apparatus for providing client-side score-based authentication | |
CN110677376B (zh) | 认证方法、相关设备和系统及计算机可读存储介质 | |
US9667616B2 (en) | Authentication processing apparatus, authentication processing system, authentication processing method and authentication processing program | |
RU2017140260A (ru) | Аутентификация в распределенной среде | |
CN113411188B (zh) | 电子合同签署方法、装置、存储介质及计算机设备 | |
CN109417471B (zh) | 密码生成设备和密码验证设备 | |
CN111506327B (zh) | 区块链节点热升级方法及相关设备 | |
KR100817565B1 (ko) | 신원확인 인증서를 이용한 원패스 서비스 시스템 및 방법 | |
CN110753023B (zh) | 一种设备认证方法、设备访问方法和装置 | |
CN105721425B (zh) | 一种信息处理方法及电子设备 | |
CN103634328A (zh) | 用于网络平台认证服务器的认证方法、装置和系统 | |
CN108140099B (zh) | 在二进制数据同步协议中交换的更新的签名 | |
KR20070075715A (ko) | 일회용 비밀번호 생성방법과 일회용 비밀번호 인증 시스템 | |
CN112035813B (zh) | 区块链中基于指纹识别分层生成分布式身份的方法和计算机可读介质 | |
CN112311779A (zh) | 应用于区块链系统的数据访问控制方法及装置 | |
JP2005044054A (ja) | 符号列の処理システム | |
CN114117551B (zh) | 一种访问验证方法及装置 | |
US10979420B2 (en) | Method for authenticating with a password comprising a salt |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 100093 Haidian District, Haidian District, Beijing, No. 23, No. 2, No. 1001 Applicant after: Beijing Xin'an century Polytron Technologies Inc Address before: 100052 Beijing city Haidian District Bei wa Lu Xi Li No. 21 block A No. 8246 Applicant before: Beijing Infosec Technologies Co.,Ltd. |
|
CB02 | Change of applicant information | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170322 |
|
RJ01 | Rejection of invention patent application after publication |