You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Sectigo EV硬件令牌签名NUPKG文件遇阻求解决方案

解决硬件令牌EV证书签名NuGet包的方案

核心思路:用NuGet CLI直接调用系统证书存储中的硬件令牌证书

NuGet CLI支持从Windows证书存储读取证书(包括硬件/USB令牌里的不可导出密钥证书),无需导出密钥文件,直接完成NUPKG签名。

具体步骤

  1. 获取证书指纹
    插入USB令牌,打开命令提示符执行:

    certutil -store My
    

    在输出里找到你的Sectigo EV证书,复制其Thumbprint字段值(去掉所有空格)。

  2. 执行NuGet包签名
    确保安装了NuGet CLI 5.0及以上版本,运行以下命令:

    nuget sign YourPackage.nupkg -CertificateFingerprint "你的证书指纹" -CertificateStoreLocation CurrentUser -Timestamper "https://timestamp.sectigo.com"
    
    • 执行过程中可能会弹出令牌PIN码输入框,输入设置的PIN即可。
    • -CertificateStoreLocation参数根据证书实际存储位置选择CurrentUser或LocalMachine。

为什么之前的方法无效?

  • Signtool仅支持PE格式文件(如EXE、DLL)的代码签名,本身不识别NUPKG格式。
  • 解压NUPKG后单独签名内部程序集再重新打包,会破坏NuGet包的原始哈希结构,且未通过NuGet官方签名机制生成包签名,因此无法被NuGet判定为有效签名包。

额外排查点

  • 确认USB令牌驱动已正确安装,证书已加载到系统证书存储(可通过certmgr.msc查看)。
  • 证书指纹需完全匹配,注意去掉所有空格,大小写不敏感但建议复制时保持一致。
  • 时间戳服务器需与证书颁发机构匹配,Sectigo推荐使用上述命令中的地址。

内容的提问来源于stack exchange,提问作者Deborah Bittencourt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 05:09:53