Статус: Активный участник
Группы: Участники
Зарегистрирован: 21.12.2016(UTC) Сообщений: 46 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Сургут Сказал(а) «Спасибо»: 10 раз Поблагодарили: 3 раз в 2 постах
|
Добрый день. Подскажите, каким образом подписать сообщения для СМЭВ 3.0, использую JCP? Нет ли у кого примеров на JAVA? или подобного примера для СМЭВ 3.0.? Отредактировано пользователем 21 декабря 2016 г. 13:56:45(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,003 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 714 раз в 674 постах
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 21.12.2016(UTC) Сообщений: 46 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Сургут Сказал(а) «Спасибо»: 10 раз Поблагодарили: 3 раз в 2 постах
|
Автор: afev ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) Добрый день. Да, первым делом поискал по слову СМЭВ. В той теме тоже просят пример.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 21.12.2016(UTC) Сообщений: 46 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Сургут Сказал(а) «Спасибо»: 10 раз Поблагодарили: 3 раз в 2 постах
|
Добрый день. Устанавливаем JCP. Условия таковы: jdk1.8.0_112 jcp.1.0.54 ![](/forum2/Themes/soclean/icon_file.gif) log.zip (2kb) загружен 4 раз(а).Во вложении лог-файл, полученный при установки. Подскажите, в чем причина ошибки "Can't find ru.CryptoPro.JCP.tools.resources.logger bundle" Отредактировано пользователем 10 января 2017 г. 13:39:01(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,003 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 714 раз в 674 постах
|
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 21.12.2016(UTC) Сообщений: 46 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Сургут Сказал(а) «Спасибо»: 10 раз Поблагодарили: 3 раз в 2 постах
|
Автор: afev ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) Подскажите, каким образом, используя jcp-2.0.38150 и Java(TM) SE Runtime Environment (build 1.8.0_45-b15) можно подписывать сообщения для СМЭВ 3.0. Клиент который они публикуют (http://smev3.gosuslugi.ru/portal/api/files/1_client-3.4.34.0.zip) поддерживает только jcp.1.0.54 (который не работает на jdk1.8.0_112). Может кто то реализовывал и сталкивался?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,003 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 714 раз в 674 постах
|
Автор: U3962 ![Перейти к цитате Перейти к цитате](/forum2/Themes/soclean/icon_latest_reply.gif) Клиент который они публикуют (http://smev3.gosuslugi.ru/portal/api/files/1_client-3.4.34.0.zip) поддерживает только jcp.1.0.54 (который не работает на jdk1.8.0_112). Может кто то реализовывал и сталкивался?
Попробуйте вместо 1.8 поставить 1.7 версии старше 1.7.0_25. |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 28.04.2016(UTC) Сообщений: 35 ![Российская Федерация Российская Федерация](/forum2/Content/images/flags/RU.png) Откуда: Moscow Сказал(а) «Спасибо»: 1 раз Поблагодарили: 2 раз в 2 постах
|
А кто нибудь может кто нибудь описать удачный опыт работы со СМЭВ-клиентом? Можно отдельным топиком, полезно будет всем.
А то на практике удалось завести только первую часть - когда отправляешь поставщику запрос на услугу, смэв говорит что поставил в очередь на асинхронную проверку и всё. Кроме того никак не получается вытащить из клиента то что он нагенерировал - возвращает одни нулы. Приходится wireshark'ом ловить трафик и смотреть что там и как
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 27.04.2016(UTC) Сообщений: 108
Сказал(а) «Спасибо»: 9 раз Поблагодарили: 1 раз в 1 постах
|
Здравствуйте! Можно ли используя приведенную ниже конструкцию подписать по формату СМЭВ3.0 используя Java 1.7.0_131 + jcp 2.0.370 + xmlsec-1.5.0. Сейчас все успешно работает по СМЭВ2. Код:DigitalSignatureFactory.init("JCP");
KeyStore keyStore = KeyStore.getInstance("HDImageStore");
keyStore.load(null, null);
// Получение ключа и сертификата.
PrivateKey privateKey = (PrivateKey)keyStore.getKey(fileoralias,password.toCharArray());
X509Certificate cert = (X509Certificate) keyStore.getCertificate(fileoralias);
Document e = XMLTransformHelper.buildDocumentFromString(xmlbyte);
// инициализация объекта формирования ЭЦП в соответствии с алгоритмом ГОСТ Р 34.10-2001
XMLSignature xmlSignature = new XMLSignature(e, "", "http://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411", Transforms.TRANSFORM_C14N_EXCL_OMIT_COMMENTS);
/* Определение правил работы с XML-документом и добавление в узел подписи этих правил */
// создание узла преобразований <ds:Transforms> обрабатываемого XML-документа
Transforms transforms = new Transforms(e);
// добавление в узел преобразований правил работы с документом
transforms.addTransform(Transforms.TRANSFORM_ENVELOPED_SIGNATURE);
transforms.addTransform(Transforms.TRANSFORM_C14N_EXCL_OMIT_COMMENTS);
transforms.addTransform(SmevTransformSpi.ALGORITHM_URN);
// добавление в узел подписи ссылок (узла <ds:Reference>), определяющих правила работы с
// XML-документом (обрабатывается текущий документ с заданными в узле <ds:Transforms> правилами
// и заданным алгоритмом хеширования)
Element _element2Sign = e.getDocumentElement(); //element2Sign != null ? element2Sign : argDocument.getDocumentElement();
String referenceURI = _element2Sign.getAttribute("Id");
Attr attributeNode = _element2Sign.getAttributeNode("Id");
lement2Sign.setIdAttributeNode(attributeNode, true);
if (referenceURI == null || "".equals(referenceURI.trim())) {
referenceURI = _element2Sign.getAttributeNS("http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd", "Id");
}
if (referenceURI == null || "".equals(referenceURI.trim())) {
referenceURI = "";
}
String refURI = referenceURI;
if (!refURI.isEmpty() && !refURI.startsWith("#")) {
refURI = "#" + refURI;
}
xmlSignature.addDocument(refURI, transforms, "http://www.w3.org/2001/04/xmldsig-more#gostr3411");
// создание внутри узла подписи узла <ds:KeyInfo> информации об открытом ключе на основе
// сертификата
xmlSignature.addKeyInfo(cert);
// создание подписи XML-документа
xmlSignature.sign(privateKey);
Метод работает, но возвращает тот же элемент что подавался на входе.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 27.04.2016(UTC) Сообщений: 108
Сказал(а) «Спасибо»: 9 раз Поблагодарили: 1 раз в 1 постах
|
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close