Насколько я знаю, я не уверен, является ли AES единым стандартизированным алгоритмом, который может работать с ключами разной длины, или семейство подобных алгоритмов? Я имею в виду, что если я найду две реализации AES, использующие 128-битный ключ, могу ли я быть уверен, что они будут работать одинаково (без ошибок)?
В частности, в .Net / C #, я был сбит с толку, почему существуют две реализации абстрактный базовый класс System.Security.Cryptography.Aes
: System.Security.Cryptography.AesCryptoServiceProvider
и System.Security.Cryptography.AesManaged там. кажется, это различие / совпадение между AES и Rijndael, .NET имеет классы
Rijndael
и RijndaelManaged
, а также RijndaelManagedTransform
В чем разница между всеми этими классами? Я заметил, что классы AES существуют только с .NET 3.5, тогда как Rijndael существует с 1.0
Извините, если это глупые вопросы, Я новичок в криптографии, кроме функций безопасного хеширования.