GM/T 0033-2023 时间戳接口规范:RFC 3161 国密扩展与 TSA 架构详解

标准规范 · 2026-07-04

概述

时间戳服务(Timestamping Authority, TSA)是密码基础设施中的关键组件,为数字签名和数据完整性提供可信的时间凭证。GM/T 0033-2023《时间戳接口规范》是中国国家密码管理局发布的密码行业标准,定义了国密算法体系下的时间戳接口协议,是对 RFC 3161(Internet X.509 PKI 时间戳协议)的国密化扩展。

该标准于 2023 年发布,与 GM/T 0031-2023(安全电子签章密码技术规范)、GM/T 0034-2023(基于 SM2 的证书认证系统)等同批发布,共同构成国密电子签章体系的完整标准链。截至 2026 年 7 月,随着 GM/T 0031-2025(2026 年 7 月 1 日实施)的落地,时间戳作为电子签章合规的必备组件,其重要性进一步提升。

标准背景与定位

为什么需要国密时间戳标准

在电子签名法体系下,数字签名的法律效力不仅取决于签名算法的安全性,还依赖于签名时间的可信性。RFC 3161 定义的 TSA 服务通过以下方式解决这一问题:

  • 签名时间证明:为已签名数据生成可信时间戳,证明"在某时刻数据已存在且未被篡改"
  • 长期有效性:即使签名证书过期或被吊销,时间戳本身仍然有效
  • 法律证据链:时间戳作为司法证据,证明电子文档的签署时间
在中国商用密码体系下,原有的基于 RSA/SHA-1 的时间戳方案无法满足国密合规要求,因此 GM/T 0033 定义了基于 SM2/SM3 的时间戳接口规范。

标准体系中的位置

GM/T 0033 与以下标准形成完整链条:

标准角色关系
GM/T 0033-2023时间戳接口规范定义 TSA 请求/响应协议
GM/T 0031-2023/2025安全电子签章密码技术规范电子签章中必须使用可信时间戳
GM/T 0009-2023SM2 密码算法使用规范规定 SM2 签名算法的使用方式
GB/T 39786-2021信息系统密码应用基本要求第三级以上系统要求使用时间戳服务
RFC 3161Internet 时间戳协议国际标准参考,GM/T 0033 为其国密化扩展

TSA 架构与工作流程

核心组件

TSA 体系由三个核心组件构成:

  • 请求者(Requester):发起时间戳请求的客户端,可以是电子签章系统、文档签名工具或合规应用
  • TSA 服务(TSA Server):核心服务组件,负责接收请求、获取可信时间、生成时间戳令牌
  • 时间源(Time Source):提供可信时间的基础设施,通常为 GPS 时钟、北斗时钟或 NTP 服务器(需经过校准和认证)

时间戳生成流程

GM/T 0033 定义的时间戳生成流程如下:

CODE
步骤 1: 请求者准备待时间戳化的数据 D
步骤 2: 计算消息摘要 Hash = SM3(D)
步骤 3: 构建 TSTRequest 消息(含 Hash、策略 OID、序列号等)
步骤 4: TSA 验证请求合法性(签名者证书有效性、策略合规性)
步骤 5: TSA 获取可信时间 T(来自时间源)
步骤 6: 构建 TSTData 结构(Hash + T + 策略 OID + TSA 证书序列号)
步骤 7: 对 TSTData 进行 SM3 哈希
步骤 8: 使用 TSA 签名私钥对 SM3 哈希值进行 SM2 签名
步骤 9: 返回 TSTResponse(含签名时间戳令牌)

时间戳令牌结构

GM/T 0033 定义的 TSTToken(时间戳令牌)结构基于 RFC 3161 的 CMS 格式,国密化后如下:

与 RFC 3161 的差异对比

GM/T 0033 在 RFC 3161 基础上进行了多项国密化改造:

对比维度RFC 3161GM/T 0033-2023
哈希算法SHA-1/SHA-256SM3
签名算法RSA/ECDSASM2
证书格式X.509 v3国密 X.509(GM/T 0015)
签名格式CMS/PKCS#7国密 CMS(GM/T 0016)
时间格式GeneralizedTimeGeneralizedTime(含时区)
策略 OID自定义 OID国密 OID 体系(GM/T 0006)
扩展项可选强制支持 orderingFlag

关键差异详解

1. 消息摘要算法

RFC 3161 使用 messageImprint 字段承载消息摘要,算法由 AlgorithmIdentifier 指定。GM/T 0033 将默认哈希算法固定为 SM3,OID 标识为 1.2.156.10197.1.401(SM3 OID)。

2. 签名算法

RFC 3161 支持 RSA、DSA、ECDSA 等多种签名算法。GM/T 0033 要求 TSA 必须使用 SM2 算法签名,OID 标识为 1.2.156.10197.1.301(SM2 签名 OID)。

3. 时间精度声明

GM/T 0033 强制要求 TSTInfo 中包含 accuracy 字段,声明时间戳的时间精度(秒、毫秒、微秒),这对于司法取证具有重要意义。RFC 3161 中该字段为可选。

4. 有序时间戳支持

GM/T 0033 新增 orderingFlag 字段,标识该时间戳是否为"有序时间戳"(Ordered Timestamp)。有序时间戳由 TSA 维护全局时间序列,确保不同请求者的时间戳之间具有可比性,这是 RFC 3161 未涉及的概念。

时间戳策略(TSP)

策略 OID 体系

GM/T 0033 定义了时间戳策略 OID 体系,遵循 GM/T 0006 密码应用标识规范的编码规则:

策略等级策略名称OID适用场景
Level 1高精度时间戳策略1.2.156.10197.2.1.1司法取证、电子签章
Level 2常规时间戳策略1.2.156.10197.2.1.2文档签名、日志审计
Level 3快速时间戳策略1.2.156.10197.2.1.3批量签名、性能敏感场景

策略验证

TSA 在生成时间戳前必须验证请求者的策略合规性:

  • 策略 OID 匹配:请求的策略 OID 必须在 TSA 允许的策略列表中
  • 精度要求:Level 1 策略要求时间精度 ≤ 100ms,Level 2 ≤ 1s,Level 3 ≤ 1s
  • 证书链验证:请求者的 SM2 签名证书必须通过 TSA 的信任链验证
  • 签名算法匹配:请求者签名算法必须与策略要求的算法一致

国密合规要求

密评中的时间戳要求

GB/T 39786-2021《信息系统密码应用基本要求》对不同安全等级的系统提出了时间戳相关要求:

安全等级时间戳要求
第三级应使用可信时间戳对重要操作进行时间标记
第四级应使用可信时间戳对所有重要操作和数据变更进行时间标记

电子签章中的时间戳

GM/T 0031-2025《安全电子签章密码技术规范》(2026 年 7 月 1 日实施)明确规定:

电子签章系统应集成可信时间戳服务,签章时应同步生成时间戳令牌,确保签章时间的可信性和不可篡改性。
这意味着电子签章合规必须满足以下条件:

  • TSA 资质:时间戳服务必须由具备资质的 TSA 提供
  • SM2 签名:时间戳令牌必须使用 SM2 算法签名
  • 可信时间源:TSA 的时间源必须可溯源(GPS/北斗/NTP 校准)
  • 证书链完整:TSA 证书必须通过完整的信任链验证

时间戳服务器的资质要求

在中国,提供商用密码时间戳服务需要具备:

  • 商用密码产品认证证书:TSA 服务器软件必须通过国家密码管理局的产品认证
  • 电子认证服务许可证:TSA 运营者必须持有有效的电子认证服务许可证
  • 时间源校准证书:时间源设备必须通过计量部门的校准认证

接口协议设计

请求消息格式

GM/T 0033 定义的 TSTRequest 消息结构:

响应消息格式

TSTResponse 的三种状态:

错误码定义

错误码含义处理方式
0成功正常使用时间戳令牌
1策略不匹配更换请求策略 OID
2消息摘要算法不支持改用 SM3
3请求格式错误检查 ASN.1 编码
4时间源不可用重试或切换备用时间源
5证书链验证失败检查 TSA 证书链
6请求频率超限降低请求频率

与相关标准的交叉引用

时间戳在国密标准体系中的位置

与 RFC 标准的映射

RFC 标准GM/T 对应标准说明
RFC 3161GM/T 0033时间戳接口协议
RFC 5280GM/T 0015数字证书格式
RFC 6960GM/T 0020证书应用综合服务(含 OCSP)
RFC 3628GM/T 0014证书认证系统密码协议

相关实践

参考来源

  • GM/T 0033-2023《时间戳接口规范》,国家密码管理局,2023 年
  • RFC 3161 "Internet X.509 PKI Time-Stamp Protocol"
  • GM/T 0031-2025《安全电子签章密码技术规范》,国家密码管理局公告第 54 号,2026 年 1 月
  • GB/T 39786-2021《信息安全技术 信息系统密码应用基本要求》
  • GM/T 0015-2023《数字证书格式》
  • 国家密码管理局公告(第 54 号)