Я плохо знаком с пространством CryptoProvider.NET и немного заинтересован тем, что я посмотрел повторное создание относительно того же ключа RSACryptoProvider. Я использую контейнер, потому что я храню ключ прочь к файлу на сервере, как так (я экспортирую CspBlob, последующий за этим созданием, и повторно импортирую его позже)...
_cp = new CspParameters { KeyContainerName = ContainerName };
В этом случае ContainerName имеет значение hardcoded, которым я ссылаюсь на контейнер. То, что беспокоит меня, - то, что, когда я создаю RSACryptoProvider, и exentsion пара ключей, сгенерированные значения ключа всегда являются тем же!
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(RSAKeySize, _cp);
Если я меняю имя контейнера, ключевых изменений. Должен быть Некоторый другой источник случайности, чем контейнерное имя при создании RSACryptoProvider, правильно? Иначе это делает имя контейнера пароль, который не является моим намерением.
Это имя контейнера , а не генератора.
Если вам нужны разные ключи каждый раз, просто создайте новый CryptoServiceProvider без ссылки на контейнер (== сохраненную пару ключей).