Посмотрите на журналы событий для чего-либо, что произошло во время завершения работы и взгляда на то, что произошло, когда компьютер перезапустил, иногда процесс зарегистрируется, это не завершало работу правильно.
Затем используйте инструмент как Проводник Процесса и пристально смотрите на то, что работает. Попытайтесь уничтожить определенные процессы, прежде чем Вы будете завершать работу и видеть, повторяется ли проблема, можно затем исключить те задачи, которые Вы уничтожили как являющийся преступниками. Также ищите задачи, которые, возможно, были оставлены позади чем-то, что Вы делали. Сделайте этот каждый раз, пока Вы не можете сузить, какие процессы, кажется, виновная сторона.
От: http://en.wikipedia.org/wiki/Digital_certificate
Ключевое использование: Цель открытого ключа (например, шифровка, подпись, сертификат, подписывающийся...).
Посмотрите - флаг цели в openssl документах: http://www.openssl.org/docs/apps/x509.html#CERTIFICATE_EXTENSIONS
В сертификатах X.509, как и в большинстве других случаев, если термин не определен явно, он наследует значение из непосредственно окружающего его контекста. Если этот контекст - «жизнь», то фраза «Любая цель» означает буквально это.
Итак, проверьте Политику сертификатов, Соглашение с подписчиком и Соглашение с проверяющей стороной выдающего ЦС, и если они ничего не говорят о флаге, то это означает то, что написано на коробке.
Большинство сертификатов выпускаются с целью (или набором целей), которой они ограничены, например, аутентификация клиента, аутентификация сервера, обмен ключами и подпись кода. Если они используются для не одобренной цели (например, с использованием вашего сертификата электронной почты для подписи кода), они недействительны.
Расширение любой цели просто означает, что сертификат всегда должен соответствовать ограничениям использования, что равносильно тому, что действительно для всех видов использования.
KeyUsage - это расширение v3, которое может присутствовать или не присутствовать в сертификате.
Полезная (если слегка датированная) сводка значений id-ce-keyUsage: http://www.alvestrand.no/objectid/2.5.29.15.html [недавно добавленные значения 7 = encipherOnly и 8 = decipherOnly]
Хитрость в том, что это "OID=2.5.29.15 keyUsage extension" /могут или не могут/ присутствовать в конкретном сертификате.
То, что OpenSSL, вероятно, предполагает с PURPOSE_ANY, это то, что это расширение было /не присутствует/, и, следовательно, это "зависит от вашей собственной политики", чтобы решить, для чего его использовать или не использовать. В противном случае, нет значения растровой карты, соответствующего "ЛЮБОЙ"...
«Назначение» OpenSSL - это не просто прямое отражение расширения Key-Usage сертификата v3.
OpenSSL сам определяет набор «целей», а затем имеет некоторая логика, которая определяет, соответствует ли данный сертификат выбранной цели на основе расширений сертификатов, включая, помимо прочего, использование ключа и расширения расширенного использования ключа.
«Любая цель» - это то, что вы получите, если пройдете -нацеливайте любые
на openssl verify
, или если вы пишете код, который устанавливает цель контекста OpenSSL на «любое» значение, например, SSL_CTX_set_purpose ()
.
Большинство целей задокументировано в man x509
раздел CERTIFICATE EXTENSIONS
- в нем объясняется, для каких свойств сертификат должен быть действительным для данная цель - но это не документирует любую
цель. В источнике в верхней части crypto / x509v3 / v3_purp.c
вы можете видеть, что функция проверки, выполняемая для X509_PURPOSE_ANY
, - это no_check ()
, что просто возвращает 1: фактически отключает проверку цели.
Я не уверен, можно ли создать ситуацию, в которой любой сертификат не будет действителен для любой
цели. Я также не уверен, в чем разница между установкой цели any
и отсутствием установки цели вообще, что должно привести к полному обходу проверки цели.
В частности, OpenSSL X509_PURPOSE_ANY
/ «Любая цель» / -цель любая
концепция не то же самое, что RFC 5280 anyExtendedKeyUsage KeyPurposeId.
Обычно я устанавливаю "AnyPurpose" на корневом CA (это означает, что это корневой CA и может выдавать сертификаты любому другому промежуточному или подчиненному CA), а затем, при выдаче промежуточного CA, я устанавливаю ограничения. ...
Мой корневой УЦ имеет:
На моем промежуточном TLS CA для примера я установил:
Это ограничение TLS CA от наследования от всех атрибутов корневого центра сертификации (ограничительные OIDs, перечисленные здесь, позволят подписывать только TLS сертификаты, а с помощью pathlen:0 я буду запрещать суб-ЦС).
Все зависит от того, как вы настроите свою инфраструктуру PKI.
В своей сети я делаю по одному промежуточному CA для каждой цели, например:
В этом случае, если возникает проблема с почтовым сертификатом, мне нужно лишь отозвать Email CA, в то время как все остальные промежуточные CA в порядке.
В больших центрах сертификации, например, есть выделенный промежуточный CA для EV.
Примечание: Это для персональной PKI, если вы хотите сделать что-то в соответствии с RFC и лучшими практиками, как это делают большие центры сертификации, то есть много дополнительных штрихов, например, включить гораздо больше OID и настроить их все...
Например, вы можете прочитать некоторые стандарты по этой ссылке:
https://cabforum. org/wp content/uploads/Baseline_Requirements_V1.pdf
Другой пример, для EV сертификатов есть много дополнительных шагов по установке OIDs:
И так как моя установка не нуждается в них, Я не тратил время на поиск и тестирование необходимых OID для работы
. Любое назначение: Да
и Любое назначение СА: Да
строки из openssl x509 -purpose
являются специальными. Она специфична для openssl и представляет собой то, на что будет проверяться сертификат при использовании с древними версиями программного обеспечения, которые не проверяют наличие расширений.
Эти флаги специального назначения не могут быть выключены или отключены. От openssl проверка цели определена в openssl/crypto/x509v3/v3_purp.c как статический X509_PURPOSE xstandard[] = { ... }. Функция проверки проверки X509_PURPOSE_ANY возвращает 1.
Наиболее близкой к официальной документации по этому флагу, вероятно, являются сообщения доктора Стивена Н. Хенсона, автора v3_purp.c - http://marc.info/?l=openssl-users&m=96219426811480 и http://openssl.6102.n7.nabble.com/quot-critical-CA-FALSE-quot-but-quot-Any-Purpose-CA-Yes-quot-td29933.html.
Цитирую Стива:
'Настройка "Любая цель" - это то, что пропускает что угодно и не производит никаких проверок вообще. Изначально она была помещена туда, чтобы люди могли использовать разбитые сертификаты, если у них не было другого выбора и они могли жить с последствиями.... С тех пор проверки ЦС стали обязательными в коде, даже если установлена настройка "Any Purpose". Так что если бы вы действительно попытались использовать этот сертификат в качестве CA, он был бы отклонен"