簡體   English   中英

通過RSACryptoServiceProvider加密/解密文件

[英]encrypt/decrypt file by RSACryptoServiceProvider

我需要在C#中使用RSA算法來加密/解密文件(類型為pdf,txt,doc),我從XMl文件導入密鑰

我用這種方法

public byte[] DecryptData(byte[] encrypted)
{
    int nBytes = encrypted.Length;
    byte[] ByteArray = new byte[nBytes];


    RSACryptoServiceProvider rsa=new RSACryptoServiceProvider();

    StreamReader reader = new StreamReader(@"E:\test\keyStore\Receiver\PrivateKey.xml");
    string PrivateKeyXML = reader.ReadToEnd();
    rsa.FromXmlString(PrivateKeyXML);
    reader.Close();

    //store decrypt data
    ByteArray = rsa.Decrypt(encrypted, false);
    ////convert bytes to string
    //ss = Global.enc.GetString(fromEncrypt);
    return ByteArray;

}

“ ERROR MESSAGE =”要解密的數據超過此256字節模數的最大值。“

請幫我

這是因為RSACryptoServiceProvider(非對稱)僅應用於加密用於加密文檔的對稱密鑰。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM