1C-Company / DirectBank

DirectBank (прямой обмен с банком) – новая технология системы "1С:Предприятие 8"
51 stars 22 forks source link

Проблема с настройкой 1С для тестирования 1С DirectBank #68

Open KonstVa opened 4 years ago

KonstVa commented 4 years ago

Добрый день.

Возникает ошибка при тестировании первичного подключения клиента 1С к банку. Есть валидный сертификат, сгенерированный с помощью https://www.cryptopro.ru/certsrv/certrqma.asp с указанием CSP image

При первичной настройке 1С DirectBank, при добавлении файла настроек, возникает ошибка: Ошибка при получении контекста модуля криптографии.

image image

При этом, на компьютере сертификат установлен (Личные), КриптоПРО установлен image

В файле настроек указаны следующие параметры:

Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider 80 GOST R 34.10-2012 GOST R 34.11-2012

Версия 1С 1С:Предприятие 8.3, учебная версия (8.3.17.1386) Демонстрационная конфигурация "Библиотека электронных документов", редакция 1.7 (1.7.1.57) (http://v8.1c.ru/libraries/led) Copyright © ООО "1С-Софт", 2012 - 2019. Все права защищены (http://www.1c.ru)

Подскажите, пожалуйста, каким образом можно устранить ошибку?

SevDmitry commented 3 years ago

Что-то не так в зашифрованных данных

KonstVa commented 3 years ago

@SevDmitry Дмитрий, я ведь правильно понимаю, что вот эти цифры в ответе - некорректны?

image image

SevDmitry commented 3 years ago

Нет, это нормально. Точно не знаю что это, но они всегда есть. Смотрите сторону сервера в метод шифрования, потрогайте параметры шифрования. Ответ от разработчиков платформы можно ждать долго.

KonstVa commented 3 years ago

@SevDmitry Скажите, пожалуйста, поддерживается ли rfc5652 CMS на текущий момент?

SevDmitry commented 3 years ago

Мы поддерживаем PKCS#7 и поскольку CMS является наследником PKCS#7, то скорее да

SevDmitry commented 3 years ago

Сертификат находится, но в зашифрованных данных не указаны получатели, поэтому расшифровка данных не выполняется. Сообщение в ошибке неинформативно, настоящая причина в отсутствии получателей. Для исправления необходимо при шифровании указывать список получателей.

SevDmitry commented 3 years ago

Платформе не удается считать получателей сообщения, т.к. используется формат recipientInfo с согласованием ключей. Ранее вы использовали другой формат recipientInfo, поэтому расшифровка сообщения выполнялась корректно. Для обхода проблемы можно вернуться к используемому ранее формату без согласования ключей. Чтобы расшифровка сообщения выполнялась корректно, формат EnvelopedData должен соответствовать стандарту https://tools.ietf.org/html/rfc5652#page-18

SevDmitry commented 3 years ago

Сможете ли вы без согласования ключей шифровать сообщения или это обязательное для вас требование?