私はRSA暗号化を行っており、長い文字列を小さなバイト[]に分割して暗号化する必要があります。次に、配列を組み合わせて文字列に変換し、安全なファイルに書き込みます。
次に、暗号化によってバイトが作成されます[128]
私はこれを次のように組み合わせて使用します。
public static byte[] Combine(params byte[][] arrays)
{
byte[] ret = new byte[arrays.Sum(x => x.Length)];
int offset = 0;
foreach (byte[] data in arrays)
{
Buffer.BlockCopy(data, 0, ret, offset, data.Length);
offset += data.Length;
}
return ret;
}
復号化するときは、文字列を取得し、それをbyte []配列に変換します。次に、チャンクをデコードするために文字列を分割してから、文字列に変換する必要があります。
何か案は?
ありがとう
編集:
分割は機能していると思いますが、復号化は失敗します。これはRSAキーなどが原因ですか?TimePointAでは暗号化され、TimePointBでは復号化が試みられて失敗します。公開鍵は異なるため、それが問題であるかどうかはわかりません。