ICS35.040
中华人民共和国国家标准
GB/T25061—2020
代替GB/T25061—2010
信息安全技术
XML数字签名语法与处理规范
Information securitytechnology-XML digital signature syntax and processing specification2020-11-19发布
国家市场监督管理总局
国家标准化管理委员会
2021-06-01实施
GB/T25061—2020
规范性引用文件
3术语、定义和缩略语
3.1术语和定义
3.2符号和缩略语
4XML签名概述
定义文件用法说明
处理规则
6签名语法
Signature元素
SignatureValue元素
SignedInfo元素
KeyInfo元素
Object元素·
附加的签名语法·
Manifest元素
7.3SignatureProperties元素
7.4Signature元素中的处理指令7.5Signature元素中的注释
8证实方法
附录A(资料性附录)XML数字签名实例目
附录B(规范性附录)XML数字签名文档类型定义附录C(规范性附录)XML数字签名模式定义附录D(资料性附录)
参考文献
算法标识符
rKaeerKAca-
本标准按照GB/T1.1—2009给出的规则起草。本标准代替GB/T25061—2010《信息安全技术与GB/T25061一2010相比,主要技术变化如下:一增加了新的引用文件(见第2章);GB/T25061—2020
公钥基础设施XML数字签名语法与处理规范》,一在KeyInfo中,增加了SM2KeyValue类型定义,表示SM2椭圆曲线密码算法密钥值(见6.5.3.3);
一在KeyInfo元素中,增加了DEREncodedKeyValue和KeyInfoReference子元素,并给出模式定义(见6.5.6和6.5.7);
一增加了xmldsigl1-schema.xsd和xmldsigl-schema.xsd的定义(见附录C中C.2和C.3);增加了密码杂凑算法SM3.消息鉴别算法HMAC-SM3.签名算法SM2-SM3的定义(见附录D中D.3.2、D.4.3和D.5.3);
增加了XML规范化1.1算法和独占XML规范化1.0算法(见附录D中D.6.3和D.6.4)。请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别这些专利的责任本标准由全国信息安全标准化技术委员会(SAC/TC260)提出并归口。本标准起草单位:北京信安世纪科技股份有限公司、格尔软件股份有限公司、数安时代科技股份有限公司、国家密码管理局商用密码检测中心。本标准主要起草人:汪宗斌、刘婷、郑强、张永强、吕春梅、焦靖伟、史晓峰本标准所代替标准的历次版本发布情况为:GB/T25061—2010.
nKaeerKAca-
1范围
信息安全技术
XML数字签名语法与处理规范
GB/T25061—2020
本标准规定了创建和表示XML数字签名的处理规则、签名语法、附加的签名语法和证实方法。本标准适用于制作和处理XML数字签名的应用程序、系统或服务。2规范性引用文件
下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。GB/T1988信息技术信息交换用七位编码字符集信息技术通用多八位编码字符集(UCS)GB/T13000
GB/T16264.8-2005信息技术开放系统互连目录第8部分:公钥和属性证书框架GB/T18793—2002信息技术可扩展置标语言(XML)1.0GB/T20518—2018信息安全技术公钥基础设施数字证书格式GB/T35276—2017信息安全技术SM2密码算法使用规范RFC2045基于多用途互联网邮件扩展第1部分:互联网消息体格式(MultipurposeInternetMail Extensions(MIME)Part One:Format of Internet MessageBodies)RFC3279互联网X.509公钥基础设施的算法和标识符证书和证书撤销列表轮廊[Algorithmsand Identifiers forthe InternetX.5o9 PublicKey Infrastructure Certificate and Certificate RevocationList (CRL)Profile
RFC3986统一资源标识符(URI):通用语法[UniformResourceIdentifier(URI):GenericSyntax]
RFC4514轻型目录访问协议(LDAP):甄别名的字符串表示[LightweightDirectoryAccessProtocol (LDAP): String Representation of Distinguished NamesRFC5480椭圆曲线密码主体公钥信息(EllipticCurveCryptographySubjectPublicKeyInformation)
3术语、定义和缩略语
3.1术语和定义
GB/T18793—2002界定的以及下列术语和定义适用于本文件。3.1.1
分离签名detached signature
签名于Signature元素以外的内容上,签名和数据对象位于不同XML文档中的XML签名文档的组织形式。
rrKaerkAca-
GB/T25061—2020
envelopingsignature
封内签名
签名于Signature元素中的Object元素之上,以Signature为父元素,将原始文档包含在Signature中的XML签名文档的组织形式。
封皮签名
enveloped signature
签名于整个XML内容之上,然后将Signature作为子元素插人到原始文档中的XML签名文档组织形式。
签名Signature
签名者使用私钥对待签名数据的杂凑值做密码运算得到的结果。注:XML签名有三种描述方式:分离签名、封内签名和封皮签名。3.1.5
签名应用程序
signatureapplication
实现了Signature元素类型的结构及其子结构的应用程序。3.1.6
transform
把一个数据从原始状态转化成导出状态的处理,示例:XML规范化,XPath和XSLT变换等2符号和缩略语
下列符号和缩略语适用于本文件。?:前一符号出现0次或1次
十:前一符号出现1次或多次
*:前一符号出现0次、1次或多次CA:证书认证机构(CertificateAuthority)CRL:证书撤销列表(CertificateRevocationList)HTTP:超文本传输协议(HypertextTransferProtocol)MIME:基于多用途互联网邮件扩展(MultipurposeInternetMailExtensions)OID:对象标识符(ObjectIdentifier)PKI:公钥基础设施(PublicKeyInfrastructure)URI:统一资源标识符(UniversalResourceIdentifier)XML:可扩展置标语言(ExtensibleMarkupLanguage)XPath:XML路径(XMLPath)
XSL:可扩展样式表语言(ExtensibleStylesheetLanguage)XSLT:XSL变换(Extensible Stylesheet LanguageTransformations)4XML签名概述
4.1概述
本章描述了XML数字签名的结构,第5章给出了处理规则、第6章签名语法和第7章附加的签名rKaeerKAca-
语法,XML格式要求见GB/T18793一2002GB/T25061—2020
XML签名可通过间接方式作用于任意数据对象,处理的步骤是先对数据对象进行杂凑处理,处理后的结果放置在一个元素中,再对得到的元素进行杂凑处理并且通过密码学方法进行签名。XML数字签名使用Signature元素来表示,其结构如下:
()?
)+
()?
(