Я просто "ВАУ" - я бы не назвал это безопасным в любом случае - в соответствии с http://seclists.org/fulldisclosure/2006/Apr/164 закрытые ключи не удаляются и остаются в системе БЕЗ какой-либо информации об этом, я used попытался использовать приложение в прикрепленной ссылке, но оно не работает, однако мне удалось идентифицировать закрытые ключи с помощью hexa-редактора в path C:\Users\[USERNAME]\AppData\Roaming\Microsoft\Crypto\RSA\[UID]
и окончательно удалить их из системы. Я все еще в шоке, это не ошибка, а особенность.
Если у вас установлен сертификат на HD (т. Е. С использованием MS Enhaced CSP), то, следуя Microsoft, вы можете удалить его с помощью IExplorer, в меню Сервис выберите пункт Свойства обозревателя, затем перейдите на вкладку * Содержимое *, а затем нажмите Удалить. Это хорошо известное действие, описанное в http://www.microsoft.com/technet/prodtechnol/ie/reskit/6/part2/c06ie6rk.mspx?mfr=true
Делая это, вы эффективно удаляете сертификат, но ЧАСТНЫЙ КЛЮЧ ОСТАЕТСЯ НА HD. Вы можете найти множество сценариев, в которых это может быть проблемой. Предположим, вы идете в дом друга, устанавливаете файл pkcs12, содержащий ваш сертификат и закрытый ключ со средним уровнем безопасности (по умолчанию), затем используете его, и когда вы заканчиваете свою работу, вы удаляете сертификат (но НЕТ закрытый ключ). Затем ваш друг берет ваш сертификат (это публичный документ) и устанавливает его, имея для вас ваш личный ключ.
Программа cleancapi удаляет закрытые ключи, которые не используются ни одним сертификатом. Исходный код: http://dwnl.nisu.org/dwnl?fic=cleancapi_0_2_src.zip Предварительно скомпилированная версия: http://dwnl.nisu.org/dwnl?fic=cleancapi_0_2_bin.zip