Использование C # RSACryptoServiceProvider позволяет хранить несколько ключей с одним и тем же именем в контейнере - PullRequest
0 голосов
/ 12 марта 2019

Я готовлюсь к экзамену по C # и в настоящее время просматриваю раздел «Шифрование». Просматривая раздел хранилища ключей, он говорит, что вы можете установить имя контейнера для хранилища ключей, используя поле CspParameters.KeyContainerName. Мой вопрос заключается в том, что, поскольку это поле может быть установлено на любое строковое значение, что мешает вам задать два одинаковых имени? И если это предотвращает это, то как вы можете помешать кому-либо использовать это для получения экземпляров открытого и закрытого ключей, пытаясь хранить ключи до тех пор, пока это не будет предотвращено?

Спасибо! * * 1004

1 Ответ

1 голос
/ 12 марта 2019

что мешает вам задать два одинаковых имени?

Ничего. Использование того же имени позже - это способ загрузки именованного ключа. Если вы сохраняете данные для перезаписи, это означает, что вы заменяете ключ (например, периодическое переключение ключа).

Как вы можете запретить кому-либо использовать это для получения экземпляров открытого и закрытого ключей, пытаясь хранить ключи до тех пор, пока это не будет запрещено?

Если вы имеете в виду человека, используйте разные учетные записи, ключи в пользовательской области - это разные контейнеры даже с одним и тем же именем.

Если вы имеете в виду вредоносную программу, не беспокойтесь, она просто перечислит ключи ... ей не нужно рыться в бесконечном пространстве строк:)

...