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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Илья Кузьмин  
#1 Оставлено : 15 сентября 2020 г. 15:09:39(UTC)
Илья Кузьмин

Статус: Участник

Группы: Участники
Зарегистрирован: 17.06.2020(UTC)
Сообщений: 18

Сказал(а) «Спасибо»: 2 раз
Здравствуйте!
Возник вопрос по поводу сертификатов в CAdESSignature

для этой подписи можно задать сертификаты с помощью setCertificateStore и также добавить сертификат в addSigner
Как я понимаю с помощью двух этих параметров для подписанта создается цепочка. То есть в setCertificateStore нужно передавать корневые УЦ а для подписанта его личный? Если так, то откуда берутся сертификаты если не передавать их в setCertificateStore? Будут ли они браться с cacerts и из андроидного AndroidCACerts? или эти сертификаты в любом случае будут использоваться для проверки?
Offline Евгений Афанасьев  
#2 Оставлено : 16 сентября 2020 г. 11:22:13(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 14 раз
Поблагодарили: 498 раз в 479 постах
Здравствуйте.
С помощью setCertificateStore можно добавить в подпись любые сертификаты. С помощью параметра addCertificateChain в addSigner можно добавить построенную цепочку сертификатов подписанта в подпись.
Нужные корневые сертификаты должны быть либо установлены в security/cacerts внутри приложения (файл создается при инициализации CSPConfig.init и содержит порядка 30 корневых сертификатов, cacerts - хранилище формата BKS с паролем changeit, в ACSPClientApp есть пример работы с ним), либо руками в хранилище доверенных сертификатов пользователя в устройстве: ориентировочно "Настройки->Безопасность->Доверенные сертификаты" (т.е. AndroidCAStore). CAdES/XAdES ищет корневые и в cacerts, и в AndroidCAStore.

Отредактировано пользователем 16 сентября 2020 г. 11:23:10(UTC)  | Причина: Не указана

Offline Илья Кузьмин  
#3 Оставлено : 16 сентября 2020 г. 11:54:25(UTC)
Илья Кузьмин

Статус: Участник

Группы: Участники
Зарегистрирован: 17.06.2020(UTC)
Сообщений: 18

Сказал(а) «Спасибо»: 2 раз
Автор: Евгений Афанасьев Перейти к цитате
Здравствуйте.
С помощью setCertificateStore можно добавить в подпись любые сертификаты. С помощью параметра addCertificateChain в addSigner можно добавить построенную цепочку сертификатов подписанта в подпись.
Нужные корневые сертификаты должны быть либо установлены в security/cacerts внутри приложения (файл создается при инициализации CSPConfig.init и содержит порядка 30 корневых сертификатов, cacerts - хранилище формата BKS с паролем changeit, в ACSPClientApp есть пример работы с ним), либо руками в хранилище доверенных сертификатов пользователя в устройстве: ориентировочно "Настройки->Безопасность->Доверенные сертификаты" (т.е. AndroidCAStore). CAdES/XAdES ищет корневые и в cacerts, и в AndroidCAStore.


То есть возможности поменять сторы для проверки подписи нет? Какая практическая ценность добавления любых сертификатов? Для подписанта я представляю а вот вообще любых не совсем
Offline Евгений Афанасьев  
#4 Оставлено : 16 сентября 2020 г. 13:44:56(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 14 раз
Поблагодарили: 498 раз в 479 постах
Автор: Илья Кузьмин Перейти к цитате
То есть возможности поменять сторы для проверки подписи нет?

Да. Аналогично компоненты CSP CAdES-подписи используют фиксированные ROOT, CA, MY.


Автор: Илья Кузьмин Перейти к цитате
Какая практическая ценность добавления любых сертификатов?

Эта функция появилась раньше параметра для включения цепочки в подпись. Например, вам надо добавить промежуточные сертификаты, или сертификаты для службы штампов.

Отредактировано пользователем 16 сентября 2020 г. 13:46:17(UTC)  | Причина: Не указана

Offline Илья Кузьмин  
#5 Оставлено : 16 сентября 2020 г. 13:57:36(UTC)
Илья Кузьмин

Статус: Участник

Группы: Участники
Зарегистрирован: 17.06.2020(UTC)
Сообщений: 18

Сказал(а) «Спасибо»: 2 раз
Автор: Евгений Афанасьев Перейти к цитате
Автор: Илья Кузьмин Перейти к цитате
То есть возможности поменять сторы для проверки подписи нет?

Да. Аналогично компоненты CSP CAdES-подписи используют фиксированные ROOT, CA, MY.


Автор: Илья Кузьмин Перейти к цитате
Какая практическая ценность добавления любых сертификатов?

Эта функция появилась раньше параметра для включения цепочки в подпись. Например, вам надо добавить промежуточные сертификаты, или сертификаты для службы штампов.


А если не добавлять промежуточные сертификаты или сертификаты служб штампов то что будет использоваться для проверки?
Offline Евгений Афанасьев  
#6 Оставлено : 16 сентября 2020 г. 14:46:02(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 14 раз
Поблагодарили: 498 раз в 479 постах
Вообще, для проверки подписи используются сертификаты:
* из подписи (если есть)
* из verify(<certs>) метода (если их туда передали)
* из хранилища доверенных корневых сертификатов (cacerts и AndroidCAStore) с разделением на корневые и другие.
Если подпись - X Long Type 1, то полный комплект сертификатов будет в атрибутах подписи.

Отредактировано пользователем 16 сентября 2020 г. 14:46:46(UTC)  | Причина: Не указана

RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.