2010-02-28 3 views
0

Извините, что это не совсем вопрос программирования, но это также интерес. Так что я задаю вопрос: откуда у частного ключа пользователя? Является ли он ключом-парой вместе с открытым ключом в сертификате, который сгенерирован в CA, или создается в клиентской ОС, когда только CA-файл, открытый ключ и т. Д. Поступает из CA?Microsoft CA: откуда с закрытого ключа

Благодарим за опережение.

+0

Если вы чувствуете, что нужно начинать вопрос с SO «Извините, что это не совсем вопрос программирования», тогда вы можете захотеть переосмыслить .... – skaffman

+0

Что это связано с Microsoft? –

ответ

1

Частные и открытые ключи связаны математически. Процесс генерации получает вас и, всегда; один называется частным (вы держите его в безопасности), один называется общедоступным (вы можете дать его кому-либо) Ссылка трудно найти, поэтому знание одной из них не помогает найти другую.

Когда вы подписываете что-то, вам нужен ваш личный ключ. Когда люди хотят проверить подпись, им нужен ваш открытый ключ.

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

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

Edit: Я начал комментарий, но это было слишком долго, так вот она:

Каждого libray безопасности имеет свои собственные инструменты, которые реализуют необходимую математику, чтобы построить правильные открытые/закрытые пары. OpenSSL поставляется с инструментом командной строки, с помощью которого вы можете создать свой собственный ЦС, создать запросы сертификатов и сертификаты. Windows Server имеет службы сертификации с аналогичными функциями. .NET имеет инструмент sn (sn = strong name), который создает файлы (с расширением snk) с общедоступными/закрытыми ключами (используется для подписи DLL). Visual Studio имеет интерфейс GUI для создания файлов snk. Конечно, в мире Java есть инструменты (один называется keystore, если я не ошибаюсь), а также в Mac OS X. Когда вы сами создаете сертификаты, они называются «самозаверяющимися» и не доверяются остальной частью Мир.

+0

Большое спасибо, но я до сих пор не понял: где я получаю эту пару ключей? Приходит ли он от сервера CA или генерируется пользовательской ОС или DC при создании пользователя. Другими словами, получаю ли я эту пару по умолчанию из своей ОС без отправки запроса на сертификат из ЦС? – Andrey

+0

Пожалуйста, взгляните на отредактированный ответ. – Timores

Смежные вопросы