Отсутствует расширенное использование ключа в Signserver, но оно помечено как критическое во время регистрации в EJBCA

Я пытаюсь использовать зарегистрированный сертификат EJBCA на сервере подписи. Есть некоторая проблема во время использования его в отметке времени. Выдает эту ошибку с помощью команды signserver getstatus brief all

Errors:
      - Missing extended key usage timeStamping
      - The extended key usage extension must be present and marked as critical

Хотя, когда я проверил отметку времени профиля сертификата, использование расширенного ключа помечено как критическое. Есть ли способ зарегистрироваться с отметкой времени?

Версия ОС: Windows Server 2016
Java: OpenJDK 8.0.242.08
Муравей: муравей 1.9.14
База данных: MariaDB 10.4.12
Сервер: Wildfly 10.1.0
Сервер подписи: 5.2.0 EJBCA: сообщество 6.15.2.6

https://pastebin.com/bkpNBvc1

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
619
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Наиболее вероятной причиной является то, что сертификат, который вы импортируете в SignServer, не был выпущен с использованием указанного профиля из EJBCA, поэтому в нем отсутствует указанное вами расширенное использование ключа. Убедитесь, что ваш сертификат выпущен с использованием вашего профиля, и проверьте результаты, например, «openssl x509 -in cert.pem -text», что сертификат действительно использует ключ.

Мы выпускаем P12 из EJBCA RA, и, как вы видите на рисунке, профиль сертификата имеет функцию отметки времени, помеченную как используемую и критическую. Есть ли способ проверить P12?

user2426998 30.12.2020 00:45

Вы можете распаковать p12 и заглянуть внутрь с помощью «openssl pkcs12». Я имею в виду, что распространенной ошибкой при выдаче сертификата из EJBCA является то, что вы выдаете p12, но при выдаче не выбран правильный профиль сертификата, поэтому вы выдаете сертификат, используя, например, профиль «ENDUSER», а не тот, который вы отредактировал выше. Проверьте профиль сертификата, выбранный при добавлении конечного объекта (называемого «Подтип сертификата» при выполнении запроса в RA Web).

primetomas 01.01.2021 16:19

это в "ключевых атрибутах"? ключевые атрибуты пусты. Профиль сертификата добавляется к конечному объекту как подтип сертификата.

user2426998 12.01.2021 04:13

Нет, если вы распаковываете p12 с помощью «openssl pkcs12», вам нужно затем скопировать и вставить сертификат из него (BEGIN/END CERTIFICATE), а затем скопировать его в файл, который вы можете проверить с помощью «openssl x509».

primetomas 13.01.2021 16:09

Это результат. поэтому временная метка доступна. Это не критично? X509v3 Extended Key Usage:Code Signing, 1.2.840.113583.1.1.5, Time Stamping

user2426998 16.01.2021 14:35

Похоже, у вас есть еще несколько расширенных ключей, которых там быть не должно. И выглядит не критично. Скриншот сверху, кажется, включает только отметку времени, и вы установили критический флажок. Перевыпустите сертификат с указанным выше профилем и проверьте еще раз. Он должен включать только расширенное использование ключа, которое вы выбрали в профиле.

primetomas 20.01.2021 08:31

Это все еще проблема на другой установке. Теперь это тоже критично, но все равно выдает это сообщение X509v3 Extended Key Usage: critical 1.2.840.113583.1.1.5, Time Stamping

user2426998 04.05.2021 13:07

Какое сообщение? Профиль сертификата, который вы сняли на скриншоте выше, имеет несколько проблем, кстати, это обычное расширение использования ключа установлено, среди прочего, как CA (сертификат и знак CRL). Я думаю, что было испробовано несколько вещей, поэтому трудно судить, в чем именно проблема. Я думаю, что теперь легче начать заново, когда вы знаете, что делать с расширенным использованием ключа.

primetomas 05.05.2021 14:25

Могу ли я попробовать это только с одним или двумя расширенными ключами? Мне просто нужно только два использования: отметка времени и подпись PDF. Нужно ли мне использовать другие варианты использования ключей или у меня могут быть только эти два использования?

user2426998 05.05.2021 16:20

Вы можете абсолютно точно использовать только эти два расширенных ключа. Для «Использования ключа» я бы рекомендовал только «цифровую подпись».

primetomas 10.05.2021 07:38

Результат такой: X509v3 Extended Key Usage: critical 1.2.840.113583.1.1.5, Time Stamping \\\ X509v3 Key Usage: critical Digital Signature. Единственное, что я обнаружил, это то, что результат openssl содержит Time Stamping, а сервер подписи имеет timeStamping, но я не думаю, что это правда. Может быть, вы знаете, где я могу найти рабочий пример для отметки времени.

user2426998 14.05.2021 20:08
Ответ принят как подходящий

Эта ошибка сохранялась, потому что я использовал один CN и псевдоним (или понятное имя для OpenSSL) для эмитента и субъекта. Похоже, он использовал сертификат эмитента, который, очевидно, не имеет расширенного использования ключа с отметкой времени и выдавал ту же ошибку Missing extended key usage timeStamping, несмотря на все предыдущие попытки.

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