Здравствуйте! Плаваю в базовых понятиях и в механизме подписания документов с помощью ЭЦП. Хотел бы разобраться, опишу все что я понял по пунктам. Уверен, что мои мысли неправильны, поэтому прошу вас поправить меня. Спасибо!
- Существует 2 вида ЭЦП: А)RSA - физ.лица, ИП Б) GOST - юр.лица
- Есть комплект разработчика, в котором есть библиотеки(того или иного языка), где описаны методы взаимодействия с ЭЦП.
- Успешно подписав документ с помощью комплекта разработчика, понял, что ЭЦП и пароль я указывал на уровне кода.
- Принимать ЭЦП пользователей на сервер нельзя согласно закону об эцп: Закрытые ключи электронной цифровой подписи не могут быть переданы другим лицам.
- Отсюда следует, что единственным вариантом подписания c RSA сертификатами - является взаимодействие с NCALayer
- Для подписания файлов с GOST сертификатом, можно использовать NCALayer либо комплект разработчика. Если использовать комплект разработчика, первое что приходит в голову - хранить сертификаты в сервисе, где будет проходить непосредственно подписание. Но здесь конфликтует пункт 4.
- Для взаимодействия веб-приложения с NCALayer необходимо создать и зарегистрировать Модуль (чтобы открывалось окно выбора сертификата в NCALayer).