Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

2 Страницы12>
Опции
К последнему сообщению К первому непрочитанному
Offline lcodemakerl  
#1 Оставлено : 15 января 2021 г. 14:03:01(UTC)
lcodemakerl

Статус: Участник

Группы: Участники
Зарегистрирован: 10.11.2020(UTC)
Сообщений: 14
Российская Федерация

Поблагодарили: 1 раз в 1 постах
Как подружить с PHP7
Или работать возможно только с версией php 5.6?
Offline Андрей Емельянов  
#2 Оставлено : 15 января 2021 г. 14:39:49(UTC)
Андрей Емельянов

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 11.03.2013(UTC)
Сообщений: 805
Мужчина
Российская Федерация
Откуда: Оттуда

Сказал «Спасибо»: 4 раз
Поблагодарили: 148 раз в 144 постах
Добрый день.
Опишите, пожалуйста, подробнее, что именно не получается.
Если речь про расширение для PHP, у нас есть статья как подружить: https://docs.cryptopro.r...hpcades/phpcades-install , надо пропатчить исходники расширения до сборки.
Техническую поддержку оказываем тут
Наша база знаний
Наша страничка в Instagram
Offline lcodemakerl  
#3 Оставлено : 18 января 2021 г. 10:09:40(UTC)
lcodemakerl

Статус: Участник

Группы: Участники
Зарегистрирован: 10.11.2020(UTC)
Сообщений: 14
Российская Федерация

Поблагодарили: 1 раз в 1 постах
Автор: Андрей Емельянов Перейти к цитате
Добрый день.
Опишите, пожалуйста, подробнее, что именно не получается.
Если речь про расширение для PHP, у нас есть статья как подружить: https://docs.cryptopro.r...hpcades/phpcades-install , надо пропатчить исходники расширения до сборки.


php 7.4.3 пропатчилось без ошибок.
./configure проходит без ошибок

При выполнении

eval `/opt/cprocsp/src/doxygen/CSP/../setenv.sh --64`; make -f Makefile.unix

падает с ошибкой, что дальше делать не понятно :(

Код:

g++ -std=c++98 -D_GLIBCXX_USE_CXX11_ABI=0 -DLINUX  -DUNIX -DHAVE_LIMITS_H  -D_COMPACT -DHAVE_STDINT_H  -I/opt/cprocsp/include/ -I/opt/cprocsp/include/cpcsp -I/opt/cprocsp/include/pki -I/opt/cprocsp/include/pki/atl -I/opt/cprocsp/include/pki/cppcades -I/opt/cprocsp/include/pki/cplib -I/tmp/crypto/php-7.4.3 -I/tmp/crypto/php-7.4.3/main -I/tmp/crypto/php-7.4.3/Zend -I/tmp/crypto/php-7.4.3/TSRM  -DSIZEOF_VOID_P=8 -fPIC -DPIC -c -o PHPCadesCPSigners.o PHPCadesCPSigners.cpp
In file included from stdafx.h:39,
                 from PHPCadesCPSigners.cpp:1:
/opt/cprocsp/include/cpcsp/CSP_WinDef.h:484:152: note: #pragma message: Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.
  484 | #      pragma message ("Your application will require at least CryptoPro CSP 4.0 R3. You can use LEGACY_FORMAT_MESSAGE_IMPL to support older versions.")
      |                                                                                                                                                        ^
In file included from /usr/include/x86_64-linux-gnu/bits/statx.h:31,
                 from /usr/include/x86_64-linux-gnu/sys/stat.h:446,
                 from /tmp/crypto/php-7.4.3/Zend/zend_stream.h:26,
                 from /tmp/crypto/php-7.4.3/Zend/zend.h:38,
                 from /tmp/crypto/php-7.4.3/main/php.h:33,
                 from stdafx.h:92,
                 from PHPCadesCPSigners.cpp:1:
/usr/include/linux/stat.h:59:2: error: declaration does not declare anything [-fpermissive]
   59 |  __s32 __reserved;
      |  ^~~~~
make: *** [Makefile.unix:30: PHPCadesCPSigners.o] Ошибка 1
Offline lcodemakerl  
#4 Оставлено : 18 января 2021 г. 11:51:52(UTC)
lcodemakerl

Статус: Участник

Группы: Участники
Зарегистрирован: 10.11.2020(UTC)
Сообщений: 14
Российская Федерация

Поблагодарили: 1 раз в 1 постах
На ubuntu 18 собралось, на ubuntu 20 ни в какую :(
Offline Александр Лавник  
#5 Оставлено : 18 января 2021 г. 12:01:03(UTC)
Александр Лавник

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 30.06.2016(UTC)
Сообщений: 3,383
Мужчина
Российская Федерация

Сказал «Спасибо»: 53 раз
Поблагодарили: 776 раз в 718 постах
Автор: lcodemakerl Перейти к цитате
На ubuntu 18 собралось, на ubuntu 20 ни в какую :(

Здравствуйте.

См. тему.
Техническую поддержку оказываем тут
Наша база знаний
Offline lcodemakerl  
#6 Оставлено : 18 января 2021 г. 14:03:50(UTC)
lcodemakerl

Статус: Участник

Группы: Участники
Зарегистрирован: 10.11.2020(UTC)
Сообщений: 14
Российская Федерация

Поблагодарили: 1 раз в 1 постах
Автор: Александр Лавник Перейти к цитате
Автор: lcodemakerl Перейти к цитате
На ubuntu 18 собралось, на ubuntu 20 ни в какую :(

Здравствуйте.

См. тему.


Благодарю, все собралось.

Установили тестовый сертификат

sudo -u web /opt/cprocsp/bin/amd64/cryptcp -creatcert -dn "CN=test" -cont '\\.\HDIMAGE\testcont'
sudo -u web /opt/cprocsp/bin/amd64/csptest -absorb -certs -autoprov

при запуске тестового скрипта подпись создается, а при проверке "Ошибка сегментирования"

Код:

sudo -u web php -f /opt/cprocsp/src/phpcades/test_extension.php
Crypto-Pro GOST R 34.10-2012 KC1 CSP requests container password
Type password:
Signature is:
MIIH5AYJKoZIhvcNAQcCoIIH1TCCB9ECAQExDDAKBggqhQMHAQECAjAbBgkqhkiG9w0BBwGgDgQM
dGVzdCBjb250ZW50oIIEKDCCBCQwggPRoAMCAQICE3wAAe2KC1YCGE+4gPcAAQAB7YowCgYIKoUD
BwEBAwIwggEKMRgwFgYFKoUDZAESDTEyMzQ1Njc4OTAxMjMxGjAYBggqhQMDgQMBARIMMDAxMjM0
NTY3ODkwMS8wLQYDVQQJDCbRg9C7LiDQodGD0YnRkdCy0YHQutC40Lkg0LLQsNC7INC0LiAxODEL
MAkGA1UEBhMCUlUxGTAXBgNVBAgMENCzLiDQnNC+0YHQutCy0LAxFTATBgNVBAcMDNCc0L7RgdC6
0LLQsDElMCMGA1UECgwc0J7QntCeICLQmtCg0JjQn9Ci0J4t0J/QoNCeIjE7MDkGA1UEAwwy0KLQ
tdGB0YLQvtCy0YvQuSDQo9CmINCe0J7QniAi0JrQoNCY0J/QotCeLdCf0KDQniIwHhcNMjEwMTE4
MDkwNjUxWhcNMjEwNDE4MDkxNjUxWjAPMQ0wCwYDVQQDDAR0ZXN0MGYwHwYIKoUDBwEBAQEwEwYH
KoUDAgIkAAYIKoUDBwEBAgIDQwAEQNFPvLW1oHYHJhP/eKuxHVtyioUyRc1EC1kVl2R9Rr34kOHu
1PMbG1XwLD/rVkMO4KZbSTSTM2gmPyTvg4wic5CjggIAMIIB/DAOBgNVHQ8BAf8EBAMCBPAwHQYD
VR0OBBYEFCWO8b1A6CKJXAPZiFZu16cOZ5M0MB8GA1UdIwQYMBaAFJuFXvuB3E1ZB1Fjz77f2ix/
yUQ8MIHMBgNVHR8EgcQwgcEwgb6ggbuggbiGgbVodHRwOi8vdGVzdGdvc3QyMDEyLmNyeXB0b3By
by5ydS9DZXJ0RW5yb2xsLyEwNDIyITA0MzUhMDQ0MSEwNDQyITA0M2UhMDQzMiEwNDRiITA0Mzkl
MjAhMDQyMyEwNDI2JTIwITA0MWUhMDQxZSEwNDFlJTIwITAwMjIhMDQxYSEwNDIwITA0MTghMDQx
ZiEwNDIyITA0MWUtITA0MWYhMDQyMCEwNDFlITAwMjIoMSkuY3JsMIHaBggrBgEFBQcBAQSBzTCB
yjBEBggrBgEFBQcwAoY4aHR0cDovL3Rlc3Rnb3N0MjAxMi5jcnlwdG9wcm8ucnUvQ2VydEVucm9s
bC9yb290MjAxOC5jcnQwPwYIKwYBBQUHMAGGM2h0dHA6Ly90ZXN0Z29zdDIwMTIuY3J5cHRvcHJv
LnJ1L29jc3AyMDEyZy9vY3NwLnNyZjBBBggrBgEFBQcwAYY1aHR0cDovL3Rlc3Rnb3N0MjAxMi5j
cnlwdG9wcm8ucnUvb2NzcDIwMTJnc3Qvb2NzcC5zcmYwCgYIKoUDBwEBAwIDQQCemGfH5FvG6Sts
ZQWeSdIzmSOZtxqEB5E2PFzrObvg3Flvyx7Ts1mQb1ztwuTXYEwXYsmqWwNKzh/qAiP9eL2NMYID
czCCA28CAQEwggEjMIIBCjEYMBYGBSqFA2QBEg0xMjM0NTY3ODkwMTIzMRowGAYIKoUDA4EDAQES
DDAwMTIzNDU2Nzg5MDEvMC0GA1UECQwm0YPQuy4g0KHRg9GJ0ZHQstGB0LrQuNC5INCy0LDQuyDQ
tC4gMTgxCzAJBgNVBAYTAlJVMRkwFwYDVQQIDBDQsy4g0JzQvtGB0LrQstCwMRUwEwYDVQQHDAzQ
nNC+0YHQutCy0LAxJTAjBgNVBAoMHNCe0J7QniAi0JrQoNCY0J/QotCeLdCf0KDQniIxOzA5BgNV
BAMMMtCi0LXRgdGC0L7QstGL0Lkg0KPQpiDQntCe0J4gItCa0KDQmNCf0KLQni3Qn9Cg0J4iAhN8
AAHtigtWAhhPuID3AAEAAe2KMAoGCCqFAwcBAQICoIIB5zAYBgkqhkiG9w0BCQMxCwYJKoZIhvcN
AQcBMBwGCSqGSIb3DQEJBTEPFw0yMTAxMTgxMDIzMjRaMC8GCSqGSIb3DQEJBDEiBCAkfGgU9Sxa
xfK3sBE/knTq0UZSaL7UjgopMu51PEw3SzCCAXoGCyqGSIb3DQEJEAIvMYIBaTCCAWUwggFhMIIB
XTAKBggqhQMHAQECAgQgBSiT4GjPaEvSJN1fKaPQCYFGUHRur46EBcGNM1UIInwwggErMIIBEqSC
AQ4wggEKMRgwFgYFKoUDZAESDTEyMzQ1Njc4OTAxMjMxGjAYBggqhQMDgQMBARIMMDAxMjM0NTY3
ODkwMS8wLQYDVQQJDCbRg9C7LiDQodGD0YnRkdCy0YHQutC40Lkg0LLQsNC7INC0LiAxODELMAkG
A1UEBhMCUlUxGTAXBgNVBAgMENCzLiDQnNC+0YHQutCy0LAxFTATBgNVBAcMDNCc0L7RgdC60LLQ
sDElMCMGA1UECgwc0J7QntCeICLQmtCg0JjQn9Ci0J4t0J/QoNCeIjE7MDkGA1UEAwwy0KLQtdGB
0YLQvtCy0YvQuSDQo9CmINCe0J7QniAi0JrQoNCY0J/QotCeLdCf0KDQniICE3wAAe2KC1YCGE+4
gPcAAQAB7YowCgYIKoUDBwEBAQEEQJuFsWAy3Vlat6nS87eUin0rPII6UA1Mqq+MOQbfiOkdBg1C
nPI4lBMBp7PnMC/4rXiMluOKJ6W76ua4YYvGVnQ=
Ошибка сегментирования


либо

Код:

munmap_chunk(): invalid pointer
Аварийный останов


Код:

<?php
//Вспомогательные функции предварительной инициализации
function SetupStore($location, $name, $mode)
{
    $store = new CPStore();
    $store->Open($location, $name, $mode);
    return $store;
}

function SetupCertificates($location, $name, $mode)
{
    $store = SetupStore($location, $name, $mode);
    $certs = $store->get_Certificates();
    return $certs;

}

function SetupCertificate($location, $name, $mode,
                           $find_type, $query, $valid_only,
                           $number)
{
    $certs = SetupCertificates($location, $name, $mode);
    if(!is_null($find_type))
    {
        $certs = $certs->Find($find_type, $query, $valid_only);
        return $certs->Item($number);
    }
    else
    {
        $cert = $certs->Item($number);
        return $cert;
    }
}

function test_CPSignedData_Sign_Verify()
{
    try{
        $content = "test content";
        $address = "http://testca.cryptopro.ru/tsp/tsp.srf";
        $cert = SetupCertificate(CURRENT_USER_STORE, "My", STORE_OPEN_READ_ONLY,
                                 CERTIFICATE_FIND_SUBJECT_NAME, "test", 0,
                                 1);

        if(!$cert)
            return "Certificate not found";
        $signer = new CPSigner();
        $signer->set_TSAAddress($address);
        $signer->set_Certificate($cert);

        $sd = new CPSignedData();
        $sd->set_ContentEncoding(1);
        $sd->set_Content(base64_encode($content));

        // Второй параметр - тип подписи(1 = CADES_BES):  http://cpdn.cryptopro.ru/default.asp?url=content/cades/namespace_c_ad_e_s_c_o_m_fe49883d8ff77f7edbeeaf0be3d44c0b_1fe49883d8ff77f7edbeeaf0be3d44c0b.html

        //Третий параметр detached - отделенная(true) или совмещенная (false)
        $sm = $sd->SignCades($signer, 1, false, 0);

        printf("Signature is:\n");
        printf($sm);
        printf("\n");

        $sd->VerifyCades($sm, 1, true); // true/false - ошибка сегментирования
        return 1;
    }catch(Exception $e)
    {
        printf($e->getMessage());
    }
}

if(test_CPSignedData_Sign_Verify() == 1)
{
    printf("TEST OK\n");
}else
{
    printf("TEST FAIL\n");
}

?>


далее решили все удалить и установить по новой
при создании тестового сертификата (ubuntu20) на ubuntu18 все собралось, тестовый сертификат создался и тестовый скрипт возвращает "ОК"

Код:

/opt/cprocsp/bin/amd64/cryptcp -creatcert -dn "CN=test" -cont '\\.\HDIMAGE\testcont'
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2020.
Утилита командной строки для подписи и шифрования файлов.
Создание запроса...
Ошибка: Внутренняя ошибка.

../../../../CSPbuild/CSP/samples/CPCrypt/Enroll.cpp:440: 0x80090020
Ошибка: Внутренняя ошибка.

../../../../CSPbuild/CSP/samples/CPCrypt/Enroll.cpp:1029: 0x80090020
[ErrorCode: 0x80090020]


Что не так в ubuntu20? Помогите...
Offline Александр Лавник  
#7 Оставлено : 18 января 2021 г. 16:29:06(UTC)
Александр Лавник

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 30.06.2016(UTC)
Сообщений: 3,383
Мужчина
Российская Федерация

Сказал «Спасибо»: 53 раз
Поблагодарили: 776 раз в 718 постах
Приложите список установленных пакетов CSP и ЭЦП SDK:

Код:
dpkg -l | grep cprocsp
Техническую поддержку оказываем тут
Наша база знаний
Offline lcodemakerl  
#8 Оставлено : 18 января 2021 г. 20:13:49(UTC)
lcodemakerl

Статус: Участник

Группы: Участники
Зарегистрирован: 10.11.2020(UTC)
Сообщений: 14
Российская Федерация

Поблагодарили: 1 раз в 1 постах
Автор: Александр Лавник Перейти к цитате
Приложите список установленных пакетов CSP и ЭЦП SDK:

Код:
dpkg -l | grep cprocsp


Код:

dpkg -l | grep cprocsp
ii  cprocsp-curl-64                        5.0.11998-6                                amd64        CryptoPro cURL shared library and application. Build 11998.
ii  cprocsp-pki-cades-64                   2.0.14071-1                                amd64        CryptoPro ECP SDK
ii  cprocsp-pki-phpcades-64                2.0.14071-1                                amd64        CryptoPro ECP SDK PHP extension
ii  lsb-cprocsp-base                       5.0.11998-6                                all          CryptoPro CSP directories and scripts. Build 11998.
ii  lsb-cprocsp-ca-certs                   5.0.11998-6                                all          CryptoPro CA certificates. Build 11998.
ii  lsb-cprocsp-capilite-64                5.0.11998-6                                amd64        CryptoPro CSP. CryptoAPI Lite libraries and applications. Build 11998.
ii  lsb-cprocsp-devel                      5.0.11998-6                                all          CryptoPro CSP developer headers and examples. Build 11998.
ii  lsb-cprocsp-kc1-64                     5.0.11998-6                                amd64        CryptoPro CSP KC1. Build 11998.
ii  lsb-cprocsp-kc2-64                     5.0.11998-6                                amd64        CryptoPro CSP KC2. Build 11998.
ii  lsb-cprocsp-rdr-64                     5.0.11998-6                                amd64        CryptoPro CSP common libraries and utilities. Build 11998.

Offline Александр Лавник  
#9 Оставлено : 19 января 2021 г. 9:54:49(UTC)
Александр Лавник

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 30.06.2016(UTC)
Сообщений: 3,383
Мужчина
Российская Федерация

Сказал «Спасибо»: 53 раз
Поблагодарили: 776 раз в 718 постах
Автор: lcodemakerl Перейти к цитате
Автор: Александр Лавник Перейти к цитате
Приложите список установленных пакетов CSP и ЭЦП SDK:

Код:
dpkg -l | grep cprocsp


Код:

dpkg -l | grep cprocsp
ii  cprocsp-curl-64                        5.0.11998-6                                amd64        CryptoPro cURL shared library and application. Build 11998.
ii  cprocsp-pki-cades-64                   2.0.14071-1                                amd64        CryptoPro ECP SDK
ii  cprocsp-pki-phpcades-64                2.0.14071-1                                amd64        CryptoPro ECP SDK PHP extension
ii  lsb-cprocsp-base                       5.0.11998-6                                all          CryptoPro CSP directories and scripts. Build 11998.
ii  lsb-cprocsp-ca-certs                   5.0.11998-6                                all          CryptoPro CA certificates. Build 11998.
ii  lsb-cprocsp-capilite-64                5.0.11998-6                                amd64        CryptoPro CSP. CryptoAPI Lite libraries and applications. Build 11998.
ii  lsb-cprocsp-devel                      5.0.11998-6                                all          CryptoPro CSP developer headers and examples. Build 11998.
ii  lsb-cprocsp-kc1-64                     5.0.11998-6                                amd64        CryptoPro CSP KC1. Build 11998.
ii  lsb-cprocsp-kc2-64                     5.0.11998-6                                amd64        CryptoPro CSP KC2. Build 11998.
ii  lsb-cprocsp-rdr-64                     5.0.11998-6                                amd64        CryptoPro CSP common libraries and utilities. Build 11998.


Здравствуйте.

В этом случае при создании ключа необходимо указывать имя криптопровайдера KC1, например, Crypto-Pro GOST R 34.10-2012 KC1 CSP:

Код:
/opt/cprocsp/bin/amd64/cryptcp -creatcert -dn "CN=test" -cont '\\.\HDIMAGE\testcont' -provname "Crypto-Pro GOST R 34.10-2012 KC1 CSP"
Техническую поддержку оказываем тут
Наша база знаний
Offline lcodemakerl  
#10 Оставлено : 20 января 2021 г. 8:57:33(UTC)
lcodemakerl

Статус: Участник

Группы: Участники
Зарегистрирован: 10.11.2020(UTC)
Сообщений: 14
Российская Федерация

Поблагодарили: 1 раз в 1 постах
Автор: Александр Лавник Перейти к цитате
Автор: lcodemakerl Перейти к цитате
Автор: Александр Лавник Перейти к цитате
Приложите список установленных пакетов CSP и ЭЦП SDK:

Код:
dpkg -l | grep cprocsp


Код:

dpkg -l | grep cprocsp
ii  cprocsp-curl-64                        5.0.11998-6                                amd64        CryptoPro cURL shared library and application. Build 11998.
ii  cprocsp-pki-cades-64                   2.0.14071-1                                amd64        CryptoPro ECP SDK
ii  cprocsp-pki-phpcades-64                2.0.14071-1                                amd64        CryptoPro ECP SDK PHP extension
ii  lsb-cprocsp-base                       5.0.11998-6                                all          CryptoPro CSP directories and scripts. Build 11998.
ii  lsb-cprocsp-ca-certs                   5.0.11998-6                                all          CryptoPro CA certificates. Build 11998.
ii  lsb-cprocsp-capilite-64                5.0.11998-6                                amd64        CryptoPro CSP. CryptoAPI Lite libraries and applications. Build 11998.
ii  lsb-cprocsp-devel                      5.0.11998-6                                all          CryptoPro CSP developer headers and examples. Build 11998.
ii  lsb-cprocsp-kc1-64                     5.0.11998-6                                amd64        CryptoPro CSP KC1. Build 11998.
ii  lsb-cprocsp-kc2-64                     5.0.11998-6                                amd64        CryptoPro CSP KC2. Build 11998.
ii  lsb-cprocsp-rdr-64                     5.0.11998-6                                amd64        CryptoPro CSP common libraries and utilities. Build 11998.


Здравствуйте.

В этом случае при создании ключа необходимо указывать имя криптопровайдера KC1, например, Crypto-Pro GOST R 34.10-2012 KC1 CSP:

Код:
/opt/cprocsp/bin/amd64/cryptcp -creatcert -dn "CN=test" -cont '\\.\HDIMAGE\testcont' -provname "Crypto-Pro GOST R 34.10-2012 KC1 CSP"


Результат тот же, за тем исключением что стал появляться запрос на генерацию...

Код:

/opt/cprocsp/bin/amd64/cryptcp -creatcert -dn "CN=test" -cont '\\.\HDIMAGE\testcont' -provname "Crypto-Pro GOST R 34.10-2012 KC1 CSP"
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2020.
Утилита командной строки для подписи и шифрования файлов.
Создание запроса...
Press keys...
[..........................................................................................................................]

Ошибка: Внутренняя ошибка.

../../../../CSPbuild/CSP/samples/CPCrypt/Enroll.cpp:440: 0x80090020
Ошибка: Внутренняя ошибка.

../../../../CSPbuild/CSP/samples/CPCrypt/Enroll.cpp:1029: 0x80090020
[ErrorCode: 0x80090020]


RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
2 Страницы12>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.