什么是ClickOnce签名?

时间:2012-01-21 18:08:22

标签: .net clickonce manifest code-signing

根据Microsoft,您必须签署您的ClickOnce应用程序。但在我看来,当我在没有签名的情况下发布它时(通过关闭“签署ClickOnce清单”选项),它的工作正常。

我真的不在乎并保留默认值(我认为我使用的是测试证书),直到我更换计算机并开始收到一条消息,告诉我'应用程序是使用与现有应用程序不同的密钥签名的服务器',seems将导致我的用户停止自动更新。显然,VS使用我的计算机名称来创建密钥。

那么,我应该停止签署我的ClickOnce清单以防止出现这种错误,或者唱出它有什么好处。此外,这些证书是在安装应用程序以显示我的公司名称时会导致“发布者:未知发布者”消息的,还是我需要购买两种不同类型的证书?

1 个答案:

答案 0 :(得分:38)

这是一项安全功能,允许您的用户验证所有更新是否真正源自您之前安装的版本的发布者。这是公钥加密的基本属性。 最重要的是,您可以让您的证书由受信任的对等方授权,以便验证所提供的发布者的详细信息。 (拥有与之前相同的出版商并不一定意味着有关出版商的原始信息是正确的。这是买入的优势。)

总结:

  1. 没有证书可以让您的用户参与软件来源的赌博。
  2. 自签名证书可确保用户确定至少来自与原始安装相同的发布者。但仍然不知道这个原件来自哪里。
  3. 购买的证书可以确保用户确定第三方(并且信任)方验证了有关发布者的信息。以及任何以下更新。