GM-T 0033-2023 时间戳接口规范_第1页
GM-T 0033-2023 时间戳接口规范_第2页
GM-T 0033-2023 时间戳接口规范_第3页
GM-T 0033-2023 时间戳接口规范_第4页
GM-T 0033-2023 时间戳接口规范_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中华人民共和国密码行业标准代替GM/T0033—2014Interfacespecificationsoftimestamp国家密码管理局发布IGM/T0033—2023 Ⅲ 1 1 14缩略语 1 2 25.2密码服务接口 2 2 36.1时间戳服务接口在公钥密码应用技术体系框架中的位置 36.2时间戳服务接口的逻辑结构 3 4 4 5 7 7 7 7 8 8 8 89.2初始化环境函数 99.3清除环境函数 99.4生成时间戳请求 99.5生成时间戳响应 9.6获取时间戳响应的状态信息 9.7验证时间戳有效性 9.8获取时间戳主要信息 9.9解析时间戳详细信息 附录A(规范性)时间戳服务接口错误代码定义 附录B(资料性)时间戳服务接口应用示例 Ⅲ本文件按照GB/T1.1—2020《标准化工作导则第1部分:标准化文件的结构和起草规则》的规定RFC5035(见7.1)、RFC6211(见7.1),删除了规范性引用文件GM/T0006(见2014年版的5.1)、RFC3066(见2014年版的7.2),将规范性引用文件GM/T0010更改为GB/T35275(见7.1,2014年版的7.2),将规范性引用文件RFC3369更改为GB/T31503(见7.2,2014年版的c)增加了缩略语“TSA”HTFPS(师第4d)更敢了图1(见6.1,2011年版的6.1);e)更敢了时间戳请求格式中有关杂凑算法标识的二义,增加了国间戳响应中对算法保护域的要f)更政了8.4的名称EEP方式"HTTTP方(见8.4,2014年版的8.4);以支持更多的时间微清求的底性了见于597,2011年酸的9.6)——2014年首次发布为GM/T0033—2014;时间戳接口规范1范围本文件规定了时间戳服务接口的请求和响应消息的格式、传输方式和时间戳服务接口函数。本文件适用于基于公钥密码应用技术体系框架内的时间戳服务相关产品的研制。2规范性引用文件下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文件,仅该日期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。GB/T20520信息安全技术公钥基础设施时间戳规范信息安全技术电子文档加密与签名消息语法信息安全技术SM2-密码第法那密签省消息语决规范通用密码服务腰自规密码模块安全技术要求SM9密码算法加密签名消法规范EQ\*jc3\*hps20\o\al(\s\up7(密码),erne)500公基础设施间戳议(Tsptaon509PblickeyInfra-(ESS)UpdateAddongCerDNgotithmAgidiyRFC6211加密消息语法(CMS)算法标识符保护属性[CryptographicMessageSyntax(CMS)AlgorithmIdentifferProtectionAttrib3术语和定义GM/Z4001界定的以及下列术语和定义适用于本文件。时间戳服务timestampservice时间戳系统给用户提供的颁发时间戳的服务。4缩略语下列缩略语适用于本文件。DER可区分编码规则(DistinguishedEncodingRules)HTTP超文本传输协议(HyperTextTransferProtocol)HTTPS基于安全套接层的超文本传输协议(HyperTextTransferProtocoloverSecureSockets工2TSA时间戳机构(TimeStampAuthority)说明签发时间签发者的通用名时间戳服务器的证书时间戳服务器的证书链时间源的来源时间精度响应方式STF_SUBJECT_COUNTRY_OSTF_SUBJECT_ORGANIZATION_OSTF_SUBJECT_EMAIL_O随机数时间戳请求/响应中的扩展域时间戳服务器证书序列号为其他标识保留3应用1~应用应用1~应用N时间戳服务密码资源管理(云环境)电子签章4应用1~应用应用1~应用N应用层环境函数时间戳服务函数TimeStampReq::=SEQUENCE{messageImprintMessageImprint,reqPolicyTSAPolicyIdnonceINTEGERcertReqBOOLEANDEFAULTFALSE,extensionshashAlgorithmAlgorithmIdentifier,在hashAlgorithm域中表示的算法应使用GM/T0028中的算法,并在返回消息中设置reqPolicy的类型是TSAPolicyId,TSAPolicyId按照RFC3161中的定义。书。SignerInfo及Attribute结构按照GB/T35275中的定义tribute结构,其值类型为CMSAlgorithmProtection,CMSAlgorithmProtection按照RFC5RFC5035中的定义。TSA的公钥签名证书存放在响应消息中SignedData部分的timeStampTokenTimeStampTokenPKIStatusInfo::=SEQUENCE{}(0),—申请使用了不支持的算法(2),—非法的申请6(25)—系统内部错误}TimeStampToken是一个ContentInfo●该时间戳的使用条件;——messageImprint应同TimeStampReq中类似的域有相同的值,前提是杂凑值的长度与——serialNumber域是TSA分配的一个整数。一个特定的TSA发出的 —genTime是TSA创建时间戳的时间。应用UTC时间表示,以减少使用本地时区造成的7 accuracy表示时间可能出现的最大误差,genTime加上accuracy的值,可以求得TSA创建这}如果seconds、millis或者micros未出现,则未出现域的值应被赋为0。当accuracy这个可选 ordering表示时间戳排序条件。若ordering域不出现,或者ordering域出现但被置为false,则genTime域只表示TSA创建时间戳响时间。在这种情况下,当两个时间戳中第一个的genTime与第二个的genTime之差大于这两个genTime的精确度的和,同一个TSA或者不同的TSA签发的时间戳标志才有可能排序。如果ordering域出现并被置为true,同一个TSA发的每一个时间戳都可以依据genTime排序,而不必考虑genTime精确度。 once域若在VimeStampReg中出现,则此处也应出现,其值应等于TimeStampReq中的值。 tsa域是为鉴别TSA名字提供的个线索,荐出现应与验证时间戳的证书里的subjectnames中的一个相同 以由组织或者团体自行定义序声明注册8时间戳服务接口的通信方式及格式8.1电子邮件方式采用电子邮件方式时,用声健用地子邮作而一企5A习指的重子郦件地理发送时间戳申请,TSA将颁发的时间戳通过电子邮件返回给用户。申请与颁发应使用以下MIME对象。a)申请消息Content-Typeoapplication/timContent-TransferEncodimg:base64b)响应消息Content-Type:application/Content-Transfer-Enco8.2文件方式采用文件方式时,用户将申请消息存储在一个扩展名为.tsq的文件中传送给TSA,TSA将产生的响应消息保存在一个扩展名为.tsr的文件中返回给用户。请求文件和响应文件应只包含消息的DER编码。采用Socket方式时,用户与TSA应通过安全的socket传输申请消息和响应消息。通信的消息格式应符合RFC31613.3中的格式和定义。8Content-Type:application/tContent-Type:application/t9返回值:STF_TS_OK:成功返回值:STF_TS_OK:成功原型:SGD_UINT32STF_CreateTSRequest(void*uiHashAlgID[IN]:密码uiNonceLength[IN]:随机数Nonce的长度pucTSRequest[OUT]:时间戳请求备注:uiReqType:0代表时间戳响应应包含时间戳服务器的证书,1代表时间戳响应不包含时间戳服务器的证书。pucNonce:在时间戳请求TimeStampReq中Nonce是可选的,当时间戳请求中不包含Nonce时,该变量取值为空指针NULL,uiNonceLength取值为0。pucReqPolicy:在时间戳请求TimeStampReq中reqPolicy是可选的,当时间戳请求中不包含reqPolicy时,该变量取值为空指针NULL,uiReqPolicyLength取值为0。puiTSRequestlength[IN/OUT].人口值为指定的用于存放时间戳请求的字符数组的最大长度,出口值为时间戳请求的实际长度。9.5生成时间戳响应原型:SGD_UINT32STF_CreateTSResponse(void*5GDumNE8puEGD_UI的T32SeriSGDpucTSRespons描述:根据时间戳请求包生成时间戳响应包参数:hTSHandle[IN]:时间戳环境句柄uiTSRequestLength[IN]:时间戳请求的长度pucSeraINumber[IN]:TSA为生成的时间戳响应分配的序列号uiSerialNurmberLengthJIN]:TSA为生成的助间戳响应分配的序列号的长度uiSignatureAlgIDFIN]:签名算法标识pucTSCert[IN]:TSA的签名证书uiTSCertLength[IN]:TSA签名证书的长度pucTSResponse[OUT]:时间戳响应puiTSResponseLength[IN/OUT]:时间戳响应的长度返回值:STF_TS_OK:成功备注:pucTSCert:表示TSA的签名证书,DER编码格式。在时间戳请求中可能会要求TSA在响应中包含TSA的签名证书,此外在计算时间戳响应中包含的ESSCertIDv2时,也要用到TSA的证书。puiTSResponseLength[IN/OUT]:入口值为指定的用于存放时间戳的字符数组的最大长度,出口值为时间戳的实际长度。原型:SGD_UINT32STF_GetTSStatus(void*hTSHan返回值:STF_TS_OK:成功返回值:STF_TS_OK:成功备注:该函数验证时间戳响应是否有效。调用本函数的前提是时间戳响应中包含TimeS-原型:返回值:STF_TS_OK:成功SGD_UINT32(规范性)表A.1给出了时间戳服务接口错误代码定义。说明正常返回输入的用户信息超出规定范围分配给tsrequest的内存空间不够时间戳格式错误申请使用了不支持的算法非法的申请申请消息中包括了不支持的扩展有不理解或不可用的附加信息系统内部错误预留SGD_UINT8message[128]="hiShecaLcIl5uurgooddone";SGD_UINT8tsrequest[512SGD_UINT32tsrequestlength=5120,tsresponselength=5120,tsresponsestatus;retcode=STF_InitEnvironment*错误处理*/}/*生成时间戳请求*/retcode=STF_CreateTSRequest(handele,message,strlen(message),1,NUSGD_SM3,"12345678",

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论