Я пытаюсь подписать PDF-код в скрипте PHP с сертификатом. До сих пор, я выполнил мой тест с самоподписным файлом .crt, сгенерированный с помощью командной строки:Хорошее использование сертификатов для подписи PDF
openssl req -x509 -nodes -days 365000 -newkey rsa:1024 \
-keyout tcpdf.crt -out tcpdf.crt
(да, я использую TCPDF). Он работает нормально.
Но знаете, моя компания дала мне настоящие сертификаты (от TBS-certificats), и я немного разочарован: У меня есть .cer, а .pem и .P7B файл ...
Я пытался использовать каждый из них в моем сценарии, но у меня ошибка
Warning: openssl_pkcs7_sign(): error getting private key
код, я использую с самоподписанного сертификата:
// set certificate file
$certificate = 'file://data/cert/tcpdf.crt';
// set document signature
$pdf->setSignature($certificate, $certificate);
Могу ли я изменить что-то? Я не очень хорошо знаком с криптографическим миром ...
Спасибо за ссылку , очень полезно. Однако у меня такая же проблема. С помощью тестовых команд я обнаружил, что мои файлы .cer и .pem закодированы как pem. То же самое для моего .crt самоподписанного. Итак, я пытаюсь использовать .cer вместо .crt, но у меня такая же проблема ... – IronRabbit