2013-05-30 42 views
0

我已经在VS 2010中使用c#开发了一个winform应用程序。自我证书的目的是什么?

创建设置并在启动应用程序时面临“发布者未知”情况。

然后才知道需要用数字证书签名应用程序。但是我对创建证书感到困惑。我看到我们可以使用makecert和cert2spec工具创建自己的证书。

在创建证书的过程中,我通过使用google搜索来说明如果使用测试(自行创建的)证书,安装对话框将显示“未知发布者”消息。

http://msdn.microsoft.com/en-us/library/ff699202.aspx

因此,实际上什么是自创建证书的目的。

请帮我理解一下。我是这个主题的新手,如果做错了任何事情,请纠正我。

谢谢。

回答

0

有相当不错的解释on this page

您可以用Visual Studio创建(检查 出签名选项卡,以及按钮,上面写着“创建测试 证书”)自己的签名证书或使用称为MakeCert的程序。当你这样做时,信任对话框 表示发布者是未知的。如果您购买 证书,则信任对话框会将您的公司列为发布者。 证书供应商基本上保证你是谁你说你 。

我的公司(GoldMail)使用ClickOnce将我们的应用程序从 内容交付网络部署到我们的客户The Public。我们不希望我们的部署 说“未知发布者”;我们希望它说 “发布者:GoldMail”。当我们从互联网安装我们的应用程序时,这给我们的客户一个温暖舒适的感觉 ,并且提供 保证它来自我们的公司,而不是来自生活在冻结的冻土黑客部署中的人的乐趣 。

如果您的应用程序将被部署在内部,你可能 选择放弃购买的证书的成本,因为人们会 知道应用来自何处,即使它没有 指定的安装对话框。您也可以选择 在每个用户的计算机上安装测试证书,然后信任对话框将显示证书上的名称,就好像它是从供应商处购买的一个 一样。

您可能还需要使用一个测试证书,如果你正在部署 你的了解你,知道 应用程序从你的到来,谁特定的客户应用程序一样,如果你正在写的共享软件,或 创建一个应用程序的朋友和家人使用,以保持 追踪你想要的生日和圣诞节。

0

那么,自签名证书是您可以创建子证书的根证书,并且这些子证书是通过自签名证书进行身份验证的,自签名表示它拥有它的私钥创建。

例如,当您想要在网站上使用证书并且您希望通过身份验证颁发者对其进行验证时,您可以要求发卡机构进行验证以获得证书。因此,当用户通过https进入您的网站时,它会识别您拥有一个证书,并且验证该证书是否与您的组织相对应的方法是通过对照verisign证书进行检查。

您可以创建自签名证书来模拟生产环境,您将要做的就是伪造verisigns责任。

相关问题