SSL协议应用测试规范(GB-T 28457-2012).docx
《SSL协议应用测试规范(GB-T 28457-2012).docx》由会员分享,可在线阅读,更多相关《SSL协议应用测试规范(GB-T 28457-2012).docx(65页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、ICS35.040L80中华人民共和国国家标准GB/T XXXXXXXXXSSL协议应用测试规范Testing Specification for Applications of SSL Protocol (本稿完成日期:2011.08.17)XXXX - XX - XX发布XXXX - XX - XX实施GB/T XXXX目次前言III引言IV1范围12规范性引用文件13术语和定义13.114缩略语25测试相关说明35.1测试对象说明35.2测试内容说明35.3测试环境说明36测试内容规范46.1匿名会话模式测试内容46.1.1功能测试46.1.2性能测试96.1.3健壮性测试96.1.4互
2、操作性测试96.2服务器验证会话模式测试内容106.2.1功能测试106.2.2性能测试126.2.3健壮性测试126.2.4互操作性测试126.3双方验证会话模式测试内容126.3.1功能测试126.3.2性能测试156.3.3健壮性测试156.3.4互操作性测试156.4重用会话模式测试内容166.4.1功能测试166.4.2性能测试内容186.4.3健壮性测试内容186.4.4功能互操作性测试187测试步骤指南187.1匿名会话模式测试步骤197.1.1功能测试197.1.2性能测试277.1.3健壮性测试287.1.4互操作性测试297.2服务器验证会话模式测试步骤297.2.1功能测
3、试297.2.2性能测试337.2.3健壮性测试337.2.4互操作性测试337.3双方验证会话模式测试步骤337.3.1功能测试337.3.2性能测试397.3.3健壮性测试397.3.4互操作性测试397.4重用会话模式测试步骤397.4.1功能测试397.4.2性能测试447.4.3健壮性测试447.4.4功能互操作性测试44附录A(资料性附录)SSL协议规范说明45参考文献60图1SSL协议应用测试基本环境4图A.1匿名会话模式消息流46图A.2匿名会话模式下SSL客户端行为状态图47图A.3匿名会话模式下SSL服务器行为状态图47图A.4服务器验证会话模式消息流48图A.5服务器验证
4、会话模式下SSL客户端行为状态图48图A.6服务器验证会话模式下SSL服务器行为状态图49图A.7双方验证会话模式消息流49图A.8双方验证模式下SSL客户端行为状态图50图A.9双方验证模式下SSL服务器行为状态图50图A.10重用会话模式消息流51图A.11重用会话模式下SSL客户端行为状态图51图A.12重用会话模式下SSL服务器行为状态图52前言本标准依据GB/T 1.1-2009给出的规则起草。请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别这些专利的责任。本标准由全国信息安全标准化技术委员会(SAC/TC260)提出并归口。本标准的起草单位:信息工程大学信息工程学院。
5、本标准的主要起草人:颜学雄、王清贤、曾勇军、刘琰、耿俊燕、尹中旭。引言目前,市场上SSL协议应用相关产品比较多,为了保证相关产品的质量,需对其进行测试。为统一产品的开发方、第三方授权测试认证单位和产品用户方对SSL协议应用相关产品的测试活动,并便于实现测试结果的相互认可和可重复性,特制定本标准。本标准规范了SSL协议应用相关产品的测试内容和基本测试过程。为消除自然语言描述带来的二义性,本标准以有限状态自动机理论为基础,建立了SSL协议规范的形式化模型,并由此模型生成SSL协议应用的功能测试规范。相应的形式化模型见附录A。目前,还没有标准化的SSL协议应用测试工具。本标准没有规范具体的测试工具和
6、测试环境,但为了规范测试人员的测试活动,本标准给出了测试指南,旨在规范测试基本步骤和关键要点,测试人员可以在此基础上,选择相关的辅助工具,产生具体的测试用例,并进行测试。60SSL协议应用测试规范1 范围本标准规定了SSL协议应用的测试内容和基本测试步骤。本标准适用于SSL协议应用的开发单位、第三方授权测试认证机构、用户等对SSL协议应用的测试。2 规范性引用文件下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅所注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。GB/T 5271.8-2001 信息技术 词汇 第8部分 安全GB/T 1
7、7178.1-1997 信息技术 开放系统互连 一致性测试方法和框架 第1部分:基本概念3 术语和定义GB/T 5271.8界定的以及下列术语和定义适用于本文件。3.1SSL协议 Secure Sockets Layer Protocol一种应用于传输层的安全协议,用于构建客户端和服务器之间的安全通道,它提供保密性、完整性和可选的身份鉴别等安全功能。3.2SSL协议应用 application of the SSL protocol按照SSL协议规范标准实现的产品或功能模块。3.3客户端 client主动发出SSL协议连接请求的通信方。3.4服务器 server接收SSL协议连接请求的通信方。
8、3.5功能测试 function testing测试SSL协议应用的基本功能,包括基本连通测试、安全功能测试和行为测试。3.6性能测试 performance testing测试在不同的网络负载情况下SSL协议应用的性能参数。3.7互操作性测试 interoperability testing测试不同SSL协议应用之间的互操作能力。3.8健壮性 robustness健壮性是描述一个系统或者一个组件在无效数据输入或者在高强度输入等环境下,其各项功能可保持正确运行的程度。3.9健壮性测试 robustness testing测试SSL协议应用对错误(包括无效的、非期望输入或者恶意攻击)的有效处理能
9、力。3.10基本连通测试 basic interconnection testing测试SSL协议应用的基本连通的情况。3.11行为测试 behaviour testing测试SSL协议应用的动态行为的符合性,包括正确输入行为符合性测试和非正确输入行为符合性测试。3.12连接建立时延 connection established delay准备数据通信前的协商过程所需要的时间。3.13传送时延transmission delay数据从一方传送到另一方所需要的时间。3.14连接拆除时延 connection released delay连接拆除所需要的时间。包括两种类型,一是客户端完成服务后,请
10、求连接拆除的时延,二是服务器主动连接拆除的时延。3.15吞吐量 throughput丢包率为零的情况下,单位时间内传输有效数据的数量。3.16剩余错误比率 residual error ratio在给定的时间间隔内,传送不正确、丢失或者重复的数据量和传输正确的数据量之比。3.17失败概率 probability of failure包括连接建立失败概率、传送失败概率以及连接拆除失败概率等。3.18新建连接 new connectionsSSL协议服务器每秒钟能够建立的SSL连接数。3.19并发连接数 max connectionsSSL服务器能够同时处理的最大SSL连接数。4 缩略语下列缩略语
11、适用于本文件。SSL 安全套接层协议 Secure Sockets LayerTLS 传输层安全协议 Transport Layer SecurityMAC 消息鉴别码 Message Authentication CodeID 会话标识 IDentityCA 证书认证机构 Certificate Authority5 测试相关说明5.1 测试对象说明SSL协议应用是指按照SSL协议规范标准实现的产品或功能模块。本标准涉及到的SSL协议版本包括SSL3.01、TLS1.0(SSL3.1)2,3和TLS1.14,5。SSL协议规范标准是以本标准涉及到的SSL协议版本为基础,规范了SSL协议应用应
12、符合的安全服务功能规范、SSL会话模式规范和SSL消息格式规范,详细说明参见附录A SSL协议规范说明。5.2 测试内容说明本标准规范SSL协议应用的测试内容,包括功能测试、性能测试、健壮性测试和互操作性测试。功能测试包括基本连通测试、安全功能测试和行为测试。基本连通测试完成SSL协议应用的基本连通情况测试,它是后续其它测试的基础,如果本项测试失败,则其它测试无法进行;安全功能测试包括密码算法协商功能测试、身份鉴别功能测试、数据保密性保护功能测试和数据完整性保护功能测试,安全功能中涉及到的密码算法应符合国家密码管理的相关规定和要求;为保证各项安全功能的有效性,SSL协议应用的动态行为必须符合规
13、范要求,行为测试完成SSL协议应用的动态行为的符合性测试,包括正确输入行为符合性测试和非正确输入符合性测试。性能测试完成不同网络负载情况下,SSL协议应用的性能参数测试,包括连接建立时间、传送时延、连接拆除时间、吞吐量、剩余错误比率、失败概率、新建连接数和并发连接数。健壮性是描述一个系统或者组件在无效数据输入或高强度输入等环境下,其各项功能可保持正确运行的程度。SSL协议应用属于安全产品,其健壮性对于其安全功能的有效性至关重要。健壮性测试完成SSL协议应用对错误的有效处理能力,包括无效报文处理能力、异常事件处理能力和高强度负载处理能力。互操作性测试完成不同厂家SSL协议应用间的互操作能力测试,
14、包括基本连通互操性作测试和安全功能互操作测试。基本连通互操作性测试内容和功能测试中的基本连通测试内容一样,安全功能互操作性测试和功能测试中的安全功能测试内容一样。它们之间的区别在于,功能测试是SSL协议应用和测试系统之间的交互,而互操作性测试是不同的SSL协议应用间的交互(参见5.3 测试环境说明的内容),同时对于错误的判别方法有所不同。本标准中,对于互操作性测试的相关内容不重复描述,测试人员可参照相关内容完成互操作性测试。5.3 测试环境说明虽然SSL协议应用测试不依赖于特定的测试工具,但是为规范测试人员的测试活动,本标准推荐采用GB/T17178.1-1997中的远程测试方法,并依照此方法
15、给出了测试步骤指南。其目的在于规范测试基本步骤和关键要点,测试人员可在此基础上,选择相关的测试辅助工具,产生具体的测试用例,并进行测试。SSL协议应用测试基本环境如图1所示。当进行功能测试和健壮性测试时,被测对象1或被测对象2可能是SSL协议应用的客户端或服务器,测试系统和被测对象进行消息交互,通过对消息的判别,完成各项功能测试。当进行性能测试时候,被测对象1和被测对象2,分别对应被测SSL协议应用的客户端和服务器,通过对客户端和服务器交互消息的判别和统计,完成各项性能测试。图1 SSL协议应用测试基本环境当进行互操作性测试时,被测对象1和被对象2分别是不同厂家实现的SSL协议产品的客户端和服
16、务器,通过分析客户端和服务器的消息交互,完成各项互操作性测试。6 测试内容规范6.1 匿名会话模式测试内容6.1.1 功能测试6.1.1.1 基本连通测试测试SSL协议应用在匿名会话模式下,客户端和服务器间的基本连通能力。6.1.1.2 安全功能测试测试内容如下:a) 密码协商功能:1) 密码算法协商:协商会话两端共用的密钥交换算法、加密算法和MAC算法,这些算法必须在线完成协商;2) 共享密钥协商:根据协商的密钥交换算法,会话两端完成共享密钥的协商;b) 数据保密性保护功能:客户端和服务器能够应用协商好的加密算法以及共享密钥对传输的数据加密,以保护数据的保密性;c) 数据完整性保护功能:客户
17、端和服务器能够应用协商好的MAC算法以及共享密钥对传输的数据进行完整性保护。6.1.1.3 客户端行为测试在匿名会话模式下,客户端行为状态参见图A.2,其行为测试的内容包括:a) 初始状态在接收HelloRequest*消息的条件下,或者在未接收任何消息的条件下,发送ClientHello消息。HelloRequest消息和ClientHello消息应符合规范要求。除了接收HelloRequest消息外,忽略其它一切可能接收到的消息。b) 握手状态应依次接收ServerHello消息、ServerKeyExchange*消息、ServerHelloDone消息,中间不应有其它任何消息,消息格式
18、应符合规范要求。然后,应依次发送ClientKeyExchange消息、ChangeCipherSpec消息和客户端Finished消息,消息格式应符合规范要求。如果是其它情况,则可发送有关的警报协议消息,消息格式应符合规范要求。可能的处理情况和发送的警报协议消息如下:1) unexpected_message:应依次接收ServerHello消息、ServerKeyExchange*消息、ServerHelloDone消息,如果是其它的非警报协议消息或者其它的次序,则发送unexpected_message警报协议消息,并关闭当前连接。2) illegal_parameter:接收到的Ser
19、verHello消息、ServerKeyExchange*消息、ServerHelloDone消息中的任意一个域的值超过了规定的值,则发送illegal_parameter警报协议消息,并关闭当前连接。3) record_overflow:接收到的数据长度,超过了规定的长度,则发送record_overflow警报协议消息,并关闭当前连接。该情况处理方式出现在SSL3.1/TLS1.0及以后版本。4) decode_error:在握手状态下,对接收到的任何消息,如果解码失败,则发送decode_error警报协议消息,并关闭当前连接。该情况处理方式出现在SSL3.1/TLS1.0及以后版本。5
20、) protocol_version:对接收到的任何消息,如果版本号不是规范中要求的,则发送protocol_version警报协议消息,并关闭当前连接。该情况处理方式出现在SSL3.1/TLS1.0及以后版本。6) internal_error:如果处理过程中出现了内部错误(如内存分配失败),则发送internal_error警报协议消息,并关闭当前连接。该情况处理方式出现在SSL3.1/TLS1.0及以后版本。7) 接收服务器警报消息:接收到服务器发送过来的警报协议消息,则关闭当前连接。c) 密钥交换状态应依次接收ChangeCipherSpec消息、服务器Finished消息,中间不应有
21、其它消息,消息格式应符合规范要求。此时,客户端可发送应用数据消息,消息格式应符合规范要求。如果是其它情况,则可发送有关的警报协议消息,消息格式应符合规范要求。可能的处理情况和发送的警报协议消息如下:1) unexpected_message:应依次接收ChangeCipherSpec消息、服务器Finished消息,如果是其它的非警报协议消息或者其它的次序,则发送unexpected_message警报协议消息,并关闭当前连接。2) bad_record_mac:处理服务器Finished消息时,MAC验证失败,则发送bad_record_mac警报协议消息,并关闭当前连接。3) decomp
22、ression_failure:处理服务器Finished消息时,如果使用了压缩处理,并且消息解压缩失败,则发送decompression_failure警报协议消息,并关闭当前连接。4) illegal_parameter:接收到的ChangeCipherSpec消息、服务器Finished消息中的任意一个域的值超过了规定的值,则发送illegal_parameter警报协议消息,并关闭当前连接。5) decryption_failed:处理服务器Finished消息时,解密出来的数据不符合密码算法的要求(如数据的长度不是某数的整数倍,或者填充的数据的值不符合要求),则发送decryptio
23、n_failed警报协议消息,并关闭当前连接。该情况处理方式出现在SSL3.1/TLS1.0及以后版本。6) record_overflow:接收到的数据长度,超过了规定的长度,则发送record_overflow警报协议消息,并关闭当前连接。该情况处理方式出现在SSL3.1/TLS1.0及以后版本。7) decode_error:对接收到的任何消息,如果解码失败,则发送decode_error警报协议消息,并关闭当前连接。该情况处理方式出现在SSL3.1/TLS1.0及以后版本。8) decrypt_error:处理服务器Finished消息时,验证签名过程或者数据解密中出现错误,则发送de
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SSL协议应用测试规范GB-T 28457-2012 SSL 协议 应用 测试 规范 GB 28457 2012
限制150内