gpt4 book ai didi

mono - PFX/PKCS12 到 SNK 的单声道转换

转载 作者:行者123 更新时间:2023-12-04 14:32:57 25 4
gpt4 key购买 nike

这是对 Mono xbuild error CS1548 - key file has incorrect format 的跟进

嗨,我有一个使用 VS2008 用 C# 编写的应用程序。目前我们正在使用 Mono 将此应用程序移植到 Mac。

我试图从 pfx 文件中提取 key 。
首先我用

`sn -pc key.pfx key.snk`

这给了我一个错误
'Failed to extract public key for key pair -- Keyset does not exist'.

然后我用
`sn -p key.pfx key.snk`

这创建了我想要的 snk 文件。
然后我在单声道中选择了项目 Option > Assembly Signing
构建错误时
'key.snk is missing private key needed for signing'.

我想我明白,如果我制作一个新的 snk key ,我可以在其中同时拥有私钥和公钥。只是因为遗留问题,我们真的希望能够使用原始 pfx 键值。

最佳答案

非常感谢 Poupou 提出答案,我刚刚将代码添加到我为获取 snk 而制作的小程序中。

using System.IO;
using System.Security.Cryptography;
using System.Security.Cryptography.X509Certificates;

namespace PfxSnk
{
internal class Program
{
private static void Main(string[] args)
{
X509Certificate2 cert = new X509Certificate2(@"KEY.pfx", "pfxPassword", X509KeyStorageFlags.Exportable | X509KeyStorageFlags.PersistKeySet);
RSACryptoServiceProvider provider = (RSACryptoServiceProvider)cert.PrivateKey;

byte[] array = provider.ExportCspBlob(!provider.PublicOnly);

using (FileStream fs = new FileStream("FileName.snk", FileMode.Create, FileAccess.Write))
{
fs.Write(array, 0, array.Length);
}
}
}
}

关于mono - PFX/PKCS12 到 SNK 的单声道转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9255573/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com