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

Уведомление

Icon
Error

5 Страницы«<2345>
Опции
К последнему сообщению К первому непрочитанному
Offline Дмитрий (LV)  
#31 Оставлено : 30 марта 2020 г. 20:41:47(UTC)
Дмитрий (LV)

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

Группы: Участники
Зарегистрирован: 26.03.2020(UTC)
Сообщений: 25

Автор: Андрей * Перейти к цитате
Результат - электронная подпись+исходные данные, т.к. в Sign указали 0 - присоединенная подпись => исходный файл не нужен.

p.s. при подписании файлов - обычно используется отсоединенная ЭП.


Скажите, а какой параметр надо передать для отсоединенной подписи? Нигде не могу найти подходящую документацию...
Online Андрей *  
#32 Оставлено : 30 марта 2020 г. 20:45:47(UTC)
Андрей *

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

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

Сказал «Спасибо»: 494 раз
Поблагодарили: 2034 раз в 1578 постах
Автор: Дмитрий (LV) Перейти к цитате
Автор: Андрей * Перейти к цитате
Результат - электронная подпись+исходные данные, т.к. в Sign указали 0 - присоединенная подпись => исходный файл не нужен.

p.s. при подписании файлов - обычно используется отсоединенная ЭП.


Скажите, а какой параметр надо передать для отсоединенной подписи? Нигде не могу найти подходящую документацию...



по документации из CPDN:
Цитата:

sSignedMessage = oSignedData.SignCades(oSigner, CADESCOM_CADES_BES, true);



Для варианта с Sign
Цитата:

SignedData.Sign( _
[ ByVal Signer ], _
[ ByVal bDetached ], _
[ ByVal EncodingType ] _
)
Техническую поддержку оказываем тут
Наша база знаний
Offline Дмитрий (LV)  
#33 Оставлено : 30 марта 2020 г. 21:12:27(UTC)
Дмитрий (LV)

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

Группы: Участники
Зарегистрирован: 26.03.2020(UTC)
Сообщений: 25

Еще вопрос - мне кажется или подпись включает в себя сертификат? или публичный ключ... у меня просто подпись 1.5 килобайта занимает для любой маленькой строчки.
Хотя в документации Tinkoff API в примерах подписи очень короткие...
Online Андрей *  
#34 Оставлено : 30 марта 2020 г. 22:29:32(UTC)
Андрей *

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

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

Сказал «Спасибо»: 494 раз
Поблагодарили: 2034 раз в 1578 постах
Автор: Дмитрий (LV) Перейти к цитате
Еще вопрос - мне кажется или подпись включает в себя сертификат? или публичный ключ... у меня просто подпись 1.5 килобайта занимает для любой маленькой строчки.


Верно.
Создается CMS, с сертификатом внутри.



Автор: Дмитрий (LV) Перейти к цитате

Хотя в документации Tinkoff API в примерах подписи очень короткие...


- нужно использовать другой объект - RawSignature



Техническую поддержку оказываем тут
Наша база знаний
Offline Дмитрий (LV)  
#35 Оставлено : 31 марта 2020 г. 11:20:05(UTC)
Дмитрий (LV)

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

Группы: Участники
Зарегистрирован: 26.03.2020(UTC)
Сообщений: 25

Автор: Андрей * Перейти к цитате

- нужно использовать другой объект - RawSignature


Никак не удается найти, как в таком случае передавать пароль на контейнер... как в случае с CPSigner->set_KeyPin

Offline Дмитрий (LV)  
#36 Оставлено : 31 марта 2020 г. 11:36:46(UTC)
Дмитрий (LV)

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

Группы: Участники
Зарегистрирован: 26.03.2020(UTC)
Сообщений: 25

Я вижу по исходникам плагина, что есть метод set_Key() который вроде как принимает строку, но при вызове валится "The parameter is incorrect. (0x80070057)"
Online Андрей *  
#37 Оставлено : 31 марта 2020 г. 12:20:54(UTC)
Андрей *

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

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

Сказал «Спасибо»: 494 раз
Поблагодарили: 2034 раз в 1578 постах
Автор: Дмитрий (LV) Перейти к цитате
Я вижу по исходникам плагина, что есть метод set_Key() который вроде как принимает строку, но при вызове валится "The parameter is incorrect. (0x80070057)"


т.е. если не вызывать set_KeyPin - то работает после указания пароля в диалоге?
Техническую поддержку оказываем тут
Наша база знаний
Offline Дмитрий (LV)  
#38 Оставлено : 31 марта 2020 г. 12:21:55(UTC)
Дмитрий (LV)

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

Группы: Участники
Зарегистрирован: 26.03.2020(UTC)
Сообщений: 25

Автор: Андрей * Перейти к цитате
т.е. если не вызывать set_KeyPin - то работает после указания пароля в диалоге?


Да, возвращает base64

Offline Дмитрий (LV)  
#39 Оставлено : 3 апреля 2020 г. 12:36:47(UTC)
Дмитрий (LV)

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

Группы: Участники
Зарегистрирован: 26.03.2020(UTC)
Сообщений: 25

Добрый день, есть такой вопрос:

для создания подписи использую код

$raw = new CPRawSignature();
$hd = new CPHashedData();
$hd->set_Algorithm(CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_512);

$hd->Hash("какой-то текст для подписи");
$digest = $hd->get_Value();

$signature = $raw->SignHash($hd, $cert);

Получаю ошибку: Invalid algorithm specified. (0x80090008)

При этом в информации о сертификате у меня:

Signature Algorithm : GOST R 34.11-2012/34.10-2012 512 bit
Signature Hash Algorithm : GOST R 34.11-2012 512 bit

Однако если я в коде установлю 256: $hd->set_Algorithm(CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_256);
То ошибки нету и подпись создается.

Правда, принимающая сторона жалуется на неверную подпись ) Куда можно посмотреть?
Online Андрей *  
#40 Оставлено : 3 апреля 2020 г. 14:13:05(UTC)
Андрей *

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

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

Сказал «Спасибо»: 494 раз
Поблагодарили: 2034 раз в 1578 постах
Цитата:
$hd->set_Algorithm(CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_512);

256 нужно указывать.

Цитата:

$hd->Hash("какой-то текст для подписи");


Указать DataEncoding CADESCOM_BASE64_TO_BINARY
Передать в Hash(base64(данные))
Получить правильный хеш.

Интерфейс ICPHashedData
Свойство ICPHashedData::DataEncoding

Цитата:

Данное свойство задает кодировку данных, передаваемых в метод Hash, и должно быть задано до того, как будет впервые вызван метод Hash.

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