2つのデータを生成する2つのボタンがあります。私が達成する必要があるのは、それらを別々に暗号化し、同じファイルにエクスポートすることです。その後、後で復号化できるようにする必要があります。
CBCモードを使用することは可能ですか?同じストリームを使用して、2番目のデータの最初のブロックを1番目のデータの最後のブロックで暗号化しますか?(IVを避けるため)
または
これはECBモードで実行できますか?誰かがこれについて詳しく説明できれば良いでしょう。
2つのデータを生成する2つのボタンがあります。私が達成する必要があるのは、それらを別々に暗号化し、同じファイルにエクスポートすることです。その後、後で復号化できるようにする必要があります。
CBCモードを使用することは可能ですか?同じストリームを使用して、2番目のデータの最初のブロックを1番目のデータの最後のブロックで暗号化しますか?(IVを避けるため)
または
これはECBモードで実行できますか?誰かがこれについて詳しく説明できれば良いでしょう。
2つの値は、ファイルの個別のプロパティとしていつでも保存できます。
[Serializable]
public class EncryptedValues
{
public string Value1 { get; set; }
public string Value2 { get; set; }
public static EncryptedValues FromXml(string xmlString)
{
if (!string.IsNullOrEmpty(xmlString))
{
XmlSerializer xmlSerializer = new XmlSerializer(typeof(EncryptedValues));
using (MemoryStream memoryStream = new MemoryStream())
{
using (StreamWriter streamWriter = new StreamWriter(memoryStream))
{
streamWriter.Write(xmlString);
streamWriter.Flush();
memoryStream.Flush();
memoryStream.Position = 0;
return (xmlSerializer.Deserialize(memoryStream) as EncryptedValues);
}
}
}
return null;
}
public string ToXml()
{
XmlSerializer xmlSerializer = new XmlSerializer(typeof(EncryptedValues));
using (MemoryStream memoryStream = new MemoryStream())
{
using (StreamWriter streamWriter = new StreamWriter(memoryStream))
{
xmlSerializer.Serialize(streamWriter, o);
streamWriter.Flush();
memoryStream.Flush();
memoryStream.Position = 0;
using (StreamReader streamReader = new StreamReader(memoryStream))
{
return streamReader.ReadToEnd();
}
}
}
}
}