Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline ams  
#1 Оставлено : 19 августа 2024 г. 14:25:23(UTC)
ams

Статус: Участник

Группы: Участники
Зарегистрирован: 29.04.2011(UTC)
Сообщений: 18
Откуда: RR

Здравствуйте. Имеется сервис подписания ЭЦП, написанный на .Net.
В нем используются ключи, установленные в системе Windows.
Скажите, пожалуйста, как можно программно удалить из системы контейнер некоторого закрытого ключа? (после того, как срок действия сертификатов закончился, хочется удалять их программно, а не в ручную. Сейчас уже много скопилось недействительных ключей и соответствующих им контейнеров)

Спасибо
Offline Андрей *  
#2 Оставлено : 19 августа 2024 г. 15:01:08(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,342
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2212 раз в 1727 постах
Здравствуйте.

утилитами можно:

cryptcp -delcert + условия фильтрации (отпечаток сертификата)
csptest -deletekeyset
https://www.cryptopro.ru...ts&m=91677#post91677
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей *  
#3 Оставлено : 19 августа 2024 г. 15:17:23(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,342
Мужчина
Российская Федерация

Сказал «Спасибо»: 550 раз
Поблагодарили: 2212 раз в 1727 постах
Примеры

cryptcp -delcert -thumbprint E475225B380BDABD2A061525FC92CCF4DCA40B83 -yes

"C:\Program Files (x86)\Crypto Pro\CSP\csptest.exe" -keyset -deletekeyset -container "REGISTRY\\test 30.07.2024 122801"
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Андрей * за этот пост.
nickm оставлено 19.08.2024(UTC)
Offline ams  
#4 Оставлено : 19 августа 2024 г. 15:21:10(UTC)
ams

Статус: Участник

Группы: Участники
Зарегистрирован: 29.04.2011(UTC)
Сообщений: 18
Откуда: RR

Большое спасибо!

А кодом никак не получится?

Отредактировано пользователем 19 августа 2024 г. 15:21:57(UTC)  | Причина: Не указана

Offline Санчир Момолдаев  
#5 Оставлено : 20 августа 2024 г. 13:32:00(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,198
Российская Федерация

Сказал(а) «Спасибо»: 100 раз
Поблагодарили: 275 раз в 255 постах
точно через CryptAcquireContext(CRYPT_DELETEKEYSET)
в c# надо посмотреть
Техническую поддержку оказываем тут
Наша база знаний
Offline Артём Макаров  
#6 Оставлено : 22 августа 2024 г. 13:53:09(UTC)
Артём Макаров

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 20.02.2017(UTC)
Сообщений: 217

Сказал(а) «Спасибо»: 4 раз
Поблагодарили: 63 раз в 59 постах
У объектов криптопровайдеров Gost_XXX_CryptoServiceProvider есть свойство PersistKeyInCsp. Если выставите его в false на открытом ключе - то после Dispose объекта провайдера ключ должен удалиться.
Пример можно посмотреть в sdk - Samples\Simple\KeyManage\cs\DeleteKey.cs

Объект криптопровайдера можно получать как из сертификата, так и через передачу параметров контейнера ключа.
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Артём Макаров за этот пост.
Андрей * оставлено 22.08.2024(UTC)
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.