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

Уведомление

Icon
Error

3 Страницы<123>
Опции
К последнему сообщению К первому непрочитанному
Offline Dorian_Sam  
#11 Оставлено : 12 декабря 2014 г. 18:45:23(UTC)
Dorian_Sam

Статус: Новичок

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

Автор: Андрей * Перейти к цитате
Автор: Dorian_Sam Перейти к цитате
Возможно что сам список СОСов большой и по нему поиск долго осуществляется?
В кэше они есть вроде как, проверял так:
Цитата:

certmgr -list cache -store CA -crl


Тот, что есть у меня размером 2,2 мб:
Идентификатор ключа=fa 31 16 e8 8c 30 38 4e b9 de a7 55 1d 9e 83 49 83 9e 0d 0a
Поставщик сертификата: CN=TENSORCA3
в нем действительно много ... 53465 отозванных сертификатов.


Если установлены только СОСы тензора то verify отрабатывает за 0,6 сек но если установить весь набор СОСов которые я приложил то время увеличивается в 2-2,5 раза
Offline zer0c14  
#12 Оставлено : 13 декабря 2014 г. 11:42:06(UTC)
zer0c14

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

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

Сказал «Спасибо»: 4 раз
Автор: Dorian_Sam Перейти к цитате
Автор: Андрей * Перейти к цитате
Автор: Dorian_Sam Перейти к цитате
Возможно что сам список СОСов большой и по нему поиск долго осуществляется?
В кэше они есть вроде как, проверял так:
Цитата:

certmgr -list cache -store CA -crl


Тот, что есть у меня размером 2,2 мб:
Идентификатор ключа=fa 31 16 e8 8c 30 38 4e b9 de a7 55 1d 9e 83 49 83 9e 0d 0a
Поставщик сертификата: CN=TENSORCA3
в нем действительно много ... 53465 отозванных сертификатов.


Если установлены только СОСы тензора то verify отрабатывает за 0,6 сек но если установить весь набор СОСов которые я приложил то время увеличивается в 2-2,5 раза


привет, ну скорее всего вопрос не про "verify", а про функцию Capi\certGetCertificateChain() и еще вопрос, ты её вызов конкретно профайлил или целиком весь кусок при проверке ЦП, там просто еще всякой мути помимо Capi\certGetCertificateChain() полно, т.е. время 0.6 это на вызов всего при списках тензора только или чисто на функцию certGetCertificateChain() у тебя получается (в любом случае 0.6 это много и по SLA не прокатит)?

Код:

public function verifyDetachedMessageSignature(...)
{
    $message = Capi\cryptMsgOpenToDecode()
    Capi\cryptMsgUpdate($message, $signature)
    $signerCnt = Capi\cryptMsgGetParam($message, Capi\CMSG_SIGNER_COUNT_PARAM);
    $attributes = Capi\cryptMsgGetParam($message, Capi\CMSG_SIGNER_AUTH_ATTR_PARAM);
    // + поиск через анономную функцию среди $attributes - Capi\szOID_RSA_signingTime
    Capi\cryptDecodeObject(
        Capi\X509_ASN_ENCODING | Capi\PKCS_7_ASN_ENCODING, Capi\szOID_RSA_signingTime, $encodedSigningTime
    );
    for ($signerIdx = 0; $signerIdx < $signerCnt; $signerIdx++) {
        $certContext = Capi\verifyDetachedMessageSignature($verifyMessagePara, $signerIdx, $signature, array($message));
        // + CERT_CHAIN_CACHE_END_CERT для $chainEngineConfig
        Capi\certGetCertificateChain(
            $chainEngine, $certContext, time(), null, $chainParam, Capi\CERT_CHAIN_REVOCATION_CHECK_CHAIN
        );
        // + получение extensions сертификата
        // дополнительные вызовы на Capi\cryptDecodeObject() по Capi\szOID_SUBJECT_ALT_NAME2 и Capi\szOID_PRIVATEKEY_USAGE_PERIOD
        // + получение enhanced key usage сертификата
        // дополнительный вызов на Сapi\certGetEnhancedKeyUsage()
    }
}


Offline Dorian_Sam  
#13 Оставлено : 14 декабря 2014 г. 18:39:38(UTC)
Dorian_Sam

Статус: Новичок

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

Цитата:
Capi\certGetCertificateChain() и еще вопрос, ты её вызов конкретно профайлил или целиком весь кусок при проверке ЦП, там просто еще всякой мути помимо Capi\certGetCertificateChain() полно, т.е. время 0.6 это на вызов всего при списках тензора только или чисто на функцию certGetCertificateChain() у тебя получается (в любом случае 0.6 это много и по SLA не прокатит)?


Привет. Замерял так:
Код:

    public function verifyCertificateChain(....)
    {
				.......
        $certUsageMatch    = $usageMatchCryptoApi->fromArray(array(
            'type' => GostCsp\USAGE_MATCH_TYPE_AND,
            'usage' => $certEnhKeyUsage,
        ));
        $chainPara    = $chainParaCryptoApi->fromArray(array('requestedUsage' => $certUsageMatch));
        $start = microtime(true);
        $chainContext = $certificateChainCryptoApi->getCertificateChain($chainEngine, $certContext, time(), null, $chainPara, GostCsp\CERT_CHAIN_REVOCATION_CHECK_CHAIN);
        echo "certGetCertificateChain:" .(microtime(true) - $start)."\n";
				......
    }
       public function getCertificateChain($chainEngine, CertContextInterface $certContext, $time, $additionalStore, ChainParaInterface $chainPara, $flags)
    {
      $chainContext = GostCsp\certGetCertificateChain($chainEngine, $certContext, $time, $additionalStore, $chainPara, $flags);
      if (!$chainContext) {
      throw new Exception\RuntimeException(....);
      }
      return $chainContext;
      }


и результат:
Цитата:

certGetCertificateChain:1.4679510593414
AFTER RESULT: 1.5929758548737

и получается что 90% времени занимает certGetCertificateChain(...)
Offline xorax  
#14 Оставлено : 27 июня 2016 г. 13:36:35(UTC)
xorax

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

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

Столкнулись с аналогичной проблемой. Есть ли какое-то решение в итоге?
Offline Максим Коллегин  
#15 Оставлено : 30 июня 2016 г. 7:46:14(UTC)
Максим Коллегин

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

Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,408
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 37 раз
Поблагодарили: 722 раз в 626 постах
Решение - использовать последние версии CSP 4.0\3.9.
Знания в базе знаний, поддержка в центре поддержки
Offline xorax  
#16 Оставлено : 30 июня 2016 г. 11:06:49(UTC)
xorax

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

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

Автор: maxdm Перейти к цитате
Решение - использовать последние версии CSP 4.0\3.9.


У нас установлена CSP 3.9 на базе ОС Debian 8.0

Все, что мы сделали — установили все корневые сертификаты УЦ, аккредитованных при минкомсвязи и их CRL-листы.

Тормоза по 30-35 секунд на проверку подписи.
Offline dgd  
#17 Оставлено : 30 июня 2016 г. 14:43:58(UTC)
dgd

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

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

Добрый день

Прошлой осенью я ускорял 3_9/4_0 в несколько раз.
В качестве теста я использовал постоение и проверку цепочки с CRL размером 2Мб.
Тогда я использовал Fedora23 / x86_64.

Весьма интересно было бы узнать:
0) решаемую задачу -- зачем Вам устанавливать всё?
Если для тестов производительности, то я бы рекомендовал не 3_9, а trunk или 4_0.
1) Версии CSP и № сборки
2) разрядность дистрибутива -- 32/64
3) не могли бы Вы поделиться замкнутым тестовым примером?

Решение:
1) установить последнюю сборку 3_9/4_0 -- в них заведомо будут исправления -- если у Вас версия без исправлений, то несколько раз Вы получите
2) установить 4_0 вместо 3_9 -- разница между ними невелика -- в лучшем случае первые десятки процентов

Я полагаю, что доработки 3_9 займут значительно больше времени, чем доработки 4_0 и, тем более, trunk.
Offline xorax  
#18 Оставлено : 30 июня 2016 г. 15:07:53(UTC)
xorax

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

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

Автор: dgd Перейти к цитате
Добрый день
0) решаемую задачу -- зачем Вам устанавливать всё?

У нас электронная торговая площадка. Мы поддерживаем ЭП всех аккредитованных УЦ. Мы думали над вариантом импортировать только те корневые сертификаты, клиенты которых к нам приходят, но нам представилось, что такое решение заведомо сложнее и пока мы по этому пути решили не идти.


Цитата:

1) Версии CSP и № сборки

Код:

/opt/cprocsp/bin/amd64# ./csptest -keyset -verifycontext
CSP (Type:75) v3.9.8001 KC1 Release Ver:3.9.8227 OS:Linux CPU:AMD64 FastCode:READY:SSSE3.
AcquireContext: OK. HCRYPTPROV: 39898803
GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2001 KC1 CSP
Total: 
[ErrorCode: 0x00000000]


Цитата:
2) разрядность дистрибутива -- 32/64

64

Цитата:
3) не могли бы Вы поделиться замкнутым тестовым примером?

Попрошу коллегу подготовить тест, но на словах выглядит так:
1. берем https://e-trust.gosuslug...nloadTSL?schemaVersion=0
2. достаем из него все активные корневые сертификаты УЦ, устанавливаем в mRoot
3. берем оттуда же ссылки на соответствующие CRL и добавляем их mCa
4. пытаемся проверить подпись при помощи cpverify

Цитата:
установить 4_0 вместо 3_9

Мы бы с радостью, но лицензия на 3.9 уже куплена. Лицензия на 4.0 — это дополнительные затраты, которые еще надо обосновать руководству.
Offline dgd  
#19 Оставлено : 30 июня 2016 г. 16:30:02(UTC)
dgd

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

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

1) Ваша версия : 2014-12-07 КриптоПро CSP 3.9.8227
2) С тех пор был выпущен ряд обновлений
3) Упомянутые мной улучшения вошли в 2016-02-02 КриптоПро CSP 3.9.8363

Я бы рекомендовал установить последнюю выпущенную версию CSP_3_9.
На сегодняшний день это 2016-04-14 КриптоПро CSP 3.9.8423.
Я бы ожидал существенного ускорения, но сложно заранее сказать будет это 1.5 раза или 3.

Ваша лицензия для 3.9 подходит для любой сборки 3.9.

Расскажите, пожалуйста, чем дело закончится.
И я буду благодарен за замкнутый пример -- пример реального использования очень интересен.
Offline xorax  
#20 Оставлено : 1 июля 2016 г. 16:45:21(UTC)
xorax

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

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

Автор: dgd Перейти к цитате
1) Ваша версия : 2014-12-07 КриптоПро CSP 3.9.8227
Я бы рекомендовал установить последнюю выпущенную версию CSP_3_9.
На сегодняшний день это 2016-04-14 КриптоПро CSP 3.9.8423.
Я бы ожидал существенного ускорения, но сложно заранее сказать будет это 1.5 раза или 3.


Поставили указанную версию. Проверили. Действительно стало быстрее. Время исполнения проверки сократилось с 33 секунд до 12. Разумеется, прогресс на лицо. Но очевидно, что мы не можем заставлять пользователя ждать и эти 12 секунд. Мы решили, что будем отключать проверку списков отзыва в реальном режиме времени и сделаем проверку сертификатов в фоновом режиме, чтобы пользователь эту работу не видел.

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