代码签名证书是由可信机构颁发的数字证书,开发者使用该证书对软件应用程序、驱动程序或脚本进行“签名”。它起到虚拟防篡改印章的作用,验证发布者的身份,并确保代码自签名以来未被更改。
建立信任:操作系统(如Windows、macOS和Android)使用证书来确认软件来自经过验证的发布者,而不是来自未知的、可能存在恶意的来源。
防止安全警告:未签名的软件通常会触发“未知发布者”或“此应用可能会损害您的设备”等警告,从而阻止用户安装您的程序。
保护代码完整性:如果恶意行为者修改了软件,数字签名就会失效,从而提醒用户和系统软件已被篡改。
哈希值:为您的软件生成一个独特的加密“指纹”。
签名:您可以使用私钥(随证书提供)加密此指纹。
时间戳:应用可信时间戳,即使证书本身过期,签名仍然有效。
验证:当用户下载或运行程序时,其操作系统会读取证书,解密签名,并验证软件的真实性。
代码签名证书的类型
通常有两种主要级别的证书:
OV代码签名证书:验证您的组织或企业的身份。它能安全地签署代码并消除标准警告,但需要每1年续期一次。

EV代码签名证书:需要最严格的审核流程。这些证书提供最高级别的信任度,并能累积在 Microsoft Defender SmartScreen中建立良好的声誉。

如果您想为您的项目获取证书,通常会从受信任的证书颁发机构(CA)(例如Gworg)购买证书。
无论选择OV或者EV证书颁发机构(CA)提供的令牌:大多数CA(如Gworg)会将证书直接配置到符合规范的USB令牌(如Thales SafeNet eToken或YubiKey FIPS)上,然后邮寄给您。
自带设备(BYOD):有时您可以通过称为证明的过程使用您自己的FIPS认证硬件(例如,您自己的YubiKey),在该过程中,您需要向CA证明密钥是在设备上安全生成的,然后 CA才会颁发证书。
硬件安全模块(HSM)和云签名:对于组织管道,您可以将私钥存储在本地HSM上,或者使用托管的、基于云的HSM签名服务,但并不是所有CA都支持,需要注意的是支持的CA机构都存在文件签名次数限制。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。