Стандартный способ указать версию и «схему» для сертификата X509 - PullRequest
0 голосов
/ 18 февраля 2012

У меня есть система, в которой сертификаты X509 могут иметь несколько «схем», где схема представляет собой набор точных OID, которые являются обязательными / необязательными в теме сертификата. Приложение, которое проверяет эти сертификаты, должно знать, какая схема (и какая версия этой схемы) была использована для данного сертификата.

Например, схема A требует CN, O, OU, а схема B требует CN, UID, O, C, ST.

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

  1. Взломай какой-нибудь совершенно не связанный OID, чтобы вставить эту информацию в тему. Мне это не нравится, но это будет работать как хак-й запасной вариант.
  2. Используйте расширение. Я думаю, что Атрибуты Subject Directory выглядят так, как будто это может быть уместно, но, тем не менее, он по-прежнему требует пары имя / значение OID в качестве полезной нагрузки, так что опять же, какие OID?
  3. Что-то еще целиком?

Опять же, я могу сделать эту работу с # 1 или сделать аналогичный взлом с # 2, но то, что я действительно хочу, это стандартный нехакерский способ достижения этой цели.

Ответы [ 2 ]

0 голосов
/ 23 февраля 2012

В итоге я использовал OID на основе UUID по дуге 2.25 для каждого из моих двух полей метаданных ( схема и версия ).

Сайт ниже предлагает генератор UUID для удобства и ссылку для регистрации (хотя регистрация не обязательна):

http://www.itu.int/ITU-T/asn1/cgi-bin/uuid_generate

0 голосов
/ 22 февраля 2012

Я предполагаю, что вы позаботитесь о том, какая схема используется.Таким образом, это означает, что у вас, вероятно, есть именно эти поля в DN - и что они также составляют дыхание того, что подписано CA (с обязательным различным).Таким образом, если предположить, что ваши схемы отличаются - это позволит вам их различать.

Другим вариантом будет (под) CA на схему;или просто используйте поле комментария netscape :).

Однако, по моему опыту, когда организация должна рекламировать, распознавать / реконструировать и интерпретировать схему, это обычно означает, что она имеет какую-то деловую цель.Так что у него, как правило, есть полезное фирменное наименование.В таком случае;рассмотрите (дополнительный) O или OU (многовариантный, если необходимо) с этим там.

...