V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
爱意满满的作品展示区。
xmuli

分享如何拥有一份私人的『开源代码签名证书』

  •  
  •   xmuli · Jan 9, 2024 · 3628 views
    This topic created in 848 days ago, the information mentioned may be changed or developed.

    如何购买私人的『开源代码签名证书』的分享!!

    简 述: 讲解如何购买一份私人的代码签名证书,且还是『开源代码签名证书』→

    Open Source Code Signing Certificate 🎉🎉🎉

    当自己写的软件开发完毕后,若想进行商店软件发布,则下一步需要搞定『代码签名证书』。给你的 EXE 标记一个戳,写上一个被 Microsoft 所认证的签名。

    尤其是现在签名证书疯涨的这两年,让大家的程式也都能签上名。将 €49 证书的方法分享一下,即使买 EV 证书,也远远比许多代理便宜的多。虽,但还是喜欢喜欢互联网的分享精神。


    代码签名证书的作用

    代码签名证书( Code Signing Certificates )是什么?有什么用?

    1. 运行程序时候,UAC 弹窗( User Account Control )上面会显示 “发布者( Publisher )” 的名字;
    2. 用户下载 EXE/DLL 之后,通过查看属性签名,可以确保是该发布者发布的,未经过任何篡改
    3. 上架 Microsoft Store 时候,必须要有被 Microsoft 所认可的的签名证书;反之则会被拒。一些三方商城同理。

    代码签名证书的分类

    证书分为三类

    • EV 代码签名:企业级别,价格最昂贵,无需积累任何信誉,就可以直接通过 Microsoft Defender SmartScreen,不会触发此弹窗或者误杀;申请门槛也随最高的,需要提交公司执照等有效信息。
    • Standard 代码签名:标准代码签名,价格相对 EV 便宜许多,也支持个人申请,理想的个人推荐;初次运行,会 Microsoft Defender SmartScreen 弹窗提示,当程序被足够多的用户使用后,在 Windows 中积累的信誉足够多,后面也不会弹出此弹窗。
    • Open Source 代码签名:开源作者代码签名,价格最低,目前还能提供的厂商,都是人类文明之光,申请条件为开源的个人开发者。相传,在很多年前,这种证书各大厂商都是免费提供的,但随着 Window 系统 xp -> 7/8/10/11 的变迁,出于系统级的安全设计考虑,诞生出 “User Account Control” 弹窗;以及信任和不信任,还有证书的高昂,现如今基本没有厂商提供了此类证书。

    Code Signing Certificates 的价格 / 年;

    Signing in the Cloud Signing - code Signing - set
    EV € 379 € 329 € 359
    Standard € 189 € 129 € 159
    Open Source € 49 € 25 € 69

    注:购买实物的时候,还会有约 € 35 的运费 + 23% 的税费,默认是 DHL 快递。

    代码签名证书的购买

    现代 (2024 年) 的签名证书购买 ,分为两类;

    • 云上: 手机上使用 OTP + PC 联网条件

    • 本地: 实体的 cryptographic card + card reader ;

      • 一种是大的密码卡片 + 大的读卡器

      • 另一种是类似于手机卡卡片 + USB 读卡器

    在线付款有较大概率性会被拒;手机提示信用卡支付成功,但是网站提示交易失败。通常等待三天左右,会自动原始账单返回,但是由于汇率和莫名的手续费,每次失败会损失约 ¥ 20 。可尝试切换支付方式或信用卡和切换节点。

    如何签名

    因我购买的是开源代码签名证书,其支持以下数字签名:

    • UNIX/Linux 软件
    • Firefox 和 Netscape 的扩展
    • Java 小程序
    • 基于 JAVA 技术的互联网应用
    • ActiveX 组件和控件
    • 二进制文件 (.exe .dll 等)

    步骤如下:

    1. 付款成功

    2. 激活账号

    3. 验证本人以及开源开发者的身份

    4. 等待验证通过邮件,和按照邮件提示操作,里面的二维码都是是一次性的,一口气按照操作提示好

    5. 下载 SimplySign Desktop ,,使用签名工具时必须联网验证身份 token ;

    6. 使用 signtool + CMD 进行签名

      1. 打开 SimplySign Desktop 输入验证后,通过调用 Windows 自带的 signtool.exe 工具,来实现对 EXE / DLL 的签名;参数如下

        > signtool.exe
          Valid commands:
            sign       --  Sign files using an embedded signature.
            timestamp  --  Timestamp previously-signed files.
            verify     --  Verify embedded or catalog signatures.
            catdb      --  Modify a catalog database.
            remove     --  Remove embedded signature(s) or reduce the size of an
                           embedded signed file.
        
      2. 输入如下命令签名,盖上自己的章

    7. 查看 EXE 属性,确认签名成功;最后对 EXE 签名成功,右键属性可查看到。

    上架 Microsoft Store

    当签上名后,就可上架 Microsoft Store ;也可以上架三方 XX 软件管家/ 商城,但通常需要提供软著和额外的其它文件。

    这部分下次有空时,另单独写一篇,详细介绍上架流程全程;

    下载地址:GitHub ,这是一个 ChatGPT 免费使用的跨平台客户端;更多介绍参见官网 thinkymate.com



    NOTE: 未经许可,禁止转载。


    Supplement 1  ·  Jan 10, 2024
    收藏数激动,感谢数使得又平静了下来。[摸摸猫咪]
    24 replies    2026-02-26 18:33:25 +08:00
    icedx
        1
    icedx  
       Jan 9, 2024
    驱动能签吗
    xmuli
        2
    xmuli  
    OP
       Jan 9, 2024
    @icedx 记得驱动得 EV 证书才行
    icedx
        3
    icedx  
       Jan 9, 2024
    @xmuli 相比其他家的也不便宜 (
    xmuli
        4
    xmuli  
    OP
       Jan 9, 2024
    @icedx 比市面上得代理低价一大截;标准首家的比企业证书还昂贵。
    chutianyao
        5
    chutianyao  
       Jan 9, 2024   ❤️ 1
    不错的经验,感谢分享
    paopaosa
        6
    paopaosa  
       Jan 9, 2024
    如果是 UWP 写的,应该不需要这一步操作了吧。这是针对 win32 的程序吧?
    xmuli
        7
    xmuli  
    OP
       Jan 9, 2024 via iPhone
    @chutianyao 嘿哈,
    xmuli
        8
    xmuli  
    OP
       Jan 9, 2024 via iPhone
    @paopaosa 蒽,exe 可以转 uwp ,使用 ms 账号微软会自动给其签名。
    lstz
        9
    lstz  
       Jan 10, 2024 via iPhone
    如果不代码签名,就不能上 Microsoft store 吗?我记得好像 Microsoft store 只要 20 美元注册费就可以了
    xmuli
        10
    xmuli  
    OP
       Jan 10, 2024
    是的,必须要注册账号,还要有 Microsoft 所认可的代码签名;且还要能过 Defender SmartScreen ; 然后 SmartScreen 的提示有好几种,都要过
    Nile20
        11
    Nile20  
       Jan 10, 2024
    感谢分享,我也曾想过给自己的项目搞个证书,但是价格高昂放弃了。这是我看到的第一个比较低成本的总结,但是瞄了算了一下价格还是放弃了🤣毕竟项目纯为爱发电
    xmuli
        12
    xmuli  
    OP
       Jan 15, 2024 via iPhone   ❤️ 1
    @Nile20 这种每个月签名次数 5000 次/月。个人项目多的用不完。想体验也可以帮你代签体验下。🤣🤣
    ykk
        13
    ykk  
       Jan 23, 2024
    有 EV 签名代签吗? 急需
    xmuli
        14
    xmuli  
    OP
       Jan 24, 2024 via iPhone
    @ykk 驱动认证,可找一些 WHQL 小的实验室给你们过,费用约 1w /次
    xmuli
        15
    xmuli  
    OP
       Jan 24, 2024 via iPhone
    @ykk EXE / DLL 临时 EV 签可以找某宝试试,一般几百米/次,没试过。 驱动签不推荐用此方法。
    ykk
        16
    ykk  
       Jan 24, 2024
    @xmuli #15 thanks 打算自己买 EV 过 WHQL 了
    hello123kitty
        17
    hello123kitty  
       Feb 15, 2024
    你这个是在哪买的呢?有推荐的吗?
    xmuli
        18
    xmuli  
    OP
       Mar 4, 2024
    @hello123kitty certum 家的 (邮件已回)
    chord
        19
    chord  
       May 11, 2024
    @xmuli 不是开源的项目可以用开源代码证书不?哈哈哈
    xmuli
        20
    xmuli  
    OP
       May 14, 2024 via iPhone
    @chord 也可以签名上
    yanqian
        21
    yanqian  
       Oct 11, 2024
    我对这个 timestamping service 的地址有点好奇,这个地址是要和特定证书 CA 有关么?还是通用的服务?
    比如我用自己的一个证书给程序签名,也可以用你发的 timestamp 服务地址么?
    yanqian
        22
    yanqian  
       Oct 11, 2024
    (好像自己回的帖子自己也无法修改)
    我刚才测试了,timestamp server 就是通用的,发现可用的都可以指定来用,没有特别的绑定关系。
    CeerDecy
        23
    CeerDecy  
       Nov 17, 2025
    哥,你是咋买的呀。我啥我付款的时候提示 invalid country code ,我填的是中国地址
    FanyFull
        24
    FanyFull  
       Feb 26
    @CeerDecy #23 前两天也买了一份。使用招商银行的信用卡付款,然后美元支付,没有问题。第一次的时候是使用欧元支付,会多出一个步骤,让再选一次国家,这次没有中国的选项。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5755 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 155ms · UTC 08:38 · PVG 16:38 · LAX 01:38 · JFK 04:38
    ♥ Do have faith in what you're doing.