Windows中没有makecert的自签名证书?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows中没有makecert的自签名证书?相关的知识,希望对你有一定的参考价值。

我们有一个收缩包装类型的Windows服务器应用程序,我们需要在服务器上创建一个自签名证书以供某些WCF Web服务使用。从我们在网上的搜索看来,Microsoft的PlatformSDK中的makecert实用程序似乎无法与我们的应用程序一起分发,因此我们正在寻找替代方案。

有谁知道如何使用OpenSSL创建证书并将其放入Windows LocalMachine证书存储区?或者,或者直接将证书插入到.NET应用程序的商店中,我们应该使用openssl创建证书文件吗?任何帮助/建议将不胜感激。

答案

[不幸的是,我还没有评论任何内容,所以我会发布这个作为答案。]

我看到这篇文章有点旧了,但我在类似的船上,我在Visual Studio 2008 redist.txt文件中找到了这个:

Windows SDK Files

Subject to the license terms for the software, the following files may be distributed unmodified:

MageUI.exe
Mage.exe
Makecert.exe

不确定某些内容是否已更改(如果我的解释是正确的),但看起来像makecert.exe作为Windows SDK的一部分包含在内,作为VS2008安装的一部分,它实际上可以重新分发。

另一答案

您现在可以使用PowerShell创建自签名证书您需要的命令是New-SelfSignedCertificate和Export-PfxCertificate。例如:创建证书

New-SelfSignedCertificate -certstorelocation cert:localmachinemy -dnsname orin.windowsitpro.internal

出口它

Export-PfxCertificate -cert cert:localMachinemyCE0976529B02DE058C9CB2C0E64AD79DAFB18CF4 -FilePath e:	empcert.pfx -Password $pwd

这个链接真的很有帮助

http://windowsitpro.com/blog/creating-self-signed-certificates-powershell

另一答案

哇噢!现在是时候为你做了一个pinvoke

crypt32提供CertCreateSelfSignCertificate功能;如果成功,您可以将其存储在用户的个人商店(或机器商店,假设您正在升高工作)

另一答案

我没有使用OpenSSL,但我在同一条船上,发现这篇文章很有用:

Securing WCF Services with Certificates

作者将指导您安装Microsoft证书服务,创建可以添加到受信任证书颁发机构的CA(在客户端和服务器上,因为它是自签名的),然后生成从自签名CA证书链接的客户端和服务器证书。

您不需要客户端证书,但它确实可以帮助您创建自签名CA和服务器证书。

另一答案

编程生成证书的另一种方法是Bouncy Castle的C#-version。 http://www.bouncycastle.org/csharp/

以上是关于Windows中没有makecert的自签名证书?的主要内容,如果未能解决你的问题,请参考以下文章

makecert 制作数字证书 给DLL加一个数字签名

Intranet 中的自签名 TLS 证书

windows下如何制作和应用数字签名证书 全流程

驱动程序签名:如何让 MakeCert 测试证书在 x64 上工作

使用 makecert/pvk2pfx 时,ClickOnce 签名者的证书对签名无效

如何在没有 GUI 的情况下运行 makecert.exe?