在软件开发中,代码签名证书是确保软件安全性和可信度的关键要素。对于Windows开发者而言,了解代码签名证书的有效期至关重要,因为它直接影响软件的发布、更新和用户信任。但是很多开发者会混淆“代码签名证书的有效期”与“已签名代码的实际生效期”。因此,我们要知道代码签名证书本身有效期为1-3年,但已添加合规时间戳的签名代码,可在证书过期后长期有效。
一、代码签名证书本身的有效期
代码签名证书作为核心身份凭证,其有效期由签发CA机构规定,主流品牌如GlobalSign、Sectigo、Certum的Windows代码签名证书,有效期均为1年或3年可选。这一期限是CA机构对开发者身份验证的有效周期,过期后证书将被吊销,无法再用于新的代码签名。
二、已签名代码的实际生效期
已签名代码的实际生效期受“是否添加时间戳”影响极大,这是Windows代码签名的关键特性。未添加时间戳的情况下,签名代码的有效期与证书有效期完全一致,证书过期后,Windows系统会判定签名失效,运行软件时将弹出“未知发布者”或“签名过期”警告,甚至拒绝运行。这种方式仅适合短期测试或内部使用的软件,不适合公开发布。
添加合规时间戳后,签名代码的有效期可突破证书期限限制,实现长期有效。时间戳的核心作用是记录签名时刻的权威时间,Windows系统会通过验证时间戳的合法性,确认签名行为发生在证书有效期内,从而认可签名的有效性。只要时间戳服务提供商(如Symantec、GlobalSign的官方时间戳服务器)持续提供验证服务,已签名代码就能长期正常运行,不受证书过期影响。即使是2015年7月前签名的驱动程序,只要时间戳合规,在Windows系统中仍可正常加载。
三、不同类型的代码签名证书有效期
从证书类型来看,不同等级的Windows代码签名证书有效期一致,但适用场景有差异。
1. OV代码签名证书(组织验证)
有效期:1-3年。
特点:性价比高,适合常规应用,通过基础企业身份验证即可申请。签发的软件代码可以在累计下载次数后获得微软SmartScreen信誉。
2. EV代码签名证书(扩展验证)
有效期:1-3年(与OV证书同步调整)。
特点:需严格背景调查,安全性更高,支持内核驱动签名,但价格较贵。签发的软件代码能立即获得微软SmartScreen信誉。
ssldun作为GlobalSign、Sectigo、Certumd等证书品牌的官方授权服务商,不仅能为国内用户提供专业的技术支持等本地化服务,还能以批发价为用户提供证书产品。例如Certum OV代码签名证书1年期560,三年期1500,主需要提供企业营业执照、法人身份证明等资料就能在1-2个工作日获得证书;GlobalSign EV代码签名证书1年期3100,三年期8700,只需要签订合同,电话验证就能在-2个工作日获得证书。
证书申请地址ssldun.cn