Ошибка InvalidKeyException: Invalid key encoding

Мы ежедневно передаем данные через шэп в сац мэ.
После актуализации ЭЦП (ранее было и autho и gost, а сейчас только gost) система стала выдавать указанную ошибку. Использовали библиотеки (kalkancrypt-0.6.jar и kalkancrypt_xmldsig-0.3.jar., а также сам apache xml security (xmlsec_1.5.8.).

2024-09-17 23:29:16.521 INFO 7 — [nio-8080-exec-2] kz.utils.WSSignHandler: ________
2024-09-17 23:29:16.523 ERROR 7 — [nio-8080-exec-2] kz.utils.WSSignHandler: exception unwrapping private key - java.security.InvalidKeyException: Invalid key encoding.
2024-09-17 23:29:16.523 ERROR 7 — [nio-8080-exec-2] k.e.c.v1.SendGovernmentController: unexpected XML tag. expected: {http://bip.bee.kz/SyncChannel/v10/Types}SendMessageResponse but found: {http://bip.bee.kz/SyncChannel/v10/Types}

2024-09-26 23:39:22.989 INFO 7 — [io-8080-exec-10] k.e.c.v1.SendGovernmentController : start send
2024-09-26 23:39:23.249 INFO 7 — [io-8080-exec-10] kz.utils.WSSignHandler : ________
<S:Envelope xmlns:S=“http://schemas.xmlsoap.org/soap/envelope/” xmlns:SOAP-ENV=“http://schemas.xmlsoap.org/soap/envelope/”>SOAP-ENV:Header/<S:Body xmlns:ns2=“http://bip.bee.kz/SyncChannel/v10/Types/Request” xmlns:ns3=“http://bip.bee.kz/SyncChannel/v10/Types”><ns3:SendMessage xmlns:ns3=“http://bip.bee.kz/SyncChannel/v10/Types”>d4fbbe1c-2f8b-4aca-8dda-9f9484c84ce4ISUN_Service22024-09-26T23:39:23.241Zniikmg2020015657462kA!837a3795-cb65-4bb3-b549-e58c6339fb2e1017062024-09-25T21:00:00.000Z17510.00.00.00.000.00.00.0</ns3:SendMessage></S:Body></S:Envelope>2024-09-26 23:39:23.249 INFO 7 — [io-8080-exec-10] kz.utils.WSSignHandler : ________
2024-09-26 23:39:23.251 ERROR 7 — [io-8080-exec-10] kz.utils.WSSignHandler : exception unwrapping private key - java.security.InvalidKeyException: Invalid key encoding.
2024-09-26 23:39:23.252 ERROR 7 — [io-8080-exec-10] k.e.c.v1.SendGovernmentController : unexpected XML tag. expected: {http://bip.bee.kz/SyncChannel/v10/Types}SendMessageResponse but found: {http://bip.bee.kz/SyncChannel/v10/Types}SendMessage

sdk обновили. Внесли соответствующие изменения в pom и docker файлах. Может что то еще дополнительно требуется сделать?

Добрый день!
Вам необходимо обновить библиотеки kalkancrypt и kalkancrypt_xmldsig.
Они есть в SDK.

У нас нет обновленных sdk, как запросить? мы писали на sb.
egov

Заполнила заявку. Но он ругается на эцп, я указала данные свои (почта, иин), но подписала эцп руководителя с правом подписи. Это ведь верно?
image

ИИН в заявке и ЭЦП должны совпадать

Обновили SDK, но все равно выдает ошибку, ругается на часть закрытого ключа.
java.lang.NoSuchMethodError: org.apache.xml.security.signature.XMLSignatureException: method (Ljava/lang/Exception;)V not found
at kz.gov.pki.kalkan.xmldsig.algorithms.implementations.SignatureBaseGost.engineSign(SignatureBaseGost.java:105)
at org.apache.xml.security.algorithms.SignatureAlgorithm.sign(Unknown Source)
at org.apache.xml.security.signature.XMLSignature.sign(Unknown Source)
at kz.utils.WSSignHandler.sign(WSSignHandler.java:206)

Это значит, все не так библиотека да?

@Danil все обновили, ошибка выходит все равно. java.lang.NoSuchMethodError: org.apache.xml.security.signature.XMLSignatureException: method (Ljava/lang/Exception;)V not found
at kz.gov.pki.kalkan.xmldsig.algorithms.implementations.SignatureBaseGost.engineSign(SignatureBaseGost.java:105)
at org.apache.xml.security.algorithms.SignatureAlgorithm.sign(Unknown Source)
at org.apache.xml.security.signature.XMLSignature.sign(Unknown Source)
at kz.utils.WSSignHandler.sign(WSSignHandler.java:206)

Здравствуйте!
Проверьте какие версии apache xmlsec используются в проекте

Здравствуйте, xmlsec 3.0.3 @ololo

@ololo @Danil Client received SOAP Fault from server: The signature or decryption was invalid Please see the server log to find more detail regarding exact cause of the failure

Ошибка говорит о том, что XML-подпись подверглась изменению. Возможны два варианта:

  • либо вы сами меняете: удаляете переносы, пробелы
  • либо это производит сервис отправки Соапа.

Советую отправить запрос через терминал, используя к примеру curl:
c u r l --request POST --header "Content-Type: text/xml;charset=UTF-8" --header "SOAPAction:" -d @test.xml http://192.168.*.*/*/*

@Danil мы все проверили, ничего не удалили, пробелов нигде нет.
не поняла, это какой запрос, это как? указан прокси вашего сервера, но у нас данные на нашей стороне не подписываются. А можно с Вами как то созвониться?