Создать tsa (timestamping) сертификат с помощью openssl - добавить extendedKeyUsage в сертификат
Я хотел бы создать сертификат TSA для моей службы меток времени.
Сначала я создаю корневой сертификат
openssl genrsa -out tsaroot.key 4096 -config openssl.cnf
openssl req -new -x509 -days 1826 -key tsaroot.key -out tsaroot.crt -config openssl.cnf
Затем я создаю сертификат TSA
openssl genrsa -des3 -out tsa.key 4096 -config openssl.cnf
openssl req -new -key tsa.key -out tsa.csr -config openssl.cnf
openssl x509 -req -days 730 -in tsa.csr -CA tsaroot.crt -CAkey tsaroot.key -set_serial 01 -out tsa.crt
openssl pkcs12 -export -out tsa.p12 -inkey tsa.key -in tsa.crt -chain -CAfile tsaroot.crt
В моем файле openssl.cnf я добавляю следующую строку:
extendedKeyUsage = critical,timeStamping
Однако созданный сертификат, похоже, не включает extendeKeyUsage (когда я пытаюсь прочитать его с надувным замком, я получаю исключение "Сертификат должен иметь расширение ExtendedKeyUsage".)
Как я могу сгенерировать действительный сертификат tsa (с включенным правильным значением extendedKeyUsage)?
Спасибо
2 ответа
Решение
Следующее сработало:
создайте файл extKey.cnf с extendedKeyUsage внутри
extendedKeyUsage = critical,timeStamping
Добавьте его при создании запроса:
openssl x509 -req -days 730 -in tsa.csr -CA tsaroot.crt -CAkey tsaroot.key -set_serial 01 -out tsa.crt -extfile extKey.cnf
Попробуйте со следующим:
Добавьте именованный раздел в
openssl.cnf
файл:[v3_tsa] extendedKeyUsage = critical,timeStamping
При создании сертификата TSA из
tsr
добавить переключатель-extensions
:openssl x509 -req ... -extensions v3_tsa