GM/T 0063-2018 智能密码钥匙密码应用接口检测规范

GM/T 0063-2018 Cryptography application interface test specification for cryptographic smart token

行业标准-密码 中文简体 现行 页数:48页 | 格式:PDF

基本信息

标准号
GM/T 0063-2018
相关服务
标准类型
行业标准-密码
标准状态
现行
中国标准分类号(CCS)
国际标准分类号(ICS)
发布日期
2018-08-20
实施日期
2018-08-20
发布单位/组织
国家密码管理局
归口单位
密码行业标准化技术委员会
适用范围
本标准规定了智能密码钥匙密码应用接口检测环境、检测内容和检测方法。
本标准适用于智能密码钥匙密码应用接口检测,也可用于指导智能密码钥匙的研制和使用。
可选服务
1,提供正版标准批量采购服务,为企业合规性保驾护航,提供标准文件翻译服务,专家翻译,权威可靠
2,标准数据定制化,可定制企业云端标准数据库,为企业提供标准查询下载以及更新推送服务,实时了解标准时效更新动态
3,标准时效性核查服务,依托最新最全的标准数据库为您提供在线标准时效性核查服务,并开具权威性的标准时效性核查报告(点击查看详情
4,服务定制咨询联系电话:15102855502(微信同号),QQ:469517676

发布历史

文前页预览

GM/T 0063-2018 智能密码钥匙密码应用接口检测规范-第1页
GM/T 0063-2018 智能密码钥匙密码应用接口检测规范-第2页
GM/T 0063-2018 智能密码钥匙密码应用接口检测规范-第3页

研制信息

起草单位:
深圳市文鼎创数据科技有限公司、国家密码管理局商用密码检测中心、北京握奇智能科技有限公司、天地融科技股份有限公司、飞天诚信科技股份有限公司
起草人:
刘伟丰、周国良、吴玲玲、伍友良、董静、李大为、罗鹏、汪雪林、张渊、李勃、牟宁波、李成伟、朱鹏飞、莫凡
出版信息:
页数:48页 | 字数:89 千字 | 开本: 大16开

内容描述

犐犆犛35.040

犔80

GM/T0063—2018

智能密码钥匙密码应用接口检测

规范

Cryptographyapplicationinterfacetestspecificationfor

cryptographicsmarttoken

2018-09-18发布809-18实施

201-

GM/T0063—2018

目次

前言II

1范围1

2规范性引用文件1

3术语和定义1

4缩略语3

5送检材料说明3

6检测环境4

6.1检测环境拓扑图4

6.2检测仪器4

6.3检测软件4

7检测内容5

7.1应用功能检测5

7.2接口功能检测5

7.3安全性检测5

7.4兼容性检测5

7.5互操作性检测5

8检测方法6

8.1应用功能检测6

8.2接口功能检测10

8.3安全性检测39

8.4兼容性检测43

8.5互操作性检测44

I

GM/T0063—2018

前言

本标准依据GB/T1.1-2009给出的规则起草。

请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别这些专利的责任。

本标准由密码行业标准化技术委员会提出并归口。

本标准起草单位:深圳市文鼎创数据科技有限公司、国家密码管理局商用密码检测中心、

北京握奇智能科技有限公司、天地融科技股份有限公司、飞天诚信科技股份有限公司。

本标准主要起草人:刘伟丰、周国良、吴玲玲、伍友良、董静、李大为、罗鹏、汪雪林、

张渊、李勃、牟宁波、李成伟、朱鹏飞、莫凡。

II

GM/T0063—2018

智能密码钥匙密码应用接口检测规范

1范围

本标准规定了智能密码钥匙密码应用接口检测环境、检测内容和检测方法。

本标准适用于智能密码钥匙密码应用接口检测,也可用于指导智能密码钥匙的研制和使

用。

2规范性引用文件

下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适

用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。

GB/T25064-2010信息安全技术公钥基础设施电子签名格式规范

GB/T32905-2016信息安全技术SM3密码杂凑算法

GB/T32907-2016信息安全技术SM4分组密码算法

GB/T32915-2016信息安全技术二元序列随机性检测规范

GB/T32918-2016信息安全技术SM2椭圆曲线公钥密码算法

GB/T33560-2017信息安全技术密码应用标识规范

GB/T35275-2017信息安全技术SM2密码算法加密签名消息语法规范

GB/T35276-2017信息安全技术SM2密码算法使用规范

GB/T35291-2017信息安全技术智能密码钥匙应用接口规范

GM/T0014-2012数字证书认证系统密码协议规范

GM/T0015-2012基于SM2密码算法的数字证书格式规范

GM/T0017-2012智能密码钥匙密码应用接口数据格式规范

GM/T0027-2014智能密码钥匙技术规范

GM/T0031-2014安全电子签章密码应用技术规范

3术语和定义

下列术语和定义适用于本文件。

3.1

容器container

密码设备中用于保存密钥和证书所划分的唯一性存储空间。

3.2

应用application

包括容器和文件的一种结构,具备独立的权限管理。

3.3

设备device

本标准中将智能密码钥匙统称为设备。

1

GM/T0063—2018

3.4

设备认证deviceauthentication

应用程序对智能密码钥匙的认证。

3.5

设备标签devicelabel

设备的别名,可以由用户进行设定并存储于设备内部。

3.6

消息鉴别码messageauthenticationcode

又称消息认证码,是消息鉴别算法的输出。

3.7

管理员PINadministratorPIN

管理员的PIN,为ASCII字符串。

3.8

用户PINuserPIN

用户的PIN,为ASCII字符串。

3.9

SM2算法SM2algorithm

由GB/T32918定义的一种公钥密码算法。

3.10

SM3算法SM3algorithm

由GB/T32905定义的一种密码杂凑算法。

3.11

SM4算法SM4algorithm

由GB/T32907定义的一种分组密码算法。

3.12

验证设备verifyequipment

用于密码算法基准运算的检测仪器或设备。

3.13

参考数据referencedata

用于判断密码算法实现正确性的一组数据,包括源数据和目标数据。

3.14

RSA算法Rivest-Shamir-Adlemanalgorithm(RSA)

一种基于大整数因子分解问题的公钥密码算法。

2

GM/T0063—2018

4缩略语

下列缩略语适用于本文件。

IDIdentifier标识符

MACMessageAuthenticationCode消息鉴别码

PINPersonalIdentificationNumber个人身份识别码

RARegistrationAuthority数字证书注册中心

5送检材料说明

表1列出了送检厂商按照国家密码管理主管部门检测要求提交相关文档资料,文档资料

应包含但不限于以下内容。

表1送检材料说明

类别说明

设备(硬件)适配库文件的设备不少于声明所支持的最大设备数目的两倍。

软件工具包含检测接口库文件的智能密码钥匙产品安装包。

1.送检厂商名称、固定设备信息和支持算法等相关信息。

2.待测接口库名称和版本号,设备检测依赖的操作系统版本。

《资料总体说明》3.提交的文档资料和工具清单。

4.送检样品的初始PIN码。

5.必要的操作说明和注意事项。

以结构图的形式,说明整个产品的框架结构,包括产品的各子系统的构成、

《技术工作总结报告》

各子系统的功能和各子系统的实现原理,并附以详细的文字说明。

《不存在隐式通道的声明》送检厂商应提供产品中涉及密码的部分不存在隐式通道的声明文件。

《密码自测试或自评估报告》送检厂商应提供检测接口库文件的自测试或自评估报告。

1.资料与送检样品一致性说明:所有提交的受测件样品硬件在技术指

标、安全功能、实际使用指令参数上应与技术资料中文本描述一致;

软件工具在使用方法、算法实现过程上应与技术资料中文本描述一

特别说明

致。

2.送检厂商不予提供或认为不必要提供的资料和工具应在上述说明文

件中逐项加以说明。

3

GM/T0063—2018

6检测环境

6.1检测环境拓扑图

智能密码钥匙密码应用接口检测环境参考拓扑图,如图1所示:

图1智能密码钥匙密码应用接口检测环境参考拓扑图

6.2检测仪器

检测仪器应符合适用的国家及行业标准,检测仪器名称见表2所示:

表2检测仪器列表

仪器名称备注

客户端用于运行操作系统及检测平台客户端软件

服务端用于运行操作系统及检测平台服务端

用户身份认证设备用于认证用户身份

6.3检测软件

检测软件应符合适用的国家及行业标准,检测软件名称见表3所示:

表3检测软件列表

软件名称备注

检测平台软件用于执行检测的软件工具

操作系统用于运行检测平台软件的操作系统

4

GM/T0063—2018

7检测内容

7.1应用功能检测

智能密码钥匙应用功能检测的目的是检测密码应用接口在典型应用场景下的适用性。

应用功能检测的检测内容包括:

——证书申请

——证书下载

——证书更新

——证书导入

——数字签名

——数字信封生成

——数字信封解封

7.2接口功能检测

智能密码钥匙密码应用接口功能检测的目的是检测密码应用接口实现和运行的正确

性。功能检测的检测内容包括:

——设备管理

——访问控制

——应用管理

——文件管理

——容器管理

——密码服务

7.3安全性检测

智能密码钥匙安全性检测的目的是检测智能密码钥匙应用接口在设计和实现过程中

的安全性。安全性检测的检测内容包括:

——权限分类

——权限使用

——设备认证

——PIN码安全要求

——密钥安全要求

——随机数安全要求

7.4兼容性检测

智能密码钥匙兼容性检测的目的是检测智能密码钥匙在不同系统下应用接口是否能

正常使用。兼容性检测的检测内容包括:

——系统兼容性

——交错兼容性

7.5互操作性检测

智能密码钥匙互操作性检测的目的是检测智能密码钥匙与其他样品的互操作性。

5

GM/T0063—2018

8检测方法

8.1应用功能检测

8.1.1证书申请

检测目的:

检测智能密码钥匙应用接口实现是否支持GM/T0014规定的客户端与RA之间的证书

申请协议。

检测条件:

设备已连接,预定应用已打开,预定容器已存在。

检测过程:

a)SM2证书申请

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_OpenContainer接口打开预定容器;

步骤3.调用SKF_VerifyPIN接口验证用户PIN;

步骤4.调用SKF_GenECCKeyPair接口,在预定容器生成SM2签名密钥对;

步骤5.调用SKF_ExportPublicKey接口导出SM2签名密钥对的公钥;

步骤6.调用SKF_ECCSignData接口计算签名。输入数据为待签数据根据GB/T

35276经过SM2签名预处理的结果。待签数据为GM/T0014规定的

CertReqMessages消息,其中publicKey字段为步骤5所导出的公钥。

b)RSA证书申请

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_OpenContainer接口打开预定容器;

步骤3.调用SKF_VerifyPIN接口验证用户PIN;

步骤4.调用SKF_GenRSAKeyPair接口,在预定容器生成RSA签名密钥对,密钥

长度不少于2048位;

步骤5.调用SKF_ExportPublicKey接口导出RSA签名密钥对的公钥;

步骤6.调用SKF_RSASignData接口计算签名。输入数据为GM/T0014规定的

CertReqMessages消息,其中publicKey字段为步骤5所导出的公钥。

通过标准:

能够得到签名。

8.1.2证书下载

检测目的:

检测智能密码钥匙应用接口实现是否支持GM/T0014规定的客户端与RA之间的证书

下载协议。

检测条件:

设备已连接,预定应用已打开,预定容器中存在签名密钥对。

检测过程:

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_OpenContainer接口打开预定容器;

步骤3.调用SKF_VerifyPIN接口验证用户PIN;

步骤4.调用SKF_ImportCertificate接口,向预定容器导入数字证书。数字证书

包含预定容器中的签名公钥,格式应符合GM/T0015;

6

GM/T0063—2018

步骤5.调用SKF_ExportCertificate接口,从预定容器导出数字证书。

通过标准:

步骤5导出的数字证书与步骤4导入的数字证书相同。

8.1.3证书更新

检测目的:

检测智能密码钥匙应用接口实现是否支持证书更新。

检测条件:

设备已连接,预定应用已打开,预定容器中存在签名密钥对。

检测过程:

a)SM2证书更新

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_VerifyPIN接口验证用户PIN;

步骤3.调用SKF_CreateContainer接口,在预定应用创建容器;

步骤4.调用SKF_GenECCKeyPair接口,在步骤3所创建的容器生成SM2签名密

钥对;

步骤5.调用SKF_ExportPublicKey接口导出步骤4所生成的SM2签名密钥对的

公钥;

步骤6.调用SKF_OpenContainer接口打开预定容器;

步骤7.调用SKF_ECCSignData接口,使用预定容器的签名密钥对计算签名。输

入数据为待签数据根据GB/T35276经过SM2签名预处理的结果。待签

数据为GM/T0014规定的CertReqMessages消息,其中publicKey字段

为步骤5所导出的公钥。

b)RSA证书更新

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_VerifyPIN接口验证用户PIN;

步骤3.调用SKF_CreateContainer接口,在预定应用创建容器;

步骤4.调用SKF_GenRSAKeyPair接口,在步骤3所创建的容器生成RSA签名密

钥对,密钥长度不少于2048位;

步骤5.调用SKF_ExportPublicKey接口导出步骤4所生成的RSA签名密钥对的

公钥,公钥长度不少于2048位;

步骤6.调用SKF_OpenContainer接口打开预定容器;

步骤7.调用SKF_RSASignData接口计算签名。输入数据为GM/T0014规定的

CertReqMessages消息,其中publicKey字段为步骤5所导出的公钥。

通过标准:

能够得到签名。

8.1.4证书导入

检测目的:

检测智能密码钥匙应用接口实现是否支持数字证书导入。

检测条件:

设备已连接,预定应用已打开,预定容器中存在签名密钥对。

检测过程:

a)SM2加密证书导入

7

GM/T0063—2018

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_OpenContainer接口打开预定容器;

步骤3.调用SKF_VerifyPIN接口验证用户PIN;

步骤4.调SKF_ImportECCKeyPair接口在预定容器导入SM2加密密钥对,数据

应符合GB/T35291;

步骤5.调用SKF_ImportCertificate接口,向预定容器导入加密数字证书。数

字证书包含预定容器中的加密公钥,格式应符合GM/T0015。

b)SM2签名证书导入

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_OpenContainer接口打开预定容器;

步骤3.调用SKF_VerifyPIN接口验证用户PIN;

步骤4.调用SKF_ImportCertificate接口,向预定容器导入签名数字证书。数

字证书包含预定容器中的签名公钥,格式应符合GM/T0015。

c)RSA加密证书导入

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_OpenContainer接口打开预定容器;

步骤3.调用SKF_VerifyPIN接口验证用户PIN;

步骤4.调SKF_ImportRSAKeyPair接口在预定容器导入RSA加密密钥对,密钥

长度不少于2048位;

步骤5.调用SKF_ImportCertificate接口,向预定容器导入加密数字证书。数

字证书包含预定容器中的加密公钥,格式应符合GB/T25064。

d)RSA签名证书导入

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_OpenContainer接口打开预定容器;

步骤3.调用SKF_VerifyPIN接口验证用户PIN;

步骤4.调用SKF_ImportCertificate接口,向预定容器导入签名数字证书。数

字证书包含预定容器中的签名公钥,格式应符合GB/T25064。

通过标准:

从预定容器导出数字证书,能够导出数字证书和相匹配的公钥,所导出的数字证书

与导入的数字证书相同。

8.1.5数字签名

检测目的:

检测智能密码钥匙应用接口实现是否支持GM/T0031规定的电子签章应用。

检测条件:

设备已连接,预定应用已打开,预定容器中存在签名密钥对和签名证书。

检测过程:

a)SM2数字签名

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_OpenContainer接口打开预定容器;

步骤3.调用SKF_VerifyPIN接口验证用户PIN;

步骤4.调用SKF_ECCSignData接口,生成电子签章签名值。输入数据为待签数

据根据GB/T35276经过SM2签名预处理的结果。待签数据符合GM/T

8

GM/T0063—2018

0031规定的电子签章数据格式要求,其中包含的数字证书为预定容器

中的签名证书。

b)RSA数字签名

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_OpenContainer接口打开预定容器;

步骤3.调用SKF_VerifyPIN接口验证用户PIN;

步骤4.调用SKF_RSASignData接口,生成电子签章签名值。输入数据符合GM/T

0031规定的电子签章数据格式要求,其中包含的数字证书为预定容器

中的签名证书。

通过标准:

得到电子签章签名值,应遵循GM/T0031打包形成电子签章数据,电子签章数据应能

按照GM/T0031的规定验证通过。

8.1.6数字信封生成

检测目的:

检测智能密码钥匙应用接口实现是否支持生成数字信封。

检测条件:

设备已连接,预定应用已打开,预定容器已存在。

检测过程:

a)SM2数字信封

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_OpenContainer接口打开预定容器;

步骤3.调用SKF_VerifyPIN接口验证用户PIN;

步骤4.调用SKF_ECCExportSessionKey接口,调用时传入预定SM2公钥,加密

会话密钥并导出其密文;

步骤5.调用SKF_EncryptInit接口,进行加密初始化。调用时传入的密钥句柄

为步骤4中输出的密钥句柄;

步骤6.调用SKF_Encrypt接口,对预定数据进行加密。调用时输入的算法标识

应符合GB/T33560的规定;

步骤7.将预定SM2公钥、步骤4中导出的会话密钥、步骤6中输入的算法标识

和输出的加密结果以及其他所需信息按照GB/T35275的规定组成数字

信封。

b)RSA数字信封

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_OpenContainer接口打开预定容器;

步骤3.调用SKF_VerifyPIN接口验证用户PIN;

步骤4.调用SKF_RSAExportSessionKey接口,生成会话密钥并导出。调用时传

入预定RSA公钥;

步骤5.调用SKF_EncryptInit接口,进行加密初始化。调用时传入的密钥句柄

为步骤4中输出的密钥句柄;

步骤6.调用SKF_Encrypt接口,对预定数据进行加密;

步骤7.将预定RSA公钥、步骤4中导出的会话密钥、步骤6中输出的加密结果

以及其他所需信息按照PKCS#7的规定组成数字信封。

通过标准:

9

GM/T0063—2018

得到数字信封且能使用预定私钥解封得到预定数据。

8.1.7数字信封解封

检测目的:

检测智能密码钥匙应用接口实现适用于解封数字信封。

检测条件:

设备已连接,预定应用已打开,预定容器中存在与数字信封对应的加密密钥对。

检测过程:

步骤1.调用SKF_OpenApplication接口打开预定应用;

步骤2.调用SKF_OpenContainer接口打开预定容器;

步骤3.调用SKF_VerifyPIN接口验证用户PIN;

步骤4.调用SKF_ImportSessionKey接口导入会话密钥,输入数据为数字信封中的

RecipientInfo::encryptedKey字段;

步骤5.调用SKF_DecryptInit接口,进行解密初始化。调用时传入的密钥句柄为

步骤4中输出的密钥句柄,算法标识来自数字信封中的

EncryptedContentInfo::contentEncryptionAlgorithm字段;

步骤6.调用SKF_Decrypt接口,对数字信封中的

EncryptedContentInfo::encryptedContent字段解密。

通过标准:

解密结果与预定数据相同。

8.2接口功能检测

8.2.1设备管理

8.2.1.1等待设备插拔事件

检测目的:

检测是否能获取到设备插拔事件和设备名称。

检测条件:

无。

检测过程:

——正常情况检测

步骤1.启动线程,调用SKF_WaitForDevEvent接口;

步骤2.插入设备;

步骤3.拔出设备。

——异常情况检测

使用非法参数调用本接口,应返回错误码。

分配给设备名称所占用空间小于返回数据长度,应返回错误码。

插拔不能被本接口识别的设备不会影响到该接口功能。

通过标准:

正常情况检测步骤2和步骤3均可通过SKF_WaitForDevEvent接口返回正确的设备

名称、名称长度和事件类型。

异常情况检测得到预期结果。

10

GM/T0063—2018

8.2.1.2取消等待设备插拔事件

检测目的:

检测取消等待设备插拔事件功能。

检测条件:

无。

检测过程:

步骤1.在一个进程中创建两个线程A和B;

步骤2.线程A调用SKF_WaitForDevEvent接口,线程A阻塞;

步骤3.线程B调用SKF_CancelWaitForDevEvent接口。

通过标准:

步骤3执行完成后,步骤2中的线程A解除阻塞。

8.2.1.3枚举设备

检测目的:

检测是否能获取当前系统中的设备列表。

检测条件:

无。

检测过程:

——正常情况检测

步骤1.没有插入设备,调用SKF_EnumDev接口,设置bPresent=FALSE,获取

驱动支持的设备名称列表,设备列表总数为N;

步骤2.插入1~N个设备,调用SKF_EnumDev接口,设置bPresent=TRUE,获取

当前已插入的设备名称列表。

——异常情况检测

使用非法参数调用本接口,应返回错误码。

分配给设备名称列表所占用空间小于返回数据长度,应返回错误码。

通过标准:

正常情况检测获取到的设备名称列表与插入的设备信息相符,并且在步骤2中设置

szNameList=NULL时,应能通过pulSize返回所需的内存空间大小。

异常情况检测得到预期结果。

8.2.1.4连接设备

检测目的:

检测接口的连接设备功能。

检测条件:

预定名称的设备已插入。

检测过程:

——正常情况检测

步骤1.调用SKF_ConnectDev接口,连接预定名称的设备;

步骤2.调用SKF_Transmit接口,发送符合GM/T0017的指令;

步骤3.调用SKF_DisconnectDev接口,断开连接;

步骤4.再次执行步骤2。

——异常情况检测

使用非法参数调用本接口,应返回错误码。

11

GM/T0063—2018

通过标准:

正常情况检测步骤2中,返回结果数据应符合GM/T0017的规定;步骤4中

SKF_Transmit接口,返回错误码。

异常情况检测得到预期结果。

8.2.1.5断开连接

检测目的:

检测是否能成功断开一个已经连接的设备,并释放句柄。

检测条件:

无。

检测过程:

——正常情况检测

本检测项作为8.2.1.4、8.2.1.10的一部分进行检测。

——异常情况检测

使用非法参数调用本接口,应返回错误码。

通过标准:

正常情况检测和异常情况检测均得到预期结果。

8.2.1.6获取设备状态

检测目的:

检测接口能否获取设备是否存在的状态。

检测条件:

无。

检测过程:

——正常情况检测

步骤1.调用SKF_GetDevState接口,获取预定名称设备的状态。

——异常情况检测

使用非法参数调用本接口,应返回错误码。

通过标准:

正常情况检测获取到的设备状态与预定名称设备的当前连接状态相符。

异常情况检测得到预期结果。

8.2.1.7设置设备标签

检测目的:

检测是否能正确设置设备标签。

检测条件:

设备已连接。

检测过程:

——正常情况检测

步骤1.调用SKF_GetDevInfo接口,获取设备的一些特征信息,记录其中输出

的设备标签;

步骤2.调用SKF_SetLabel接口,设置设备标签,所设置的设备标签与步骤1

中所记录的设备标签不同;

步骤3.再次执行步骤1。

12

GM/T0063—2018

——异常情况检测

使用非法参数调用本接口,应返回错误码。

通过标准:

正常情况检测步骤3所记录的设备标签与步骤2设置设备标签相同。

异常情况检测得到预期结果。

8.2.1.8获取设备信息

检测目的:

检测是否能正确获取设备的一些特征信息。

检测条件:

设备已连接。

检测过程:

——正常情况检测

本检测项作为8.2.1.7的一部分进行检测。

——异常情况检测

使用非法参数调用本接口,应返回错误码。

通过标准:

正常情况检测所获取到的厂商信息和支持的算法等与表1的《资料总体说明》所描

述的信息匹配。

异常情况检测得到预期结果。

8.2.1.9锁定设备

检测目的:

检测接口锁定设备功能。

检测条件:

设备已连接。

检测过程:

——正常情况检测

步骤1.创建两个线程A和B;

步骤2.线程A调用SKF_LockDev接口,使用预定时间值,锁定设备;

步骤3.线程A调用SKF_Transmit接口,发送符合GM/T0017的指令,返回结

果数据应符合GM/T0017的规定;

步骤4.线程B调用SKF_Transmit接口,发送符合GM/T0017的指令,在预定

时间内,应不成功;

步骤5.线程A调用SKF_UnlockDev接口,解锁设备;

步骤6.线程B调用SKF_Transmit接口,发送符合GM/T0017的指令,返回结

果数据应符合GM/T0017的规定。

——异常情况检测

使用非法参数调用本接口,应返回错误码。

通过标准:

正常情况检测和异常情况检测均得到预期结果。

8.2.1.10解锁设备

检测目的: