Необходимо исправить ошибку в подписи сертификатом HTTP Запроса Т-Банка (Тинкофф)

https://1clancer.ru/task/75985 Бюджет: 5 000.00

В Интеграции 1С с сервисом СПБ (система быстрых платежей) Т-Банка (Тинкофф) Необходимо исправить ошибку в подписи HTTP Запроса сертификатом. Есть рабочий код по формированию и отправке запроса методом GetSbpMembers (получение Список участников, принимающих переводы через СБП). Передается один реквизит TerminalKey. На сформированную подпись возвращается правильный ответ. Однако при использовании этого же кода подписи в другом методе Init (Инициализация выплаты) в котором передается несколько реквизитов возвращается ответ «Передана некорректная подпись». Есть мануал банка по СПБ и подписи https://www.tbank.ru/kassa/dev/payouts/#tag/Metody-SBP https://www.tbank.ru/kassa/dev/payouts/#tag/Podpis-s-pomoshyu-KriptoPro В мануале есть ссылки на открытый код на библиотеку dll и подпись на С#. Допустимый вариант адаптировать эту библиотеку в 1С

ИСПОЛЬЗУЕМЫЙ КОД

&НаСервере Функция ВычислитьХешИПодписьRawSignature(Сертификат, СтрокаТелаЗапроса)

СтруктураРезультатов = Новый Структура("Хеш,Подпись");

HashedData = Новый COMОбъект("CAdESCOM.HashedData"); HashedData.Algorithm = 101; UTF8Encoding = Новый COMОбъект("System.Text.UTF8Encoding"); HashedData.Hash(UTF8Encoding.GetBytes_4(СтрокаТелаЗапроса)); СтруктураРезультатов.Хеш = Base64Строка(ПолучитьДвоичныеДанныеИзHexСтроки(HashedData.Value));

oSignedData = Новый COMОбъект("CAdESCOM.RawSignature"); sSignedMessage = oSignedData.SignHash(HashedData, Сертификат); СтруктураРезультатов.Подпись = Base64Строка(ПолучитьДвоичныеДанныеИзHexСтроки(sSignedMessage));

Возврат СтруктураРезультатов;

КонецФункции

repost

55

input message

напишите коммент

еще контент в этом сообществе

еще контент в этом соообществе

войдите, чтобы увидеть

и подписаться на интересных профи

в приложении больше возможностей

пока в веб-версии есть не всё — мы вовсю работаем над ней

сетка — cоциальная сеть для нетворкинга от hh.ru

пересекайтесь с теми, кто повлияет на ваш профессиональный путь