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

Уведомление

Icon
Error

2 Страницы12>
Опции
К последнему сообщению К первому непрочитанному
Offline chris_kgauitc  
#1 Оставлено : 24 сентября 2014 г. 7:27:29(UTC)
chris_kgauitc

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

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

Сказал(а) «Спасибо»: 6 раз
Речь идет о КриптоПро ЭЦП Browser plug-in.
Разрабатывается универсальная js-библиотека по работе с криптографией на основе CAdES, CAPICOM, WebCryptoAPI.
Необходимо в момент инициализации провести ряд тестов, дабы определить доступные возможности. По философии библиотеки modernizr.
Например: возможность подписи файлов (FileAPI), работа с алгоритмами ГОСТ, поддержка усовершенствованных подписей, поддержка браузеров Gecko.


Выдержка из документации:
Для создания сообщения с усовершенствованной подписью, должны быть выполнены следующие условия:
...
- Должны быть установлены лицензии на КриптоПро TSP Client и КриптоПро OCSP Client.
...

Вопрос № 1.
Есть ли способ проверки: имеются ли такие лицензии (сам факт их наличия) - посредством javascript?
Я рассчитывал, что такую информацию предоставит CAdESCOM.About. Но увы.
Единственное, что сейчас приходит на ум: сделать пробную подпись и, т.к. вызов CadesSignedData.Sign вызовет исключение, по номеру ошибки определить сей файт. Но такую возможность я еще не тестировал.
В любом случае, проблема такого подхода в том, что выполнить это в момент инициализации библиотеки не получится. Ну т.е. получится, но нам придется явно просить пользователя выбрать сертификат и "вставить ключ".



Вопрос № 2.
У пользователя на машине может отсутствовать любая из лицензий на CSP/TSP/OCSP, но при этом такая лицензия может быть прописана в сертификате ключа. Я правильно понимаю?
Как через javascript определить, что такая лицензия есть? Правильно ли я понимаю, что мне необходимо проверять наличие OUID: 1.2.643.2.2.49.2!6 среди атрибутов сертификата?
Достаточно ли этого?
Кажется я прав, здесь это обсуждается: http://www.cryptopro.ru/...ts&m=42832#post42832



Вопрос № 3.
Как определить, что у пользователя квалифицированная ЭЦП. Подозреваю, что нужно читать Attribute/CPAttibute, KeyUsage/ExtendedKeyUsage.
Здесь: http://base.garant.ru/70133464/ очень хорошо расписано. Но у меня вопросы остались. Если у вас есть хорошой пример - буду благодарен.


Сориентируейте меня плиз, где взять доку, где описана разница между CADESCOM_CADES_BES, CADESCOM_CADES_DEFAULT и CADESCOM_CADES_X_LONG_TYPE_1.
В каких ситуациях какие стоит использовать?

Отредактировано пользователем 24 сентября 2014 г. 8:38:26(UTC)  | Причина: Не указана

Offline Андрей Писарев  
#2 Оставлено : 24 сентября 2014 г. 9:56:29(UTC)
Андрей *

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

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

Сказал «Спасибо»: 582 раз
Поблагодарили: 2311 раз в 1810 постах
Возможно устроит использование:
obj = CreateObject("CPCSPLicense.CPCSPLicense")
obj.GetExpireDate(GUID-продукта)
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Андрей * за этот пост.
chris_kgauitc оставлено 25.09.2014(UTC)
Offline Максим Коллегин  
#3 Оставлено : 24 сентября 2014 г. 10:03:05(UTC)
Максим Коллегин

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

Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,408
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 37 раз
Поблагодарили: 722 раз в 626 постах
В свете пунктов 1 и 2 проверять лицензию на старте бессмысленно. И апи нет пока.
Квалифицированность определяется аттестованностью выдавшего УЦ.
Про стандарты CAdES можно почитать в википедии.
Знания в базе знаний, поддержка в центре поддержки
thanks 1 пользователь поблагодарил Максим Коллегин за этот пост.
chris_kgauitc оставлено 25.09.2014(UTC)
Offline chris_kgauitc  
#4 Оставлено : 25 сентября 2014 г. 2:52:11(UTC)
chris_kgauitc

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

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

Сказал(а) «Спасибо»: 6 раз
to Андрей: я до этого уже находил ваш пост http://www.cryptopro.ru/...ts&m=49521#post49521 с таким кодом.
К сожалению, для браузеров Gecko это не подходит. Выдает ошибку: Class not registered (0x80040154).
Но в IE - работает. За наводку спасибо.

to maxdm: спасибо, гугление по CAdES тут же выдало ссылку на хабр http://habrahabr.ru/post/214295/.
Очень полезный материал. Просвящаюсь.
(Хе.. судя по реакции зала - большинство хабрасообщества вообще далеки от криптографии)

Пользуясь случаем хочу спросить у разработчиков:
- почему некоторые объекты (например CAPICOM.Store) поддерживаются плагином только в 64-битном режиме?
- почему функция display() для подписи не отрабатывает (не определена) в браузерах Gecko (только IE) ?

Отредактировано пользователем 25 сентября 2014 г. 3:55:44(UTC)  | Причина: Не указана

Offline Андрей Писарев  
#5 Оставлено : 25 сентября 2014 г. 3:23:31(UTC)
Андрей *

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

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

Сказал «Спасибо»: 582 раз
Поблагодарили: 2311 раз в 1810 постах
Автор: chris_kgauitc Перейти к цитате

Пользуясь случаем хочу спросить у разработчиков:
- почему некоторые объекты (например CAPICOM.Store) поддерживаются плагином только в 64-битном режиме?


Документация
Цитата:

Замечание:
В CAdESCOM данный объект доступен только на платформе x64. На платформе win32 следует использовать объект Microsoft CAPICOM.Store
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#6 Оставлено : 25 сентября 2014 г. 3:34:28(UTC)
Андрей *

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

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

Сказал «Спасибо»: 582 раз
Поблагодарили: 2311 раз в 1810 постах
Автор: chris_kgauitc Перейти к цитате
to Андрей: я до этого уже находил ваш пост http://www.cryptopro.ru/...ts&m=49521#post49521 с таким кодом.
К сожалению, для браузера это не подходит. Выдает ошибку: Class not registered (0x80040154).



Если IE - не браузер, то да, все верно.Anxious

В IE - все нормально показывает:
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#7 Оставлено : 25 сентября 2014 г. 3:39:04(UTC)
Андрей *

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

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

Сказал «Спасибо»: 582 раз
Поблагодарили: 2311 раз в 1810 постах
Автор: chris_kgauitc Перейти к цитате
to Андрей: я до этого уже находил ваш пост http://www.cryptopro.ru/...ts&m=49521#post49521 с таким кодом.
К сожалению, для браузера это не подходит. Выдает ошибку: Class not registered (0x80040154).



Какая версия КриптоПРО CSP?
Или не установлен?
Техническую поддержку оказываем тут
Наша база знаний
Offline chris_kgauitc  
#8 Оставлено : 25 сентября 2014 г. 4:01:58(UTC)
chris_kgauitc

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

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

Сказал(а) «Спасибо»: 6 раз
to Андрей: Не ожидал, что Вы в онлайне в такое врямя :-) У вас разве часовой пояс не +3? Это у меня-то сейчас утро :-)

Ошибка происходит в браузерах Gecko (Mozilla, Chrome, Opera) при попытке создать объект "CPCSPLicense.CPCSPLicense", что само сабой разумеется, т.к. это ActiveX, и компонент CAdESCOM не экспортирует/эмулирует его интерфейс.

По поводу документации: "В CAdESCOM данный объект доступен только на платформе x64. На платформе win32 следует использовать объект Microsoft CAPICOM.Store"
Вот я и хотел спросить: почему? Может быть дело в каких-то архитектурных ограничениях.
Offline chris_kgauitc  
#9 Оставлено : 25 сентября 2014 г. 4:07:58(UTC)
chris_kgauitc

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

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

Сказал(а) «Спасибо»: 6 раз
to Андрей: кстати, в приведенном образце кода (взятом из документации) серьезная ошибка:

function ObjCreator(name) {
switch (navigator.appName) {
case 'Microsoft Internet Explorer':
return new ActiveXObject(name);
default:
var userAgent = navigator.userAgent;
if (userAgent.match(/Trident\/./i)) { // IE10, 11
return new ActiveXObject(name);
}
}
}

Дело в том, что начиная с, кажется, IE10, navigator.appName содержит надпись, характерную для других браузеров.
Правильнее будет сделать так:

function ObjCreator(name) {
try {
if ( Object.hasOwnProperty.call(window, "ActiveXObject") ) {
return new ActiveXObject(name);
}
else
{
// но до этого проверить, что плагин к странице подключен
document.getElementById('cadesplugin').CreateObject(name)
}
}
catch(e)
{
// обработка ошибок
}
}
Offline Андрей Писарев  
#10 Оставлено : 25 сентября 2014 г. 5:26:16(UTC)
Андрей *

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

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

Сказал «Спасибо»: 582 раз
Поблагодарили: 2311 раз в 1810 постах
Автор: chris_kgauitc Перейти к цитате
to Андрей: Не ожидал, что Вы в онлайне в такое врямя :-) У вас разве часовой пояс не +3? Это у меня-то сейчас утро :-)


У меня за окном UTC+04, в онлайне пока еще.

Автор: chris_kgauitc Перейти к цитате

Ошибка происходит в браузерах Gecko (Mozilla, Chrome, Opera) при попытке создать объект "CPCSPLicense.CPCSPLicense", что само сабой разумеется, т.к. это ActiveX, и компонент CAdESCOM не экспортирует/эмулирует его интерфейс.


CPCSPLicense - все верно, ограничение - только "IE".

CAdESCOM -> может быть там и появится API для доступа к КриптоПРО PKI (чтение типа лицензии\срока).

Автор: chris_kgauitc Перейти к цитате

По поводу документации: "В CAdESCOM данный объект доступен только на платформе x64. На платформе win32 следует использовать объект Microsoft CAPICOM.Store"
Вот я и хотел спросить: почему? Может быть дело в каких-то архитектурных ограничениях.


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