Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Создание ЭЦП через OracleForms на клиенте / 10 сообщений из 10, страница 1 из 1
16.07.2015, 10:12
    #39008579
QAWSEDRF
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ЭЦП через OracleForms на клиенте
Добрый день.
Необходимо создание ЭЦП на клиенте через Oracle Forms 6. Т.е. необходимо подписать данные на клиенте и ЭЦП сохранить в базе. На клиенте, потому что ключ необходимо хранить на рутокене у клиента.

Есть ли уже реализованные для этого "велосипеды" или если нет, то можно ли это сделать с помощью Oracle Forms?
...
Рейтинг: 0 / 0
16.07.2015, 20:54
    #39009293
mRdUKE
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ЭЦП через OracleForms на клиенте
QAWSEDRF,

Что вы имеете ввиду под ЭЦП, какие требования / алгоритм шифр.? Через OF6 можно "юзать" стороннее приложение, как вариант.. На Oracle посмотрите в сторону DBMS_CRYPTO
...
Рейтинг: 0 / 0
20.07.2015, 15:51
    #39011519
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ЭЦП через OracleForms на клиенте
НУЖНО УТОЧНЕНИЕ:

1. Oracle Forms 6 - клиент/сервер или Web-forms?
2. "подписать данные на клиенте и ЭЦП сохранить в базе" - наверное документ тоже нужно хранить в базе? это уже BLOB получается. Как у Вас сейчас сделана работа с BLOB'ами с клиента?

ВАРИАНТОВ МАССА:

Если нужно "более менее походить" на Российский ГОСТ - но наверное нужно использовать Crypto PRO.

Проблем написать библиотеку-прокладку (у меня есть) на C и вызывать ее из Forms через ORA_FFI - нет ни каких. Лично я использую MS Crypto API и указываю крипто провайдер Crypto PRO. Возможно, можно и напрямую дергать MS Crypto API из Forms, но для меня это сложнее в отладке.

Второй возможный вариант, использовать MS CAPICOM и попытаться дергать его через OLE2 package.

Третий возможный вариант, доплатить денюжек Crypto PRO и купить утилиту командной строки (не мой подход, т.к. мне нужно было XML файлы подписывать, да еще интегрировать с Web) и вызывать через Host build-in.

Ну и как всегда, четвертый вариант . Халтуру никто не отменял.

Т.ч. вариантов масса )))


IMHO & AFAIK
...
Рейтинг: 0 / 0
20.07.2015, 16:17
    #39011550
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ЭЦП через OracleForms на клиенте
Предыдущие Ваши вопросы были про OeBS. Т.е. Web-Forms да еще и OeBS.... Тоже реализуется. Описываю in general, для OeBS многих проблем нет. :

I. WebUtils package - лично я не использовал + он вроде для Forms 6i официально не доступен (хотя народ ручками подпиливает).

II. Т.е. нужно делать самопал, да еще впиливать его в OeBS. Как бы делал бы я (похожие задачи /не OeBS/ я так делал) :
2.1. Делаем Java Bean или Java Applets, в последнем случае, подписываем его (что бы можно было дать ему прова на доступ к клиентскому компьютеру).
С Java Bean должно быть проще, т.к. собственно applet формсов OeBS уже подписан и права скорее всего (нужно проверять) есть.
2.2. Если подписанный Аплет, даем ему прова на доступ к клиентскому компьютеру. Дырка в безопасности клиентского компьютера для нас проделана
В случае OeBS и Java Bean уже все сделано за нас.
2.3. Определяем из реестра путь в Windows/system32 (я так делал лет 10 назад для XP, сейчас наверное это что нибудь типа App Data)
2.4. Смотрим установлены ли наши DLL'ки, если нет:
2.4.a. скачиваем их из Базы/Web сервера(мне кажется более "правильным") и устанавливаем/копируем в какой-то директорий на клиента (в какой именно - нужно понять)
2.4.b. или, если они вложены как Resource в JAR (разпухание JAR'ника IMHO не есть хорошо), то просто копируем из Resource JAR'ника в нужный директорий.
2.5. DLL'ки установлена, никто не мешает нам ее вызывать

Понятно. что в реальности есть следующие проблемы/глюки (я делал applet):

1. На каждом компьютере клиента нужно дать подписанному аплету права - процесс "глюкавый" и не очевиден. Если пользователь вместо Allow нажмет Denied то ошибку потом служба поддержки может долго искать )))

К счастью, OeBS applet скорее всего данные права имеет. Т.ч. в OeBS скорее всего все проще.

2. Потенциально, это дыра в безопасности клиентского компьютера. НО OeBS УЖЕ эту дыру проделал.

3. Нужно разбираться с провами и доступом в схеме безопасности M$. За последние 10 лет там многое наворотили. Раньше просто ставили DLL в windows\system32, куда принято ставить ныне - не знаю.

4. Антивирусы. Теоретически могут заблокировать и запись DLL и ее запуск.

5. OeBS. Нужно настраивать OeBS на сервере:
5.a в случае Java Bean (скорее всего). Ддобавлять в скаченные JAR'ники свой Java Bean /вроде можно найти ноту как делать/
5.b. или в случае Applet (для OeBS не нужно) в стартовую страниц добавлять свой Applet и Java Scrit и общаться через Java Script /глюкало/.

IMHO & AFAIK
...
Рейтинг: 0 / 0
20.07.2015, 18:03
    #39011646
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ЭЦП через OracleForms на клиенте
P.S. Если будете делать вызов DLL из Java, на JNA даже не смотрите. Только старый, добрый JNI (Java Native Interface). Во флуд вступать не хочется, просто как данность.
...
Рейтинг: 0 / 0
20.07.2015, 18:07
    #39011650
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ЭЦП через OracleForms на клиенте
Ну и для Web Forms еще вариант:

Написать свою Java Bean с использованием Crypto Pro JSP. Тогда, возможно. никакого шаманства с DLL не нужно (вроде там "чистая" Java). Но я его не использовал: у пользователей уже были лицензии на CSP; он мне на тот момент показался "сыроват" и его работа не всегда "интуитивно понятна".
...
Рейтинг: 0 / 0
23.07.2015, 11:43
    #39014300
QAWSEDRF
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ЭЦП через OracleForms на клиенте
Leonid Kudryavtsev,

1. По вопросу "клиент/сервер или Web-forms?" - клиент/сервер
2. По вопросу "документ тоже нужно хранить в базе?" - да, документ тоже надо хранить в базе
3. По вопросу " Как у Вас сейчас сделана работа с BLOB'ами с клиента?" - работа с BLOB с клиента пока никак не реализована.

Обязательно нужно соответствовать Российскому ГОСТ.

Спасибо за описанные варианты, буду изучать их.
...
Рейтинг: 0 / 0
23.07.2015, 12:04
    #39014324
QAWSEDRF
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ЭЦП через OracleForms на клиенте
mRdUKE,

1. По поводу "Что вы имеете ввиду под ЭЦП, какие требования / алгоритм шифр.? " - ЭЦП - квалифицированная электронная цифровая подпись (в терминах Федерального закона об электронной подписи от 06.04.2011 № 63-ФЗ), созданная средствами Cripto PRO.
...
Рейтинг: 0 / 0
24.07.2015, 08:41
    #39015060
mRdUKE
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ЭЦП через OracleForms на клиенте
QAWSEDRF,

ГОСТ Р 34.11-2012: C JAVA
...
Рейтинг: 0 / 0
26.07.2015, 17:51
    #39016185
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание ЭЦП через OracleForms на клиенте
Напиши в личку или в скайп (ник в скайпе tigralen1 )
...
Рейтинг: 0 / 0
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Создание ЭЦП через OracleForms на клиенте / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]