0
これはWindowsフォームプロジェクトです。私は暗号化されたファイルの解読に問題があります。暗号例外 - 不正なデータ
- CryptographicException
- 追加情報:不良データそれは私に例外をスローします。ここで
画像リンクされています http://i.imgur.com/aPggrcP.png
ここでは、復号化に必要なコードです:
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
OpenFileDialog ofd2 = new OpenFileDialog();
private void button4_Click(object sender, EventArgs e)
{
if (ofd2.ShowDialog() == DialogResult.OK)
{
richTextBox4.Text = ofd2.SafeFileName;
}
} private void richTextBox4_TextChanged(object sender, EventArgs e){}
public static void CopyStream(Stream input, Stream output)
{
byte[] buffer = new byte[8 * 1024];
int len;
while ((len = input.Read(buffer, 0, buffer.Length)) > 0)
{
output.Write(buffer, 0, len);
}
}
private void dec_Click(object sender, EventArgs e)
{
string pathK = ofd2.FileName;
if (File.Exists(pathK))
{
string dirPath = Path.GetDirectoryName(ofd2.FileName);
string pathH = dirPath + "/DE" + ofd2.SafeFileName;
if (File.Exists(pathH))
{
using (FileStream filestream = new FileStream(pathK, FileMode.Open))
{
using (CryptoStream stream = new CryptoStream(filestream, des.CreateDecryptor(des.Key, des.IV), CryptoStreamMode.Read))
{
using (FileStream fsDecrypted = new FileStream(pathH, FileMode.Open, FileAccess.Write))
{
CopyStream(stream, fsDecrypted);
}
}
}
}
else
{
using (FileStream filestream = new FileStream(pathK, FileMode.Open))
{
using (CryptoStream stream = new CryptoStream(filestream, des.CreateDecryptor(des.Key, des.IV), CryptoStreamMode.Read))
{
using (FileStream fsDecrypted = new FileStream(pathH, FileMode.CreateNew, FileAccess.Write))
{
CopyStream(stream, fsDecrypted);
}
}
}
}
}
else
{
decTextBox.Text = "Cannot find encrypted file !";
}
} private void decTextBox_TextChanged(object sender, EventArgs e){}
誰かが私を助けることができますか?
ありがとうございます。あなたは私の問題を解決しました。 – klemsi123