Статус: Новичок
Группы: Участники
Зарегистрирован: 12.11.2012(UTC) Сообщений: 2 Откуда: Minsk
|
При попытке подписать данное сообщение при помощи примера SMEVExample Код:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<soap:Header>
<wsse:Security soap:actor="http://smev.gosuslugi.ru/actors/smev">
<wsse:BinarySecurityToken EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" wsu:Id="SenderCertificate"></wsse:BinarySecurityToken>
</wsse:Security>
</soap:Header>
<soap:Body wsu:Id="body">
<ns3:checkTOResponse xmlns:ns2="com/asd/qwe/schema-0.9" xmlns:ns3="http://qwe.asd.zxc.ccc.com/">
<return>
<ErrorList>
<ErrorInfo>
<Code>100</Code>
<Message>Ошибка.</Message>
</ErrorInfo>
</ErrorList>
</return>
</ns3:checkTOResponse>
</soap:Body>
</soap:Envelope>
получаю CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: Код:Exception in thread "main" javax.xml.crypto.dsig.XMLSignatureException: javax.xml.crypto.dsig.TransformException: org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
Original Exception was org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
Original Exception was org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.transform(DOMReference.java:440)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.digest(DOMReference.java:333)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.digestReference(DOMXMLSignature.java:453)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.sign(DOMXMLSignature.java:352)
at wss4j.wss4j1_6_3.tests.forum.SMEVExample.main(SMEVExample.java:165)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
Caused by: javax.xml.crypto.dsig.TransformException: org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
Original Exception was org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
Original Exception was org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
at ru.CryptoPro.JCPxml.dsig.internal.dom.ApacheCanonicalizer.transform(ApacheCanonicalizer.java:233)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMTransform.transform(DOMTransform.java:148)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.transform(DOMReference.java:437)
... 9 more
Caused by: org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
Original Exception was org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
Original Exception was org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
at org.apache.xml.security.transforms.implementations.TransformC14NExclusive.enginePerformTransform(TransformC14NExclusive.java:89)
at org.apache.xml.security.transforms.Transform.performTransform(Transform.java:304)
at ru.CryptoPro.JCPxml.dsig.internal.dom.ApacheCanonicalizer.transform(ApacheCanonicalizer.java:223)
... 11 more
javax.xml.crypto.dsig.TransformException: org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
Original Exception was org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
Original Exception was org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
at ru.CryptoPro.JCPxml.dsig.internal.dom.ApacheCanonicalizer.transform(ApacheCanonicalizer.java:233)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMTransform.transform(DOMTransform.java:148)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.transform(DOMReference.java:437)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.digest(DOMReference.java:333)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.digestReference(DOMXMLSignature.java:453)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.sign(DOMXMLSignature.java:352)
at wss4j.wss4j1_6_3.tests.forum.SMEVExample.main(SMEVExample.java:165)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
Caused by: org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
Original Exception was org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
Original Exception was org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
at org.apache.xml.security.transforms.implementations.TransformC14NExclusive.enginePerformTransform(TransformC14NExclusive.java:89)
at org.apache.xml.security.transforms.Transform.performTransform(Transform.java:304)
at ru.CryptoPro.JCPxml.dsig.internal.dom.ApacheCanonicalizer.transform(ApacheCanonicalizer.java:223)
... 11 more
org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
Original Exception was org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
Original Exception was org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
at org.apache.xml.security.transforms.implementations.TransformC14NExclusive.enginePerformTransform(TransformC14NExclusive.java:89)
at org.apache.xml.security.transforms.Transform.performTransform(Transform.java:304)
at ru.CryptoPro.JCPxml.dsig.internal.dom.ApacheCanonicalizer.transform(ApacheCanonicalizer.java:223)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMTransform.transform(DOMTransform.java:148)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.transform(DOMReference.java:437)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.digest(DOMReference.java:333)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.digestReference(DOMXMLSignature.java:453)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.sign(DOMXMLSignature.java:352)
at wss4j.wss4j1_6_3.tests.forum.SMEVExample.main(SMEVExample.java:165)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
Original Exception was org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
at org.apache.xml.security.c14n.implementations.CanonicalizerBase.engineCanonicalize(CanonicalizerBase.java:165)
at org.apache.xml.security.c14n.implementations.Canonicalizer20010315Excl.engineCanonicalize(Canonicalizer20010315Excl.java:131)
at org.apache.xml.security.transforms.implementations.TransformC14NExclusive.enginePerformTransform(TransformC14NExclusive.java:81)
at org.apache.xml.security.transforms.Transform.performTransform(Transform.java:304)
at ru.CryptoPro.JCPxml.dsig.internal.dom.ApacheCanonicalizer.transform(ApacheCanonicalizer.java:223)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMTransform.transform(DOMTransform.java:148)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.transform(DOMReference.java:437)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.digest(DOMReference.java:333)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.digestReference(DOMXMLSignature.java:453)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.sign(DOMXMLSignature.java:352)
at wss4j.wss4j1_6_3.tests.forum.SMEVExample.main(SMEVExample.java:165)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
org.apache.xml.security.c14n.CanonicalizationException: Element ns3:checkTOResponse has a relative namespace: ns2="com/asd/qwe/schema-0.9"
at org.apache.xml.security.c14n.implementations.Canonicalizer20010315Excl.handleAttributesSubtree(Canonicalizer20010315Excl.java:186)
at org.apache.xml.security.c14n.implementations.CanonicalizerBase.canonicalizeSubTree(CanonicalizerBase.java:295)
at org.apache.xml.security.c14n.implementations.CanonicalizerBase.engineCanonicalizeSubTree(CanonicalizerBase.java:203)
at org.apache.xml.security.c14n.implementations.CanonicalizerBase.engineCanonicalize(CanonicalizerBase.java:151)
at org.apache.xml.security.c14n.implementations.Canonicalizer20010315Excl.engineCanonicalize(Canonicalizer20010315Excl.java:131)
at org.apache.xml.security.transforms.implementations.TransformC14NExclusive.enginePerformTransform(TransformC14NExclusive.java:81)
at org.apache.xml.security.transforms.Transform.performTransform(Transform.java:304)
at ru.CryptoPro.JCPxml.dsig.internal.dom.ApacheCanonicalizer.transform(ApacheCanonicalizer.java:223)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMTransform.transform(DOMTransform.java:148)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.transform(DOMReference.java:437)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.digest(DOMReference.java:333)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.digestReference(DOMXMLSignature.java:453)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.sign(DOMXMLSignature.java:352)
at wss4j.wss4j1_6_3.tests.forum.SMEVExample.main(SMEVExample.java:165)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
хотелось бы узнать можно ли подписать не удаляя данный namespace?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,003 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 714 раз в 674 постах
|
Здравствуйте. XML SEC запрещает использование относительных имен. |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 12.11.2012(UTC) Сообщений: 2 Откуда: Minsk
|
afev написал:Здравствуйте. XML SEC запрещает использование относительных имен. пробовал использовать Canonicalizer.getInstance(Canonicalizer.ALGO_ID_C14N11_WITH_COMMENTS); //также использовал другие инстансы currentEnvelopeMessage = new String(canonicalizer.canonicalize(currentEnvelopeMessage.getBytes("UTF-8")),"UTF-8"); но они выдают туже ошибку Цитата:org.apache.xml.security.c14n.CanonicalizationException: Element ns2:method has a relative namespace: ns3="schema-2.6" вы не могли бы подсказать пути решения данного вопроса?
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 25.06.2014(UTC) Сообщений: 6
Сказал(а) «Спасибо»: 2 раз
|
Цитата:Здравствуйте. XML SEC запрещает использование относительных имен. Я правильно понимаю эту фразу, что такие документы я в принципе не могу подписывать с помощью JCP или что я делаю не так? Код:<?xml version="1.0" encoding="UTF-8"?>
<ed:document xmlns:ed="ru.emias.simi.v2.xds.core" xmlns="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="ru.emias.simi.v2.xds.core EmiasDocument.xsd">
<ed:content mimeType="application/xml">
<ed:data></ed:data>
</ed:content>
</ed:document>
у меня сейчас падает такая же ошибка: Код:
org.apache.xml.security.c14n.CanonicalizationException: Element ed:document has a relative namespace: ed="ru.emias.simi.v2.xds.core"
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.transform(DOMReference.java:532)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.digest(DOMReference.java:333)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.digestReference(DOMXMLSignature.java:453)
at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.sign(DOMXMLSignature.java:352)
Отредактировано пользователем 11 февраля 2016 г. 15:46:15(UTC)
| Причина: Не указана
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 25.06.2014(UTC) Сообщений: 6
Сказал(а) «Спасибо»: 2 раз
|
вместо Код:fac.newTransform(Transform.XPATH, new XPathFilterParameterSpec("/ed:document/ed:content", xpathNamespaceMap));
сделал вот так Код:fac.newTransform(Transform.XPATH, new XPathFilterParameterSpec("ancestor-or-self::ed:content", xpathNamespaceMap));
помогло избавится от org.apache.xml.security.c14n.CanonicalizationException: Element ed:document has a relative namespace:
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close