• 1.12 MB
  • 2022-04-22 13:49:20 发布

GBT16649.8-2002识别卡带触点的集成电路卡第8部分:与安全相关的行业间命令.pdf

  • 31页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'ICS35240.15I,64眉昌中华人民共和国国家标准GB/T16649.8-2002/ISO/IEC7816-8:1999识别卡带触点的集成电路卡第8部分:与安全相关的行业间命令Identificationcards-Intergratedcircuit(s)cardswithcontacts-Part8:Securityrelatedinterindustrycommands(ISO/IEC7816-8:1999,IDT)www.bzfxw.com2002-12-04发布2003-05-01实施中华人民共和国发布国家质量监督检验检疫总局 GB/T16649.8-2002/ISO/IEC7816-8:1999目次前言皿1范围12规范性引用文件二I术语和定义口符号和缩略语勺︸5安全环境⋯⋯d占咬JJ内h门洲的︹︵口哎,w1l.111e0八匕1门了只扩展报头列表DE安全支持····⋯⋯安全报文交换扩展命令链·······⋯⋯l.nCMANAGESECURITYENVIRONMENT命令,111PERFORMSECURITYOPERATION命令八j︸产件口﹂管理验证过程····⋯⋯““’‘”’“‘””“““‘心J0目GENERATEPUBLICKEYPAIR命令MUTUALAUTHENTICATE功能门︺.孟门口GB/T16649.8中定义的标记附录A(资料性附录)卡解释的证书的结构和使用21附录B(资料性附录)数字签名相关操作的使用······,⋯⋯23www.bzfxw.com GB/T16649.8-2002/ISO/IEC7816-8:1999月g吕GB/T16649《识别卡带触点的集成电路卡》分为十个部分:—第1部分:物理特性;—第2部分:触点的尺寸和位置;—第3部分:电信号和传输协议;一第4部分:行业间交换用命令;—第5部分:应用标识符的国家编号体系和注册规程;—第6部分:行业间数据元;—第7部分:用于结构化卡查询语言(SCQL)的行业间命令;—第8部分:与安全相关的行业间命令;—第9部分:附加的行业间命令和安全属性;—第10部分:同步卡的电信号和复位应答。本部分为GB/T16649的第8部分。本部分等同采用国际标准ISO/IEC7816-8:1999《识别卡带触点的集成电路卡第8部分:与安全相关的行业间命令》。为便于使用,对于ISO/IEC7816-8:1999,本部分还做了下列编辑性修改a)"ISO/IEC7816的本部分”改为“本部分”;b)删除ISO/IEC7816-8:1999的前言和介绍本部分的附录A、附录B是资料性的附录。本部分由中华人民共和国信息产业部提出。本部分由中国电子技术标准化研究所归口本部分起草单位:中国电子技术标准化研究所。本部分主要起草人:金倩、冯敬、蔡怀忠。www.bzfxw.com GB/T16649.8-2002/ISO/IEC7816-8:1999识别卡带触点的集成电路卡第8部分:与安全相关的行业间命令范围GB/T16649的本部分规定了:—卡中使用的安全协议;—安全报文交换扩展;—卡的安全功能/服务上的安全机制的映射,包括卡内安全机制的描述;—安全支持的数据元;—在卡上实现的算法的使用(算法本身并不详细描述);—证书的使用;—与安全相关的命令。本部分没有涵盖卡内和/或外界的内部实现。密码机制的选择和使用条件可能影响卡的输出。算法和协议的适宜性的评价在本部分的范围之外并不强制卡支持本部分描述的所有命令或支持命令的所有选项。2规范性引用文件下列文件中的条款通过GB/T16649的本部分的引用而成为本部分的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本部分,然而,鼓励根据本部分达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本部分。GB15843.2信息技术安全技术实体鉴别第2部分:用对称加密算法的机制((;B15843.2-1997,idtISO/IEC9798-2:1994)GB/T15843.3信息技术安全技术实体鉴别第3部分:用非对称签名技术的机制(GB/T15843.3-1998,idtISO/IEC9798-3;1997)GB15851信息技术安全技术带消息恢复的数字签名方案(GB15851-1995,idtISO/IEC9796:1991)GB/T16649.3识别卡带触点的集成电路卡第3部分:电信号和传输协议(GB/T16649.3-1996,idtISO/IEC7816-3:1989)www.bzfxw.comGB/T16649.6识别卡带触点的集成电路卡第6部分:行业间数据元(GB/T16649.6-2001,idtISO/IEC7816-6:1996)ISO/IEC7816-4信息技术识别卡带触点的集成电路卡第4部分:行业间交换用命令ISO/IEC7816-4/补篇I信息技术识别卡带触点的集成电路卡第4部分:行业间交换用命令补篇1:APDU报文结构上的安全报文交换的影响ISO/IEC9979数据密码技术密码算法臀记规释3术语和定义下列定义适用于GB/T16649的本部分 GB/T16649.8-2002/ISO/IEC7816-8:19993.1认证机构CertificationAuthority(CA)利用公开密钥和其他相关信息为所有者提供证明的可信任的第三方机构。3.2密码机制cryptographicmechanism卡提供的功能,作为它的密码算法执行的一个结果,该密码算法带有一组特定的操作参数,例如操作模式和数据或密钥的长度。3.3安全报文交换securemessaging在命令期间为数据交换的密码保护提供的一种方法3.4安全环境securityenvironment对卡系统,为卡的特定应用,规定可用的安全功能给命令提供保护的一种机制。4符号和缩略语下列缩略语适用于GB/T16649的本部分:APDU应用协议数据单元AT鉴别模板BER-TLV基本编码规则一标记长度值CA认证机构CC密码校验和CCT密码校验和模板CK命令密钥CRDO控制引用数据对象CRT控制引用模板CT保密模板DE数据元DF专用文件DO数据对象DS数字签名DSI数字签名输人DST数字签名模板EF基本www.bzfxw.com文件HT哈什(hash)模板IFD接口设备PK公开密钥PSO执行安全操作PERFORMSECURITYOPERATION命令RFU保留供将来使用SE安全环境SK秘密密钥SM安全报文交换SST安全支持模板 GB/T16649.8-2002/ISO/IEC7816-8:19995安全环境5.1描述卡中的安全环境((SE)是一组完全规定好安全机制的逻辑集合,该安全机制在与安全相关的命令以及GB/T16649的本部分和ISO/IEC7816-4中定义的安全报文交换中能被用来引用。SE应规定对执行的密码算法、操作模式、使用的密钥和安全机制所需的任何附加数据的引用。SE可能规定描述存储在卡中或为一些计算的结果的数据元(DE)的模板,模板被包括在安全环境定义中规定的算法中。SE也可能为处理计算得出的数据提供指示,例如存储在卡存储器中。任何对在环境定义中规定的带有机制的文件(密钥或数据)的相关引用都应在涉及到机制被用于执行计算时选择的专用文件(DF)时解决。绝对引用(例如绝对路径)不需要解决。注:工S()保存密码算法的记录(见ISO/IEC9979),另外还提供协议标准5.2安全环境的激活在卡操作期间的任何时候,无论是缺省的还是作为来自接口设备(IFD)命令的结果,一个当前SE应被激活。缺省SE可以为空。缺省SE的内容不在本部分中定义。当前SE可以明确地被MANAGESECURITYENVIRONMENT命令(见10)设置或替换。SE可以包含机制以完成在环境中被机制使用的不是固定不变的数据的初始化,例如会话密钥。在SM中,在控制引用数据对象(CRDO)中发送的数据对象应比在当前SE中出现的相应数据对象(DO)优先关联SE的定义归类到下列集合中:—一个全局SE集合,可以由卡提供。该集合的第一个SE为缺省的SE;—一个或多个特定应用SE集合,由应用提供全局SE集合应按缺省激活,除非另有规定。SE或SE的集合可以与DF或EF联合,这样在选择了DF或EF后,在集合中的关联SE或特定SE是隐含的集合。规定这种文件和SE集合间功能联合的方法不在GB/T16649的本部分范围内。当前SE是有效的,除非上下文发生了变化(例如用SELECTFILE命令选择了一个不同的应用),MANAGESECURITYENVIRONMENT命令,热复位或触点的停活(见GB/T16649.3).5.3组成部分控制引用模板(CRT)可以用于描述SE的各种组成部分(见表2),定义了五种这样的模板—密码校验和;—数字签名;—保密;www.bzfxw.com哈什(hash);—鉴别。在SE中,组成部分可能有两个方面:一种是对保护命令APDU有效,另一种是对保护响应APDU有效。SE可以根据编号来存储、恢复(见10)和引用,在这种情况下编号是上下文规定的。SE编号:—全。表示空环境,没有定义鉴别和SM规程;—全1表示在这个环境中没有操作可以实现;—11101111保留为将来使用(RFU)当前SE包含一个或多个 GB/T16649.8-2002/ISO/IEC7816-8:1999—属于缺省存储的、与当前DF关联的组成部分;—在SM命令中传输的组成部分(见ISO/IEC7816-4);—在MANAGESECURITYENVIRONMENT命令中传输的组成部分(见10);—存储的SE的所有组成部分,在MANAGESECURITYENVIRONMENT命令中被其编号调用。5.4算法引用算法对象标识符DO是一个数据对象,它标识与算法引用相关联的密码算法,如ISO/IEC7816-4中所定义。一个或多个DO可以在带标记‘AC"的DF的文件控制信息(FCI)中出现。该DO封装了两个必备的DO和一个可选DO,如下所列顺序:—第一个必备的DO是算法引用DO,标记‘80",如表3中使用;—第二个必备的DO是一个ASN.1DO标识符,标记‘06",唯一引用算法;—可选DO(标记依赖于对象标识符)指示算法参数。编码举例(见GB/T16649.6附录B):AC1109}}80-01-01一06-04-28CC4701该对象标识符(28CC4701)指出了ISO/IEC9979中的算法1,不带参数。6扩展报头列表DE结构和使用扩展报头列表DE是不带定界符的标记/长度的串联扩展报头列表通常用于标记引用DO,扩展报头列表引用了一个字节的串,如下所组成:DO是基本DO时,每个标记/长度可以由标记引用的数据来替代;当标记/长度指示一结构DO时,它的值可以解释为扩展报头列表DEo根据扩展报头列表的使用条件,字节串中包括的数据为:—引用的基本DO的值,根据扩展报头列表中指出的长度截取(情况1),或—基本DO本身,根据扩展报头列表中指出的长度截取,并嵌套在各自的模板中,它的长度根据BER-TLV(基本编码规则一标记长度值)规则调整(情况2)0后随长度一00的结构标记可以忽略。后随长度一00的基本标记指示在字节串中包含完整的DO或DF,DO的值是一扩展报头列表,使用标记‘4D"。根据使用,其他DO可以有隐含类型的‘扩展报头列表’62扩展报头列表的举例给出一扩一展报头列表:www.bzfxw.com基本T,Ioo一结构化标记一L=4}基本‘f:一00I本T一L-描述了3个基本DO,基本丁:IL,{值基本T:一I.:一值2基本T、一L,()5)一值 GB/T16649.8-2002/ISO/IEC7816-8:1999情况1(报头列表引用串联的DE)的结果值:一值:一值:截取5字节情况2(报头列表引用串联的DO)的结果基本T一L】一值:一结构化标记一L-L,+9一基本Tx}工_:一值2{基本T、一5一值截取5字节命令(例如PERFORMSECURITYOPERATION中的‘AC",`BC",见11.7.3)的适当参数或数据域的适当结构指出:俘含DO的结构化报头列表;包含DE的基本报头列表。7安全支持7.1描述和规则安全支持数据元是带有管理其值处理方法规则的特殊定义的DE的汇集。这些DE可以由卡提供作为对应用执行的密码保护机制的普通支持当执行命令(例如在安全报文交换中或在PERFORMSECURITYOPERATION命令中)时,为了在卡执行的操作中所包含的内容,安全支持DE可以由应用来引用。安全支持DE为ISO/IEC7816-4中定义的安全报文交换扩展并细化了辅助数据元。维护和使用安全支持DE的值的规则应由卡来管理。它们基于下列原则:--一根据安全支持DE特定类型的特定规则来完成更新,更新的新值由卡计算或由外界提供;—由于命令可能导致更新,更新在任何输出产生之前执行。更新与命令的完成状态无关;—如果在一个导致更新的操作中值被用于应用,则更新应在值被用到前更新;—对应用特定安全支持DE的访问对特定应用执行的功能是限定的注:在数据交换中取得的实际安全最终依赖于应用规定的算法和协议,卡仅提供对这些DE和相关使用规则的支持。7.2数据元通过每次卡被激活时数据元的值都不同,卡可以支持数据交换的安全。它们包括:卡会话计数器,卜激活期间它增加1;会话标识符,它可以由卡会话计数器计算得出,也可能由外界提供数据。数据交换的密码保护可以由数据兀来支持,称之为递增值。它们的值在整个卡生命周期的特定事件中是递增的。规定了两个递增值类型:—内部递增值,若给应用如此规定,则记录完成特定事件的次数的值,在事件发生后数据元应加1;若给应用如此规定,则卡可以为这些计数器提供复位功能并将其值置为。。内部递增值不由外界控www.bzfxw.com制并适合作为可靠的卡内实际时间的近似表示。它们的值可以用于密码计算;—外部递增值,若给应用如此规定,则它只能用来自外界的数据值来更新。新值应在数字上大于其目前存储的值7.3数据元引用访问安全支持数据元的值可以由卡通过下列方式提供:—在主文件(MF)中包含的EF,例如为卡会话计数器;—在与应用相关的DF中包含的EF,例如为应用特定递增值;—作为带BER-TI,V编码(如表1中的第1列所定义)的数据对象的引用;—在控制引用模板(CRT,见表3)中作为辅助数据(标记‘88",`92",`93")的引用,如果SE支持这些数据元的明确使用,这些标记可以被使用。安全支持数据元的属性,例如数据的长度和改变它们的值的算法,不在本部分中定义。 GB/T16649.8-2002/ISO/IEC7816-8:1999表1安全支持数据对象的标记标记含义"7A"安全支持模板(SS丁),封装带有下列标记的DO"80"卡会话计数器‘81"会话标识符"82’一‘8E"文件选择计数器‘93,数字签名计数器"9F2X"内部递增值"9F3Y"外部递增值表1中‘X’的编码表示特定内部递增值,例如文件选择计数器。表1中‘Y’的编码表示特定外部递增值,例如外部时间标志。8安全报文交换扩展8.1安全报文交换数据对象表2列出了ISO/IEC7816-4补篇1和本部分中定义的SM数据对象表2安全报文交换数据对象GB/T16649的对应部分}标记一值`80",`81"明文(非BER-TI.V编码数据)`BO",`BI,明文(BER-TI.V,包括SM相关数据对象)‘B2"、‘B3’明文(BER-TLV,但不包括SM相关数据对象)‘96’,"97"不安全命令中的Le值(见ISO/IEC7816-4补篇1)199,状态信息(例如SWI-SW2)‘82、‘83’密文,BER-TLV组成的明文,包括SM相关数据对象`84",`85"密文,HER-TLV组成的明文但不包括SM相关数据对象"86",`87"填充指示字节(见ISO/IEC7816-4)后随密文(不按BER-TLV编码的明文)‘SE’密码校验和(至少4个字节)‘gE,数宁签名‘9O"哈什(hash)代码‘9八’数字签名输入(非HER-TLV编码数据)"AO"哈什代码输人模板‘A2"“密码校验和”验证输人模板"AS’05验证输入模板‘AC,DS输人模板(BER-T],V编码数据值域的串联被签名)www.bzfxw.com‘BC卜DS输人模板(BER丁LV编码数据,TLV数据被签名)‘92,证书(非BER-TIN编码数据)‘八E,证书验证输人模板(八出了非BER-TLV编码数据组成的签名输人)‘日F,证书验证输入模板(示出了BER-TI.V编码数据组成的签名输人)‘A4","A5"鉴别CRT(AI")"AA","AB"哈什代码鉴别CRTOIT)‘B4","B5密码校验和CR丁(CC1)‘B6’,"B7"数字签名CRT(DST)‘B8"、‘Hg,保密性CRT(CT)"BA","BB"响应描述符 GB/T16649.8-2002/ISO/IEC7816-8:19998.2控制引用数据对象表3列出了ISO/1EC7816-4和本部分中定义的CRDO。该表指出了与它们相关的CRT:密码校验和模板(CCT)、数字签名模板(DST)、保密模板(CT)、哈什模板(HT)和鉴别模板(AT)表3在控制引用模板中包含的数据对象1.-o,扩展的1)()报头列表,如第6章中所定义工共0,报头列表,如GB/T16649.6中所定义算法引用“文件引用“密钥引用—在对称情况下直接使用—在不对称情况下引用公开密钥—在对称情况下计算会话密钥一在不对称情况下引用私有密钥初始校验块L=。,空块1-0,链块L=0,例如先前的初始值块1L-k,初始值块((IV)辅助数据1-0,先前的challenge+1L}0,未规定的引用数据对象1-0,卡提供的哈什代码1.=0,卡提供的随机数1.护0,随机数L=0,卡提供的时间标记L并0,时间标记L-0,先前www.bzfxw.com计数器+10工_1}0,计数器L=。,专有数据项的索引1,110,专有数据项的值密文内容引用导出密钥的challenge或数据项如ISO/IEC7816-4中足义。b数字签名计数器8.3输入数据对象表4列出了在输人模板中出现的数据对象,根据本部分完成安全操作。该表指出了与输人模板相关的DO. GB/T16649.8-2002八SO/IEC7816-8:1999表4输入数据对象标记{值哈什密码校验和验证数字签名验证数字签名证书验证‘8o"明文xxxxx‘SE,密码校验和xx190"哈什代码xxxx‘92,证书x‘gC,公开密钥xx‘gF’数字签名xx9命令链许多安全过程是多阶段的。这样的过程自然地可以通过使用若干带有相同INS代码的连续命令响应对来实现。在这种情形下,涉及的最后一条(或仅有)命令应使用不同的CLA值表5命令链的CLA代码CLA代码含义`ox"用于涉及的最后(或仅有)一条命令‘IX,用于非最后一条的命令最低有效半字节的解释如ISO/IEC7816-4表9中所定义在命令链期间每条命令在CLA中应有相同的X值当安全过程已经启动时,它应该在其他命令发出之前完成。否则卡的行为没有规定。如果SWl-SW2被置为`9000’作为对不是最后一条命令的响应则它表示操作已成功。若在序列链接的命令中间发生了错误,则应由SWl-SW2的适当值指出。表6命令链特定状态代码SW1SW2含义‘68’石83"期望的最后命令一{`84"不支持的命令链1010MANAGESECURITYENVIRONMENT命令定义和范围MANAGESECURITYENVIRONMwww.bzfxw.comENT’命令支持下列功能:—用仁中存储的SE替换当前SE(RESTORE恢复);设置或替换当前SE的一个部分(SET设置);一在SE号码下保存当前SE(STORE存储);—根据标出的SE号码擦除SEER八SE擦除);—启动密码命令。主密钥概念的使用可以需要在包含主密钥的卡中派生出一个密钥(见10.6)10.2使用和安全条件本部分不描述条件命令报文 GB/T16649.8-2002/ISO/IEC7816-8;1999表7MANAGESECURITYENVIRONMENT命令APDUCLA如ISO/lFC7816-4和第9章中所定义INS‘22’P1见表8P2见表9Lc在SE下情况下后续数据域的长度或在存储、恢复、擦除情况下为空数据域CRD()串联(在SET情况下)或在存储、恢复、擦除情况下为空lP幸表8Pi的编码b8b7b6656463b2bl含义一1一一一一SM命令一一1一一一一一一SM响应一1一一一一计算、解密和内部鉴别1一一一一一一一验证、加密和外部鉴别一一0001设置11110010存储11110011恢复11110100擦除表9P2的编码b8...bl含义在存储、恢复和擦除的情况下‘xy,SE号码"B戏,‘B6"`AA"‘BS’‘A4"10.4响应报文www.bzfxw.com表10MANAGESECURITYENVIRONMENT响应APDU数据域空SWl-SW2状态字节10.5状态条件下列特定差错条件可能发生:—SW1=`66",同时SW2=`00":环境不可以被设置或修改,没有进一步信息;—一SW1一‘69",同时SW2=`87":未得到期望的SM数据对象; GB/T16649.8一2002八50/IEC7816一8:1999‘88’:sM数据对象不正确;一一SWI二‘6A’,同时SWZ=‘88’:引用的数据未被找到。10.6用MANAGESECURITvENVIRONMENT计算派生密钥表11示出了MANAGEsEcuRITYENvIRONMENT命令在计算派生密钥的使用。假定在卡中,主密钥和算法是隐含选择的(若不是,密钥和算法可以在MANAGESECURITYENVIRONMENT命令中附加选择)表11命令报文APDU,CLA一{女口150/IEC7、16、中所定义11丫只月22’Pl脚‘Xl’=SET(见表8)相关CRT的标记(例如‘A4’,如果跟随一相关命令的鉴别<例如EXTERNALAUTHENTICATE)或‘B4’,如果跟随一相关命令的密码校验和(例如PSO:VERIFYCC”1』c后续数据域的长度数据域‘94’一1_派生密钥的数据(必备的、进一步的DO是可能的(见表3))lP空表12响应报文APDU数据域空SWI一SWZ状态字节注:依赖于算法引用,从主密钥中派生出来的奋钥的数据可以是后续命令输人数据的一部分(例如FXTERNAIA日THENTICATE)在这种情况下,MAN入GESECURI丁YENVIRONMENT命令的使用对派生密钥不是必需的。11PERF《〕RMSECURITYOPERATION命令11.1定义和范围PERFORMSECURITY(〕PERATION命令启动下列安全操作:—密码校验和的计算;—数字签名的计算;—哈什代码的计算;-一密码校验和的验证;-—数字签名的验证;一证书的验证;www.bzfxw.com-一加密;—解密。启动的安全操作与PI和PZ中规定的DO有联系。命令可以在一步或多步内完成,可能使用了命令链功能(见第9章)。11.2使用和安全条件MANAGEsFCURITYENv1RONMENT命令可以在PERFORMSECURITYOPERATION命令之前命令的成功执行以先前命令的成功完成为条件(例如VERIFY在数字签名的计算之前)。密钥引用与算法引用一样,应为一一隐含知道,或10 GB/T16649.8-2002/ISO/IEC7816-8:1999—在MANAGESECURITYENVIRONMENT命令的CRT中规定如果出现,报头列表定义构成安全操作输人的顺序和数据项11.3命令报文表13PERFORMSECURITYOPERATION命令APDUCLA如ISO/IEC7816-4和第9章中所定义INS‘ZA"P1DO标记,其值在响应数据域中发送或`00"=响应的数据域为空`FF’二RFU[)()标记,其值在命令数据域中发送或`00’命令的数据域为空`FF"=RFU后续数据域的长度P2中规定的DO的值,或空空或期望响应的数据的最大长度11.4响应报文响应报文见以下每一操作的相关章节。11.5状态条件如ISO/IEC7876-4和本部分中所定义,除非特别声明11.6COMPUTECRYPTOGRAPHICCHECKSUM操作11.6.1定义和范围COMPU丁ECRYPTOGR八PHICCHECKSUM操作启动密码校验和的计算。11,6.2使用和安全条件命令只有在安全状态满足这一操作的安全属性时才可以执行。11.6.3命令报文表14COMPUTECRYPTOGRAPHICCHECKSUM参数和命令DOP1P2数据域一、8D"校验和所要求的数据注:该操作以命令链为前提条件11.6.4响应报文www.bzfxw.com表15COMPUTECRYPTOGRAPHICCHECKSUM响应APDU数据域密码校验和SW1--SW2状态字节11.7COMPUTEDIGITALSIGNATURE操作11.7.1定义和范围COMPUTEDIG工丁A工SIGNATURE操作启动数字签名的计算对计算数字签名,在签名过程中要签名的或要集成的数据应在PERFORMSECURI丁YOPERA-TION命令的数据字段中传输。在P2中,数字签名按照输人的结构用标记‘9A",`AC’或‘BC’规定(见表2),算法可以是数字签名算法或哈什算法和数字签名算法的组合。辅助数据(见表3)包含在数字签名输人(DSI,见表3)中,引用在CRT(见6.1)中产生。如果出现辅n GB/T16649.8-2002/ISO/IEC7816-8:1999助数据的空引用数据对象,则卡应插人辅助数据。在数据域中,辅助数据在任何报头列表之前出现或引用。卡返回的值是Pl(`9E")中规定的数字签名。11.7.2使用和安全条件命令只有在安全状态满足这一操作的安全属性时才可以执行。11.7.3命令报文表16COMPUTEDIGITALSIGNATURE参数和命令DOPI烹P2itt17I"2=`9A":1[Sf;},17`9`9A",`AC"4Z"BC"E"P2-"AC":P2-"BC:-r7-"7DSIilWIP01}9})--IVX11NfH9}*H}MnDO(DODO(At-4-f.4AUWIP15川D09h(ftJAA1N11.7.4响应报文表17COMPUTEDIGITALSIGNATURE响应APDU二SWI-SW2一一十一一嘿*-4-v一t%jo11.8哈什(HASH)操作11.8.1定义和范围HASH操作通过执行下列步骤启动哈什代码的计算:-一在卡内完成哈什运算,或—在卡内完成部分哈什运算(例如最后一轮计算)。计算哈什代码(见表3)的算法引用在Hash计算(`AA",`AB")的CRT中指出,见表2为了进一步处理哈什代码计算,下列情况应区分:—存储在卡中的哈什代码:计算出来的哈什代码存储在卡中,并在后续命令中是可用的,并且Le域为空;—在响应中哈什代码由卡交付:如果哈什代码在响应中被交付,则Le域应被置为适当的长度。在后续块(同一时刻一个或多个)中,待hash的数据应呈现给卡,其长度由算法决定。依赖于哈什算法,最后出现的块其长度可以等于或小于块长度。填充机制若适合,则是哈什算法定义的一部分。11.8.2使用和安全条件命令只有在安全状态满足这一操作的安全属性时才可以执行。11.8.3命令报文www.bzfxw.com表18HASH参数和命令DOPlP2}so"`80’或‘AO"若P2=`80":hash的数据数据域若P2-"AO":与哈什运算相关的DO(例如‘90’用于中间哈什代码,`80’用于最后文本块)11.8.4响应报文 GB/T16649.8-2002/ISO/IEC7816-8:1999表19HASH响应APDU数据域哈什代码或空SWl-SW2状态字节11.9VERIFYCRYPTOGRAPHICCHECKSUM操作11.9.1定义和范围VERIFYCRYPTOGRAPHICCHECKSUM操作启动密码校验和的验证。11.9.2使用和安全条件命令只有在安全状态满足这一操作的安全属性时才可以执行11.9.3命令报文表20VERIFYCRYPTOGRAPHICCHECKSUM参数和命令DOPI{‘。。,P2{‘AZ’W抿域一与VERIFYCRYPTOGRAPHICCHECKSUM0作相羊的DO(例如DO"80".}"8E",见表2)注:该操作从属于命令链11.9.4响应报文表21VERIFYCRYPTOGRAPHICCHECKSUM0向应APDU数据域空SW1SW2状态字节11.10VERIFYDIGITALSIGNATURE操作11.10.1定义和范围VERIFYDIGITALSIGNATURE操作启动在数据域中作为DO发出的数字签名的验证。其他验证相关数据在命令链过程中传输或在卡中出现公开密钥与算法一样应—隐含知道,或—在MANAGESECURITYENVIRONMENT命令的DST("B6")中引用,或—作为先前VERIFYCERTIFICATE操作的结果是可用的算法可以是数字签名算法或组合的哈什代码和数字签名算法如果卡内算法的引用声称为签名算法,则哈什代码或签名组成的数据为根据GB15851报文恢复类型。否则哈什代码计算在卡内执行,另外算法引用还包含对哈什算法的引用11.10.2使用和安全条件命令只有在安全www.bzfxw.com状态满足这一操作的安全属性时才可以执行。11.10.3命令报文表22VERIFYDIGITALSIGNATURE参数和命令DOPlP2一:00"A8"数据域与VERIFYDIGITAL.SIGNATURE操作相关的DO(例如DO"9A","AC",`BC"和‘gE夕,见表2)如果数据域包含一空DO,则在验证中使用时卡需要知道其值。11.10.4响应报文 GB/T16649.8-2002/ISO/IEC7816-8:1999表23VERIFYDIGITALSIGNATURE响应APDU数据域空SWI-SW2状态字节11.11VERIFYCERTIFICATE操作11.11.1定义和范围对于卡内证书的验证(见附录A),验证的证书的数字签名在数据域中作为DO发送。在验证过程中使用的认证机构的公开密钥应在卡中出现,并且使用MANAGESECURITYENVIRONMENT命令来隐含选择或在DST中被引用如果在验证过程中其他的DO被使用(例如哈什代码),则这些DO应在卡中出现或应由第9章中描述的命令链过程来发送。下列情况应区分:—证书是自描述的((P2-"BE"):在(恢复的)证书内容中卡通过标记检索到公开密钥;—证书不是自描述的(P2-"AE"):通过使用描述证书内容的报头列表中的公开密钥标记,卡在证书中隐含地或明确地检索到公开密钥。11.11.2使用和安全条件命令只有在安全状态满足这一操作的安全属性时才可以执行。如果公开密钥已存储,它将作为后续VERIFYDIGITALSIGNATURE操作的缺省密钥。11.11.3命令报文表24VERIFYCERTIFICATE参数和命令DOP王roo"P2"12",`AE",`BE"数据域与VERIFYCERTIFICATE操作相关的DE或DO注:如果有限报文恢复算法被使用并且信息的一部分已存储在卡中,则被发送的辅助数据DO为空并带有卡后来插人的数据。11.11.4响应报文表25VERIFYCERTIFICATE响应APDU数据域空SWI-SW2状态字节12ENCIPHER操作{}12.1定义和范围ENC工PHER操作加密在命令数据域中传输的数据注:该操作也叮用于产生多样化的密钥12.2使用和安全条件www.bzfxw.com命令只有在安全状态满足这一操作的安全属性时才可以执行该操作的使用可以被限制12.3命令报文表26ENCIPHER参数和命令DO11.12.4响应报文 GB/T16649.8-2002/ISO/IEC7816-8:1999表27ENCIPHER响应APDU数据域加密的数据SW1-SW2状态字节11.13DECIPHER操作11.13.1定义和范围DECIPHER操作解密在命令数据域中传输的数据11.13.2使用和安全条件命令只有在安全状态满足这一操作的安全属性时才可以执行该操作的使用可以被限制。11.13.3命令报文表28DECIPHER参数和命令DOP1一80"〔明文)P2一‘82",`84",`86"(密文,见表2)数据域{被解密的数据11.13.4响应报文表29DECIPHER响应APDU数据域解密的数据SWI-SW2状态字节1122管理验证过程引言下列命令属于管理验证过程:-VERIFY,如ISO/IEC7816-4中所定义;—CHANGEREFERENCEDATA;一一ENABLEVERIFICATIONREQUIREMENT;—DISABLEVERIFICATIONREQUIREMENT:—RESETRETRYCOUNTER管理验证过程命令的特定警告和差错条件在12.6中给出。如果包含适合的参数,安全状态可以由命令本身来设置。若不包含,安全状态可以由不同的途径(例如安全报文交换、预先鉴别)来设置安全状态作为比www.bzfxw.com较的结果可被修改不成功的比较可以被记录在卡里(例如限制进一步尝试使用引用数据的次数)12.2CHANGEREFERENCEDATA命令12.2.1定义和范围CHANGEREFERENCEDATA命令用于—用新的引用数据替换现存引用数据;—启动验证数据与引用数据的比较,然后有条件地用在命令中发送给卡的新的引用数据替换现存的引用数据12.2.2使用和安全条件命令只有在安全状态满足这一操作的安全属性时才可以执行12.2.3命令报文1弓 GB/T16649.8-2002八SO/IEC7816-8:1999表30CHANGEREFERENCEDATA命令APDUCLA如1SO/IEC7816-中所定义INS`24"Pi‘。。’!交换引用数据`O1"=改变引用数据任何其他值为RFUP2引用数据的限制符,见表31Lc域后续数据域的长度数据域P7=`00’现存引用数据,后跟随新的引用数据PI-101’新引用数据Le域空注现存引用数据的长度由卡知道。囚此在现存的和新引用数据之间不存在定界符表31引用控制P2的代码6867666564b362bl含义00000000--一没有信息给出0一一一一一一一—全局引用数据(例如卡口令)1一一一一一一特定引用数据(例如DF特定口令)—XX————一00(其他值为RFU)——一xxxxx—引用数据号码注1:P2=`00’保留用来指示在那些命令明确引用‘引用数据’的卡上没有使用特殊限制符注2:引用号码可以是,例如,口令号码或短EF标识符。12.2.4响应报文(通常情况)表32CHANGEREFERENCEDATA响应APDU数据域空SWl-SW2状态字节12.3ENABLEVERIFICATIONREQUIREMENT命令12.3.1定义和范围ENABLEVERIFICATIONREQUIREMENT命令用于开启比较验证数据和引用数据的需求。12.3.2使用和安全条件命令只有在安全状态满足这一操作的安全属性时才可以执行。12.3.3命令报文表33www.bzfxw.comENABLEVERIFICATIONREQUIREMENT命令APDU如ISO/IEC7816-4中所定义‘28"`00"=在数据域,1,出现的验证数据`01"=没有验证数据任何其他值为RFU引用数据的限制符,见表31空或后续数据域的长度PI-100,验证数据PI-101’空1,16x幸 GB/T16649.8-2002/ISO/IEC7816-8:199912.3.4响应报文(通常情况)表34ENABLEVERIFICATIONREQUIREMENTA向应APDU数据域空SWI-SW2状态字节12.4DISABLEVERIFICATIONREQUIREMENT命令12.4.1定义和范围DISABLEVERIFICATIONREQUIREMENT命令用于关闭比较验证数据和引用数据的需求。12.4.2使用和安全条件命令只有在安全状态满足这一操作的安全属性时才可以执行12.4.3命令报文表35DISABLEVERIFICATIONREQUIREMENT命令APDUCLA如ISO/IEC7816-4中所定义INS`26"Pi`00"。在数据域中出现的验证数据`OI,=没有验证数据任何其他值为RFUP2引用数据的限定词,见表31Lc域空或后续数据域的长度数据域111-100,验证数据PI-101’空Le域空12.4.4响应报文(通常情况)表36DISABLEVERIFICATIONREQUIREMENT响应APDU数据域空SW1-SW2状态字节12.5RESETRETRYCOUNTER命令12.5.1定义和范围RESETRETRYCOUNTER命令用于—把引用数据重试计数器复位为其初始值,或一在成功地将引用数据重试计数器复位为初始值后改变引用数据。12.52使用和安全条件命令只有在安全www.bzfxw.com状态满足这一操作的安全属性时才可以执行12.5.3命令报文表37RESETRETRYCOUNTER命令APDU〔’l八如ISO/IEC7816-4中所定义TNS‘ZC"`00"=复位重试计数器并设置新的引用数据`01"=复位重试计数器、数据域中的复位代码`02",复位重试计数器并设置新的引用数据(不包括复位代码)`03’复位重试计数器数据域空任何其他值为RFU GB/T16649.8-2002/ISO/IEC7816-8:1999表37(续)P2引用数据的限制符.见表31L仁域空或后续数据域的长度数据域P1="00’后随新引用数据的复位代码PI-101,复位代码P1="02"新引用数据PI---"03’空Le域空注:当P1="00’时,复位数据由卡得知。因此在复位代码和新的引用数据之间不存在定界符。12.5.4响应报文(通常情况)表38RESETRETRYCOUNTER响应APDU数据域空SW1-SW2状态字节12.6管理验证过程命令的状态条件下列特定警告条件可能发生:—SW1="63",同时SW2="00":没有信息给出(验证失败);‘CX’:计数器(验证失败;"X’指示进一步允许重试的次数)下列特定差错条件可能发生:一一SWl="65",同时SW2二"81";存储失败(不成功的改变);—SWI二‘67",同时SW2=‘。。’:错误的长度(空Lc域);-SW1="69",同时SW2="82’安全状态不满足;‘83’:鉴别方法锁住;"84";引用数据无效;—SWl二‘6A",同时SW2="81":功能不被支持;‘82’:文件没找到;"86":不正确的参数Pl-P2;‘88’:引用数www.bzfxw.com据没有找到。13GENERATEPUBLICKEYPAIR命令13.1定义和范围GENERATEPUBLICKEYPAIR命令启动卡中公开密钥(PK)对的产生和存储13.2使用和安全条件为了设置密钥产生相关参数(例如算法引用),GENERATEPUBLICKEYPAIR命令之前可以有MANAGESECURITYENVIRONMENT命令。命令只有在安全状态满足这一操作的安全属性时才可以执行13.3命令报文is GB/T16649.8-2002八SO/IEC7816-8:1999表39GENERATEPUBLICKEYPAIR命令APDUCIA如ISO/IEC7816-4中所定义INS`46"P1一P2`0000"=产生并存储PK对其他值为RFULc空或后续数据域的长度数据域空或专有数据LP空或期望的数据的长度13.4响应报文表40GENERATEPUBLICKEYPAIRP向应APDU数据域空或公开密钥SW1-SW2状态字节13.5状态条件下列特定差错条件可能发生:SW1=`69",同时SW2=08s":使用的条件不满足。14MUTUALAUTHENTICATE功能14.1定义和范围MUTUALAUTHENTICATE功能使用与INTERNA工J和EXTERNALAUTHENTICATE命令相同的功能度,并使用EXTERNALAUTHENTICATE的INS代码(见ISO/IEC7816-4)oMUTUALAUTHENTICATE基于先前IFD发出的GETCHALLENGE命令和存储在卡中的密钥,可能是保密的。IFD和卡共享鉴别相关数据这些数据包括卡发出的口令以及IFD产生的进一步的口令。注:该命令可以用于GB15843第2和第3部分描述的鉴别执行。14.2使用和安全条件命令只有在安全状态满足这一操作的安全属性时才可以执行14.3命令报文表41MUTUALAUTHENTICATE命令APDUCLA如ISO/IEC7816-4中所定义INS‘82’P1www.bzfxw.com"00’或算法的引用P2`00’或密钥的引用Ix后续数据域的长度数据域鉴别相关数据Le期望的鉴别相关数据的长度14.4响应报文表42MUTUALAUTHENTICATE响应APDU数据域鉴别相关数据SW1SW2状态字节14.5状态条件 GB/T16649.8-2002八SO/IEC7816-8:1999状态条件如EXTERNALAUTHENTICATE,见ISO/IEC7816-415GB/T16649.8中定义的标记下列标记(表43中示出)在本部分中定义或有特定含义表43GB/T16649.8中定义的标记标记描述`4D"扩展报头列表`7A"安全支持模板(SST)在‘7A’下封装了下列标记:`80’卡会话计数器`81’会话标识符`9F2X’内部递增值`9F3Y,外部递增值`5F1F’证书内容(根据扩展报头列表DE的串联)www.bzfxw.com GB/T16649.8-2002/ISO/IEC7816-8:1999附录A(资料性附录)卡解释的证书的结构和使用A.1术语和定义本附录使用了下列定义:A.1.1公开密钥(PK)证书PublicKey(PK)Certificate公开密钥证书是数字信息的不可伪造部分,它保证特定个人或对象与其相关公开密钥之间的绑定它由认证机构颁发,该认证机构也担任在证书中存在相关数据项的标记分配机构。A.1.2+可验证的(CV)证书CardVerifiable(CV)CertificateCV证书是一个PK证书,在卡中它可以通过调用VERIFYCERTIFICATE操作解释。它由BERTLV编码数据对象(见表A.1)组成。A.2符号(和缩略语)本附录使用了下列缩略语:ID-anoiae持卡者的IDPKC0,anoid,持卡者的公开密钥ID-认证机构的ID一串联A.3CV证书的数据对象表A.1示出了与CV证书相关的数据对象。表A.1与CV证书相关的行业间DO(举例)标记`42"一iAi}t1I#}l}llll,ffllllAYxfi71JLA70M}gnAid`5F20"证书持有者引用,例如持卡者名称“`5F37"证书的签名,由相关的CA产生`5F49"证书持有者公开密钥,例如持卡者公开密钥“0SF4E"证书内容`7F21,CV证书,结构的,例如持卡者证书”见GB/T16649.60www.bzfxw.com更多的数据对象,例如证书序列号、版本号或有效期由相关的认证机构规定。区分CV证书的两种不同结构:自描述和非自描述CV证书A.4自描述CV证书如果证书内容包含BER-TI.V对象,则称之为自描述CV证书。为了证书的签名,可以使用带有或不带有报文恢复的数字签名模式表A.2示出了带有报文恢复数字签名模式的自描述CV证书的例子。 GB/T16649.8-2002/ISO/IEC7816-8:1999表A.2持卡者的自描述证书(举例)`71`21’L一后续D(。的值‘42’1:IDcA一‘51`20’I"5F37"-[,-CA的数字签名工以、e,}一‘SF49"-L-PK........签名DOo签名的DO为集成在CA签名中的由DO组成`42’一LID,(结构化)证书的标记证书DO的长度的证书D()的值(使用了不可逆`51`20"-L-ID,,,aia,de,算法时才出现)`SF49,一LPK___‘__注1;IDCA可以作为认证机构的公开密钥引用使用注2;IDCardholder可以用于对存储在卡中的数据的控制访问权利注3;PKCardholder可以在随后的VERIFYSIGNATURE操作中使用。A.5非自描述CV证书非自描述CV证书由DE例如证书持有者引用、证书持有者公开密钥、认证机构引用和可能的附加DE(例如证书序列号))的串联组成。如果出现带有标记‘4D’的扩展报头列表DO,它描述给出标记和数据对象长度实际次序如同在数字签名中的证书。扩展报头列表可以在卡中出现,以验证这种类型的CA证书。如果不出现,当被交付给卡的时候,报头列表应被保护起来。裹A.3恃卡者的非自描休证书〔举栩!)`71`21"L后续DO的值`4D"-IU("42"-LII`51`20"`5F4E"-L工氏八一IDc-dn`51`37"-L-CA的数字签名I一‘SF49"-L)一PK..-id包含根据扩展报头列表的签名Doo签名的DG为(结构化)扩展报头列表,只有在证书证书D()的DE的证书内容DO并被结-IDcn证书的结构不是隐含知道时才长度合在签名中(使用了不可逆ID.rd饭ld标记出现算法时才出现)—PK,_-,,www.bzfxw.com GB/T16649.8-2002/ISO/IEC7816-8:1999附录B(资料性附录)数字签名相关操作的使用B.1符号(和缩略语)本附录使用了下列缩略语:IDCA认证机构标识符IDCH持卡者标识符IV初始值KR密钥引用(仅在CRT内有效)KRPK公开密钥的密钥引用(仅在CRTDS内有效)KRSK秘密密钥的密钥引用(仅在CRTDS内有效)KRSSK会话密钥的密钥引用(仅在CRT内有效)PKCH持卡者公开密钥MSEMANAGESECURITYENVIRONMENT命令SENOSE号码“串联B.2管理安全环境的命令序列www.bzfxw.com图B.1安全环境组成部分的设置 GB/T16649.8-2002/ISO/IEC7816-8:1999在图B.1中,MSE命令序列用于设置当前SE的DST,CCT和CT部件然后执行存储(STORE)操作,在P2中分配给SE一个号码。在为了DS的SET操作中规定了在签名计算中用到的秘密密钥和DS输入中的随机数B.3数字签名计算的命令序列MSE:RESTORE被引用的SE存储与DS相关的DO,例(PI="F3",P2="01")如密钥弓}用。算法足隐含的,例如附加在密钊卜的算法PSO:COMPUIEDIGITALSIGNATURE(P1="9E",P2=`9A,datatield=Hashcodewithpaddingbytes(nonTLVcoded))Response=digitalsignature图B.2带附录的签名模式—DS输入数据由带填充字节的哈什代码组成图B.2表示了通过使用带附录的签名模式产生数字签名的语法。由哈什值组成的输人带填充字节时才完整。举例表示了带包含哈什操作的联合算法的DS计算在本例中,哈什输人输送给卡。注:本例纯粹用于举例,其值在实现期间被限制作为可能输出限制的结果,实际上用于一般安全理由〔避免重复签名在一些情况中是需要的)MSE:RESTORE被引用的SE存储与DS相关的DO,例(PI="P3",P2=`Ol")如密钥引用。算法是隐含的,例如附加在密钥}的算法www.bzfxw.comPSO:COMPUTEDIGITALSIGNATURE(PI="9E",P2=`9A,datafield=Hashcodewithoutpaddingbytes(nonTLVcoded))Response=digitalsignature图B.3带附录的签名模式—DS输入数据由不带填充字节的哈什代码组成图B.3表示了通过使用带附录的签名模式产生数字签名的语法。由哈什值组成的输人不带填充字节24 GB/T16649.8-2002/ISO/IEC7816-8:1999注I:为了避免出口限制,可以使用联合签名和哈什算法。注2虽然在某些环境中希望避免重复签名,但不能成功。MSE:SET(P1=41",P2="B6",dataf.eld="4D"-L-("90"-SETDSTLII"91’-L=0)II"84"-L-KRSK)PSO:COMPUTEDIGITALSIGNATURE(PI="9E",P2="BC",datafield‘90L-Hashcode)Response=digitalsignature图B.4带附录的签名模式—DS输入数据:不带填充字节的哈什代码输送给卡,填充的随机数由卡提供在图B.4中应用了带附录的签名模式。DS输入数据,不带填充字节的哈什代码输送给卡,并且要求卜附加一随机数作为MSE命令数据域中CRTDS的扩展报头列表的需要。如规定的,在带标记`BC’的P2中的DO串联参与签名(哈什代码DO和随机数DO).MSE:RESTORE被引用的SE存储与DS相关的。O,例(Pl--"F3",P2="02")如密钥引用。签名模式是带报文恢复的数f签名PSO:COMPUTEDIGITALSIGNATURE(P1="9E",P2="AC",datatield=‘80"-L一无www.bzfxw.com格式值一!"93"-L-0)Response-digitalsignature图B.5带有限报文恢复的数字签名—DS输入数据:明文输送给卡,数字签名计数器作为内部报文由卡提供在图B.5中示出了带有限报文恢复数字签名的语法由于使用了数据域中出现的DO的有限报文恢复,示出的数据根据签名模式配置,使用的数字签名计数器作为内部报文由卡提供。注:计算哈什代码的填充如同计算数字莽名一样根据GB15851 GB/T16649.8-2002/ISO/IEC7816-8:1999被引用的SE存储与DS相关的DO,例MSE:RESTORE如密1)」引用。算法是隐含的或附加在密(Pl="F3",P2="01")钥}_PSO:HASH(P1="90",P2="80",datafield=hashinput)PSO:COMPUTEDIGITALSIGNATURE哈什代码由先前的计算获得(PI二‘9E",P2="9A,response-digitalsignature)图B.6带附录的数字签名—DS输入的所有信息己在卡中,哈什代码已由先前的HASH操作计算在图B.6中,卡执行哈什运算(或哈什计算的最后一轮)。由于DS输入所有需要的数据在卡中出现,在操作PSO:COMPUTEDIGITALSIGNATURE中DS输人为空B.4数字签名验证的命令序列在SE验证中,相关DO被设置,例如扩MSE:SET(P1="41",P2B6",展报头列表和认证机构的公共密钥。算datafield="4D"-L-("42"-L一}"5F20法是隐含的或附加在密钥上。-L一}"5F49"-L)一{"83"-L-KRPK)PSO:VERIFYCERTIFICATE(CLA="1X",P1=00",P2="AE"datafield="5F4U-I-certificatecontentDO)PSO:VERIFYCERTIFICATE比较的哈什代码山算法计(CLA"OX",Pl="00",P2=AE"算获得datafield="5F37"-L-digitalsignaturewww.bzfxw.comofcertificate)PSO:HASH(PI="90",P2="80"datafield=hashcode)PSO:VERIFYDIGITAL哈什代码山先前的计算获得。公SIGNATURE共密i1)由VERIFYCERTIFICATE(Pl"00",P2人Kdatafield=操作检索"9E"-L-digitalsignature)图B.7数字签名验证—由DE组成的证书的DS输入 GB/T16649.8-2002/ISO/IEC7816-8:1999在图B.7中,非自描述证书(见附录A)的结构由扩展的报头列表提供。VERIFYCERTIFICATE操作通过应用链接命令机制来实现。首先显示证书的内容DO是存在的(DE的串联:认证机构引用(标记‘42")、持卡者姓名(标记‘SF20")和持卡者公开密钥(标记‘5F49"))。卡完成哈什操作,卡使用证书内容作为哈什输人。其次,属于证书的数字签名被再次转换并且将结果与先前计算的哈什代码比较。在哈什操作执行之后,为验证数字签名,公开密钥被恢复并由先前的VERIFYCERTIFICATE操作来验证。哈什输人依赖于哈什算法—可能是在链接命令中出现的明文,如果卡仅执行最后一轮的哈什计算,则是预处理过的哈什代码。最后,执行VERIFYDS操作在重新转换的签名中,与先前计算的哈什代码比较的哈什代码对在举例中给出的卡是隐含的。www.bzfxw.com图B.8数字签名验证—由DO组成的证书的DS输入图B.8示出r自描述证书(见附录A)的使用和示范了一个DS的验证过程。VERIFYCERTIFI-CATE操作通过应用链接命令机制来实现。首先,集成在证书中的DO是存在的(例如DO的串联:认证机构引用、持卡者姓名和持卡者公开密钥)。卡使用该串联作为哈什输人。后续步骤与前一举例一致 GB/T16649.8-2002/ISO/IEC7816-8:1999在SE验证中,相关DO被设置,例MSG:SET(PI="41",P2B6如利用用户ID引用公共密钥。算法datafield="83"-L-userID)足隐含的或附加在密钥}二。PSO:HASH(Pl="90",P2="A8",datafield=hashinput)PSO:VERIFYDIGITALSIGNATURE哈什代码由先前的计算获(Pl0"00",P2=A8",得datafield=`9E"-L-digitalsignature)图B.9数字签名验证—存储的PK的使用图B.9示出了事先存储在卡中的公开密钥的使用www.bzfxw.com'

您可能关注的文档