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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Mr. Art #1  
#1 Оставлено : 9 августа 2018 г. 20:11:05(UTC)
Mr. Art #1

Статус: Новичок

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

Сказал(а) «Спасибо»: 2 раз
Добрый день!

Есть Java сервер (ОС Windows) и приложение на Java, необходимо реализовать:
1. Подписание
2. Проверка подписи
3. Шифрование
4. Расшифровка
5. Извлечение информации из сертификатов (хеш и т.д.)

Как я понимаю, для этих целей подойдет библиотека JCP. Но также я обнаружил, что есть продукт Java CSP, который требует:
1. Предустановленный провайдер КриптоПро JCP версии 2.0
2. Предустановленный провайдер КриптоПро CSP 4.0

В чем разница между JCP и Java CSP? Зачем вообще нужен Java CSP, если библиотека JCP сама по себе реализует все необходимые функции без дополнительных компонентов, а для Java CSP необходимы зависимости в виде КриптоПро JCP 2.0 и КриптоПро CSP?
Прежде чем покупать лицензию хочется определиться, какой именно продукт нужен.

Вопрос по версиям: если у нас Java 1.4.2 (VM 4.1), то, получается, что JCP 2.0 и Java CSP несовместимы с нашей Java?
Отсюда возникает вопрос: может ли Java напрямую работать с КриптоПро CSP 4.0 через JCA/JCE, чтобы без установки JCP/Java CSP можно было использовать функции криптопровайдера? Хочется на старой Java получить алгоритмы 2012.

Заранее большое спасибо.
Offline Евгений Афанасьев  
#2 Оставлено : 10 августа 2018 г. 10:01:48(UTC)
Евгений Афанасьев

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

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,910
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 685 раз в 646 постах
Здравствуйте.
JCP содержит криптографические алгоритмы, реализованные на java, а Java CSP (JCSP) - переадресует вызовы в Крипто-Про CSP (использует CryptoAPI). JCSP требует лицензию в том случае, если в Крипто-Про CSP введена серверная лицензия. JCSP может пригодиться в случае работы с более широким списком считывателей, чем есть в JCP, или чтобы использовать гамму (генерировать ключи без БиоДСЧ), или для работы к HSM. Для java версии ниже 1.6 сборок, к сожалению, нет (jcp 1.0.54 без ГОСТ 2012 работает с 1.6). Как вариант, 1) сделать "обертку" над CryptoAPI и вызывать его из java-кода или реализовать вызовы не ко всему CryptoAPI, а тем функциям, которые предполагается использовать в коде, 2) использовать JNA и обращаться к crypt32 и др. из java-кода напрямую (зависит от ОС).
Offline Mr. Art #1  
#3 Оставлено : 10 августа 2018 г. 13:03:04(UTC)
Mr. Art #1

Статус: Новичок

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

Сказал(а) «Спасибо»: 2 раз
Евгений, спасибо!

По версиям на сайте указано, что

Цитата:
требуется Java 2 Runtime Environment версии 1.4.2, 1.5.0 для версии JCP 1.0.46


т.е. на нашей Java какая-то старая сборка JCP 1 все-таки будет работать, но нас это не спасет, т.к. алгоритмы 2012 доступны только в JCP 2, если я верно понял.

Насчет способов решения - вы имеете в виду, что в обоих случаях придется реализовать "нативный" код с использованием wincrypt.h + crypt32.dll + Crypto PRO CSP 4.0?
В первом случае сделать, например, http-сервер на локальном адресе и из джавы обращаться по REST, а во втором случае - мост "управляемый" - "нативный" код. Верно ли я понял?
Offline Евгений Афанасьев  
#4 Оставлено : 10 августа 2018 г. 13:37:09(UTC)
Евгений Афанасьев

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

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,910
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 685 раз в 646 постах
Я имел в виду либо сделать библиотеку с удобными для вас JNI интерфейсами (обращающимися к CryptoAPI) и вызывать из java кода, либо звать CryptoAPI напрямую в java коде (используя JNA) из библиотек, реализующих CryptoAPI. Ваши варианты тоже подходят, но в итоге потребуется обращаться к CryptoAPI.
Версия 1.0.46 устарела и не поддерживается, и, например, ГОСТа 2012 в ней нет.
Offline Mr. Art #1  
#5 Оставлено : 10 августа 2018 г. 15:00:02(UTC)
Mr. Art #1

Статус: Новичок

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

Сказал(а) «Спасибо»: 2 раз
Евгений, спасибо большое!

Будем думать над предложенными вариантами, другого способа нет...
Offline doubleside  
#6 Оставлено : 29 ноября 2018 г. 13:59:23(UTC)
doubleside

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

Группы: Участники
Зарегистрирован: 23.05.2018(UTC)
Сообщений: 71
Великобритания
Откуда: London

Сказал(а) «Спасибо»: 5 раз
Поблагодарили: 1 раз в 1 постах
а винда у вас 98?)))
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.