Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline maximkosheev  
#1 Оставлено : 6 ноября 2018 г. 22:51:47(UTC)
maximkosheev

Статус: Активный участник

Группы: Участники
Зарегистрирован: 23.10.2018(UTC)
Сообщений: 36
Российская Федерация

Сказал(а) «Спасибо»: 4 раз
Всем добрый день! Прошу сразу не ругаться, если я что-то скажу не так или не теми терминами или не в том топике... Я еще новичок в этой теме.
Итак задача заключается в следующем нужно написать приложение, которое будет использовать функционал плагина для браузера.
Приложение должно действительно работать отдельно от браузера, но использовать плагин. Что касается Windows, то тут все понятно - есть COM-объект CAdESCOM и используя технологию COM я могу работать с плагином (проверено, работает). Но что я никак не пойму, как эту задачу выполнить в других операционных системах (Linux, MacOS), где нет технологии COM, но плагин также установлен.
Подскажите, кто знает?
Offline Александр Лавник  
#2 Оставлено : 7 ноября 2018 г. 11:35:33(UTC)
Александр Лавник

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 30.06.2016(UTC)
Сообщений: 3,383
Мужчина
Российская Федерация

Сказал «Спасибо»: 53 раз
Поблагодарили: 776 раз в 718 постах
Автор: maximkosheev Перейти к цитате
Всем добрый день! Прошу сразу не ругаться, если я что-то скажу не так или не теми терминами или не в том топике... Я еще новичок в этой теме.
Итак задача заключается в следующем нужно написать приложение, которое будет использовать функционал плагина для браузера.
Приложение должно действительно работать отдельно от браузера, но использовать плагин. Что касается Windows, то тут все понятно - есть COM-объект CAdESCOM и используя технологию COM я могу работать с плагином (проверено, работает). Но что я никак не пойму, как эту задачу выполнить в других операционных системах (Linux, MacOS), где нет технологии COM, но плагин также установлен.
Подскажите, кто знает?

Добрый день.

На Linux/macOS Вы можете использовать вызов функций библиотек CAdES из приложения на языке С.

На Linux Вы также можете использовать расширение для PHP.

Кроме этого, на любой поддерживаемой операционной системе Вы можете использовать соответствующие функции из КриптоПро JCP в приложении на Java.
Техническую поддержку оказываем тут
Наша база знаний
Offline maximkosheev  
#3 Оставлено : 7 ноября 2018 г. 17:12:55(UTC)
maximkosheev

Статус: Активный участник

Группы: Участники
Зарегистрирован: 23.10.2018(UTC)
Сообщений: 36
Российская Федерация

Сказал(а) «Спасибо»: 4 раз
Цитата:

На Linux/macOS Вы можете использовать вызов функций библиотек CAdES из приложения на языке С.

Подскажите, где я могу прочитать про этот вариант подробнее именно в части Linux/MacOS. Потому, что я читал описание КриптоПРО SDK, и обратил внимание, что функции используют структуры из Microsoft Crypto API. Как я могу его использовать в Linux? Подскажите пожалуйста, я что-то запутался :(

Цитата:

Кроме этого, на любой поддерживаемой операционной системе Вы можете использовать соответствующие функции из КриптоПро JCP в приложении на Java.


Для меня это было бы наилучшим вариантом, если бы не одно "но".
Дело в том, что средствами JCP мне не как не удается получить подпись определенного (известного) фиксированного массива данных хоть сколько-нибудь похожую на подпись этих же данных, полученных с помощью плагина/COM-объекта.

Да, я понимаю, что даже плагином подписывая один и тот же массив байт, я всякий раз буду получать разный набор байт на выходе. Так оно и происходит.
Но, в целом подписи плагином "совпадают" между собой: совпадает длина массива подписи, совпадают начальные блоки.
Т.е., что я имею ввиду?
У меня есть известный, фиксированный массив байт. Я его подписываю плагином/COM-объектом 3 раза. На выходе я получаю подпись, закодированная в Base64 длиной всегда 4696 байт (все три раза). N-ное кол-во начальных байт всегда одинаковое. Т.е. в целом подписи похожи между собой.
А вот подпись этого же массива байт средствами JCP, получается прям сильно отличающаяся от плагина (и по длине и по содержимому).
Помогите, пожалуйста докопаться до сути? Если нужно я приведу участки кода подписи плагином и JCP.
Offline Александр Лавник  
#4 Оставлено : 7 ноября 2018 г. 17:42:01(UTC)
Александр Лавник

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 30.06.2016(UTC)
Сообщений: 3,383
Мужчина
Российская Федерация

Сказал «Спасибо»: 53 раз
Поблагодарили: 776 раз в 718 постах
maximkosheev написал:
Подскажите, где я могу прочитать про этот вариант подробнее именно в части Linux/MacOS. Потому, что я читал описание КриптоПРО SDK, и обратил внимание, что функции используют структуры из Microsoft Crypto API. Как я могу его использовать в Linux? Подскажите пожалуйста, я что-то запутался :(

Для каждой функции и структуры, описанной здесь, есть раздел Требования.

В этом разделе указана необходимая библиотека и заголовочный файл (действительно, для некоторых пунктов есть реализация только для Windows).

Таким образом, например, для Linux нужно использовать библиотеку cades.so и заголовочный файл cades.h (необходима установка соответствующих пакетов cprocsp-pki-2.0.0-cades и lsb-cprocsp-devel из состава КриптоПро ЭЦП SDK).

maximkosheev написал:
Для меня это было бы наилучшим вариантом, если бы не одно "но".
Дело в том, что средствами JCP мне не как не удается получить подпись определенного (известного) фиксированного массива данных хоть сколько-нибудь похожую на подпись этих же данных, полученных с помощью плагина/COM-объекта.

Да, я понимаю, что даже плагином подписывая один и тот же массив байт, я всякий раз буду получать разный набор байт на выходе. Так оно и происходит.
Но, в целом подписи плагином "совпадают" между собой: совпадает длина массива подписи, совпадают начальные блоки.
Т.е., что я имею ввиду?
У меня есть известный, фиксированный массив байт. Я его подписываю плагином/COM-объектом 3 раза. На выходе я получаю подпись, закодированная в Base64 длиной всегда 4696 байт (все три раза). N-ное кол-во начальных байт всегда одинаковое. Т.е. в целом подписи похожи между собой.
А вот подпись этого же массива байт средствами JCP, получается прям сильно отличающаяся от плагина (и по длине и по содержимому).
Помогите, пожалуйста докопаться до сути? Если нужно я приведу участки кода подписи плагином и JCP.

Вопросы по КриптоПро JCP Вам лучше задавать в соответствующей ветке форума, где на них обычно отвечает разработчик.
Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.