特定のキーを使用して最初の部分を暗号化し、特定のキーを使用して最後の部分を暗号化するファイル「myFile」を作成したいと思います。これまでのところ、次のようなものがあります。
cs1 = new CryptoStream(myFile, symmetricKey1.CreateEncryptor(key1, key1IV), CryptoStreamMode.Write);
cs2 = new CryptoStream(myFile, symmetricKey2.CreateEncryptor(key2, key2IV), CryptoStreamMode.Write);
そして、cs1 を使用してファイルの最初の部分に書き込み、次のように cs2 を使用して 2 番目の部分に書き込みたいと思います。
while((data = fs1.readByte()) != -1){
cs1.WriteByte(data);
}
while((data = fs2.readByte()) != -1){
cs2.WriteByte(data);
}
これはエラーなしで続行されますが、2 番目の CryptoStream (cs2) は実際にはファイルに書き込みません。なぜこれが起こるのか誰にも分かりますか?これを行うより良い方法はありますか?ありがとう
編集:CryptoStream を閉じると myFile も閉じるように見えますが、2 つ目の CryptoStream を閉じてから再度開いて開始すると、期待したほどきれいではありませんが、これはうまくいくようです。助けてくれてありがとう!