(2015-08-24 20:17:45 отредактировано Exitoso)

РутокенЭЦП+PHP+РутокенПлагин

День добрый!

Насколько я понял, на РутокенВеб нет никаких сертификатов. Мне хотелось бы использовать в своем облачном сервисе токен с сертификатом ФСБ.

1. Есть ли какие-нибудь PHP примеры работы с РутокенЭЦП, на подобии тех, которые используются для РутокенВеб?
2. Есть ли возможность подружить PHP с РутокенЭЦП для аутентификации?
3. Есть ли в РутокенЭЦП возможность кеширования пин-кода, после первого ввода?

Re: РутокенЭЦП+PHP+РутокенПлагин

Добрый день. Да, Рутокен Web является несертифицированным продуктом, для онлайн-аутентификации.

Если вас интересует полностью сертифицированное решение, то мог посоветовать вам связку Рутокен Плагин + Рутокен ЭЦП.
https://www.rutoken.ru/products/all/rutoken-plugin/


Рутокен Плагин создан на тех же принципах, что и плагин для Рутокен Web, но API отличается своей структурой, т.к. в нем поддерживается более широкий функционал работы с криптографией и электронной подписью.
Он также успешно будет работать под PHP, но, к сожалению, все имеющиеся примеры на демоплощадках реализованы на ASP .Net. В настоящее время это "Интернет-банк", "Личный кабинет" и "Центр регистрации". Площадки находятся здесь: http://demo.rutoken.ru/.
Пример кеширования PIN-кода представлен на площадке "Личный кабинет".

С уважением, Алексей Лазарев.

(2015-08-25 15:34:56 отредактировано Exitoso)

Re: РутокенЭЦП+PHP+РутокенПлагин

Благодарю за развернутый ответ.

1. Насколько я понимаю, методы аутентификации одинаковые при использовании РутокенВеб и РутокенЭЦП?
Отличие состоит только в отсутствии сертификата на РутокенВеб?

2. Скажите, а где можно найти исходники на ASP.Net для РутокенПлагин+РутокенЭЦП?

3. Разве PHP-классы написанные для РутокенВеб, не подойдут для РутокенЭЦП?

Алексей Лазарев пишет:

Добрый день. Да, Рутокен Web является несертифицированным продуктом, для онлайн-аутентификации.

Если вас интересует полностью сертифицированное решение, то мог посоветовать вам связку Рутокен Плагин + Рутокен ЭЦП.
https://www.rutoken.ru/products/all/rutoken-plugin/


Рутокен Плагин создан на тех же принципах, что и плагин для Рутокен Web, но API отличается своей структурой, т.к. в нем поддерживается более широкий функционал работы с криптографией и электронной подписью.
Он также успешно будет работать под PHP, но, к сожалению, все имеющиеся примеры на демоплощадках реализованы на ASP .Net. В настоящее время это "Интернет-банк", "Личный кабинет" и "Центр регистрации". Площадки находятся здесь: http://demo.rutoken.ru/.
Пример кеширования PIN-кода представлен на площадке "Личный кабинет".

С уважением, Алексей Лазарев.

(2015-08-25 17:03:59 отредактировано Алексей Лазарев)

Re: РутокенЭЦП+PHP+РутокенПлагин

1. Базовые принципы аутентификации, у обоих API, разумеется, похожи. Но на деле решение Рутокен Web работает с более примитивными объектами ключевых пар, состоящих из открытого и закрытого ключа и имени, в то время, как Рутокен плагин разрабатывался именно для поддержки сертифицированных решений с ГОСТ-криптографией. Он больше заточен на работу с PKI, сертификатами, т.е. с утвержденными регуляторами стандартами.

2. Примеры использования Рутокен Плагин есть в SDK https://www.rutoken.ru/support/download/get/?fid=40 . К сожалению, исходники серверной части для Рутокен Плагин разработчики не предоставляют.

3. Да, API Плагина Рутокен Web позволяет использовать Рутокен ЭЦП, но не позволяет работать с сертификатами. Если Вам нужно просто использовать готовый носитель одновременно и для онлайн-аутентификации Рутокен Web и для входа по сертификату в другом решении, то такая связка не тестировалась. Т.е. есть ненулевой риск попортить готовый сертификат, если работать с объектами Рутокен Web на сертифицированном токене.

С уважением, Алексей Лазарев.

(2015-08-26 12:03:27 отредактировано Exitoso)

Re: РутокенЭЦП+PHP+РутокенПлагин

Благодарю.

По сути, у меня задача достаточно простая.
Есть Web-сервер с конфиденциальными данными, пользователи работают только с сервером, между пользователями обмен данными происходит также через сервер. В такой системе УЦ по сути не нужен.
На первом этапе нужно обеспечить:
а. гарантированный доступ только тем пользователям, которым разрешен доступ
б. защитить передачу данных шифрованием

В принципе, для реализации мне достаточно Р.Web + обычный https(не гост). Однако в дальнейшем возможно придется использовать юридически валидную ЭЦП (а возможно и шифрование аппаратное и связка с openssl), и тут тогда Р.Web пролетает... да и в маркетинговых целях использование токена с сертификатом ФСБ более привлекательным кажется.

Поэтому мне хотелось бы реализовать функционал Р.Web на Р.ЭЦП+Р.Плагин, на данный момент.

1. по 3 вопросу: я говорил про PHP-класс token.php, а не про API-плагина РутокенВеб. Я собираюсь использовать Р.Плагин+Р.ЭЦП, но серверную часть хочу использовать из решения Р.Web, расположенную на https://download.rutoken.ru/Rutoken_Web … TW_PHP.zip

2. Можно как-то связаться с разработчиками (или может контакты, я сам попрошу:) ) и попросить исходники ASP.NET предоставить? ведь это же не тайна

Алексей Лазарев пишет:

1. Базовые принципы аутентификации, у обоих API, разумеется, похожи. Но на деле решение Рутокен Web работает с более примитивными объектами ключевых пар, состоящих из открытого и закрытого ключа и имени, в то время, как Рутокен плагин разрабатывался именно для поддержки сертифицированных решений с ГОСТ-криптографией. Он больше заточен на работу с PKI, сертификатами, т.е. с утвержденными регуляторами стандартами.

2. Примеры использования Рутокен Плагин есть в SDK https://www.rutoken.ru/support/download/get/?fid=40 . К сожалению, исходники серверной части для Рутокен Плагин разработчики не предоставляют.

3. Да, API Плагина Рутокен Web позволяет использовать Рутокен ЭЦП, но не позволяет работать с сертификатами. Если Вам нужно просто использовать готовый носитель одновременно и для онлайн-аутентификации Рутокен Web и для входа по сертификату в другом решении, то такая связка не тестировалась. Т.е. есть ненулевой риск попортить готовый сертификат, если работать с объектами Рутокен Web на сертифицированном токене.

С уважением, Алексей Лазарев.

Re: РутокенЭЦП+PHP+РутокенПлагин

Вам поможет вот это
http://dev.rutoken.ru/pages/viewpage.ac … d=15269905

Re: РутокенЭЦП+PHP+РутокенПлагин

И там же есть ссылка на скрипт php, который дергает тулзу openssl

Re: РутокенЭЦП+PHP+РутокенПлагин

Благодарю, но эту всю информацию я уже изучил и я говорил немного про другое... видимо плохо объясняю) Ладно, сам разберусь.

Скажите, чем отличаются ключевые пары:
A: id-GostR3410-2001-CryptoPro-A-ParamSet
B: id-GostR3410-2001-CryptoPro-B-ParamSet
C: id-GostR3410-2001-CryptoPro-C-ParamSet
XA: id-GostR3410-2001-CryptoPro-XchA-ParamSet
XB: id-GostR3410-2001-CryptoPro-XchB-ParamSet

Re: РутокенЭЦП+PHP+РутокенПлагин

Разные параметры эллиптической кривой.
В целом, вам подойдет A.

Re: РутокенЭЦП+PHP+РутокенПлагин

Скажите, а что за Открытый Ключ восстановления в РутокенWEB? Как он там появляется? Почему (и главное) он жестко связан с открытым ключом пользователя?

Re: РутокенЭЦП+PHP+РутокенПлагин

Exitoso пишет:

Скажите, а что за Открытый Ключ восстановления в РутокенWEB? Как он там появляется? Почему (и главное) он жестко связан с открытым ключом пользователя?

Это ключ для восстановления доступа к аккаунту при утрате токена.
Это закрытый ключ от пары, которая генерируется специальной утилитой.
Этот ключ связан с открытым ключом пользователя исключительно местом
хранения. Фактически этот ключ связан не с открытым ключом пользователя,
а с его учетной записью.
Подробнее см. http://developer.rutoken.ru/x/lwB6