Как определить действительный OID, который будет использоваться для расширения цифровой подписи, совместимой с X.509? - PullRequest
2 голосов
/ 11 сентября 2010

Мне нужен OID для добавления пользовательского расширения (уже закодированного ASN1.en) к цифровой подписи X.509v3 / PKCS # 7.Мне все равно, если это совместимо;это частное частное приложение (на самом деле, исследовательский проект).Прямо сейчас мне даже не важно, какой это OID, который используется в каком-то проприетарном приложении, хотя, очевидно, я не мог долго использовать этот OID.

В настоящее время я использую 1.2.3.4.5, который находится в тестовом коде для библиотеки шифрования, которую я использую (cryptlib).Тем не менее, создание подписи терпит крах, и я не знаю, может ли это быть причиной.Я знаю, что библиотека отклоняет по крайней мере некоторые недействительные OID при проверке входных данных.

Ответы [ 3 ]

3 голосов
/ 13 сентября 2010

Вы можете запросить «официальный» частный OID здесь и быть в безопасности от столкновений в будущем.

3 голосов
/ 12 сентября 2010

Я подозреваю, что проблема в том, что вы неправильно кодируете OID, который используете в качестве объекта идентификатора объекта ASN.1.Я знаю о Cryptlib, но не использовал его, поэтому не могу быть уверен, почему он выходит из строя, но я подозреваю, что причиной будет неправильное кодирование, а не просто выбор неподходящего значения OID.Я сомневаюсь, что Cryptlib придает какое-либо значение указанному вами значению OID (если, возможно, вы не предоставите OID для известного расширения сертификата, такого как «базовые ограничения» с неожиданным значением).

Я замечаю из http://www.imc.org/ietf-pkix/pkix-oid.asn, что PKIX определяет диапазон OID для тестирования, и я ожидаю, что вы никого не запутаете, если вы (ab) используете oid в этом диапазоне для собственного (внутреннего, неофициального) тестирования.Идентификаторы тестирования - это все, что начинается с 1.3.6.1.5.5.7.13.

Меня немного беспокоит ваш разговор о "цифровой подписи X.509v3 / PKCS # 7" ... X.509 и PKCS # 7 действительно очень разные.Я понял из вашего разговора о пользовательском «Расширении», что вы пытаетесь создать сертификат X.509v3, а не подпись PKCS # 7 ... это правильно?

2 голосов
/ 22 сентября 2010

Помимо (правильных) ответов @dajames и @Ken Johnson, вы также можете использовать OID на основе UUID , если вы не хотите / не хотите регистрировать PEN OID (хотя PEN, вероятно, лучше в долгосрочной перспективе).

...