什么是时间戳服务器(TSA)?
时间戳服务器(TSA)是由可信第三方机构(通常是权威证书颁发机构 CA,如 DigiCert、Sectigo 或电子认证服务机构)运营的独立服务器。
它的核心功能是:在接收到数据哈希值后,将权威的 UTC 精确时间与该哈希值绑定,并使用 TSA 自己的私钥对其进行数字签名,生成不可篡改的“时间戳标记(Token)”。
通过这种机制,TSA 为数据或签名提供了具备法律效力、不可否认的“存在性证明(Proof of Existence)”。
时间戳(TSA)的核心工作原理
时间戳的生成过程严格遵循 RFC 3161 标准协议。为了保护隐私和提升传输效率,TSA 在接收请求时不需要获取原始文件本身,其工作流程如下:
- 计算哈希:客户端本地对需要打时间戳的文件或签名数据计算出唯一的哈希值(如 SHA-256)。
- 发送请求:客户端将该哈希值发送给 TSA 服务器。
- 附加时间并签名:TSA 收到哈希值后,从其精确的时间源(如原子钟或 GPS 时钟同步源)提取当前的绝对 UTC 时间,将“时间 + 哈希值”结合,并使用 TSA 的专用私钥进行签名。
- 返回时间戳标记:TSA 将签名后的时间戳标记返回给客户端,客户端将其附在原始文件或签名数据旁。
验证时,任何人都可以通过 TSA 的公钥验签,确认该哈希值在对应的时刻确实已存在,且自该时刻起未被篡改。有关证书体系与公钥加密的基础机制,可参考 什么是SSL证书。
TSA 的两大关键应用场景
在实际业务部署和安全合规中,TSA 主要应用于以下领域:
1. 代码签名—— 解决证书过期后的可信问题
这是时间戳服务最广泛的场景。开发者使用代码签名证书对驱动程序、软件安装包(.exe / .msi)签名时,必须加上 TSA 时间戳:
- 当代码签名证书在 1-3 年后过期时,操作系统(如 Windows SmartScreen)会认为该软件的签名已失效,弹框警告用户“未知发布者”或提示存在风险。
- 操作系统在校验时,会检查 TSA 证明的“签名时刻”。只要代码是在证书有效期内完成签署的,即便随后签名证书本身过期,软件依然会被判定为合法可信。
2. 电子合同与 PDF 签名
在法律文书、电子发票或合同签署中,结合权威 TSA 的时间戳能够证明签署动作发生的具体时刻,防止后签、补签或恶意修改系统时间欺诈,满足法律层面的“抗抵赖”要求。
时间戳(TSA)与 SSL/TLS 证书的区别
很多人容易混淆 SSL/TLS 证书、代码签名证书与 TSA 时间戳服务,三者的主要区别在于:
| 维度 | SSL/TLS 证书 | 代码签名证书 | 时间戳服务器(TSA) |
|---|---|---|---|
| 主要用途 | 网站 HTTPS 身份验证与传输加密 | 验证软件发布者身份与防篡改 | 提供权威可信的时间点证明 |
| 作用对象 | 域名 / IP | 可执行文件 / 代码包 | 数据哈希值 + 权威时间 |
| 过期影响 | 过期后浏览器提示 HTTPS 不安全 | 加时间戳后,过期不影响历史已签软件 | 凭证永久有效(验证时锚定签名时刻) |
在搭建 HTTPS 网站时,重点在于完成 Web 服务器上的证书配置,具体流程可查看 SSL证书部署;如果遇到证书链不完整或信任报错,可查阅 修复SSL证书错误。
常见问题 FAQ
Q:使用时间戳服务需要付费吗?
A:大多数 CA 机构在提供代码签名证书或商业数字证书时,会免费提供配套的公共 TSA 服务器接口(如 [http://timestamp.digicert.com](http://timestamp.digicert.com))。但如果是企业内部合规、高频次或强法律效力的专用电子签章场景,则需要单独采购定制的商业 TSA 服务或硬件时间戳服务器。
Q:如果本地系统时间不对,会影响 TSA 时间戳的准确性吗?
A:不会。TSA 采用的是自身服务器与权威授时中心同步的时间,完全独立于客户端本地电脑的系统时钟。
Q:TSA 时间戳会过期吗?
A:TSA 自身使用的签署证书也是有有效期的(通常较长,如 10-20 年)。只要在 TSA 证书有效期内,其签署的历史时间戳标记会一直保持有效。



京公网安备11010502031690号
网站经营企业工商营业执照
















