ESF.GOV.KZ не валидный namespace

У нас проблема при взаимодействии с esf.gov.kz, у них все сервисы SOAP имеют не валидные namespace, должны быть URI, но там просто строка, например: “v1.awp” <v1:awpAction xmlns:v1="v1.awp">. Сервисы требуют подписания для взаимодействия, но при попытке подписания через Kalkan или NCALayer их тело для подписания не проходит валидацию XML.
Есть ли какой-то обходной путь или отключение валидации XML на стороне библиотеки Kalkan?

Поддержка ESF не отвечает на такой вопрос или бросают трубку когда слышат о такой проблеме.

Пример тела XML для подписи по ссылке ниже.
https://pastebin.com/gFYWNVgw

Документация ESF
CXF - Service list (kgd.gov.kz)

Добрый день!
К сожалению добавлять namespace в наших библиотеках возможности нет.

В данном случае могу предложить использовать наши библиотеки только для формирования непосредственно самой подписи. А всю работу с XML производить самостоятельно.

Подскажите как это сделать, мы используем C#

А если указать так xmlns:v1=“http://v1.awp ? Будет ли соответствовать их проверкам?

<soapenv:Envelope xmlns:soapenv=“http://schemas.xmlsoap.org/soap/envelope/” xmlns:v1=“http://v1.awp”>

Тогда проверка подписи не пройдет. В реализации Kalkan на Java проверка XML происходит отдельно? В .NET видимо нельзя подписать не валидный XML?

Не совсем понятно что Вы имеете ввиду.

Все верно. Такой возможности нет.

Вы предполагаете или пробовали отправить запрос и получили ошибку?

В sdk ESF в примерах для подписания документов используют Java (библиотеку trusty - насколько я понимаю она не рекомендована к использованию), так вот эта библиотека позволяет подписывать не валидный XML

К сожалению, ничего сказать не могу. Это не наша библиотека и насколько корректно она работает не можем дать оценку.

Посмотрел и не нашел в репозитории библиотеки ничего, что касалось бы подписи XML

а в kalkan есть возможность подписать строку в виде не валидного xml и получить подпись и сертификат на выходе?

возможно ли использую Kalkan SDK для C#, получить доступ к API чтобы зарегистрировать кастомного провайдера по аналогии в Java: Security.addProvider(new KalkanProvider()) ?

Нет. C# представляет строго ограниченный спектр методов. Все методы описаны в документации к библиотеке KalkanCryptCOM.

Добрый день! Подскажите удалось ли решить данную проблему?