JT-T-1021-2016交通运输信息系统基于XML的数据交换规则_第1页
JT-T-1021-2016交通运输信息系统基于XML的数据交换规则_第2页
JT-T-1021-2016交通运输信息系统基于XML的数据交换规则_第3页
JT-T-1021-2016交通运输信息系统基于XML的数据交换规则_第4页
JT-T-1021-2016交通运输信息系统基于XML的数据交换规则_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

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

文档简介

中华人民共和国交通运输行业标准交通运输信息系统基于XML的数据交换通用规则Transportationinformationsystem—XMLbaseddata2016-02-02发布2016-04-10实施中华人民共和国交通运输部发布I Ⅲ 1 1 1 2 36数字签名与验证、数字加密与解密及数据压缩与解压 5附录A(资料性附录)通用规则中W3CXMLSchema数据类型 附录B(规范性附录)数据交换包的XMLSchema 21附录C(资料性附录)数据交换包的XML格式应用实例 27附录D(资料性附录)基于WebService方式的数据交换包的XML格式应用实例 附录E(资料性附录)XML加密粒度说明应用实例 本标准起草单位:长安大学、交通运输部公路科学研究院、北京中交国基于XML的数据交换通用规则GB/T20518信息安全技术公钥基础设施数字证书格式GB/T25069信息安全技术术语JT/T697.1交通信息基础数据元第1部分:总则[GB/T20518—2006,定义3.7]20(表示false)布尔型:True/False;0/1日期型:YYYY;YYYYMM;YYYYMMDD时间型:hhmmss日期时间型:YYYYMMDDhhmmssIEEE单精度32位浮点数33日期时间数字签名消息表1(续)字符型:a..m;an..m;am;an以base64编码保存的任意二进制数据二进制型 容,而不需要包含交换数据的描述信息。通用数据交换包由数据包头、数据包体两部分组成:述、数据压缩标识、数据压缩方法、压缩数据描述、交换协议版本号、消息序列号以及数据包总②②③4数据交换包组成元素及属性见表2。XML标签名出现次数数据类型M标识数据包基本信息的节点MM信息00M该数据包的唯一参考号M发送方标识识,由网络服务提供商M识,由网络服务提供商分配M数据包生成日期该数据包生成的日期M数据包生成时间该数据包生成的时间M标识是否有数字签名0000该数据包中被加密数据的简要描述05XML标签名出现次数数据类型000交换协议版本号M发送包的顺序序列号MM之间需要交换的数据的部分M标识每一条需要交换的M注2:“0..1”——不出现或出现一次;“1..1”——出现且仅出现一次;“1..n”—简体数据交换包不含数据包头部分,数据包体部分的要求与通用数据交换包相同。附录D给出了6是否签名是是否加密是是需要解压是是否是校验签名是签名有效否否否否否6.2.2XML数字签名规范文档XML数字签名规范文档结构XML数字签名规范文档由Signature元素表示,具有以下结构:XML数字签名规范文档元素XML数字签名规范文档元素说明见表3。7XML数字签名的根元素,包括<Signedlnfo>、<Signa<Object>4个子元素,其中<SignedInfo>和<SignatureValue>元素应出现且仅能出现1次包含了被签名数据的相关信息,是XML数字签名的核心元素,包括<CizationMethod>、<SignatureMethod>、<Reference>3个子元素描述了规范化算法、数字签名对被签名对象的计算过程范化算法即为在被签元素做签名运算之前对其做规上相同,应出现且仅能出现1次描述了将已规范化过的<SignedInfo>元素转换为数字签描述了被签名对象的相关信息,如位置信息、摘要算法<Transforms>、<DigestMethod>、<DigestValue由若干有序的<Transform>子元素组成,为可选元素。它们描述了签名者如何获取签名对象。第一个元素的输入参数由<Reference>元素的URI指定,最后一个<Transform>的输出是摘要算法<DigestMet描述了对相应数字签名对象使用的摘要算法。本标准建议使8(可选)否签名生成(Signature引用生成(ReferenceGeneration)过程是9否是否否是是是否否是2)对<Signedlnfo>元素中的每一个<Reference>元素进行摘要值校验;b)签名确认过程:2)使用<CanonicalizationMethod>指定的规范化算法获取<SignatureMethod>的规范化形3)若签名确认成功则整个校验过程成功,否则失败。XML数据加密规范文档结构<EncryptedDataId?Type?Mime<CipherValue>I<CipherReferXML数字加密规范文档元素说明见表4。对加密的粒度、编码方式等进行说明表4(续)说明加密所使用的密钥信息描述一个被加密密钥封装或关联生成的加密数据,且CipherData应包含子元素Cip描述密文数据的引用对与加密相关的其他信息进行说明6.3.3XML数字加密及解密处理过程XML数字加密及解密处理的简要流程见图5。6.3.4XML数字加密类型XML数字加密规范按照加密粒度的不同进行了分类,本标准中采用如下两种加密粒度:a)数据包体加密:将XML文档中元素的子元素或者元素中的字符内容作为加密对象,用<EncryptedData>元素替换相应被加密对象;b)多重加密:将XML文档中的一个或多个<EncryptedData>元素作为加密对象,并用新生成的<EncryptedData>元素替换相应被加密对象。Schema内置的数据类型的层次结构,见图A.1。NMTOKEN·定义:用于规定URI。即表示一个统一资源标识符(URI)的引用。anyURI值可以是绝对·文档中的元素声明示例:<picsrc="/image·定义:以base64编码保存的任意二进制数据。其值只能由a~z、A~Z、0~9和加号(+)·定义:用于规定true或false值;·文档中的元素声明示例:<prizedisabled表示月份(必需),DD表示日(必需);·文档中的元素的声明示例:<start>2002-09-24</start>。表示年份(必需),MM表示月份(必需),DD表示日(必需),T表示必需的时间部分的起始(必需),hh表示小时(必需),mm表示分钟(必需),ss表示秒(必需),sss表示毫秒数(可选);●文档中的元素声明示例:<startdate>2002-05-30T09:00:00</startdate>。式要求添加时区偏移表达式,合法时区偏移值为-14:00~+14:00或者字符“Z”;Schema中日期时间声明示例:<xs:elementname="starttime"type="xs:dateTimeStamp"/>;<starttime>2004-04-12T13:20:00-05:00</s·文档中的元素示例:<price>999.50</price>。·定义:代表64位的有符号整数。最大值为2³-1,最小值为-26³;·文档中的元素示例:<price>9999·定义:代表16位的有符号整数。最大值为2¹⁵-1,最小值为-2¹⁵;·定义:代表8位的有符号整数。最大值为2⁷-1,最小值为-2⁷;·文档中的元素示例:<byteValu<xs:elementname="age"type="xs:nonNegativeInteger"/>;<xs:elementname="posValue"type="xs:positiveInteger"/>;<xs:elementname="unsignedLongValue"type=·文档中的元素示例:<unsignedLong<xs:elementname="unsignedIntValue"type="<xs:elementname="unsignedShortValue"type="xs:unsignedS<xs:elementname="unsignedByteValue"type="xs<xs:elementname="nonPosValue"type="xs:nonPos·定义:表示无限制的负整数,即仅包含负值的整数(...,-2,-1),最大值为-1;<xs:elementname="negValue"type="xs:neg·Schema中双精度浮点数的声明示例:<xs:elementname="double"type="xs:<xs:elementname="period"type="xs:day<xs:elementname="period"type="xs:yearMonthDuration"/>;<xs:elementname="planetQualit●定义:表示每月都出现的特定的一天,其格式为:---DD,前面的三个连字符是必●在文档中gDay元素的声明示例:<myDay>---06</myDay><!--每月的●在文档中gMonth元素的声明示例:<myMonth>--05<myMonth/><!--<xs:elementname="myMonth"type=·Schema中gYear类型的声明示例·文档中gYear元素的声明示例:<myYear>-0050</myYear><!--公元前前面添加减号(-);<xs:elementname="myYearMonth"type="xs:gYearMont<notationid=IDname=NCNamepublic=anyURIsystem=anyURIany<?xmlversion="1.0"?><xs:schemaxmlns:xs="/2001/XMLSc<xs:notationname="gif"public="image/gif"system="view.<xs:notationname="jpeg"public="image/jpeg"system="view.exe"/><xs:attributename="type"use="required"><xs:restrictionbase="x<xs:enumerationvalue="gif"/><xs:enumerationvalue="jpeg"/><myQNamexmlns:bks="/books">bks:book</myQ·文档中的元素示例:<customer>JohnSmith</customer>。·定义:规格化字符串数据类型源自于字符串数据类型。规格化字符串数据类型同样可包<xs:elementname="customer"type="xs:n·文档中的元素声明示例:<customer>JohnSmith</customer>。·定义:源自于字符串数据类型。Token数据类型同样可包含字符,但是XML处理器会移·Schema中有关token声明示例:<xs:elementname="customer"type="xs:token"/>;<xs:elementname="speaking"type="xs:language"/>;NCName"/>;<xs:attributename="shipID"type="xs:ID"use·Schema中IDREF类型的声明示例:<xs:atributename="s声明过的ID类型的值-->。·定义:该属性值应是一个合法的XML名称,同时指定了该属性值是字符串数据。限头);NMTOKEN"/>;<?xmlversion="1.0"encodin<xs:schemaxmlns:xs="/2001/XMLSchema"elementFormDefaulttributeFormDefault="unqu<xs:elementname="DataSharingPacket"><xs:documentation>共享数据包</xs:documentation><xs:elementref="DataPacketHeader"minOccurs="0"/><xs:elementref="DataPac<xs:elementname="Data<xs:documentation>数据包头</xs:documentation>ref="DataPacketFunction"/>ref="DataPacketRefID"/>ref="RecipientID"maxOccurs="unbounderef="DataPacketGenDref="DataPacketGenTref="DataSigID"minOccurs="0"ref="DataSigDesc"minOccref="DataEncID"minOccursref="DataEncMethod"minOccursref="EncDataDesc"minOccurs="0"/>ref="ComDataID"minOccursref="ComDataMethod"minOccursref="ComDataDese"minOccurs="O"/>ref="ExProtocolVersionNref="DataPacketsAmou<xs:elementname="DataPacketID"><xs:documentation>数据包标识</xs:documentation>ref="NameOfDataPacketref="DataPacketVersion"minOref="ControllingAgency"minO<xs:elementname="NameOfData<xs:documentation>数据包标识名称</xs:documentation><xs:elementname="DataPacketVersion<xs:documentation>数据包版本</xs:documentation><xs:restrictionbase="<xs:elementname="ControllingAgency"><xs:documentation>控制机构</xs:documentation><xS:restrictionbase="xs:<xs:elementname="DataPa<xs:documentation>数据包功能</xs:documentation><xs:restrictionbase="xs:string"><xs:maxLengthvalue="35"/><xs:elementname="DataPacke<xs:documentation>数据包参考号</xs:documentation><xs:restrictionbase="xs:string"><xs:maxLengthvalue="35"/><xs:documentation>发送方标识</xs:documentation><xs:restrictionbase="xs:string"><xs:maxLengthvalue="70"/><xs:documentation>接收方标识</xs:documentation><xs:restrictionbase="xs:string"><xs:elementname="DataPacketGenDate"type="xs:date"><xs:documentation>数据包生成日期</xs:documentation><xs:elementname="DataPacketGenTime"type="xs:time"><xs:documentation>数据包生成时间</xs:documentation><xs:elementname="DataSigID"type="xs:boolean"><xs:documentation>数字签名标识</xs:documentation><xs:elementname="DataSigDesc"><xs:documentation>签名数据描述</xs:documentation><xs:restrictionbase="xs:string"><xs:maxLengthvalue<xs:elementname="DataEncID"type="xs:boolean"><xs:documentation>数据加密标识</xs:documentation><xs:elementname="DataEncMethod"><xs:documentation>数据加密方法</xs:documentation><xs:restrictionbase="xs:string"><xs:maxLengthvalue="16<xs:documentation>加密数据描述</xs:documentation><Xs:restrictionbase="<xs:elementname="ComDataID"type="xs:boolean"><xs:documentation>压缩数据标识</xs:documentation><xs:elementname="ComDataMethod"><xs:documentation>数据压缩方法</xs:documentation><xs:restrictionbase="xs:string"><xs:maxLengthvalue="16"/><xs:elementname="Com<xs:documentation>压缩数据描述</xs:documentation><Xs:restrictionbase="xs:string"><xs:maxLengthvalue="100"/><xs:elementname="ExProtoc<xs:restrictionbase="<xs:maxLengthvalue="70"/><xs:elementname="MessageSequeNum"><xs:restrictionbase="xs:string"><xs:maxLengthvalue="70"/><xs:elementname="DataPacketsAmount"><xs:documentation>数据包总数量</xs:documentation><xs:restrictionbase="xs:int"><xs:minInclusivevalue="1<xs:maxInclusivevalue=<xs:elementname="Data<xs:documentation>数据包体</xs:documentation><xs:elementref="DataItem"maxOccurs="un<xs:elementname="Dataltem"type="xs:anyTy<xs:documentation>数据项</xs:documentation>数据交换包的XML格式应用实例C.1应用实例说明发送方:QingdaoQianwanContainerTerminalCo..Ltd(青岛前湾集装箱码头有限责任公司):接收方:KMT(高丽海运);报文生成日期:2012年10月1日;报文生成时间:14:20:00。箱号:KMTU789456;空重:重箱;尺寸类型:20G0;进场日期:2012年9月19日2:23:15:堆场位置:E1735E1:提单号:KMTCHIJ003398。C.2应用实例<?xmlversion="1.0"encoding="UTF-8"?><DataSharingPacketxmlns:xsi="/2001/XMLSchema-inxsi:noNamespaceSchemaLocation="DataSharingPacket.xsd"><NameOfDataPacketID>数据交换包</NameOfDataPacketID><DataPacketRefID>1</DataPacketRefD><RecipientID>KMT</Rec<!--数据包生成日期/时间--><DataPacketGenDate>2012-10-01</DataPacketGenDate<DataPacketGenTime>14:20:00</DataPac<!--数字签名标识,这里为true,表示对当中的数据进行了签名处理。--><DataSigID>true</Da<!--对被签名数据进行简要描述--><DataSigDese>对XML格式的设备细目数据进行了数字签名。</DataSigDesc><!--数字签名标识,这里为true,表示对当中的数据进行了签名处理。--><DataEncID>true</Da<!--采用的加密方法。--><DataEncMethod>3DES</DataE<!--对所加密的数据进行的简要描述。--><EncDataDese>对已签名的XML格式的设备细目数据进行了加密。</EncDataDesc><!--数字压缩标识,这里为false,表示对当中的数据不进行压缩处理。--><ComDatalD>false</C<!--对交换协议版本号进行的简要描述--><ExProtocolVersionNum>0x010x020x0F</ExProtocolVe<!--对消息序列号进行的简要描述--><MessageSequeNum>1</Message<DataPacketsAmount>1</DataPack<EquipmentIDNumber>KMTU789456</Equipment<EquipmentSizeAndTypeCode>20G0</EquipmentSizeA<DateValue>201209192:23:15</DateValue><LocationCode>E1735E1</Loca<ReferenceNumber>KMTCHIJ003398</ReferenceNumber><?xmlversion="1.0"encoding="UTF-8"?><DataSharingPacketxmlns:xsi="/2001/XMLSchema-instance"xsi:noNamespaceSchemaLocation="DataSharingPacke<NameOfDataPacketID>数据交换包</NameOfDataPacketID><DataPacketRefID>1</DataPacketRefI<RecipientID>KMT</Rec<!--数据包生成日期/时间--><DataPacketGenDate>2012-10-01</DataPacketGenDate<DataPacketGenTime>14:20:00</DataPac<!--数字签名标识,这里为true,表示对当中的数据进行了签名处理。--><DataSigID>true</Da<!--对被签名数据进行简要描述--><DataSigDesc>对XML格式的设备细目数据进行了数字签名。</DataSigDesc><!--数字签名标识,这里为true,表示对当中的数据进行了签名处理。--><DataEncID>true</Da<!--采用的加密方法。--><DataEncMethod>3DES</DataE<!--对所加密的数据进行的简要描述。--><EncDataDesc>对已签名的XML格式的设备细目数据进行了加密。</EncDataDesc><!--数字压缩标识,这里为false,表示发送之前不对数据进行压缩处理。--><ComDataID>fasle</C<!--对交换协议版本号进行的简要描述--><ExProtocolVersionNum>0x010x020x0F</ExProtocolVe<!--对消息序列号进行的简要描述--><MessageSequeNum>1</Message<DataPacketsAmount>1</DataPack<!--以下是数据加密后生成的XML片段--><xenc:EncryptedDataxmlns:xenc="Type="/2001/04/xmlenAlgorithm="/2001/04/xmlenc#aes128<ds:KeyInfoxmlns:ds="/2000/09/xmldsig#">xmlns:xenc="/2001/04/xmlenc#">Algorithm="/2001/04/xmlenc#kw-tripledes"/>(资料性附录)基于WebService方式的数据交换包的XML格式应用实例D.1应用实例说明数据发送方针对数据请求方返回的数据信息示例说明,见图D.1。D.2应用实例<DataSharingPacketxmlns:xsi="/2001/XMLSchexsi:noNamespaceSchemaLocation="DataSharing<EquipmentIDNumber>KMTU789456</Equipment<EquipmentSizeAndTypeCode>20G0</EquipmentSizeAn<DateValue>201209192:23:15</<LocationCode>E1735E1</Loca<ReferenceNumber>KMTCHIJ003398</ReferenD.3签名及加密应用实例xmlns:xsi="/2001/XMLSchema-ixsi:noNamespaceSchemaLxmlns:xenc="/2001/04/x="/2001/04/xmlenc#CAlgorithm="/2001/04/xmlenc#aes128-cbc"xmlns:xenc="/2001/04/xm<ds:KeyInfoxmlns:ds="/2000/09/xmldsig#"><xenc:EncryptedKeyxmlns:xenc="/2001/04/xmlenc#">Algorithm="/2001/04/xmlenc#kw-trixmlns:xenc="/2001/04/xm<xenc:CipherDataxmlns:xenc="/2001/04/xmlenxmlns:xenc="/2001/04/xmlenc#"><xenc:CipherDataxmlns:xenc="/2001/04/xmlenc#"><xenc:CipherValuexmlns:xenc="/2001/04/xmlesdrD4/5HMOXOxPPELU7Wt6Il(资料性附录)<?xmlversion=<PaymentInfoxmlns='/<CreditCardLimit='5,<Number>4019244502775567</Number><Is

温馨提示

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

评论

0/150

提交评论