使用 BounceCastle 我可以运行以下代码。
它生成密钥对并返回 ASN.1 DER 编码格式。
//Generate new key
var generator = new RsaKeyPairGenerator ();
generator.Init (new KeyGenerationParameters (new SecureRandom (), 1024));
var keyPair = generator.GenerateKeyPair ();
//Save private key for later use
keyParameters = (RsaKeyParameters)keyPair.Private;
//Export ASN.1 DER-encoded
SubjectPublicKeyInfo info = SubjectPublicKeyInfoFactory.CreateSubjectPublicKeyInfo(keyPair.Public);
return info.GetEncoded ();
它已经过测试并可与第三方软件配合使用。
我的问题是:如何反转上述编码。
有了编码后的公钥,如何将公钥放入 RsaKeyParameters 中。
我想我即将做类似的事情。
SubjectPublicKeyInfo s = new SubjectPublicKeyInfo(????, publicKeyBytes);
RsaKeyParameters key = (RsaKeyParameters)PublicKeyFactory.CreateKey(s);
因此,如果这很接近,我需要知道要放入什么????,它需要一个 AlgorithmIdentifier 类型的对象。
谢谢这个答案 https://stackoverflow.com/a/9290086/33236我得到以下代码:
AsymmetricKeyParameter asymmetricKeyParameter = PublicKeyFactory.CreateKey(req.PublicKey);
RsaKeyParameters key = (RsaKeyParameters) asymmetricKeyParameter;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)