一种用于测试的方法和装置与流程

文档序号:11436265阅读:304来源:国知局
一种用于测试的方法和装置与流程

本发明涉及公钥基础设施领域,尤其涉及一种用于测试的方法和装置。



背景技术:

公钥基础设施(pki)是一种遵循标准的利用公钥加密技术为电子商务的开展提供一套安全基础平台的技术和规范,其通过认证机构(ca)利用证书把用户的公钥和用户的标识信息捆绑在一起,在网络上验证用户的身份。国际电信联盟(itu-t)制定的数字证书标准x.509详细定义了pki中的证书。

安全套接层(ssl)协议及其继任者传输层安全(tls)协议是pki中采用的为网络通信提供安全及数据完整性的一种安全协议,用于在实际的数据传输开始前,对通信双方进行身份认证、协商加密算法、交换加密密钥等。实现或遵循ssl/tls协议的部分或全部的应用通常被称作ssl/tls实现,其通常包括安装在客户端上的客户端侧实现和安装在服务器上的服务器侧实现。ssl/tls实现在对用户进行身份认证时首先需要对用户的证书进行验证。从而,ssl/tls实现能否正确地验证证书对ssl/tls实现的身份认证功能非常重要。

通常,使用证书测试库来测试ssl/tls实现能否正确地验证证书,其中,该证书测试库包括多个证书和该多个证书各自的表示有效或无效的有效性指示。

然而,现有的测试方法不能准确地测试ssl/tls实现能否正确地验证证书。



技术实现要素:

考虑到现有技术的上述问题,本发明的实施例提供一种用于测试的方法 和装置,其能够准确地测试具有对pki的证书进行验证的功能的实现能否正确地验证证书。

按照本发明实施例的一种用于测试的方法,包括:从证书测试库中提取pki的证书和该证书的表明其有效或无效的有效性指示;利用指定的具有对pki的证书进行验证的功能的实现中的客户端侧实现来对所提取的证书进行有效性验证,以获得所提取的证书的第一验证结果;利用所述指定的实现中的服务器侧实现来对所提取的证书进行有效性验证,以获得所提取的证书的第二验证结果;以及,如果所提取的证书的所述第一验证结果和/或所述第二验证结果与所提取的有效性指示不一致,则确定所述指定的实现不能正确地验证证书。

其中,所述方法还包括:如果所述证书测试库包括的所有证书各自的所述第一验证结果和所述第二验证结果与所述证书测试库包括的所有证书各自的所述有效性指示一致,则确定所述指定的实现能正确地验证证书。

其中,所述指定的实现是遵循ssl协议或tsl协议的实现。

按照本发明实施例的一种用于测试的装置,包括:提取模块,用于从证书测试库中提取pki的证书和该证书的表明其有效或无效的有效性指示;第一验证模块,用于利用指定的具有对pki的证书进行验证的功能的实现中的客户端侧实现来对所提取的证书进行有效性验证,以获得所提取的证书的第一验证结果;第二验证模块,利用所述指定的实现中的服务器侧实现来对所提取的证书进行有效性验证,以获得所提取的证书的第二验证结果;以及,确定模块,用于如果所提取的证书的所述第一验证结果和/或所述第二验证结果与所提取的有效性指示不一致,则确定所述指定的实现不能正确地验证证书。

其中,所述确定模块还用于:如果所述证书测试库包括的所有证书各自的所述第一验证结果和所述第二验证结果与所述证书测试库包括的所有证书各自的所述有效性指示一致,则确定所述指定的实现能正确地验证证书。

其中,所述指定的实现是遵循ssl协议或tsl协议的实现。

从以上的描述可以看出,本发明实施例的方案在测试具有对pki的证书进行验证的功能的实现能否正确地验证证书时,不但测试具有对pki的证书 进行验证的功能的实现中的服务器侧实现能否正确地验证证书,而且也测试具有对pki的证书进行验证的功能的实现中的客户端侧实现能否正确地验证证书,从而,与现有技术相比,本发明实施例的方案能够准确地测试具有对pki的证书进行验证的功能的实现能否正确地验证证书。

附图说明

本发明的其它特征、特点、优点和益处通过以下结合附图的详细描述将变得更加显而易见。其中:

图1示出了按照本发明的一个实施例的用于测试的方法的流程图。

图2示出了按照本发明的另一个实施例的用于测试的方法的流程图。

图3示出了按照本发明的一个实施例的用于测试的装置的示意图。

图4示出了按照本发明的一个实施例的用于测试的设备的示意图。

具体实施方式

下面,将参照附图详细描述本发明的各个实施例。

现在参见图1,其示出了按照本发明的一个实施例的用于测试的方法的流程图。图1所示的方法100可以由具有计算能力的任何设备(例如但不局限于,台式计算机、笔记本电脑、服务器等)来实现。

如图1所示,在步骤s102,从证书测试库d中提取一个证书和该证书的表明其有效或无效的有效性指示。这里,证书测试库d包括多个pki的证书和每一个证书的表明其有效或无效的有效性指示。

在步骤s104,利用待测试的ssl/tls实现p中的服务器侧实现对所提取的证书进行有效性验证,以获取所提取的证书的第一验证结果。显然,该第一验证结果将表明所提取的证书有效或无效。

在步骤s106,利用ssl/tls实现p中的客户端侧实现对所提取的证书进行有效性验证,以获取所提取的证书的第二验证结果。显然,该第二验证结果将表明所提取的证书有效或无效。

在步骤s108,判断第一验证结果和第二验证结果与所提取的有效性指示是否一致。

在步骤s110,如果步骤108的判断结果为否定,即第一验证结果和/或第二验证结果与所提取有效性指示不一致,则确定待测试的ssl/tls实现p不能正确地验证证书。例如,如果所提取的有效性指示表明所提取的证书无效,但第一验证结果表明所提取的证书有效和/或第二验证结果表明所提取的证书有效,则确定待测试的ssl/tls实现p不能正确地验证证书。又例如,如果所提取的有效性指示表明所提取的证书有效,但第一验证结果表明所提取的证书无效和/或第二验证结果表明所提取的证书无效,则确定待测试的ssl/tls实现p不能正确地验证证书,然后方法100结束。

在步骤s112,如果步骤108的判断结果为肯定,即第一验证结果和第二验证结果都与所提取有效性指示一致,则进一步判断证书测试库d中是否存在仍未被提取过的证书。

在步骤s114,如果步骤112的判断结果为肯定,即证书测试库d中存在仍未被提取过的证书,则从证书测试库d的仍未被提取过的证书中提取一个证书,然后方法100返回步骤s104。

在步骤s116,如果步骤112的判断结果为否定,即证书测试库d中不存在仍未被提取过的证书,则确定待测试的ssl/tls实现p能正确地验证证书,然后方法100结束。

显然,如果方法100能进行到步骤s116,则表明证书测试库d包括的所有证书各自的第一验证结果和第二验证结果与证书测试库d包括的所有证书各自的有效性指示一致,因此,待测试的ssl/tls实现p能正确地验证证书是显而易见的。

从以上的描述可以看出,本发明实施例的方案在测试ssl/tls实现能否正确地验证证书时,不但测试ssl/tls实现中的服务器侧实现能否正确地验证证书,而且也测试ssl/tls实现中的客户端侧实现能否正确地验证证书,从而,与现有技术相比,本发明实施例的方案能够准确地测试ssl/tls实现能否正确地验证证书。

其他变型

本领域技术人员应当理解,虽然在上面的实施例中,待测试的实现是ssl/tls实现,然而,本发明并不局限于此。在本发明的其它一些实施例中, 待测试的实现可以是包括在ssl/tls实现内的具有对pki的证书进行验证的功能的任何实现。

现在参见图2,其示出了按照本发明的另一实施例的用于测试的方法的流程图。图2所示的方法200可以由具有计算能力的任何设备来实现。

如图2所示,方法200可以包括步骤s202、步骤s204、步骤s206和步骤s208。在步骤s202,从证书测试库中提取pki的证书和该证书的表明其有效或无效的有效性指示。在步骤s204,利用指定的具有对pki的证书进行验证的功能的实现中的客户端侧实现来对所提取的证书进行有效性验证,以获得所提取的证书的第一验证结果。在步骤s206,利用所述指定的实现中的服务器侧实现来对所提取的证书进行有效性验证,以获得所提取的证书的第二验证结果。在步骤s208,如果所提取的证书的所述第一验证结果和/或所述第二验证结果与所提取的有效性指示不一致,则确定所述指定的实现不能正确地验证证书。

在一个方面,方法200还可以包括步骤s210。在步骤s210,如果所述证书测试库包括的所有证书各自的所述第一验证结果和所述第二验证结果与所述证书测试库包括的所有证书各自的所述有效性指示一致,则确定所述指定的实现能正确地验证证书。

在另一个方面,所述指定的实现是遵循ssl协议或tsl协议的实现。

现在参见图3,其示出了按照本发明的一个实施例的用于测试的装置的示意图。图3所示的装置300可以利用软件、硬件(例如集成电路或dsp等)或软硬件结合的方式来实现。

图3所示,装置300可以包括提取模块302、第一验证模块304、第二验证模块306和确定模块308。提取模块302用于从证书测试库中提取pki的证书和该证书的表明其有效或无效的有效性指示。第一验证模块304用于利用指定的具有对pki的证书进行验证的功能的实现中的客户端侧实现来对所提取的证书进行有效性验证,以获得所提取的证书的第一验证结果。第二验证模块306利用所述指定的实现中的服务器侧实现来对所提取的证书进行有效性验证,以获得所提取的证书的第二验证结果。确定模块308用于如果所提取的证书的所述第一验证结果和/或所述第二验证结果与所提 取的有效性指示不一致,则确定所述指定的实现不能正确地验证证书。

在一个方面,确定模块308还用于:如果所述证书测试库包括的所有证书各自的所述第一验证结果和所述第二验证结果与所述证书测试库包括的所有证书各自的所述有效性指示一致,则确定所述指定的实现能正确地验证证书。

在另一个方面,所述指定的实现是遵循ssl协议或tsl协议的实现。

现在参见图4,其示出了按照本发明一个实施例的用于测试的设备的示意图。如图4所示,用于测试的设备400可以包括用于存储可执行指令的存储器410和与存储器410连接的处理器420,其中,处理器420可以执行图2所示的方法200所包括的各个步骤。

本发明的实施例还提供一种种计算机程序产品,包括机器可读介质,其上存储有可执行指令,当该可执行指令被执行时,使得机器执行图2所示的方法200所包括的各个步骤。

本领域技术人员应当理解,上面公开的各个实施例可以在不偏离发明实质的情况下做出各种变形和修改。因此,本发明的保护范围应当由所附的权利要求书来限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1