我正在使用C#而我正在尝试使用PuTTY密钥生成器生成的密钥对字符串进行签名。我不太清楚我在做什么,因为我无法看到如何将密钥导入RsaEngine
我看了下面的内容:
AsymmetricKeyParameter key = new RsaKeyParameters(false, ???, ???);
RsaEngine rsa = new RsaEngine();
rsa.Init(true, key);
但似乎RsaKeyParameter和AsymmetricKeyParameter采用模数和指数,我不知道如何从我已生成的密钥中获取?我可能会使用错误的类,但如果有人对此有任何指示,这将是非常好的
我查看了:RSA signing and verification with C#,BouncyCastle and imported RSA key - Working Python example and non-working C# code sample inside但是答案有一个不存在的功能:
ConvertToRSAPrivateKey
答案 0 :(得分:0)
您可以先convert the PuttyGen keys into OpenSSH compatible keys然后将这个记录良好的格式转换为C#。
我能想到的最好的是this class of the SSH.NET library code。
同时请注意,最好在实际库中生成要使用的密钥。密钥格式,尤其是私钥格式,并不总是兼容。