Статус: Участник
Группы: Участники
Зарегистрирован: 29.06.2018(UTC) Сообщений: 27  Сказал(а) «Спасибо»: 1 раз
|
Здравствуйте! Формирую подпись через браузерный плагин для файла. Скачиваю файл с сервера и отдаю функции подписи: Код:$.ajax({
url: url,
type: "GET",
dataType: "binary",
processData: false,
success: function (result) {
var reader = new FileReader();
reader.addEventListener("loadend", function () {
var data = Base64.encode(reader.result);
SignCadesBES_Async_File('CertListBox', data, function (sign) {
ESP.onSign(sign);
}, function (err) {
alert(err.message);
})
});
reader.readAsBinaryString(result);
}
});
Код:function SignCadesBES_Async_File(certListBoxId, dataToSign, onSign, onError) {
cadesplugin.async_spawn(function* (arg) {
var e = document.getElementById(arg[ 0 ]);
var selectedCertID = e.selectedIndex;
if (selectedCertID == -1) {
alert("Select certificate");
return;
}
var certificate = global_selectbox_container[ selectedCertID ];
var Signature;
try {
//FillCertInfo_Async(certificate);
var errormes = "";
try {
var oSigner = yield cadesplugin.CreateObjectAsync("CAdESCOM.CPSigner");
} catch (err) {
errormes = "Failed to create CAdESCOM.CPSigner: " + err.number;
throw errormes;
}
var oSigningTimeAttr = yield cadesplugin.CreateObjectAsync("CADESCOM.CPAttribute");
var CAPICOM_AUTHENTICATED_ATTRIBUTE_SIGNING_TIME = 0;
yield oSigningTimeAttr.propset_Name(CAPICOM_AUTHENTICATED_ATTRIBUTE_SIGNING_TIME);
var oTimeNow = new Date();
yield oSigningTimeAttr.propset_Value(oTimeNow);
var attr = yield oSigner.AuthenticatedAttributes2;
yield attr.Add(oSigningTimeAttr);
var oDocumentNameAttr = yield cadesplugin.CreateObjectAsync("CADESCOM.CPAttribute");
var CADESCOM_AUTHENTICATED_ATTRIBUTE_DOCUMENT_NAME = 1;
yield oDocumentNameAttr.propset_Name(CADESCOM_AUTHENTICATED_ATTRIBUTE_DOCUMENT_NAME);
yield oDocumentNameAttr.propset_Value("Document Name");
yield attr.Add(oDocumentNameAttr);
if (oSigner) {
yield oSigner.propset_Certificate(certificate);
}
else {
errormes = "Failed to create CAdESCOM.CPSigner";
throw errormes;
}
var oSignedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CadesSignedData");
var CADES_BES = 1;
if (dataToSign) {
// Данные на подпись ввели
yield oSignedData.propset_ContentEncoding(1); //CADESCOM_BASE64_TO_BINARY
yield oSignedData.propset_Content(dataToSign);
yield oSigner.propset_Options(1); //CAPICOM_CERTIFICATE_INCLUDE_WHOLE_CHAIN
try {
// var StartTime = Date.now();
Signature = yield oSignedData.SignCades(oSigner, CADES_BES, true);
// var EndTime = Date.now();
// document.getElementsByName('TimeTitle')[ 0 ].innerHTML = "Время выполнения: " + (EndTime - StartTime) + " мс";
}
catch (err) {
errormes = "Не удалось создать подпись из-за ошибки: " + cadesplugin.getLastError(err);
throw errormes;
}
}
onSign(Signature);
// document.getElementById("SignatureTxtBox").innerHTML = Signature;
}
catch (err) {
onError(err)
// document.getElementById("SignatureTxtBox").innerHTML = err;
}
}, certListBoxId); //cadesplugin.async_spawn
}
Далее сформированную подпись отправляю на сервер и пытаюсь проверить: Код:public function verify($sgn, $data)
{
$data = base64_encode($data);
try
{
$sd = new \CPSignedData();
$sd->set_ContentEncoding(BASE64_TO_BINARY);
$sd->set_Content($data);
$check = $sd->VerifyCades($sgn, CADES_BES, 1); // 1 - отсоединенная
dump($check);
}
catch(Exception $e)
{
dump('Exception: ' . $e->getMessage() . "\n");
}
}
В $sgn непосредственно подпись из браузера. в итоге вываливается Invalid Signature. (0x80090006) Пробовал через командную строку: Код:/opt/cprocsp/bin/amd64/cryptcp -nochain -vsignf -mroot 30f2126fd7182ce48d75779d6396d708.pdf -f 30f2126fd7182ce48d75779d6396d708.pdf.sgn
CryptCP 4.0 (c) "Crypto-Pro", 2002-2017.
Command prompt Utility for file signature and encryption.
Certificates found: 3
Folder './':
30f2126fd7182ce48d75779d6396d708.pdf... Signature verifying...
Signer: RU, tests, etst, test, test, Максим, m****@g***.com
Error: ������������ �������./dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/DSign.cpp:743: 0x80090006
Error: Signature.
/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/DSign.cpp:851: 0x200001F9
[ErrorCode: 0x200001f9]
Консоль у меня в юникоде, что именно написано в ошибке мне не известно, найти этот файл я не смог... Повысил уровень лога. В /var/log/messages Цитата:cpcsp[27941]: capi20: CryptMsgControl () Exception :'������ 0x80090006: ������������ �������.' at file:'/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/capilite/CMSSignedMessage.cpp' line:884
Что не так? В какой кодировке выводятся ошибки? Хоть текст увидеть... Код:uname -a
Linux dev.**** 3.10.0-514.10.2.el7.x86_64 #1 SMP Mon Feb 20 02:37:52 EST 2017 x86_64 x86_64 x86_64 GNU/Linux
->| cat /etc/os-release
NAME="Red Hat Enterprise Linux Server"
VERSION="7.3 (Maipo)"
ID="rhel"
ID_LIKE="fedora"
VERSION_ID="7.3"
PRETTY_NAME="Red Hat Enterprise Linux Server 7.3 (Maipo)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:redhat:enterprise_linux:7.3:GA:server"
HOME_URL="https://www.redhat.com/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Red Hat Enterprise Linux 7"
REDHAT_BUGZILLA_PRODUCT_VERSION=7.3
REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux"
REDHAT_SUPPORT_PRODUCT_VERSION="7.3"
Отредактировано пользователем 18 июля 2018 г. 13:27:24(UTC)
| Причина: Не указана
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 29.06.2018(UTC) Сообщений: 27  Сказал(а) «Спасибо»: 1 раз
|
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 29.06.2018(UTC) Сообщений: 27  Сказал(а) «Спасибо»: 1 раз
|
я как-то вообще не понимаю что происходит... я взял Hello World и положил его в файлик test.txt, взял подпись с вашей тестовой страницы https://www.cryptopro.ru...des/demopage/simple.html расшифровал и записал в соседний файлик test.txt.sgn запускаю Код:/opt/cprocsp/bin/amd64/cryptcp -nochain -verify -mroot test.txt -f test.txt.sgn
и в ответ Код:->| /opt/cprocsp/bin/amd64/cryptcp -nochain -verify -mroot test.txt -f test.txt.sgn
CryptCP 4.0 (c) "Crypto-Pro", 2002-2017.
Command prompt Utility for file signature and encryption.
Certificates found: 5
Folder './':
test.txt... Signature verifying...
Error: ������������ ��� ������������������ ���������./dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/DSign.cpp:1898: 0x80091004
[ErrorCode: 0x80091004]
Как так то???
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 29.06.2018(UTC) Сообщений: 27  Сказал(а) «Спасибо»: 1 раз
|
при запуске без ключа -f выдаёт Код:->| /opt/cprocsp/bin/amd64/cryptcp -nochain -vsignf -mroot test.txt
CryptCP 4.0 (c) "Crypto-Pro", 2002-2017.
Command prompt Utility for file signature and encryption.
Certificates found: 3
Folder './':
test.txt... Signature verifying...
Signer: RU, tests, etst, test, test, Максим, mb****om
Skipping the signature due to signer certificate is not in certificate criterion.
Error: Signature.
/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/DSign.cpp:851: 0x200001F9
[ErrorCode: 0x200001f9]
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 10.07.2014(UTC) Сообщений: 3 
|
Присоединяюсь к проблеме. Сервер CentOs 7, php 7.1.10. при попытке проверить подпись из php в логах вот такое: Код:
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2949 CadesVerifyDetachedMessage (pVerifyPara=0x0x7fff19852ea0, dwSignerIndex=0, pbDetachedSignBlob=0x0x55672e1595f0, cbDetachedSignBlob=2044, cToBeSigned=1, rgpbToBeSigned=0x0x7fff19852e58, rgcbToBeSigned=0x0x7fff19852e64, ppVerifi
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :1802 CadesMsgVerifySignatureImpl Input parameters checked
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2949 CadesVerifyDetachedMessage (pVerifyPara=0x0x7fff19852ea0, dwSignerIndex=0, pbDetachedSignBlob=0x0x55672e1595f0, cbDetachedSignBlob=2044, cToBeSigned=1, rgpbToBeSigned=0x0x7fff19852e58, rgcbToBeSigned=0x0x7fff19852e64, ppVerifi
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :1802 CadesMsgVerifySignatureImpl Input parameters checked
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :1699 VerifyMessageSignature Signature verification started
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :1708 VerifyMessageSignature Exception thrown: _hr
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2959 CadesVerifyDetachedMessage CAtlException, m_hr=0x80090006
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2978 CadesVerifyDetachedMessage (res=0, GetLastError=0x80090006
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :1699 VerifyMessageSignature Signature verification started
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :1708 VerifyMessageSignature Exception thrown: _hr
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2959 CadesVerifyDetachedMessage CAtlException, m_hr=0x80090006
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2995 CadesFreeVerificationInfo (pVerificationInfo=0x0x55672e16f0a0)
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :3022 CadesFreeVerificationInfo (res=1, GetLastError=0x80090006
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2978 CadesVerifyDetachedMessage (res=0, GetLastError=0x80090006
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2995 CadesFreeVerificationInfo (pVerificationInfo=0x0x55672e16f0a0)
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :3022 CadesFreeVerificationInfo (res=1, GetLastError=0x80090006
код проверки на php: Код:
$sgn = file_get_contents('/tmp/testSigned');
try
{
$sd = new \CPSignedData();
$check = $sd->Verify($sgn, CADES_BES,1);
printf('OK');
}
catch(Exception $e)
{
printf('Exception: ' . $e->getMessage() . "\n" . $e->getTraceAsString() . "\n");
printf("FAIL\n");
}
результат: Код:
Exception: Invalid Signature. (0x80090006)
тоже коротко о системе: Код:
[root@crypto]# uname -a
Linux crypto.**** 3.10.0-862.9.1.el7.x86_64 #1 SMP Mon Jul 16 16:29:36 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@crypto Service]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
установленные пакеты: Код:
[root@crypto]# rpm -qa | grep 'csp'
lsb-cprocsp-capilite-64-4.0.9944-5.x86_64
cprocsp-pki-plugin-2.0.0-1.x86_64
lsb-cprocsp-base-4.0.9944-5.noarch
lsb-cprocsp-ca-certs-4.0.9944-5.noarch
cprocsp-pki-phpcades-2.0.0-1.x86_64
lsb-cprocsp-rdr-64-4.0.9944-5.x86_64
cprocsp-curl-64-4.0.9944-5.x86_64
lsb-cprocsp-devel-4.0.9921-5.noarch
lsb-cprocsp-kc1-64-4.0.9944-5.x86_64
cprocsp-pki-cades-2.0.0-1.x86_64
при проверке подписанных данных через командную строку: Код:
[root@crypto CryptoProStub]# /opt/cprocsp/bin/amd64/cryptcp -nochain -verify -mroot /home/developer/testSigned -f /home/developer/testSigned
CryptCP 4.0 (c) "Crypto-Pro", 2002-2017.
Command prompt Utility for file signature and encryption.
Certificates found: 4
Folder '/home/developer/':
/home/developer/testSigned... Signature verifying...
Signer: Den&ska
Signature's verified.
[ReturnCode: 0]
Отредактировано пользователем 24 июля 2018 г. 13:13:19(UTC)
| Причина: добавил код проверки на php
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 24.11.2009(UTC) Сообщений: 965 Откуда: Crypto-Pro
Сказал(а) «Спасибо»: 3 раз Поблагодарили: 174 раз в 152 постах
|
Автор: Slavenin  я как-то вообще не понимаю что происходит... я взял Hello World и положил его в файлик test.txt, взял подпись с вашей тестовой страницы https://www.cryptopro.ru...des/demopage/simple.html расшифровал и записал в соседний файлик test.txt.sgn запускаю Код:/opt/cprocsp/bin/amd64/cryptcp -nochain -verify -mroot test.txt -f test.txt.sgn
и в ответ Код:->| /opt/cprocsp/bin/amd64/cryptcp -nochain -verify -mroot test.txt -f test.txt.sgn
CryptCP 4.0 (c) "Crypto-Pro", 2002-2017.
Command prompt Utility for file signature and encryption.
Certificates found: 5
Folder './':
test.txt... Signature verifying...
Error: ������������ ��� ������������������ ���������./dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/DSign.cpp:1898: 0x80091004
[ErrorCode: 0x80091004]
Как так то??? Вы используете команду для проверки присоединенной подписи подсовывая вместо подписи файл test.txt. В первых сообщениях вы использовали правильную команду -vsignf, тут почему то решили другую. Так же обращаю ваше внимание на то что при вставке "Hellow World" в файл часто вставляют перевод строки. |
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 24.11.2009(UTC) Сообщений: 965 Откуда: Crypto-Pro
Сказал(а) «Спасибо»: 3 раз Поблагодарили: 174 раз в 152 постах
|
Автор: bulkak  Присоединяюсь к проблеме. Сервер CentOs 7, php 7.1.10. при попытке проверить подпись из php в логах вот такое: Код:
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2949 CadesVerifyDetachedMessage (pVerifyPara=0x0x7fff19852ea0, dwSignerIndex=0, pbDetachedSignBlob=0x0x55672e1595f0, cbDetachedSignBlob=2044, cToBeSigned=1, rgpbToBeSigned=0x0x7fff19852e58, rgcbToBeSigned=0x0x7fff19852e64, ppVerifi
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :1802 CadesMsgVerifySignatureImpl Input parameters checked
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2949 CadesVerifyDetachedMessage (pVerifyPara=0x0x7fff19852ea0, dwSignerIndex=0, pbDetachedSignBlob=0x0x55672e1595f0, cbDetachedSignBlob=2044, cToBeSigned=1, rgpbToBeSigned=0x0x7fff19852e58, rgcbToBeSigned=0x0x7fff19852e64, ppVerifi
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :1802 CadesMsgVerifySignatureImpl Input parameters checked
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :1699 VerifyMessageSignature Signature verification started
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :1708 VerifyMessageSignature Exception thrown: _hr
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2959 CadesVerifyDetachedMessage CAtlException, m_hr=0x80090006
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2978 CadesVerifyDetachedMessage (res=0, GetLastError=0x80090006
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :1699 VerifyMessageSignature Signature verification started
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :1708 VerifyMessageSignature Exception thrown: _hr
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2959 CadesVerifyDetachedMessage CAtlException, m_hr=0x80090006
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2995 CadesFreeVerificationInfo (pVerificationInfo=0x0x55672e16f0a0)
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :3022 CadesFreeVerificationInfo (res=1, GetLastError=0x80090006
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2978 CadesVerifyDetachedMessage (res=0, GetLastError=0x80090006
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :2995 CadesFreeVerificationInfo (pVerificationInfo=0x0x55672e16f0a0)
Jul 23 15:53:51 crypto cpcsp[20687]: cades: 0x7feced8f3880: :3022 CadesFreeVerificationInfo (res=1, GetLastError=0x80090006
код проверки на php: Код:
$sgn = file_get_contents('/tmp/testSigned');
try
{
$sd = new \CPSignedData();
$check = $sd->Verify($sgn, CADES_BES,1);
printf('OK');
}
catch(Exception $e)
{
printf('Exception: ' . $e->getMessage() . "\n" . $e->getTraceAsString() . "\n");
printf("FAIL\n");
}
результат: Код:
Exception: Invalid Signature. (0x80090006)
тоже коротко о системе: Код:
[root@crypto]# uname -a
Linux crypto.**** 3.10.0-862.9.1.el7.x86_64 #1 SMP Mon Jul 16 16:29:36 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@crypto Service]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
установленные пакеты: Код:
[root@crypto]# rpm -qa | grep 'csp'
lsb-cprocsp-capilite-64-4.0.9944-5.x86_64
lsb-cprocsp-base-4.0.9944-5.noarch
lsb-cprocsp-ca-certs-4.0.9944-5.noarch
lsb-cprocsp-rdr-64-4.0.9944-5.x86_64
cprocsp-curl-64-4.0.9944-5.x86_64
lsb-cprocsp-kc1-64-4.0.9944-5.x86_64
при проверке подписанных данных через командную строку: Код:
[root@crypto CryptoProStub]# /opt/cprocsp/bin/amd64/cryptcp -nochain -verify -mroot /home/developer/testSigned -f /home/developer/testSigned
CryptCP 4.0 (c) "Crypto-Pro", 2002-2017.
Command prompt Utility for file signature and encryption.
Certificates found: 4
Folder '/home/developer/':
/home/developer/testSigned... Signature verifying...
Signer: Den&ska
Signature's verified.
[ReturnCode: 0]
Вы путаете параметры в функции Veirify в php коде. См https://docs.microsoft.c...Crypto/signeddata-verify |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 29.06.2018(UTC) Сообщений: 27  Сказал(а) «Спасибо»: 1 раз
|
Автор: cross  Автор: Slavenin  я как-то вообще не понимаю что происходит... я взял Hello World и положил его в файлик test.txt, взял подпись с вашей тестовой страницы https://www.cryptopro.ru...des/demopage/simple.html расшифровал и записал в соседний файлик test.txt.sgn запускаю Код:/opt/cprocsp/bin/amd64/cryptcp -nochain -verify -mroot test.txt -f test.txt.sgn
и в ответ Код:->| /opt/cprocsp/bin/amd64/cryptcp -nochain -verify -mroot test.txt -f test.txt.sgn
CryptCP 4.0 (c) "Crypto-Pro", 2002-2017.
Command prompt Utility for file signature and encryption.
Certificates found: 5
Folder './':
test.txt... Signature verifying...
Error: ������������ ��� ������������������ ���������./dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/DSign.cpp:1898: 0x80091004
[ErrorCode: 0x80091004]
Как так то??? Вы используете команду для проверки присоединенной подписи подсовывая вместо подписи файл test.txt. В первых сообщениях вы использовали правильную команду -vsignf, тут почему то решили другую. Так же обращаю ваше внимание на то что при вставке "Hellow World" в файл часто вставляют перевод строки. Да я как уже не пробовал... Специально перепроверил ещё раз: Код:echo "Hello World" > test.txt
Взял подпись с сайта записал в файлик и раскодировал Код:php -r "file_put_contents('test.txt.sgn', base64_decode(file_get_contents('test.txt.sgn')));"
Проверяю: Код:/opt/cprocsp/bin/amd64/cryptcp -nochain -vsignf -mroot test.txt -f test.txt.sgn
CryptCP 4.0 (c) "Crypto-Pro", 2002-2017.
Command prompt Utility for file signature and encryption.
Certificates found: 4
Folder './':
test.txt... Signature verifying... 0%
0%
Signer: RU, tests, etst, test, test, Максим, mb****om
Error: Неправильная подпись./dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/DSign.cpp:743: 0x80090006
Error: Signature.
/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/DSign.cpp:851: 0x200001F9
[ErrorCode: 0x200001f9]
По поводу аргументов в php Вот определение функции: Код:SignedData.Verify( _
ByVal SignedMessage, _
[ ByVal bDetached ], _
[ ByVal VerifyFlag ] _
)
Вот вызов: Код:$check = $sd->Verify($sgn, CADES_BES,1);
Где перепутаны аргументы? Отредактировано пользователем 24 июля 2018 г. 9:54:04(UTC)
| Причина: Не указана
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 29.06.2018(UTC) Сообщений: 27  Сказал(а) «Спасибо»: 1 раз
|
Попробовал так: Код:$check = $sd->VerifyCades($sgn, 1); // 1 - отсоединенная
Ничего нового: Код:Exception {#1235 ▼
#message: "Invalid Signature. (0x80090006)"
#code: -2146893818
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 10.07.2014(UTC) Сообщений: 3 
|
Автор: cross  Код:
$sd = new \CPSignedData();
$check = $sd->Verify($sgn,1, VERIFY_SIGNATURE_AND_CERTIFICATE);
Код:
Exception: Invalid Signature. (0x80090006)
случайно засунул в пример параметры из VerifyCades. Результат один для Verify и VerifyCades с верным набором параметров(
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close