Привет.
Для формирования подписи использую BouncуCastle.
Код по ссылке - https://disk.yandex.ru/d/0T6x-n57Q29uqA
Подпись формирует метод signPkcs7.
Сертификат использую в формате .p12.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
надо склеить их в одну строку и затем подписывать.
Тут как раз заморочка с тем, что для токена юзера мы передаём scope-ы как есть: "openid fullname snils inn id_doc",
а для токена организации в виде "esia.gosuslugi.ru/org_addrs?org_oid=1000298922 esia.gosuslugi.ru/org_emps?org_oid=1000298922".
Скоупы между собой склеиваем по пробелу.
Для php я встречал код, ищи по словам pkcs7 php - там именно по части библиотечки для подписи, а прочее на любом языке одинаковое.