我在objEnroll.CreatePFX中遇到了麻烦,它唯一的返回类型是字符串,我需要的是一个二进制输出,可以与我打开证书MMC并导出PFX时发生的事情相媲美。
这一点很重要,因为我需要原始的PFX格式,以便可以将私钥导入OSX和iPhone。
CX509Enrollment objEnroll = new CX509Enrollment();
objEnroll.InitializeFromTemplateName(
X509CertificateEnrollmentContext.ContextUser,
templateName);
// ...
objEnroll.Enroll();
string pfxString = objEnroll.CreatePFX("q", PFXExportOptions.PFXExportEEOnly, EncodingType.XCN_CRYPT_STRING_BINARY);设置EncodingType以将其正确转换为二进制输出的正确方法是什么?(类似于Windows证书导出)
发布于 2014-07-10 16:14:13
只需将base64字符串写入文件即可
System.IO.File.WriteAllText("MyFile.pfx", pfxString);Windows将处理PFX。
还可以使用以下命令将base64转换为二进制
System.IO.File.WriteAllBytes("MyFile.pfx", System.Convert.FromBase64String(pfxString));https://stackoverflow.com/questions/24592088
复制相似问题