Подписание xml в браузере ГОСТовым ключем
(1 чел.) (1) гость
  • Страница:
  • 1
  • 2

ТЕМА: Подписание xml в браузере ГОСТовым ключем

Re: Подписание xml в браузере ГОСТовым ключем 1 год, 2 мес. назад #4041

  • Kuyubaev
  • Новый участник
  • Постов: 18
  • Репутация: 0
Высылаю лог. Сам покопался в нем и мне кажется он мало чем поможет. Когда запускаю пример, в него ничего не записывается. Записывается только тогда, когда проверяю ключ по ссылке которую вы дали.

Может я делаю что-то не так. Попробую объяснить более детально.
Мне дали SDK Kalkan. Задача состоит в том, чтобы подписывать некий текст в браузере ключом (или сертом, путаюсь в этих вещах, поскольку вообще профан в этой области).
Что я делаю. Я нашел пример из папки NCALayer -> commonbundle_sample. Там есть пример html страницы где можно проверять ключ и подписывать им. Насколько я понял из примера, страница посредством JavaScript обращается к NCALayer по WebSocket и получает данные ключа или подписывает что нужно.
Первое, что пришло в голову - это проверить пример с помощью моего личного ключа (файла *.p12) полученного в ЦОНе. Все работает замечательно. Но этот мой ключ, полученный в ЦОН не ГОСТовый как я понимаю, а RSA.
Следующее, что я делаю - беру тестовый ключ, полученный для взаимодействия с Казахстанским Центром Межбанковских Расчетов. Этот ключ вообще для другой задачи, не для той которую я решаю сейчас. Но он ГОСТовый. Но с этим ключом пример не работает, выдает сообщение, что хранилище пустое.

Проверяю этот же ГОСТовый ключ по ссылке, которую вы дали. Проверка проходит успешно и выдаются данные ключа.

Что-то я не так понимаю видимо((


Ошибка в логах возникает когда я просто закрываю окно проверки ключа по ссылке которую вы дали. А когда работаю с примером в логи ничего не пишется


2018-05-24 11:00:18 INFO [kz.gov.pki.api.layer.service.LogWriter] - [kz.gov.pki.osgi.layer.websocket]: C [Self] InternalServerError: Handler terminated without closing the connection.
2018-05-24 11:00:20 INFO [kz.gov.pki.api.layer.service.LogWriter] - [kz.gov.pki.osgi.layer.websocket]: Connection originated from nca.pki.gov.kz opened!
2018-05-24 11:09:25 ERROR [kz.gov.pki.api.layer.service.LogWriter] - [kz.gov.pki.osgi.layer.websocket]: Exception occured.:
java.net.SocketException: Software caused connection abort: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:111)
at java.net.SocketOutputStream.write(SocketOutputStream.java:155)
at sun.security.ssl.OutputRecord.writeBuffer(OutputRecord.java:431)
at sun.security.ssl.OutputRecord.write(OutputRecord.java:417)
at sun.security.ssl.SSLSocketImpl.writeRecordInternal(SSLSocketImpl.java:886)
at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:857)
at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:123)
at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:138)
at fi.iki.elonen.NanoWSD$WebSocketFrame.write(NanoWSD.java:706)
at fi.iki.elonen.NanoWSD$WebSocket.sendFrame(NanoWSD.java:273)
at fi.iki.elonen.NanoWSD$WebSocket.close(NanoWSD.java:137)
at fi.iki.elonen.NanoWSD$WebSocket.handleCloseFrame(NanoWSD.java:186)
at fi.iki.elonen.NanoWSD$WebSocket.handleWebsocketFrame(NanoWSD.java:220)
at fi.iki.elonen.NanoWSD$WebSocket.readWebsocket(NanoWSD.java:248)
at fi.iki.elonen.NanoWSD$WebSocket.access$200(NanoWSD.java:65)
at fi.iki.elonen.NanoWSD$WebSocket$1.send(NanoWSD.java:88)
at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:957)
at fi.iki.elonen.NanoHTTPD$ClientHandler.run(NanoHTTPD.java:192)
at java.lang.Thread.run(Thread.java:748)
2018-05-24 11:09:25 INFO [kz.gov.pki.api.layer.service.LogWriter] - [kz.gov.pki.osgi.layer.websocket]: C [Self] InternalServerError: Handler terminated without closing the connection.
2018-05-24 11:09:31 INFO [kz.gov.pki.api.layer.service.LogWriter] - [kz.gov.pki.osgi.layer.websocket]: Connection originated from nca.pki.gov.kz opened!
2018-05-24 11:11:14 INFO [kz.gov.pki.api.layer.service.LogWriter] - [kz.gov.pki.osgi.layer.websocket]: Connection originated from nca.pki.gov.kz opened!
2018-05-24 11:12:20 ERROR [kz.gov.pki.api.layer.service.LogWriter] - [kz.gov.pki.osgi.layer.websocket]: onMessage failed.:
java.net.SocketException: Software caused connection abort: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:111)
at java.net.SocketOutputStream.write(SocketOutputStream.java:155)
at sun.security.ssl.OutputRecord.writeBuffer(OutputRecord.java:431)
at sun.security.ssl.OutputRecord.write(OutputRecord.java:417)
at sun.security.ssl.SSLSocketImpl.writeRecordInternal(SSLSocketImpl.java:886)
at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:857)
at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:123)
at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:138)
at fi.iki.elonen.NanoWSD$WebSocketFrame.write(NanoWSD.java:708)
at fi.iki.elonen.NanoWSD$WebSocket.sendFrame(NanoWSD.java:273)
at fi.iki.elonen.NanoWSD$WebSocket.send(NanoWSD.java:268)
at kz.gov.pki.layer.NCAWebSocketServer$NCAWebSocket.onMessage(NCAWebSocketServer.java:125)
at fi.iki.elonen.NanoWSD$WebSocket.handleWebsocketFrame(NanoWSD.java:230)
at fi.iki.elonen.NanoWSD$WebSocket.readWebsocket(NanoWSD.java:248)
at fi.iki.elonen.NanoWSD$WebSocket.access$200(NanoWSD.java:65)
at fi.iki.elonen.NanoWSD$WebSocket$1.send(NanoWSD.java:88)
at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:957)
at fi.iki.elonen.NanoHTTPD$ClientHandler.run(NanoHTTPD.java:192)
at java.lang.Thread.run(Thread.java:748)
2018-05-24 11:12:20 INFO [kz.gov.pki.api.layer.service.LogWriter] - [kz.gov.pki.osgi.layer.websocket]: C [Self] InternalServerError: Handler terminated without closing the connection.
Изменено: 1 год, 2 мес. назад от Kuyubaev. Причина: Вставил логи как текст

Re: Подписание xml в браузере ГОСТовым ключем 1 год, 2 мес. назад #4043

  • margulan
  • Модератор
  • Постов: 166
  • Репутация: 12
В целом вы все правильно делаете, но вы должны использовать ключи выданные Национальным удостоверяющим центром. Для тестирования вы можете использовать тестовые ГОСТовые ключи, которые находятся в SDK. У КЦМР свой отдельный удостоверяющий центр.

На форуме вложения не работают, на следующий раз лучше загрузить их на сторонний ресурс и выложить ссылку здесь.
Изменено: 1 год, 2 мес. назад от margulan.

Re: Подписание xml в браузере ГОСТовым ключем 1 год, 2 мес. назад #4046

  • Kuyubaev
  • Новый участник
  • Постов: 18
  • Репутация: 0
Да, с ключом из SDK работает. Буду разбираться дальше. Спасибо за помощь!
  • Страница:
  • 1
  • 2
FaLang translation system by Faboba