DES を使用して疑似ランダム ビット ジェネレーターを実装しています。生成された各番号は、前のステップで暗号化された番号に依存します。これが、CryptoStream の代わりに ICryptoTransform を使用したかった理由ですが、
ICryptoTransform.TransformBlock()
仕組みがわかりませんICryptoTransform.TransformFinalBlock()
入力より 8 バイト長い配列を返します (これは私を悩ませているものです - 私が間違っていなければ、DES は 64 ビットを暗号化して 64 ビットを返します)
コード:
Random random = new Random();
byte[] input = new byte[8];
random.NextBytes(input);
byte[] s = new DESCryptoServiceProvider()
.CreateEncryptor()
.TransformFinalBlock(input, 0, 8);
s
はbyte[16]
、なぜですかbyte[8]?