Подпись в мобильных приложениях

Добрый день.

В настоящее время существует потребность у ИС в реализации подписания электронных документов в мобильных приложениях. Сейчас рассматривается как это лучше и правильнее сделать. Сразу скажу что не планируется хранение закрытых ключей ЭЦП в мобильных приложениях кроме mgov, так как это не безопасно.
рассматриваются следующие варианты реализации подписи в мобильных приложениях:

  1. Подписание закрытыми ключами на УДЛ по NFC, так же коммерческими смарт картами с реализацией аналогичной УДЛ. Подписание будет реализовано путем прикладываний УДЛ к смартфону который поддерживает NFC но предварительно нужно сгенерить ключи ЭЦП на УДЛ через ЦОН или из дома. До конца не известно получится ли данный вариант реализовать.
  2. Подписание, путем передачи подписываемого файла в приложение mgov и возврат обратно подписанного ЭЦП файла. В данном случае mgov выступит как nclayer на компьютере.
  3. облачная ЭЦП, но она будет платная для коммерческих ИС, цены пока нет, планируется в 2022 году реализовать. Согласно законодательства РК при каждом подписании пользователь должен ввести пароль и предоставить в камеру биометрию лица.
  4. подпись через QR код, это примерно аналогично 2 варианту, но ссылка на подписываемый файл передается в QR коде.

хотелось от сообщества получить обратную связь и их видение как сделать удобнее и безопаснее. Может кто то знает как это работает в других странах.

Добрый день, Айрат.

Для мобильных устройств на базе Android существует приложение KAZTOKEN mobile (https://kaztoken.kz/mobile/), которое эмулирует NCALayer. Приложение работает со всей линейкой устройств KAZTOKEN (токены, Type-C, карты, NFC карты). В приложении реализованы дополнительные UX функции, в частности возможность настраивать свои известные карты благодаря которой подписывать можно просто прикладывая NFC карту к мобильному устройству.

Так же не забывайте о том, что для обеспечения юридической значимости электронных документов, в соответствии с законодательством РК, необходимо выполнять проверку подписей под регистрируемыми в ИС документами в соответствии с утвержденными Правилами.

Делать это можно используя SDK НУЦ, либо упростить себе жизнь и пользоваться https://sigex.kz/support/enterprise/

Айрат, добрый день.

Я думаю, что наиболее удобный вариант, это второй с подписанием документов в mgov. По этому хотелось-бы поучаствовать в пилоте или в тестировании, этого варианта реализации ЭЦП на мобильных устройствах.

подскажите пожалуйста какие ключи используются для подписания KAZTOKEN? Это файлы полученные в НУЦ РК (rsa - auth) которыми подписываем на стационарном компьютере через NCALayer ? Например интересует смарт-карта NFC. Как эти ключи записываются туда и как их перезаписывать?

подскажите пожалуйста какие ключи используются для подписания KAZTOKEN?

Устройства KAZTOKEN поддерживаются разными УЦ, в частности поддерживаются ключи ЭЦП выпускаемые НУЦ РК (и RSA и ГОСТ).

Это файлы полученные в НУЦ РК (rsa - auth) которыми подписываем на стационарном компьютере через NCALayer ?

Нет, нужно сразу на pki.gov.kz при подаче заявки на выпуск сертификата указывать в качестве хранилища KAZTOKEN. Ключевые пары будут сформированы не в памяти ПК, а в защищенной памяти устройства. Оттуда их извлечь невозможно, таким образом обеспечивается полноценная защита закрытых ключей от копирования и компрометации.

Например интересует смарт-карта NFC. Как эти ключи записываются туда и как их перезаписывать?

Все устройства линейки KAZTOKEN работают сходим образом:

  • чтобы получить ключи ЭЦП на устройство нужно указать его в качестве хранилища при подаче заявки на выпуск;
  • на каждом устройстве может быть несколько ключевых пар и сертификатов, к примеру физического лица и юридического лица (то же физическое лицо, но уже как сотрудник юридического лица, детальнее на https://sigex.kz/blog/2021-07-28-what-is-a-corporate-digital-signature/);
  • НУЦ не ограничивает каждое физическое лицо и сотрудника юридического лица только одним действующим набором ключей ЭЦП в каждый момент времени - их может быть одновременно много, получать новые можно онлайн в личном кабинете НУЦ;
  • устройство можно отформатировать с помощью Панели управления KAZTOKEN (устанавливается в поставе Драйвера, подробности в Руководстве пользователя - https://kaztoken.kz/downloads/), после чего память устройства будет очищена и оно будет как новое;
  • отдельные сертификаты и ключи можно удалять, на сколько я помню, с помощью сервиса проверки ключа НУЦ https://nca.pki.gov.kz/service/keycheck/index.xhtml?lang=ru
1 Симпатия

Между прочим, разработчикам набор устройств KAZTOKEN для интеграции и тестирования предоставляют бесплатно, напишите мне в личку если интересно.

1 Симпатия

Здравствуйте. Подскажите пожалуйста что-нибудь известно на данный момент по этому варианту?

Добрый день,

Уже есть рабочая связка:

Протестировано, ведутся работы по внедрению в промышленные системы.

Если интересны подробности, пишите, расскажу.