- 您的位置:
- 标准下载网 >>
- 标准分类 >>
- 国家标准(GB) >>
- GB/T 20520-2006 信息安全技术 公钥基础设施 时间戳规范

【国家标准(GB)】 信息安全技术 公钥基础设施 时间戳规范
本网站 发布时间:
2024-06-30 07:24:28
- GB/T20520-2006
- 现行
标准号:
GB/T 20520-2006
标准名称:
信息安全技术 公钥基础设施 时间戳规范
标准类别:
国家标准(GB)
标准状态:
现行-
发布日期:
2006-08-30 -
实施日期:
2007-02-01 出版语种:
简体中文下载格式:
.rar.pdf下载大小:
2.04 MB
标准ICS号:
信息技术、办公机械设备>>35.040字符集和信息编码中标分类号:
电子元器件与信息技术>>信息处理技术>>L80数据加密

点击下载
标准简介:
标准下载解压密码:www.bzxz.net
本标准规定了时间戳系统部件组成、时间戳的管理、时间戳的格式和时间戳系统安全管理等方面的要求。本标准适用于时间戳系统的设计和实现,时间戳系统的测试和产品采购亦可参照使用。 GB/T 20520-2006 信息安全技术 公钥基础设施 时间戳规范 GB/T20520-2006

部分标准内容:
ICS35.040
中华人民共和国国家标准
GB/T20520—2006
信息安全技术
公钥基础设施
时间戳规范
Information security technology--Public key infrastructure-Timestampspecification
2006-08-30发布
中华人民共和国国家质量监督检验检疫总局中国国家标准化管理委员会
2007-02-01实施
1范围
2规范性引用文件
术语和定义
缩略语
5时间截系统的组成
6时间戳的产生和颁发
申请和颁发方式
可信时间的产生方法
时间的同步
申请和颁发过程
7时间戳的管理
时间截的保存
时间戳的备份
时间截的检索
时间戳的删除和销毁
时间戳的查看和验证
8时间戳的格式
对TSA的要求
密钥标识
时间的表示格式
时间截申请和响应消息格式
保存文件
所用MIME对象定义
时间戳格式的安全考虑,
9时间戳系统的安全
9.1物理安全
9.2软件安全
参考文献
TKAoNTKAca-
GB/T20520—2006
本标准由全国信息安全标准化技术委员会提出并归口。本标准起草单位:中国科学院信息安全国家重点实验室。本标准主要起草人:冯登国、张凡、荆继武、庄、张立武、路晓明。GB/T20520-2006
GB/T20520—2006
-KAoNiKAca-
本标准主要对时间戳协议的请求响应消息格式做出了规定,并在此基础上增加了对时间截的产生和颁发方式、时间戳系统组成、时间戳管理、时间戳系统安全的要求。本标准参考了国内外的相关时间戳规范,最大程度地保证标准的互操作性,保证了TSA的互操作性、TSA和时间戳的安全性以及TSA的时间精确性,为开发时间截产品提供了可依据的标准。本标准凡涉及密码算法相关内容,按国家密码管理部门相关规定执行。算法均为举例性说明,具体使用时均须采用同家密码管理部门批准的相CHINA
本标准例子中提及的密
应算法。
1范围
信息安全技术公钥基础设施
时间戳规范
GB/T20520—2006
本标准规定了时间戳系统部件组成、时间戳的管理、时间截的格式和时间戳系统安全管理等方面的要求。
本标准适用于时间戳系统的设计和实现,时间截系统的测试和产品采购亦可参照使用。2规范性引用文件
下列文件中的条款通过本标准的引用而成为本标准的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本标准,然而,鼓励根据本标准达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本标准。GB17859-1999计算机信息系统安全保护等级划分准则GB/T20518一2006信息安全技术公钥基础设施数字证书格式GB/T20273--2006信息安全技术数据库管理系统安全技术要求GB/T20271一2006信息安全技术信息系统通用安全技术要求RFC2630加密消息语法
3术语和定义
下列术语和定义适用于本标准。3.1
时间载timestamp
使用数字签名技术产生的数据,签名的对象包括了原始文件信息、签名参数、签名时间等信息。TSA对此对象进行数字签名产生时间截,以证明原始文件在签名时间之前已经存在。3.2
可信时间
trustedtime
准确的.值得信赖的当前时间值,这个时间值的来源应是高度权威的。3.3
时间戳机构timestampauthority用来产生和管理时间戳的权威机构。3.4
时间戳协议
timestampprotocol
由本标准规定的一系列规范,包括时间戳的格式、各部件交流的消息格式、时间戳的颁发方式等内容。3.5
时间戳服务timestampservice
时间戳机构给用户提供的颁发时间戳服务,由用户提供文件,时间截机构给此文件签发时间截3.6
请求方requester
向TSA系统发出申请时间截请求的人、硬件或者软件。1bzxZ.net
GB/T20520—2006
4缩略语
下列缩略语适用于本标准:
CA认证机构(CertificationAuthority)CRL
证书撤销列表(CertificateRevocationList)文件传输协议(FileTransferProtocol)在线证书状态协议(OnlineCertificateStatusProtocol)对象标识符(ObjectIdentifier公开密钥基础设施(PueKeyInfrastructure)时间戳机构(TimeStampAuhority)时间戳协议(T
SmeProtocol)
协调世界时
超文本保
1TimeCoordinated)
TextTr
rotocol
网络邮件扩充协议(MultipurposeInternetMailExtension)多用途
时间戳系统的
包括三个部分:
时间截系统至
间0O印TSA的时间来源
-TKAONKAca-
可信时间
,TSA系统中的所有部件的时间都应以这个可信时间源为标D发的时间戳中填写的时间应严格按照准,尤其
其或者
集可信时间源填写。而作为可信时间源自身,可部门发布的时间,或者是用国家权威时间部门认可的硬件和方法获家权威时间
提的实
得的时
此外,TSA应估算从
可信时间源到TSA的时间传递过程中可能出现的误差,TSA能误差作为其可信程度的
个标志
签名系统:负责接收时间申请、验证申请合法性以及产生和颁发时间载,最后将时间戳存储b)
到数据库
截的产生
这个过程中,申请消息和颁发时间截格式都要符合第8章所规定的格式,而时间发应符合第6章给出的要求
负责保存
TSA系统颁发的时间截,而且应定期备份/对时间截数据库的存储、时问戳数据
7章给
合出的规定。
备份和检索应
时问戳系统的结构
6时间戳的产生和颁发
6.1申请和颁发方式
新示:
可信时间源
签名系统
时间戳系统结构
时间截数据库
TSA可以通过不同的方式接收时间戳申请和颁发时间戳,但应至少支持下列四种方式的其中一种:通过电子邮件申请。用户使用电子邮件向一个TSA指定的电子邮件地址发送时间戳申请,而ao
TSA也将颁发的时间截通过电子邮件返回给用户。申请与颁发使用的MIME对象在第8章中说明。
GB/T20520—2006
b)通过文件传输申请。用户将申请消息的编码存储在一个文件中,文件被传送给TSA后,TSA同样将产生的时间截保存在一个文件中传给用户。文件的传送可以使用任意可信赖的方法,例如使用FTP协议。
c)通过套接字(Socket)申请。TSA在计算机的某个端口监听用户发来的申请,而用户在与TSA计算机的这个端口建立一个安全的套接字连接后,把申请消息发给TSA。最后TSA同样把产生的时间截在这个连接上发给用户。d)通过HTTP申请。用户连上TSA的申请网页后,使用网页产生申请消息,然后通过HTTP协议将申请消息传送给TSA,而TSA也随后通过HTTP协议发回时间截。6.2可信时间的产生方法
可信时间的最初源头应来源于国家权威时间部门(如国家授时中心),或者使用国家权威时间部门认可的硬件和方法获得的时间。可以使用以下的一种或多种方法获得时间:使用某种无线接收装置,通过无线手段获得国家权威时间部门的时间发布,如长波信号、卫星a)
信号等。
h)使用某种时间同步协议从一个指定网络地址获得时间。该网络地址发布的时间和使用的时间同步协议都应是可信的,且通过了国家权威时间部门认可。c)使用某种通过国家权威时间部门认证的硬件获得时间,如使用原子钟等,考虑到任何一种方法都可能产生误差,TSA可以使用多种方法产生可信时间,以保证时间的精确度。通过多种方法产生最终可信时间应该是产生的多个可信时间的折衷。TSA应该给出一个可靠方案,该方案要考虑每种方法的可能误差和可信程度,对它们的结果做出一个加权平均,获得最终结果。6.3时间的同步
TSA系统各部件根据可信时间同步自身的时间,这一行为应满足下列条件:a)在获得可信时间后,TSA应迅速根据可信时间对所有部件的时间进行调整(尤其是最关键的签名系统),TSA应该保证这一过程尽可能的快,并且尽可能保证其不被打断b)为了保证TSA各个部件的时间精确性,TSA应该定期从可信时间源获得可信时间,再根据可信时间检查自身时间,与可信时间源保持时间同步。每次同步的间隔时间应该是一个比较短的时间。具体时间视TSA的运行策略以及运行TSAc)
的硬件或软件时钟的可靠性而定,但应取得尽可能大的安全性,并且不应长于30min。每次同步的间隔时间应该是可配置的,在TSA运行的策略和环境变化后,可以调整这一时间d)
间隔以取得尽可能大的安全性,e)TSA各个部件应该采取统一行动检查并同步时间,不允许出现一个部件检查同步了而其他部件却不行动的情况。
f)在启动TSA系统的过程中,可信时间源应是第-个启动的部件。而且在TSA开始工作之前,时间同步应该先进行一段时间,以保证TSA开始颁发时间戳时,各部件的时间已经同可信时间源同步过了。
g)在定期同步时间的过程中,如果获得可信时间失败或者发现收到的时间信息被筹改,TSA系统应该立即停止接受时间戳申请和时间同步,同时向管理者发出警报并写人审计日志。6.4申请和颁发过程
无论TSA的运行方式使用6.1中说明的哪一种方法,整个申请和颁发时间截的过程至少应该包括以下基本过程:
a)用户通过6.1中说明的一种方法,向TSA提交申请请求,请求消息的格式应该符合第8章的规定。b)TSA的签名系统接收到申请请求后,根据第8章中对时间截格式的说明,对请求消息的合法性进行检查。
GB/T20520—2006
TKAoNiKAca=
如果请求消息不合法或者由于某种内部原因TSA无法颁发这个时间戳,TSA应该产生一个时间戳的失败响应,其格式也应该遵循第8章的规定。在其中TSA应该详细填写申请被拒绝的原因。
d)如果请求消息合法,且系统也正常运转,TSA的签名系统就应该根据第8章中说明的时间戳格式,填写正常的时间戳并签名TSA签名系统通过可信通道把新生成的时间截发送给时间截数据库,由时间戳数据库将其归e)
档保存。而由于申请被拒绝而产生的时间戳失败响应,应该由TSA本身的策略决定是否将其保存,本标准不作硬性规定。
f)TSA通过与用户申请方式对应的颁发方式,将新生成的时间戳发给用户。用户在收到时间戳后,应该使用TSA的证书验证时间戳的合法性,并检查时间戳内容是否有g)
错误。如果时间戳不合法或者有错误,用户应该立即向TSA管理者报告异常情况,TSA机构应该提供一个用户反馈渠道,在用户发现异常情况时可以通过此渠道通知管理员。如果时间戳一切正常,用户可以自行保存此时间戳,以备后用。h)如果管理员收到用户的异常报告,应该立即检查审计日志和时间戳数据库,找出错误原因所在。TSA应该对这种情况准备有完备的处理预案。7时间戳的管理
7.1时间戳的保存
7.1.1在TSA方的保存
在TSA系统中,时间戳数据库应该负责保存由此TSA产生的所有时问戳。该时间截数据库应符合9.2.4对数据库的要求。
考虑到空间限制,时间截数据库可以在一定时间后或者数据库中的数据达到一定的量后,将数据库中的所有数据转移到它处,而将其自身清空。这一过程只能由管理员执行,并且转移后的保存要符合7.2对时间戳备份的要求。
对于每一个时间戳,时间戳数据库在保存它们时至少要保存以下相关信息:a)时间截入库的时间;
b)时间戳的序列号;
c)时间戳的完整编码。
除此之外,对于时间戳的保存,应考虑今后可能的用途,如用户查询、取证,存储的必要信息应便于今后使用。
7.1.2在用户方的保存
在用户收到时间戳后,用户自行将时间戳保存在一个文件中。由用户自行保证时间戳的安全性,如果保存的时间戳发生了问题,用户可以向TSA机构申请取回自已的时间截。7.2时间戳的备份
时间戳应按如下要求备份:
每隔一定时间,管理员应该备份时间戳数据库的所有数据;a)
备份所使用的介质应符合9.1的要求;备份应该使用异地备份的方式;c
备份数据应该是以方便检索的方式存放;d)
备份数据的访问应在有管理员在场的时候进行;e)
备份数据不一定需要加密或签名,但如果使用,所选择的算法应符合国家密码管理部门的相关f)
规定。
7.3时间戳的检索
GB/T20520-2006
TSA应该给用户提供一个能够方便的检索时间截的环境,使用户可以通过网络或者面对面的方式检索和获得时间戳。
TSA提供给用户检索的时间截应该不仅仅是时间截数据库中保存的时间戳,还应该包括以前备份的时间戳截。
TSA应该至少支持通过以下三种信息检索时间戳:a)根据时间戳入库的时间检索,允许检索出多个结果,再由用户自行选择;b)根据时间戳截的序列号检索,由于序列号唯一,这种检索应该只有唯一一个结果;c)根据时间戳的完整编码检索,这种检索也应该只有唯一一个结果时间戳的检索结果可以通过6.1的颁发方式发给用户,也可以通过另外的可靠方式,如使用IC卡、光盘等,让用户带回。
7.4时间戳的删除和销毁
7.4.1时间戳的删除
当TSA系统由于内部错误或者外部攻击导致产生错误的时间戳时,应该允许删除时间戳数据库中的错误数据。
所有从时间截数据库中删除的时间截应先进行备份,以备以后审计查询。这种备份数据应与正常备份数据区分开来,单独存放,但同样也需要符合7.2中对备份的要求。所有遭到删除的时间戳应在第一时间在公开渠道公布,如互联网等。公布的时间截信息应该尽可能的详细。
时间戳的删除只能由TSA管理员操作进行。7.4.2时间戳的销毁
在确定时间截已经丧失其价值后,TSA可以完全销毁时间截,即不仅从时间截数据库中删除,也从所有时间截备份中删除。
在时间戳生成后,应经过足够长的时间,时间戳才允许被销毁。这一保存时间应足够长,长到可以确定该时间截已丧失使用价值。此外,保存时间也可以由TSA的策略决定,但TSA应在用户申请时间截时向用户详细说明。但是无论采用什么方法决定保存时间,时间戳都只能在TSA证书失效后销毁。时间戳的销毁只能由TSA管理员操作进行。7.5时间戳的查看和验证
7.5.1时间戳的查看
TSA应该给用户提供一个方便安全的方法查看其须发的时间戳,例如提供一个查看软件等。用户可以凭借此方法查看时间截中所有可查看的内容。7.5.2时间戳的验证
TSA应该给用户提供一个方便安全的方法对其颁发的时间戳进行验证,例如提供一个验证软件或者通过互联网验证等。
验证前,用户应该可以通过CRI或OCSP协议先验证TSA证书的有效性。TSA提供的验证服务应该包括以下两种:使用TSA证书验证用户给定的时间戳是否是由该TSA签发;a)
b)用户提供时间截和源文件,验证该时间戳是否是该文件的时间截。8时间戳的格式
8.1对TSA的要求
完成一个完整的时间戳,TSA系统应满足下列条件:a)拥有一个可信时间源,应满足9.2.2的要求,可信时间的产生要满足6.2的要求;5
GB/T20520—2006
b)在每一个时间戳里都要包含一个可信时间值;在每一个新生成的时间截里都要包含一个一次性随机整数(nonce域);c
只要可能,当从一个请求者处收到一个合法请求时,就要根锯这个请求生成一个时间戳-rKAoNrKAca-
当时间戳生成时,要在其内包含一个唯一的标识符,这个标识符表明了时间截生成时的安全策略
只在数据的散列(Hash)值上盖时间戳,散列函数拥有一个唯一的对象标识符(OID);g)要能够检查单向散列函数的标识符,并且验证数据的散列值长度是否符合该散列函数的结果长度;
除了g)中要求的对散列值长度的检查外,对于输人的散列值数据不做任何其它检查;i)
在时间戳内不包含任何请求方的标识;用专门的密钥对时间戳签名,在密钥相应的证书里应该说明该密钥的这个用途;k)
如果请求方在申请消息的扩展域内提出了一些额外要求并且TSA支持这些扩展,TSA就应该在时间戳内包含相应的额外信息。反之,如果TSA不支持这些扩展,就应该返回一个出错信息。
8.2密钥标识
TSA应有专门的密钥对时间戳消息签名。但一个TSA可以有许多不同的私钥以适应不同的要求,例如适应不同的策略、不同的算法、不同的密钥长度和不同的性能要求。相应的证书也应包含唯一个KeyUsage的扩展域,该域在GB/T20518—2006的5.2.3.2.4中定义。其中的KeyPurposeID应为Id-kp-timestamping:
id-kp-timeStampingOBJECTIDENTIFIER::(iso(I)identified-organization(3)dod(6)internet(1)security(5)mechanisms(5)pkix(7)kp(3)timestamping(8))
8.3时间的表示格式
时间戳中使用的时间应是UTC时间。其精度应至少精确到秒。语法结构为:YYYYMMDDhhmmssE.s...JZ。例如:20031101001326.34352Z。各个位解释如下:
a)YYYY为年份,应是4位数年份如2003;MM为月份,如果月份只有一位数,要加上一个前导0,如01、11;b)1
c)DD为日,如果只有一位数,要加上前导0,如01、20;hh为小时,如果只有~位数,要加上前导0,如00、23;d)
mm为分钟,如果只有位数,要加上前导0,如05、59;f)
ss为秒,如果只有一位数,要加上前导0,如01、59;[.S...门是可选的,表示秒的小数部分。小数点如果出现应是“”,秒的小数部分如果出现,应g
把后面跟的0都省略掉,如果秒的小数部分等于0,则应全部都省略掉,小数点也应省略掉;最后的Z表示这是一个UTC时间。h)
午夜(格林威治时间)应该表示成:“YYYYMMDD0000O0Z”,其中的“YYYYMMDD”表示午夜之后的这一天。
8.4时间戳申请和响应消息格式
8.4.1申请消息格式
时间戳服务申请消息格式如下:6
TimeStampReq·=SEQUENCE
version
messagelmprint
reqPolicy
certReg
extensions
对于各项的具体解释如下:
INTEGERvI(1)),
Messagelmprint,
TSAPolicyld
INTEGER
BOOLEAN
[o]IMPLICITExtensions
GB/T20520—2006
OPTIONAL,
OPTIONAL,
DEFAULTFALSE,
OPTIONAL
版本(version)域表示时间截申请消息格式的版本号,依据本标准写成的申请消息版本为1。域应该包含需要加盖时间截的数据的散列值。该散列值的类型是Octetmessagelmprint
String,它的长
度应是相应散列算法的结果长度(例如:SHA-1算法结果是160位,MD5算法结果是128
Messageln
SEQUENC
hishAlg
goriuhmldentifier
nashed
TETSTRING
essage
ithm域中表示的散列算法应
在has
个已知的散列算去(-
个单向函数)。TSA
金查给出的散列算法是否符
应该机
合国家密码管理部门的相关规定。如果TSA不认识给出的
散列算C这个散列算法不符合国家密码管理部门的相关规定,那TSA应该拒绝提供时间截の并在返回消息中设
bad ald'的ph
Statuslnfo结构。
要指明时间截应核在什么样的安全策略下生成,用户可以设置!如果
要的店
eqPolicy域说明需
策略。
O息中有nonce 域,它是为了在没有可靠的本地时钟的情况下检验响应消息的合法如果
性并防止重放攻击。nonce是
比特的
如果请
个很大的随机数,而且以很高的概率不被重复(例如:一个64在这种情况下,nO1
应被包含在响应消息中,否则响应消息应该被拒绝接受。A中有certReg域且被设
道息中SigningCerifica
该证书由
Tue,则TSA应在其响应消息中给出它的公钥证书,属性的ESSCertID指出,
,正书本身则存放在响应消息
中Sighed Dat
结构的
其他证书
如果请求消息中没给出
公Re域被设为 falses则响应消息中就不必量给出上述证书。certReq域
扩展(extensic
2006中定义。
SA未来给申请消息添加额外信息的一扩展都在GB/T20518-
一种方法
展,无论它是否是关键扩展,要它在请求消息中出现,且又无法被TSA识别,则TSA应该不生成时间戳且返回一个天败信息(anacceptedExtension)。时间戳请求消息不需要给出情求方的身份标识,因为TSA并不验证这个信息(见8.1)。如果在某些情况下TSA需要验证请求方的身份,那么就应进行双向的身份验证。8.4.2响应消息格式
TSA在收到申请消息后,无论申请成功还是失败,都要给请求方发回一个响应消息。该响应消息或者是正确的时间截,或者是包含了失败信息的时间戳。时间戳响应消息的具体格式如下:TimeStampResp::=SEQUENCE
status
timeStampToken
响应消息中的status具体定义如下:PKIStatusInfo=SEQUENCE
status
statusString
PKIStatusInfo,
TimeStampToken
PKIStatus,
PKIFreeText
OPTIONAL,
OPTIONAL
GB/T20520—2006
failnfo
其中PKIStauts有如下定义:
PKIStatus:=INTEGER(
granted
PKIFailurelnfo
(0),
grantedWithMods
rejection
waiting
revocationWarning
revocationNotification
(2),
(3),
OPTIONAL)
(5))
TKAoNTKAca-
如果PKiStatusInfo中的status值为O或者1时,响应消息中的TimeStampTokcn就应出现,否则TimeStampToken就不能出现。
status不能有除PKIStatus外的其他值,如果请求方收到一个不认识的值,查看时间戳时应该报告错误。
如果申请失败,则用statusString给出一个说明失败原因的字符串。而failInfo也用来说明时间戳请求被拒绝的具体原因,具体值如下PKIFailureInfo::BITSTRING
badAlg
badRequest
badDataFormat
timeNotAvailable
unacceptedPolicy
unacceptedExtension
addInfoNotAvailable
systemFailure
(0),
(2),
(5),
(14),
(15),
(16),
(17),
申请使用了不支持的算法
一非法的申请
一数据格式错误
--TSA的可信时间源出现问题
一不支持申请消息中声明的策略申请消息中包括了不支持的扩展一有不理解或不可用的附加信息-系统内部错误!
faillnfo不能有除PKIFailurelnfo外的其他值,如果请求方收到一个不认识的值,查看时间戳时应该报告错误。
TimeStampToken实际上应该是一个Contentlnfo结构,该结构在RFC2630中定义。并且其contenttype应该是一个signeddata contenttypeTimeStampToken ::Contentlnfo-contentType为RFC263o所定义的id-signedData-content为RFC2630所定义的SignedData在ContentInfo定义的SignedData结构中,EncapsulatedContentInfo类中的域有如下意思:a)eContentType是一个对象标识符唯一指定内容的类型。对于一个时间截,它定义为:id-ct-TSTInfo OBJECTIDENTIFIER::-(iso(1)member-body(2)us(840)rsadsi(113549)pkcs(1)pkcs-9(9)smime(16)ct(1)4);b)eContent就是时间戳内容本身,它是一个octetstring。内容应该是下面说明的TSTInfo的DER编码。
TimeStampToken一定不能含有除TSA签名以外的任何签名。而TSA证书的证书标识符(ESSCertID)应作为Signerlnfo的属性包含在SigningCertficate属性里。关于TSTInfo的具体定义如下:
TSTInfo::= SEQUENCE{
version
policy
INTEGER(vI(1)),
TSAPolicyld,
小提示:此标准内容仅展示完整标准里的部分截取内容,若需要完整标准请到上方自行免费下载完整标准文档。
中华人民共和国国家标准
GB/T20520—2006
信息安全技术
公钥基础设施
时间戳规范
Information security technology--Public key infrastructure-Timestampspecification
2006-08-30发布
中华人民共和国国家质量监督检验检疫总局中国国家标准化管理委员会
2007-02-01实施
1范围
2规范性引用文件
术语和定义
缩略语
5时间截系统的组成
6时间戳的产生和颁发
申请和颁发方式
可信时间的产生方法
时间的同步
申请和颁发过程
7时间戳的管理
时间截的保存
时间戳的备份
时间截的检索
时间戳的删除和销毁
时间戳的查看和验证
8时间戳的格式
对TSA的要求
密钥标识
时间的表示格式
时间截申请和响应消息格式
保存文件
所用MIME对象定义
时间戳格式的安全考虑,
9时间戳系统的安全
9.1物理安全
9.2软件安全
参考文献
TKAoNTKAca-
GB/T20520—2006
本标准由全国信息安全标准化技术委员会提出并归口。本标准起草单位:中国科学院信息安全国家重点实验室。本标准主要起草人:冯登国、张凡、荆继武、庄、张立武、路晓明。GB/T20520-2006
GB/T20520—2006
-KAoNiKAca-
本标准主要对时间戳协议的请求响应消息格式做出了规定,并在此基础上增加了对时间截的产生和颁发方式、时间戳系统组成、时间戳管理、时间戳系统安全的要求。本标准参考了国内外的相关时间戳规范,最大程度地保证标准的互操作性,保证了TSA的互操作性、TSA和时间戳的安全性以及TSA的时间精确性,为开发时间截产品提供了可依据的标准。本标准凡涉及密码算法相关内容,按国家密码管理部门相关规定执行。算法均为举例性说明,具体使用时均须采用同家密码管理部门批准的相CHINA
本标准例子中提及的密
应算法。
1范围
信息安全技术公钥基础设施
时间戳规范
GB/T20520—2006
本标准规定了时间戳系统部件组成、时间戳的管理、时间截的格式和时间戳系统安全管理等方面的要求。
本标准适用于时间戳系统的设计和实现,时间截系统的测试和产品采购亦可参照使用。2规范性引用文件
下列文件中的条款通过本标准的引用而成为本标准的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本标准,然而,鼓励根据本标准达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本标准。GB17859-1999计算机信息系统安全保护等级划分准则GB/T20518一2006信息安全技术公钥基础设施数字证书格式GB/T20273--2006信息安全技术数据库管理系统安全技术要求GB/T20271一2006信息安全技术信息系统通用安全技术要求RFC2630加密消息语法
3术语和定义
下列术语和定义适用于本标准。3.1
时间载timestamp
使用数字签名技术产生的数据,签名的对象包括了原始文件信息、签名参数、签名时间等信息。TSA对此对象进行数字签名产生时间截,以证明原始文件在签名时间之前已经存在。3.2
可信时间
trustedtime
准确的.值得信赖的当前时间值,这个时间值的来源应是高度权威的。3.3
时间戳机构timestampauthority用来产生和管理时间戳的权威机构。3.4
时间戳协议
timestampprotocol
由本标准规定的一系列规范,包括时间戳的格式、各部件交流的消息格式、时间戳的颁发方式等内容。3.5
时间戳服务timestampservice
时间戳机构给用户提供的颁发时间戳服务,由用户提供文件,时间截机构给此文件签发时间截3.6
请求方requester
向TSA系统发出申请时间截请求的人、硬件或者软件。1bzxZ.net
GB/T20520—2006
4缩略语
下列缩略语适用于本标准:
CA认证机构(CertificationAuthority)CRL
证书撤销列表(CertificateRevocationList)文件传输协议(FileTransferProtocol)在线证书状态协议(OnlineCertificateStatusProtocol)对象标识符(ObjectIdentifier公开密钥基础设施(PueKeyInfrastructure)时间戳机构(TimeStampAuhority)时间戳协议(T
SmeProtocol)
协调世界时
超文本保
1TimeCoordinated)
TextTr
rotocol
网络邮件扩充协议(MultipurposeInternetMailExtension)多用途
时间戳系统的
包括三个部分:
时间截系统至
间0O印TSA的时间来源
-TKAONKAca-
可信时间
,TSA系统中的所有部件的时间都应以这个可信时间源为标D发的时间戳中填写的时间应严格按照准,尤其
其或者
集可信时间源填写。而作为可信时间源自身,可部门发布的时间,或者是用国家权威时间部门认可的硬件和方法获家权威时间
提的实
得的时
此外,TSA应估算从
可信时间源到TSA的时间传递过程中可能出现的误差,TSA能误差作为其可信程度的
个标志
签名系统:负责接收时间申请、验证申请合法性以及产生和颁发时间载,最后将时间戳存储b)
到数据库
截的产生
这个过程中,申请消息和颁发时间截格式都要符合第8章所规定的格式,而时间发应符合第6章给出的要求
负责保存
TSA系统颁发的时间截,而且应定期备份/对时间截数据库的存储、时问戳数据
7章给
合出的规定。
备份和检索应
时问戳系统的结构
6时间戳的产生和颁发
6.1申请和颁发方式
新示:
可信时间源
签名系统
时间戳系统结构
时间截数据库
TSA可以通过不同的方式接收时间戳申请和颁发时间戳,但应至少支持下列四种方式的其中一种:通过电子邮件申请。用户使用电子邮件向一个TSA指定的电子邮件地址发送时间戳申请,而ao
TSA也将颁发的时间截通过电子邮件返回给用户。申请与颁发使用的MIME对象在第8章中说明。
GB/T20520—2006
b)通过文件传输申请。用户将申请消息的编码存储在一个文件中,文件被传送给TSA后,TSA同样将产生的时间截保存在一个文件中传给用户。文件的传送可以使用任意可信赖的方法,例如使用FTP协议。
c)通过套接字(Socket)申请。TSA在计算机的某个端口监听用户发来的申请,而用户在与TSA计算机的这个端口建立一个安全的套接字连接后,把申请消息发给TSA。最后TSA同样把产生的时间截在这个连接上发给用户。d)通过HTTP申请。用户连上TSA的申请网页后,使用网页产生申请消息,然后通过HTTP协议将申请消息传送给TSA,而TSA也随后通过HTTP协议发回时间截。6.2可信时间的产生方法
可信时间的最初源头应来源于国家权威时间部门(如国家授时中心),或者使用国家权威时间部门认可的硬件和方法获得的时间。可以使用以下的一种或多种方法获得时间:使用某种无线接收装置,通过无线手段获得国家权威时间部门的时间发布,如长波信号、卫星a)
信号等。
h)使用某种时间同步协议从一个指定网络地址获得时间。该网络地址发布的时间和使用的时间同步协议都应是可信的,且通过了国家权威时间部门认可。c)使用某种通过国家权威时间部门认证的硬件获得时间,如使用原子钟等,考虑到任何一种方法都可能产生误差,TSA可以使用多种方法产生可信时间,以保证时间的精确度。通过多种方法产生最终可信时间应该是产生的多个可信时间的折衷。TSA应该给出一个可靠方案,该方案要考虑每种方法的可能误差和可信程度,对它们的结果做出一个加权平均,获得最终结果。6.3时间的同步
TSA系统各部件根据可信时间同步自身的时间,这一行为应满足下列条件:a)在获得可信时间后,TSA应迅速根据可信时间对所有部件的时间进行调整(尤其是最关键的签名系统),TSA应该保证这一过程尽可能的快,并且尽可能保证其不被打断b)为了保证TSA各个部件的时间精确性,TSA应该定期从可信时间源获得可信时间,再根据可信时间检查自身时间,与可信时间源保持时间同步。每次同步的间隔时间应该是一个比较短的时间。具体时间视TSA的运行策略以及运行TSAc)
的硬件或软件时钟的可靠性而定,但应取得尽可能大的安全性,并且不应长于30min。每次同步的间隔时间应该是可配置的,在TSA运行的策略和环境变化后,可以调整这一时间d)
间隔以取得尽可能大的安全性,e)TSA各个部件应该采取统一行动检查并同步时间,不允许出现一个部件检查同步了而其他部件却不行动的情况。
f)在启动TSA系统的过程中,可信时间源应是第-个启动的部件。而且在TSA开始工作之前,时间同步应该先进行一段时间,以保证TSA开始颁发时间戳时,各部件的时间已经同可信时间源同步过了。
g)在定期同步时间的过程中,如果获得可信时间失败或者发现收到的时间信息被筹改,TSA系统应该立即停止接受时间戳申请和时间同步,同时向管理者发出警报并写人审计日志。6.4申请和颁发过程
无论TSA的运行方式使用6.1中说明的哪一种方法,整个申请和颁发时间截的过程至少应该包括以下基本过程:
a)用户通过6.1中说明的一种方法,向TSA提交申请请求,请求消息的格式应该符合第8章的规定。b)TSA的签名系统接收到申请请求后,根据第8章中对时间截格式的说明,对请求消息的合法性进行检查。
GB/T20520—2006
TKAoNiKAca=
如果请求消息不合法或者由于某种内部原因TSA无法颁发这个时间戳,TSA应该产生一个时间戳的失败响应,其格式也应该遵循第8章的规定。在其中TSA应该详细填写申请被拒绝的原因。
d)如果请求消息合法,且系统也正常运转,TSA的签名系统就应该根据第8章中说明的时间戳格式,填写正常的时间戳并签名TSA签名系统通过可信通道把新生成的时间截发送给时间截数据库,由时间戳数据库将其归e)
档保存。而由于申请被拒绝而产生的时间戳失败响应,应该由TSA本身的策略决定是否将其保存,本标准不作硬性规定。
f)TSA通过与用户申请方式对应的颁发方式,将新生成的时间戳发给用户。用户在收到时间戳后,应该使用TSA的证书验证时间戳的合法性,并检查时间戳内容是否有g)
错误。如果时间戳不合法或者有错误,用户应该立即向TSA管理者报告异常情况,TSA机构应该提供一个用户反馈渠道,在用户发现异常情况时可以通过此渠道通知管理员。如果时间戳一切正常,用户可以自行保存此时间戳,以备后用。h)如果管理员收到用户的异常报告,应该立即检查审计日志和时间戳数据库,找出错误原因所在。TSA应该对这种情况准备有完备的处理预案。7时间戳的管理
7.1时间戳的保存
7.1.1在TSA方的保存
在TSA系统中,时间戳数据库应该负责保存由此TSA产生的所有时问戳。该时间截数据库应符合9.2.4对数据库的要求。
考虑到空间限制,时间截数据库可以在一定时间后或者数据库中的数据达到一定的量后,将数据库中的所有数据转移到它处,而将其自身清空。这一过程只能由管理员执行,并且转移后的保存要符合7.2对时间戳备份的要求。
对于每一个时间戳,时间戳数据库在保存它们时至少要保存以下相关信息:a)时间截入库的时间;
b)时间戳的序列号;
c)时间戳的完整编码。
除此之外,对于时间戳的保存,应考虑今后可能的用途,如用户查询、取证,存储的必要信息应便于今后使用。
7.1.2在用户方的保存
在用户收到时间戳后,用户自行将时间戳保存在一个文件中。由用户自行保证时间戳的安全性,如果保存的时间戳发生了问题,用户可以向TSA机构申请取回自已的时间截。7.2时间戳的备份
时间戳应按如下要求备份:
每隔一定时间,管理员应该备份时间戳数据库的所有数据;a)
备份所使用的介质应符合9.1的要求;备份应该使用异地备份的方式;c
备份数据应该是以方便检索的方式存放;d)
备份数据的访问应在有管理员在场的时候进行;e)
备份数据不一定需要加密或签名,但如果使用,所选择的算法应符合国家密码管理部门的相关f)
规定。
7.3时间戳的检索
GB/T20520-2006
TSA应该给用户提供一个能够方便的检索时间截的环境,使用户可以通过网络或者面对面的方式检索和获得时间戳。
TSA提供给用户检索的时间截应该不仅仅是时间截数据库中保存的时间戳,还应该包括以前备份的时间戳截。
TSA应该至少支持通过以下三种信息检索时间戳:a)根据时间戳入库的时间检索,允许检索出多个结果,再由用户自行选择;b)根据时间戳截的序列号检索,由于序列号唯一,这种检索应该只有唯一一个结果;c)根据时间戳的完整编码检索,这种检索也应该只有唯一一个结果时间戳的检索结果可以通过6.1的颁发方式发给用户,也可以通过另外的可靠方式,如使用IC卡、光盘等,让用户带回。
7.4时间戳的删除和销毁
7.4.1时间戳的删除
当TSA系统由于内部错误或者外部攻击导致产生错误的时间戳时,应该允许删除时间戳数据库中的错误数据。
所有从时间截数据库中删除的时间截应先进行备份,以备以后审计查询。这种备份数据应与正常备份数据区分开来,单独存放,但同样也需要符合7.2中对备份的要求。所有遭到删除的时间戳应在第一时间在公开渠道公布,如互联网等。公布的时间截信息应该尽可能的详细。
时间戳的删除只能由TSA管理员操作进行。7.4.2时间戳的销毁
在确定时间截已经丧失其价值后,TSA可以完全销毁时间截,即不仅从时间截数据库中删除,也从所有时间截备份中删除。
在时间戳生成后,应经过足够长的时间,时间戳才允许被销毁。这一保存时间应足够长,长到可以确定该时间截已丧失使用价值。此外,保存时间也可以由TSA的策略决定,但TSA应在用户申请时间截时向用户详细说明。但是无论采用什么方法决定保存时间,时间戳都只能在TSA证书失效后销毁。时间戳的销毁只能由TSA管理员操作进行。7.5时间戳的查看和验证
7.5.1时间戳的查看
TSA应该给用户提供一个方便安全的方法查看其须发的时间戳,例如提供一个查看软件等。用户可以凭借此方法查看时间截中所有可查看的内容。7.5.2时间戳的验证
TSA应该给用户提供一个方便安全的方法对其颁发的时间戳进行验证,例如提供一个验证软件或者通过互联网验证等。
验证前,用户应该可以通过CRI或OCSP协议先验证TSA证书的有效性。TSA提供的验证服务应该包括以下两种:使用TSA证书验证用户给定的时间戳是否是由该TSA签发;a)
b)用户提供时间截和源文件,验证该时间戳是否是该文件的时间截。8时间戳的格式
8.1对TSA的要求
完成一个完整的时间戳,TSA系统应满足下列条件:a)拥有一个可信时间源,应满足9.2.2的要求,可信时间的产生要满足6.2的要求;5
GB/T20520—2006
b)在每一个时间戳里都要包含一个可信时间值;在每一个新生成的时间截里都要包含一个一次性随机整数(nonce域);c
只要可能,当从一个请求者处收到一个合法请求时,就要根锯这个请求生成一个时间戳-rKAoNrKAca-
当时间戳生成时,要在其内包含一个唯一的标识符,这个标识符表明了时间截生成时的安全策略
只在数据的散列(Hash)值上盖时间戳,散列函数拥有一个唯一的对象标识符(OID);g)要能够检查单向散列函数的标识符,并且验证数据的散列值长度是否符合该散列函数的结果长度;
除了g)中要求的对散列值长度的检查外,对于输人的散列值数据不做任何其它检查;i)
在时间戳内不包含任何请求方的标识;用专门的密钥对时间戳签名,在密钥相应的证书里应该说明该密钥的这个用途;k)
如果请求方在申请消息的扩展域内提出了一些额外要求并且TSA支持这些扩展,TSA就应该在时间戳内包含相应的额外信息。反之,如果TSA不支持这些扩展,就应该返回一个出错信息。
8.2密钥标识
TSA应有专门的密钥对时间戳消息签名。但一个TSA可以有许多不同的私钥以适应不同的要求,例如适应不同的策略、不同的算法、不同的密钥长度和不同的性能要求。相应的证书也应包含唯一个KeyUsage的扩展域,该域在GB/T20518—2006的5.2.3.2.4中定义。其中的KeyPurposeID应为Id-kp-timestamping:
id-kp-timeStampingOBJECTIDENTIFIER::(iso(I)identified-organization(3)dod(6)internet(1)security(5)mechanisms(5)pkix(7)kp(3)timestamping(8))
8.3时间的表示格式
时间戳中使用的时间应是UTC时间。其精度应至少精确到秒。语法结构为:YYYYMMDDhhmmssE.s...JZ。例如:20031101001326.34352Z。各个位解释如下:
a)YYYY为年份,应是4位数年份如2003;MM为月份,如果月份只有一位数,要加上一个前导0,如01、11;b)1
c)DD为日,如果只有一位数,要加上前导0,如01、20;hh为小时,如果只有~位数,要加上前导0,如00、23;d)
mm为分钟,如果只有位数,要加上前导0,如05、59;f)
ss为秒,如果只有一位数,要加上前导0,如01、59;[.S...门是可选的,表示秒的小数部分。小数点如果出现应是“”,秒的小数部分如果出现,应g
把后面跟的0都省略掉,如果秒的小数部分等于0,则应全部都省略掉,小数点也应省略掉;最后的Z表示这是一个UTC时间。h)
午夜(格林威治时间)应该表示成:“YYYYMMDD0000O0Z”,其中的“YYYYMMDD”表示午夜之后的这一天。
8.4时间戳申请和响应消息格式
8.4.1申请消息格式
时间戳服务申请消息格式如下:6
TimeStampReq·=SEQUENCE
version
messagelmprint
reqPolicy
certReg
extensions
对于各项的具体解释如下:
INTEGERvI(1)),
Messagelmprint,
TSAPolicyld
INTEGER
BOOLEAN
[o]IMPLICITExtensions
GB/T20520—2006
OPTIONAL,
OPTIONAL,
DEFAULTFALSE,
OPTIONAL
版本(version)域表示时间截申请消息格式的版本号,依据本标准写成的申请消息版本为1。域应该包含需要加盖时间截的数据的散列值。该散列值的类型是Octetmessagelmprint
String,它的长
度应是相应散列算法的结果长度(例如:SHA-1算法结果是160位,MD5算法结果是128
Messageln
SEQUENC
hishAlg
goriuhmldentifier
nashed
TETSTRING
essage
ithm域中表示的散列算法应
在has
个已知的散列算去(-
个单向函数)。TSA
金查给出的散列算法是否符
应该机
合国家密码管理部门的相关规定。如果TSA不认识给出的
散列算C这个散列算法不符合国家密码管理部门的相关规定,那TSA应该拒绝提供时间截の并在返回消息中设
bad ald'的ph
Statuslnfo结构。
要指明时间截应核在什么样的安全策略下生成,用户可以设置!如果
要的店
eqPolicy域说明需
策略。
O息中有nonce 域,它是为了在没有可靠的本地时钟的情况下检验响应消息的合法如果
性并防止重放攻击。nonce是
比特的
如果请
个很大的随机数,而且以很高的概率不被重复(例如:一个64在这种情况下,nO1
应被包含在响应消息中,否则响应消息应该被拒绝接受。A中有certReg域且被设
道息中SigningCerifica
该证书由
Tue,则TSA应在其响应消息中给出它的公钥证书,属性的ESSCertID指出,
,正书本身则存放在响应消息
中Sighed Dat
结构的
其他证书
如果请求消息中没给出
公Re域被设为 falses则响应消息中就不必量给出上述证书。certReq域
扩展(extensic
2006中定义。
SA未来给申请消息添加额外信息的一扩展都在GB/T20518-
一种方法
展,无论它是否是关键扩展,要它在请求消息中出现,且又无法被TSA识别,则TSA应该不生成时间戳且返回一个天败信息(anacceptedExtension)。时间戳请求消息不需要给出情求方的身份标识,因为TSA并不验证这个信息(见8.1)。如果在某些情况下TSA需要验证请求方的身份,那么就应进行双向的身份验证。8.4.2响应消息格式
TSA在收到申请消息后,无论申请成功还是失败,都要给请求方发回一个响应消息。该响应消息或者是正确的时间截,或者是包含了失败信息的时间戳。时间戳响应消息的具体格式如下:TimeStampResp::=SEQUENCE
status
timeStampToken
响应消息中的status具体定义如下:PKIStatusInfo=SEQUENCE
status
statusString
PKIStatusInfo,
TimeStampToken
PKIStatus,
PKIFreeText
OPTIONAL,
OPTIONAL
GB/T20520—2006
failnfo
其中PKIStauts有如下定义:
PKIStatus:=INTEGER(
granted
PKIFailurelnfo
(0),
grantedWithMods
rejection
waiting
revocationWarning
revocationNotification
(2),
(3),
OPTIONAL)
(5))
TKAoNTKAca-
如果PKiStatusInfo中的status值为O或者1时,响应消息中的TimeStampTokcn就应出现,否则TimeStampToken就不能出现。
status不能有除PKIStatus外的其他值,如果请求方收到一个不认识的值,查看时间戳时应该报告错误。
如果申请失败,则用statusString给出一个说明失败原因的字符串。而failInfo也用来说明时间戳请求被拒绝的具体原因,具体值如下PKIFailureInfo::BITSTRING
badAlg
badRequest
badDataFormat
timeNotAvailable
unacceptedPolicy
unacceptedExtension
addInfoNotAvailable
systemFailure
(0),
(2),
(5),
(14),
(15),
(16),
(17),
申请使用了不支持的算法
一非法的申请
一数据格式错误
--TSA的可信时间源出现问题
一不支持申请消息中声明的策略申请消息中包括了不支持的扩展一有不理解或不可用的附加信息-系统内部错误!
faillnfo不能有除PKIFailurelnfo外的其他值,如果请求方收到一个不认识的值,查看时间戳时应该报告错误。
TimeStampToken实际上应该是一个Contentlnfo结构,该结构在RFC2630中定义。并且其contenttype应该是一个signeddata contenttypeTimeStampToken ::Contentlnfo-contentType为RFC263o所定义的id-signedData-content为RFC2630所定义的SignedData在ContentInfo定义的SignedData结构中,EncapsulatedContentInfo类中的域有如下意思:a)eContentType是一个对象标识符唯一指定内容的类型。对于一个时间截,它定义为:id-ct-TSTInfo OBJECTIDENTIFIER::-(iso(1)member-body(2)us(840)rsadsi(113549)pkcs(1)pkcs-9(9)smime(16)ct(1)4);b)eContent就是时间戳内容本身,它是一个octetstring。内容应该是下面说明的TSTInfo的DER编码。
TimeStampToken一定不能含有除TSA签名以外的任何签名。而TSA证书的证书标识符(ESSCertID)应作为Signerlnfo的属性包含在SigningCertficate属性里。关于TSTInfo的具体定义如下:
TSTInfo::= SEQUENCE{
version
policy
INTEGER(vI(1)),
TSAPolicyld,
小提示:此标准内容仅展示完整标准里的部分截取内容,若需要完整标准请到上方自行免费下载完整标准文档。

标准图片预览:





- 其它标准
- 热门标准
- 国家标准(GB)标准计划
- GB4806.9-2023 食品安全国家标准 食品接触用金属材料及制品
- GB/T39648-2020 纺织品 色牢度试验 数字图像技术评级
- GB/T25811-2010 染料试验用标准漂白涤纶布
- GB/T2910.16-2024 纺织品 定量化学分析 第16部分:聚丙烯纤维与某些其他纤维的混合物(二甲苯法)
- GB/T26863-2022 火电站监控系统术语
- GB/T36434-2018 复杂机械手表机心万年历和打簧机构零部件的名称
- GB/T43423-2023 空间数据与信息传输系统 深空光通信编码与同步
- GB/T30966.6-2022 风力发电机组 风力发电场监控系统通信 第6部分:状态监测的逻辑节点类和数据类
- GB/T23639-2009 节能耐腐蚀钢制电缆桥架
- GB/T24204-2009 高炉炉料用铁矿石 低温还原粉化率的测定 动态试验法
- GB50030-2013 氧气站设计规范
- GB/T5009.68-2003 食品容器内壁过氯乙烯涂料卫生标准的分析方法
- GB/T23315-2009 粘扣带
- GB/T29529-2013 泵的噪声测量与评价方法
- GB/T32113-2015 口腔护理产品中氯酸盐的测定离子色谱法
请牢记:“bzxz.net”即是“标准下载”四个汉字汉语拼音首字母与国际顶级域名“.net”的组合。 ©2009 标准下载网 www.bzxz.net 本站邮件:[email protected]
网站备案号:湘ICP备2023016450号-1
网站备案号:湘ICP备2023016450号-1