格式因平台而异:Windows PE 文件、MSI 和 PowerShell 使用 Authenticode;Apple 代码签名使用 Developer ID 证书并配合公证;Android 使用 APK 签名方案;Java 使用 JAR 签名;RPM 和 Debian 仓库使用 OpenPGP 签名;容器镜像用 cosign 签名;UEFI 安全启动有自己的密钥层级。有了时间戳,签名的有效期可以超过签名所用证书的有效期。
公开受信任的代码签名证书遵循 CA/Browser Forum 的《代码签名基线要求》:自2023年6月1日起,私钥必须在硬件模块中生成和保存(最低要求为 FIPS 140-2 第 2 级或通用准则 EAL 4+),自2026年3月1日起,证书最长有效期为 460 天(CSC-31 投票)。
签名密钥被盗是一再出现的攻击途径(Stuxnet 使用的驱动程序证书、Adobe 构建服务器于2012年被入侵),因此用硬件保存密钥、独立的签名服务和吊销预案比算法选择更重要。