Я пытаюсь завершить весь процесс запроса / проверки надежной метки времени. Я работаю с сервером TSA и могу создать действительный запрос метки времени. Я знаю, что это действительно так, потому что у владельца tsa есть веб-страница, посвященная проверке запроса с меткой времени. В любом случае мне нужно выполнить этот процесс программно, поэтому я использую openssl для проверки:
openssl ts -verify -queryfile request.tsq -in result.tsr -CAfile tsaownercert.pem
эта команда всегда производит:
TS_VERIFY_CERT:certificate verify error:unable to get local issuer certificate
Я работаю локально с Mamp, но также онлайн на сервере CentOs, поведение такое же.
tsaownercert.pem
это сертификат, который я получаю от владельца TSA, они сказали: "Это сертификат, в котором подписана метка времени"Может мне надо сделать какую-то установку сертификата в системе, чтобы он стал доступен? Как я могу это сделать в Mamp и как на сервере?
На странице руководства OpenSSL:
-CAfile trust_certs.pem
Имя файла, содержащего набор доверенных самозаверяющих сертификатов ЦС в формате PEM. См. Аналогичный вариант verify (1) для получения дополнительных сведений. Необходимо указать либо этот параметр, либо -CApath. (По желанию)
-untrusted cert_file.pem
Набор дополнительных ненадежных сертификатов в формате PEM, которые могут потребоваться при построении цепочки сертификатов для сертификата подписи TSA. Этот файл должен содержать сертификат подписи TSA и все промежуточные сертификаты CA, если они не включены в ответ. (По желанию)
Следовательно -CAfile
должен указывать на самоподписанный корневой ЦС, в то время как все подчиненные ЦС, включая сертификат подписи TS, должны находиться в файле, на который указывает -untrusted
если их нет в исходном ответе (result.tsr
).