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

Уведомление

Icon
Error

3 Страницы<123
Опции
К последнему сообщению К первому непрочитанному
Offline Slavenin  
#21 Оставлено : 27 июля 2018 г. 16:41:45(UTC)
Slavenin

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

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

Сказал(а) «Спасибо»: 1 раз
Автор: cross Перейти к цитате
case AUTHENTICATED_ATTRIBUTE_DOCUMENT_NAME:
case AUTHENTICATED_ATTRIBUTE_DOCUMENT_DESCRIPTION:
Вот такие атрибуты появятся в подписи только если вы их сами явно добавили.


Это я уже понял. А как быть с остальными? У меня 4 атрибута, при этом определить тип я могу только у 1. Никаких доп констант я не нашёл.
Аналогично не ясно что с атрибутами сертификата?
Эти данные реально получить?
Код:
//            dump($cert->GetInfo(CERT_INFO_SUBJECT_EMAIL_NAME));
//            dump($cert->GetInfo(CERT_INFO_ISSUER_EMAIL_NAME));
//            dump($cert->GetInfo(CERT_INFO_SUBJECT_UPN));
//            dump($cert->GetInfo(CERT_INFO_ISSUER_UPN));
//            dump($cert->GetInfo(CERT_INFO_SUBJECT_DNS_NAME));
//            dump($cert->GetInfo(CERT_INFO_ISSUER_DNS_NAME));
Offline Slavenin  
#22 Оставлено : 30 июля 2018 г. 11:22:09(UTC)
Slavenin

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

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

Сказал(а) «Спасибо»: 1 раз
Автор: cross Перейти к цитате
1. Метод Verify достался нам т.к. мы должны были соблюсти интерфейс CAPICOM.SignedData от MS. При прочих равных лучше всего использовать метод VerifyCades(). При вызове Verify данные подаются так же в свойство Content, а сам метод вот так вызывается
Verify(<подпись>, true (detached), константа CAPICOM_VERIFY_SIGNATURE_AND_CERTIFICATE)

Так не работает.
Код:
<?php
<?php
$data = base64_encode( file_get_contents('30f2126fd7182ce48d75779d6396d708.pdf'));
$sgn = file_get_contents('30f2126fd7182ce48d75779d6396d708.pdf.sgn');

try
{
    $sd = new \CPSignedData();

    $sd->set_ContentEncoding(BASE64_TO_BINARY);
    $sd->set_Content($data);

    $check = $sd->Verify($sgn, true, VERIFY_SIGNATURE_AND_CERTIFICATE); // 1 - отсоединенная

    var_dump($check);
}
catch(\Exception $e)
{
    var_dump('Exception: ' . $e->getMessage());
}



Код:
->| php test.php 
string(39) "Exception: Internal error. (0x80091004)"



Ладно, фиг с ним.
А каким образом можно достать атрибуты подписи на клиенте? Т.е у меня есть подпись. В какой-то момент мне надо показать из неё информацию. Можно как-то на js прочитать информацию подписи? Примеров подобного нигде не нашёл...

Offline sopov  
#23 Оставлено : 30 июля 2018 г. 12:16:44(UTC)
sopov

Статус: Активный участник

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

Сказал(а) «Спасибо»: 2 раз
Поблагодарили: 3 раз в 3 постах
Цитата:
Можно как-то на js прочитать информацию подписи? Примеров подобного нигде не нашёл...


Может вам это поможет: http://gostcrypto.com/

thanks 1 пользователь поблагодарил sopov за этот пост.
Slavenin оставлено 30.07.2018(UTC)
Offline Slavenin  
#24 Оставлено : 30 июля 2018 г. 17:52:21(UTC)
Slavenin

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

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

Сказал(а) «Спасибо»: 1 раз
Автор: sopov Перейти к цитате
Цитата:
Можно как-то на js прочитать информацию подписи? Примеров подобного нигде не нашёл...


Может вам это поможет: http://gostcrypto.com/



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