.NET私钥Rsa加密我需要使用RSA1.5算法对一个字符串进行加密。我已经获得了私钥。但是,我一辈子都想不出如何将这个键添加到班级中。看来密钥需要是RSAParameter结构类型。但是,这需要一组我没有给的值,比如模数、指数、P、Q等,我只有私钥。有人可以帮忙吗?您应该了解BouncycastleC#库。特别是有两个非常有用的类:Org.BouncyCastle.OpenSsl.PemReader,它将把你必须的openssl样式的键转换为Org.BouncyCastle.Security.DotNetUtilities键对象,以及Org.BouncyCastle.Security.DotNetUtilities,它将一个Org.BouncyCastle.Security.DotNetUtilities密钥转换为.NETRSAParameters对象。这是一小段未经测试的代码,展示了如何使用System;使用System.IO;使用System.Security.Cryptography;使用Org.BouncyCastle.OpenSsl;使用Org.BouncyCastle.Crypto;使用Org.BouncyCastle.Security;使用Org.BouncyCastle.Crypto.Parameters;命名空间RSAOpensslToDotNet{类程序{staticvoidMain(string[]args){StreamReadersr=newStreamReader("../../privatekey.pem");PemReaderpr=newPemReader(sr);AsymmetricCipherKeyPairKeyPair=(AsymmetricCipherKeyPair)pr.ReadObject();RSAParametersrsa=DotNetUtilities.ToRSAParameters((RsaPrivateCrtKeyParameters)KeyPair.Private);我认为这就是您要查找的内容://从系统文件导入非对称RSA密钥。publicstaticRSAParametersImportRSAKey(StringfileName){//创建到指定系统文件的流。StreamfileStream=newFileStream(fileName,FileMode.Open,FileAccess.Read);//从文件中提取/反序列化密钥。IFormattersoapFormatter=newSoapFormatter();RSAParametersrsa参数=(RSAParameters)soapFormatter.Deserialize(fileStream);//关闭文件流。文件流.关闭();返回rsa参数;}要生成新的密钥,可以使用RSACryptoServiceProvider.ExportParameters方法见下图:RSAParameters结构以上为C#学习教程:.NET私??钥Rsa加密分享的所有内容。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
