Страница 1 из 1

LibCurl и корневой сертификат Минцифры РФ

Добавлено: 17 Ноябрь 2024, 20:19
Игорь Столяров
Добрый день !

С сентября в Сбере придумали работать с сертификами Минцифры и запрос на токен СБП теперь выглядит вот так:

Код: Выделить всё

curl --location --request POST 'https://mc.api.sberbank.ru:443/prod/tokens/v3/oauth' \
--header 'RqUID: <значение, удовлетворяющее паттерну ^[0-9a-fA-F]{32}$>' \
--header 'Authorization: Basic <закодированное в base64 значение client_id:client_secret>' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'scope=auth://demo/json' \
--cert-type P12 --cert {путь до контейнера p12}:{пароль от контейнера} \
--cacert russian-trusted-cacert.pem
Т.е. по сути ничего не изменилось, но добавилась крайняя строка с сертификатом Удостоверяющего Центра.
Добавил и я в создание заголовка запроса (и есстестно файл с сертификатом в папку проекта):

Код: Выделить всё

  Self.Curl.SetCAInfo('russian-trusted-cacert.pem')
Но нет - ошибка чтения SSL сертификата ... :( Отправил запрос в Сбер - может быть ответят ...
Нет ли у кого-нибудь опыта прикручивания к запросу сертификата Минцифры ?

Спасибо !

LibCurl и корневой сертификат Минцифры РФ

Добавлено: 17 Ноябрь 2024, 20:35
Дед Пахом
Скрипт curl.exe выдаёт ту же ошибку? Просто, чтобы быть уверенным, что это проблема сертификата, а не libcurl.

LibCurl и корневой сертификат Минцифры РФ

Добавлено: 17 Ноябрь 2024, 20:50
Игорь Столяров
У меня нет CURL.EXE - я с ним никогда не работал ... :(
Очень запутанное описание, видимо частично изменённое под новые требования.
У меня есть вопросы и к самому сертификату, наверно лучше дождаться ответа Сбера.

LibCurl и корневой сертификат Минцифры РФ

Добавлено: 18 Ноябрь 2024, 9:29
Игорь Столяров
Приношу свои извинения за беспокойство - с LibCurl всё отлично, ничего изменять не нужно.
Ответа от Сбера я так и не получил - поэтому пришлось вернуться в прошлое и разобраться с сертификатом.

"Переход на сертификат Минцифры" - это по сути замена современного сертификата TLS на устаревший с алгоритмом RC2-40-CBC.
https://stackoverflow.com/questions/728 ... rc2-40-cbc

Проблема в том, что современный OpenSSL уже не работает с этими форматами по умолчанию ...
После плясок с бубном вокруг OpenSSL удалось заставить его прочитать сертификат Минцифры в RC2-40
и записать в формате 3DES (оба формата устаревшие и уже считаются небезопасными. Но как есть).

После этого всё заработало штатно ! :)

А по поводу строки с корневым сертификатом:

Код: Выделить всё

--cacert russian-trusted-cacert.pem
её нужно пристыковывать в запрос, если на компьютере этот сертификат не установлен в хранилище доверенных.
Даже не хочу удалять его у себя из хранилища и проверять - сейчас все уже его установили, т.к. иначе ни сам Сбер,
ни Госуслуги и т.д. без него не работают давно.

LibCurl и корневой сертификат Минцифры РФ

Добавлено: 18 Ноябрь 2024, 13:32
finsoftrz
Клиент сунулся в СБЕР с вопросом по СБП, его продинамили, так как тарифы на сбп ниже, чем на оплату через обычный терминал (в том числе и по куэр коду), они не особо заинтересованы, хотя технически у них такая возможность есть. В результате подключили СБП от банка Русский стандарт. Пока примерно на 15 кассах, вроде особых проблем нет. Платежи приходят на счет в банке сразу день в день, а комиссия удерживается со счета на следующий день. Единственное, выписки чудные, зачисления и комиссия по каждому физику, сделавшему оплату, без промежуточного накопительного счета. Поэтому выписку из банк-клиента (которая в обычном формате 1с) пришлось специальным образом преобразовывать при загрузке в учетную систему. К поддержке вопросов нет, отдел в Москве, отвечают/помогают оперативно и без лишних формальностей. Кассовую метку можно заказать фирменную в банке, вместе с подложкой, если нужен дополнительный интерфейс по nfc. Хотя можно и самостоятельно распечатать. Из крупных клиентов у них "Красное и Белое".

LibCurl и корневой сертификат Минцифры РФ

Добавлено: 18 Ноябрь 2024, 14:23
Admin
А сбер разве вообще по СБП сейчас подключает? Вроде всех на дочку-Юкассу переводит.

LibCurl и корневой сертификат Минцифры РФ

Добавлено: 18 Ноябрь 2024, 14:38
Игорь Столяров
Admin писал(а): 18 Ноябрь 2024, 14:23 А сбер разве вообще по СБП сейчас подключает?
Могу сказать только - что всё работает. И в песочнице и в боевом контуре.
Странный новый сертификат "от Минцифры" выдали 3 дня назад без вопросов.
С ним теперь тоже всё работает ...

Никогда не видел у родительских банков желания отдавать клиентов в дочерние отделения.
ЮКасса - это псевдо-банк для фриков, новых регионов и тех у кого аллергия на само название "Сбер".
(говорю как клиент Yandex-Банк и далее он же ЮМоней с 20 летнем стажем). ;)

LibCurl и корневой сертификат Минцифры РФ

Добавлено: 18 Ноябрь 2024, 14:43
finsoftrz
Игорь Столяров писал(а): 18 Ноябрь 2024, 14:38
Admin писал(а): 18 Ноябрь 2024, 14:23 А сбер разве вообще по СБП сейчас подключает?
Могу сказать только - что всё работает. И в песочнице и в боевом контуре.
Странный новый сертификат "от Минцифры" выдали 3 дня назад без вопросов.
С ним теперь тоже всё работает ...

Никогда не видел у родительских банков желания отдавать клиентов в дочерние отделения.
ЮКасса - это псевдо-банк для фриков, новых регионов и тех у кого аллергия на само название "Сбер".
(говорю как клиент Yandex-Банк и далее он же ЮМоней с 20 летнем стажем). ;)
А Вы к какой категории из перечисленных себя относите? :D

LibCurl и корневой сертификат Минцифры РФ

Добавлено: 18 Ноябрь 2024, 15:16
RaFaeL
Игорь Столяров писал(а): 18 Ноябрь 2024, 14:38Никогда не видел у родительских банков желания отдавать клиентов в дочерние отделения.
ЮКасса - это псевдо-банк для фриков, новых регионов и тех у кого аллергия на само название "Сбер".
Тем не менее, с 1 июля Сбер отключил интернет-эквайринг и отправил в Юкассу. Отправили их подальше самих, перешли на ТБанк

LibCurl и корневой сертификат Минцифры РФ

Добавлено: 18 Ноябрь 2024, 15:23
Игорь Столяров
RaFaeL писал(а): 18 Ноябрь 2024, 15:16 Тем не менее, с 1 июля Сбер отключил интернет-эквайринг и отправил в Юкассу.
Интернет-эквайринг - это немного иное, чем SberPay СБП.
Там открывается в броузере окно процессинга, где пользователь вводит данные карты (или оплачивает QRCode).

LibCurl и корневой сертификат Минцифры РФ

Добавлено: 18 Ноябрь 2024, 15:33
RaFaeL
В данном случае это неважно, это в контексте того, что банк не отправляет клиентов в другое место. Отправляет

LibCurl и корневой сертификат Минцифры РФ

Добавлено: 18 Ноябрь 2024, 15:43
Игорь Столяров
RaFaeL писал(а): 18 Ноябрь 2024, 15:33 Отправляет
Понял ! :) Видимо Сберу это направление совсем не интересно. Или собирает пакет компетенций в ЮМоней для его продажи.

LibCurl и корневой сертификат Минцифры РФ

Добавлено: 18 Ноябрь 2024, 16:40
Игорь Столяров
RaFaeL писал(а): 18 Ноябрь 2024, 15:33 банк не отправляет клиентов в другое место. Отправляет
Видимо всё-таки не всех отправляет ...
Потому что вот сейчас на запрос из Сбера получил:

1.jpg