Шифровать и расшифровать памятьC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Шифровать и расшифровать память

Сообщение Anonymous »

мне нужно склеп, а затем расшифровывать память (оригинальный большой файл PDF). Я попробовал следующий код: < /p>

public static string GenerateKey()
{
var desCrypto = (DESCryptoServiceProvider)DES.Create();

return Encoding.ASCII.GetString(desCrypto.Key);
}

public static MemoryStream Encrypt(Stream fsInput,string sKey)
{
var fsEncrypted=new MemoryStream();

var des = new DESCryptoServiceProvider
{
Key = Encoding.ASCII.GetBytes(sKey),
IV = Encoding.ASCII.GetBytes(sKey)
};
var desencrypt = des.CreateEncryptor();
var cryptostream = new CryptoStream(fsEncrypted,desencrypt,CryptoStreamMode.Write);

var bytearrayinput = new byte[fsInput.Length];
fsInput.Read(bytearrayinput, 0, bytearrayinput.Length);
cryptostream.Write(bytearrayinput, 0, bytearrayinput.Length);
fsInput.Close();

fsEncrypted.Flush();
fsEncrypted.Position = 0;
return fsEncrypted;
}

public static MemoryStream Decrypt(Stream fsread,string sKey)
{
var des = new DESCryptoServiceProvider
{
Key = Encoding.ASCII.GetBytes(sKey),
IV = Encoding.ASCII.GetBytes(sKey)
};

var sOutputFilename = new MemoryStream();
var desdecrypt = des.CreateDecryptor();
var cryptostreamDecr = new CryptoStream(fsread,desdecrypt,CryptoStreamMode.Read);

var fsDecrypted = new StreamWriter(sOutputFilename);
fsDecrypted.Write(new StreamReader(cryptostreamDecr).ReadToEnd());
fsDecrypted.Flush();
fsDecrypted.Close();
sOutputFilename.Position = 0;

return sOutputFilename;
}
< /code>

Пример вызова: < /p>

var sSecretKey = FileHelper.GenerateKey();
var encyptedPdfContent = FileHelper.Encrypt(httpPostedFile.InputStream, sSecretKey);

var decryptedPdfContent = FileHelper.Decrypt(encyptedPdfContent, sSecretKey);
< /code>

Encrypt, кажется, работает, как и ожидалось, но когда я пытаюсь расшифровать < /p>

fsDecrypted.Write(new StreamReader(cryptostreamDecr).ReadToEnd());
< /code>

возвращает мне плохие данные < /code> Исключение. < /p>

Что не так в моем коде? У меня нет строки. У меня есть память, которая вообще не кодируется!

Подробнее здесь: https://stackoverflow.com/questions/406 ... morystream
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Шифровать и расшифровать строку с AES-128
    Anonymous » » в форуме JAVA
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Как шифровать и расшифровать файл, используя команду GPG с помощью асимметричного ключа? [дублировать]
    Anonymous » » в форуме Php
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Должен ли я шифровать и расшифровать прямо в классе Mapper? [закрыто]
    Anonymous » » в форуме C#
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Должен ли я шифровать и расшифровать прямо в классе Mapper? [закрыто]
    Anonymous » » в форуме C#
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Что это за формат данных? Может ли кто-нибудь помочь мне расшифровать или расшифровать его? [закрыто]
    Anonymous » » в форуме Linux
    0 Ответы
    82 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»