Я использую System.Security.Cryptography.RijndaelManaged
класс в C#, чтобы делать шифрование с настройками (NET 3.5.):AES256 шифрование в C#
RijndaelManaged AesCrypto = new RijndaelManaged();
AesCrypto.BlockSize = 128;
AesCrypto.Mode = CipherMode.CBC;
CryptoStream CryptStream = new CryptoStream(memStream1,
AesCrypto.CreateEncryptor(EncryptionKey1, EncryptionIV1),
CryptoStreamMode.Write);
И с 256 битным ключом и IV. Я считаю, что результаты в AES256. Я прав?
Были ли какие-либо отличия, если я использую класс System.Security.Cryptography.AesManaged
?
Кроме того, я думал, мы преследуем реализацию Microsoft AES, может ли это быть проверено, или, может быть, следует написать собственную реализацию AES?
Если вы параноик, то написать свою собственную реализацию. Если вы действительно хотите проверить код Microsoft, просто декомпилируйте класс и проверьте его самостоятельно. Обе вещи - пустая трата времени. – user1908061
Никогда не записывайте свою собственную реализацию. Реализация Microsoft была протестирована намного больше, чем когда-либо будет ваша реализация. Вы хотите рискнуть иметь кучу зашифрованных данных, которые больше не подлежат расшифровке? – ZippyV
проверить выход MS-реализации на выходе любой другой реализации AES ... что вы ожидаете найти в реализации MS, если результат идентичен выходу любой другой реализации? – DarkSquirrel42