Добрый день! Подскажите пожалуйста...
Есть 2 бинарных файла: документ (docdata) и его подпись (docdata.sgn).
Есть в Ubuntu КриптоПро CSP:
CSP Version is: 5.0.12000
Version of CAdES is: 2.0.14530
К консоли подпись успешно проверяется (правда занимает это почему то около 20 секунд, хотя аналогичная утилита в Windows среде выполняется с таким же результатом за 1-2 секунду):
cryptcp -vsignf -f /x/docdata.sgn /x/docdata
CryptCP 5.0 (c) "Crypto-Pro", 2002-2021.
Command prompt Utility for file signature and encryption.
Certificates found: 3
Certificate chains are checked.
Folder '/x/':
/x/docdata... Signature verifying...
Signer: xxxxxxx xxxxxxxxx xxxxxxxxxxxx, xxxxxxx xxxxxxxxx xxxxxxxxxxxx, 0xxxxxxxxxxx, 6xxxxxxxxxxx,
gxxxxx@xxxxxl.com, 6xxxxxxxxxxx-6xxxxxxxxxxx-008xxxxxxxxx
Signature's verified.
[ErrorCode: 0x00000000]
Однако, если используем PHPCADES, то верификация не происходит:
PHP:
$data = file_get_contents('docdata');
$sgn = file_get_contents('docdata.sgn');
try {
$sd = new CPSignedData();
$sd->set_Content($data);
$check = $sd->VerifyCades($sgn, CADES_BES, true);
printf('OK');
}
catch(Exception $e) {
echo $e->getCode();
echo 'Exception: ' . $e->getMessage();
}
Результат:
-2146893818
Exception: Invalid Signature.
(0x80090006)
Подскажите пожалуйста, в чем может быть причина?