签署程序集“<程序集名称>.dll”时加密失败– “提供程序的错误版本”程序集名称>
我从知名提供商处购买了身份验证代码证书。
现在我想对程序集进行强命名,然后对其进行数字签名。
这是我到目前为止所做的:
- 通过运行 sn.exe -p keypair.pfx key.snk 从 pfx 中提取公钥
- 选中项目属性签名选项卡上的“对程序集进行签名”和“仅延迟签名”复选框
- 提供的密钥。 snk 作为密钥文件,通过运行 sn.exe -tP key.snk 来使用
- 提取的公钥令牌
- 进行签名通过运行 sn -Vr * 在我的 devbox 上禁用强名称验证,
其想法是禁用团队构建上的延迟签名并提供密钥对。 pfx 文件在那里。这样,我可以在访问受限的团队构建服务器上对程序集进行完全签名,同时出于安全原因不在开发盒上提供私钥。
但是,当尝试在本地构建程序集时,出现以下错误:
签名时加密失败 程序集“.dll”-“坏” 提供者的版本'
有人有解决方案吗?
I purchased an authenticode certificate from a well known provider.
Now I want to strong name an assembly and later on digitally sign it.
This is what I've done so far:
- Extracted public key from pfx by running sn.exe -p keypair.pfx key.snk
- Checked both "Sign the assembly" and "Delay sign only" checkboxes on project properties signing tab
- Provided key.snk as keyfile to sign with
- Extracted public key token by running sn.exe -tP key.snk
- Disabled strong name verification on my devbox by running sn -Vr *,
The idea is to disable delay signing on the team build and provide the keypair.pfx file there. This way, I can fully sign the assembly on the team build server that has restricted access while not providing the private key on the dev boxes for security reasons.
However, when trying to build the assembly locally, I get the following error:
Cryptographic failure while signing
assembly '.dll' – 'Bad
Version of Provider'
Does anyone have a solution for this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我收到Comodo的回复:
I got a reply from Comodo: