数字证书签名,给 exe 和 cab 等文件签名

本贴最后更新于 2301 天前,其中的信息可能已经斗转星移

工具介绍

  • 证书创建工具 makecert.exe

  • 发行者证书测试工具 cert2spc.exe

  • 文件签名工具 SignCode.exe

  • 相关文件请到我的 Github 中下载

使用步骤

创建证书

  • 打开“命令提示符“或” PowerShell“工具

  • 使用证书创建工具创建证书 makecert.exe -ss hello -n "CN=xx公司" -sv E:\hello.pvk -r E:\hello.cer

其中 ss-主题的证书存储名称, n-证书颁发对象,此名称必须符合 X.500 标准。最简单的方法是在双引号中指定此名称,并加上前缀 CN=;例如,"CN=myName"。注意这里的 CN 必须大写。-r-证书存储位置,-sv 导出私钥文件(为了签名使用)。注意:这个时候会让输入三次密码,三次要完全一致。

  • 创建私钥密码,输入证书私钥密码后点确定

  • 再次输入前一步骤输入的密码后点确定

  • 此时,证书创建完成,可以看到在工作目录下生成了 hello.cer 和 hello.pvk 文件

生成 spc 发行者证书

  • 基于之前生成的 hello.cer 和 hello.pvk 文件,生成发行者证书 cert2spc.exe E:\hello.cer E:\hello.spc

  • 生成成功后会在工作目录下生成 hello.spc 文件

对 CAB 安装包数字签名

  • 使用生成的证书对文件签名,可以对 exe,cab 等文件签名,我们这里准备可 hello.cab,现在我们对其签名 SignCode.exe signwizard

  • 弹出数字签名向导,点击下一步

  • 选择要签名的文件

  • 选择签名类型,我们这里选择自定义

  • 选择签名证书,因为之前我们已经生成了签名证书,所以选择”从文件选择“,选择之前生成的证书,然后点下一步

  • 选择签名私钥,同样也是之前生成的私有,选择后点一下不

  • 输入私钥密码,就是之前三次输入的密码,然后点确定

  • 选择哈希算法,这里我们选择 md5,然后点下一步

  • 证书路径中的证书这里我们默认选择即可,然后点下一步

  • 数据描述,可以根据需要填写,这里我默认不填写,直接点下一步

  • 完成数字签名向导,点击完成

  • 再次输入私钥密码,然后点确定

  • 弹出数字签名箱单完成对话框,我们直接点确定

##关于
我的 Github 地址

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...