Как я могу указать срок действия сертификата в файле конфигурации OpenSSL?

Я довольно новичок в OpenSSL, и я пытаюсь указать сертификат, который действителен только в течение одного часа, используя OpenSSL. Я был успешен в этом с openssl ca с использованием -startdate а также -enddate варианты, но мне было интересно, если можно установить действительность в файле конфигурации для использования с openssl req? Если да, не могли бы вы привести пример?

Я попытался использовать подобный синтаксис как:

privateKeyUsagePeriod = ASN1:SEQUENCE:privateKeyUsagePeriod

[privateKeyUsagePeriod]

notBefore = IMPLICIT:0,GENERALIZEDTIME:20170501000000Z

notAfter = IMPLICIT:0,GENERALIZEDTIME:22910501000000Z

Этот синтаксис, кажется, не работает на валидность. Спасибо всем заранее за любые рекомендации, которые вы можете дать мне.

1 ответ

Решение

Во-первых, ваш пример для PrivateKeyUsagePeriod неверен; notAfter должен быть помечен как 1, а не как 0. Хотя практически никакое программное обеспечение никогда не смотрит на PKUP, эта ошибка может не иметь значения.

Более конкретно, PKUP является расширением, а расширения X509v3 используют изменяющуюся структуру OID+, которая требует, чтобы OpenSSL разрешал практически любой тип ASN.1 для поддержки будущих дополнений без изменения кода. Допустимость является частью фиксированной части (начиная с v1) и реализуется конкретным кодом, и в любом случае это не тот же тип (не помеченный, не опциональный, а CHOICE{UTCTime,GeneralizedTime}).

За openssl ca ты можешь использовать default_startdate а также default_enddate в разделе конфигурационного файла с именем default_ca (не тот, который назван x509_extensions) вместо параметров командной строки. См. Справочную страницу в вашей системе или в Интернете в разделе "ОПЦИИ ФАЙЛА КОНФИГУРАЦИИ".

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

Другие вопросы по тегам