C# 在Windows 10应用程序中创建并发送PKCS10

C# 在Windows 10应用程序中创建并发送PKCS10,c#,ssl,certificate,uwp,csr,C#,Ssl,Certificate,Uwp,Csr,我正在研究如何创建PKCS#10证书签名请求(CSR),将其发送给证书自动颁发机构(CA),并根据CA的响应创建X.509客户端证书。我希望在Windows 10应用程序中执行此操作(因此,这是一个基于UWP构建的应用程序)。我可以在没有运行“CertCli 1.0类型库”的额外服务器的情况下执行此操作吗 我找到的唯一信息是: 它是针对Windows8.1的,它说我需要在应用程序和CA之间有一个服务器,以便将CSR发送到CA并创建实际的证书。然后我将此证书发送回应用程序。部署和运行一个额外的服务

我正在研究如何创建PKCS#10证书签名请求(CSR),将其发送给证书自动颁发机构(CA),并根据CA的响应创建X.509客户端证书。我希望在Windows 10应用程序中执行此操作(因此,这是一个基于UWP构建的应用程序)。我可以在没有运行“CertCli 1.0类型库”的额外服务器的情况下执行此操作吗

我找到的唯一信息是:

它是针对Windows8.1的,它说我需要在应用程序和CA之间有一个服务器,以便将CSR发送到CA并创建实际的证书。然后我将此证书发送回应用程序。部署和运行一个额外的服务器来承载一个API似乎是浪费,所以我正在尝试另一种方法

  • 在Windows 10中仍然需要这样做吗
  • 我是否可以将“CertCli 1.0类型库”打包为DLL或与我的应用程序一起打包
  • 是否有开源替代方案(将在UWP应用程序中运行)可用于处理证书和CSR

或多或少的问题在于,使用传统的certenroll方法时,调用的是rpc,而通用应用程序在沙箱中运行。因此,即使您找到了编写代码的方法,沙箱也不会让您执行。如果你想要一个看起来像win 10的应用程序,你可以将所有metro UI位的引用添加到WPF中,然后你的应用程序就是一个普通的WPF,它可以使用所有正常的组件;问题是,您将无法将其提交到应用商店。或多或少的问题是,使用传统的certenroll方法调用的是rpc,而通用应用程序在沙箱中运行。因此,即使您找到了编写代码的方法,沙箱也不会让您执行。如果你想要一个看起来像win 10的应用程序,你可以将所有metro UI位的引用添加到WPF中,然后你的应用程序就是一个普通的WPF,它可以使用所有正常的组件;问题是,您将无法将其提交到商店。