КриптоПро | Квалифицированная электронная подпись в облаке как она есть

КриптоПро | Квалифицированная электронная подпись в облаке как она есть ЭЦП

Что такое квалифицированная электронная подпись в облаке

Для целей данной статьи, а также других научно-популярных и практических дискурсов об облачной электронной подписи предлагается использовать следующее определение.

Электронная подпись в облаке (облачная электронная подпись) – это вычислительная система, предоставляющая через сеть доступ к возможностям создания, проверки ЭП и интеграции этих функций в бизнес-процессы других систем.

В соответствии с данным определением, для облачной электронной подписи может использоваться в том числе и локальное средство ЭП. Например, используя КриптоПро DSS Lite, пользователь через веб-браузер может подписывать электронный документ с помощью средства ЭП, установленного на его оконечном устройстве (персональный компьютер или планшет).

В подобной системе ключ подписи остаётся у владельца и вопросы безопасности решаются с помощью стандартного набора средств, известного в мире «традиционной ЭП». Если хотите, можно назвать это облачной ЭП с локальным средством ЭП.

Другой вариант облачной ЭП получается при использовании средства ЭП, размещённого в облаке. Для удобства дальнейшего изложения назовём такую схему полностью облачной ЭП, чтобы отличать её от предыдущей. Эта схема регулярно вызывает жаркие дискуссии среди специалистов, поскольку подразумевает передачу самого ключа подписи «в облако». Данная же статья призвана прояснить ряд вопросов, связанных с безопасностью полностью облачной ЭП.

Отдельные почтовые клиенты с российской криптографией

Отдельные почтовые клиенты с российской криптографией позволяют реализовать защиту переписки, используя электронную подпись и шифрование письма для абонента/группы абонентов (S/MIME). Данное решение удобно использовать в системах, построенных по принцу «точка-точка», в которых обмен информацией происходит непосредственно между абонентами, а сервер при этом используется только для маршрутизации сообщений.

ПлатформыСемейство Windows, GNULinux, OS X, iOS, Android
Алгоритмы и криптографические протоколыЭЦП, шифрование, хэш-функция, имитозащита, HMAC, VKO, TLS
Интеграция с PKIX.509, PKCS#10, CMS, CRL
Механизмы ЭЦПВызов из JavaScript встроенных в браузер функций
TLS-ГОСТВстроен в библиотеку и поддерживается браузером
Форматы защищенных сообщенийPKCS#7, CMS
Интеграция с браузером100%
Мобильные платформыiOS, Android
Хранилища ключейБраузерное хранилище, USB-токены
Взаимодействие с USB-токенамиХранилище ключей и сертификатов
Использование аппаратной реализации алгоритмов
ИнсталляцияПрограмма установки, в целом, не требуются права системного администратор
Portable. Например, запуск браузера с FLASH-памяти USB-токена
Примеры (ГОСТ)Mozilla ThunderBird от Лисси
DiPost от Фактор ТС

Javascript


Некоторое время назад на Хабре появилась статья, автор которой реализовал многие криптографические форматы непосредственно на JavaScript

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

Java-апплеты

Одним из вариантов использования СКЗИ в браузере является их интеграция в Java-апплеты.

В ряде случаев СКЗИ и криптографические библиотеки не требуют установки и представляют собой нативную библиотеку. В этом случае возможна ее интеграция непосредственно «внутрь» апплета и вызов функций СКЗИ через механизм JNI. При этой схеме библиотека будет инсталлирована в профайл пользователя при первой загрузке Java-апплета в браузере и ее отдельной инсталляции не потребуется.


Другим вариантом является написание Java-апплета, который вызывает предустановленное в системе СКЗИ (CSP, JCP и др.)

Более подробно пример подобной реализации, основанный на использовании Рутокен ЭЦП и OpenSSL, описан в статье

Аутентификация в приложении mydss #

Следующим действием нам потребуется пройти Аутентификацию. Потребуется подтвердить операцию с помощью установленного приложения MyDss. Запустите приложение MyDss на смартфоне, и в открывшемся запросе нажимаем Подтвердить.

Конечным результатом успешной авторизации, должно стать уведомление Установка сертификатов завершилась успехом.

На этом установка и настройка облачной электронной подписи закончена.

Купить Электронную Подпись для любых целей вы можете в нашей компании. Срок выдачи один рабочий день.

Европейский путь

В октябре 2022 года Европейский Комитет по Стандартизации (CEN) одобрил техническую спецификацию CEN/TS 419241 «Security Requirements for Trustworthy Systems Supporting Server Signing». В этом документе приводятся требования и рекомендации к серверу электронной подписи, предназначенному для создания, в том числе, квалифицированных подписей.

Хочется отметить, что уже сейчас КриптоПро DSS в полном объёме соответствует требованиям данной спецификации в наиболее сильном варианте: требованиям Уровня 2, предъявляемым для формирования квалифицированной электронной подписи (в терминах европейского законодательства).

Одним из основных требований Уровня 2 является поддержка строгих вариантов аутентификации. В этих случаях аутентификация пользователя происходит напрямую на сервере подписи – в противоположность допустимой для Уровня 1 аутентификации в приложении, которое от своего имени обращается к серверу подписи. Все методы аутентификации, поддерживаемые КриптоПро DSS, удовлетворяют данному требованию Уровня 2.

В соответствии с этой спецификацией, пользовательские ключи подписи для формирования квалифицированной ЭП должны храниться в памяти специализированного защищенного устройства (криптографический токен, HSM). В случае КриптоПро DSS таковым устройством является программно-аппаратный криптографический модуль КриптоПро HSM – сертифицированный ФСБ России по уровню KB2 как средство ЭП.

Аутентификация пользователя на сервере электронной подписи для выполнения требований Уровня 2 обязана быть как минимум двухфакторной. КриптоПро DSS поддерживает широкий, постоянно пополняемый спектр методов аутентификации, в том числе и двухфакторных.

Помимо привычных криптографических токенов в качестве средства аутентификации может использоваться и специализированное приложение на смартфоне, такое как КриптоПро AirKey, и генераторы одноразовых паролей (OTP-токены). В документе CEN эти методы также упомянуты.

Ещё одним перспективным способом аутентификации по Уровню 2 может стать использование криптографического приложения на SIM-карте в телефоне. По нашему мнению, данный вариант использования SIM-карт с криптографией наиболее реален, поскольку построение функционально законченного СКЗИ (или средства ЭП) по новым требованиям ФСБ на базе только лишь SIM-карты вряд ли возможно.

Рассматриваемая техническая спецификация также допускает использование сервера электронной подписи для формирования подписей сразу для некоторого набора документов. Данная возможность может быть полезна при подписании большого массива однородных документов, отличающихся лишь данными в нескольких полях.

В документе CEN содержится также ряд требований к формированию, обработке, использованию и удалению пользовательского ключевого материала, а также к свойствам внутренней ключевой системы сервера электронной подписи и к аудиту. Эти требования полностью и даже «с запасом» покрываются требованиями, предъявляемыми к средствам ЭП класса KB2, по которому сертифицирован отвечающий за данные вопросы ПАКМ «КриптоПро HSM».

Замена адреса dss сервера #

  • Необходимо поменять текст в строке Сервер авторизации на адрес вашего сервера DSS(Адрес можно уточнить у вашего УЦ).
  • Так жеизмените текств строке Сервер DSS на адрес предоставленный вашим УЦ.
  • Нажимаем на кнопку Установить сертификаты.

На базе nss

На картинке представлена архитектура решения, реализованная в проекте по расширению NSS aToken.

СпецификацияNSS c использованием PKCS#11-токенов, программных и аппаратных
ПлатформыСемейство Windows, GNULinux, OS X, iOS, Android
Алгоритмы и криптографические протоколыЭЦП, шифрование, хэш-функция, имитозащита, HMAC, VKO, TLS
Интеграция с PKIX.509, PKCS#10, CMS, CRL
Механизмы ЭЦПВызов из JavaScript встроенных в браузер функций
TLS-ГОСТВстроен в библиотеку и поддерживается браузером
Форматы защищенных сообщенийPKCS#7, CMS
Интеграция с браузером100%
Мобильные платформыiOS, Android
Хранилища ключейБраузерное хранилище, USB-токены
Взаимодействие с USB-токенамиХранилище ключей и сертификатов
Использование аппаратной реализации алгоритмов
ИнсталляцияПрограмма установки, в целом, не требуются права системного администратор
Portable. Например, запуск браузера с FLASH-памяти USB-токена
Примеры (ГОСТ)Mozilla FireFox, Chromium от Лисси
Проект atoken от R-Альфа (Mozilla FireFox)
КриптоFox (PKCS11-токен на базе КриптоПро CSP)

Проблемы:


Плюсы:

Настольные криптографические приложения

Класс приложений, которые предоставляют законченный оконный пользовательский интерфейс для проведения клиентских криптоопераций. Как правило, используют некоторое СКЗИ в качестве криптоядра.

Операции:

Примеры:

Настройка криптопро csp 5.0 #

В операционной системе Windows: Нажимаем Пуск , переходим в папку Крипто-Про и выбираем пункт Инструменты Крипто-Про.

Далее переходим в раздел Облачный провайдер.

Настройка приложения mydss #

Запустите установленное приложение MyDss. Для начала работы вам предложат от сканировать QR-код. Приложение отправит запрос на доступ к камере телефона, нажмите Разрешить. Возьмите бланк сертификата, выданного вам в УЦ и отсканируйте напечатанный QR-код.

Укажите имя сохраняемого ключа(Оно может быть любым, например: «Облачная подпись для Торгов»). Так же вам потребуется выбрать способ подтверждения (без пароля, пароль, отпечаток пальца, face ID). После всех этих действий приложение будет готово к работе.

Начнём с главного

Основной головной болью при переводе любой ИТ-системы «в облако» становится боль «безопасников» (и помогающих им юристов), связанная с передачей «туда» информации для обработки или хранения.

Если раньше эта информация не покидала некоторого защищённого периметра, и можно было сравнительно легко обеспечить её конфиденциальность, то в облаке само понятие периметра отсутствует. При этом ответственность за обеспечение конфиденциальности информации в каком-то смысле «размывается» между её владельцем и поставщиком облачных услуг.

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

В настоящее время проводятся сертификационные испытания нашего решения КриптоПро DSS. Это сервер облачной ЭП, хранящий ключи и сертификаты пользователей и предоставляющий аутентифицированный доступ к ним для формирования электронной подписи.

Оба упомянутых выше аспекта безопасности облачной ЭП в частности являются предметом исследований, проводимых в ходе испытаний КриптоПро DSS. В то же время, стоит отметить, что существенная часть этих вопросов уже рассмотрена в рамках тематических исследований СКЗИ «ПАКМ КриптоПро HSM», на котором основывается КриптоПро DSS.

В нашей стране пока слабо проработаны организационно-правовые аспекты применения облачной ЭП, поэтому в данной статье мы рассмотрим КриптоПро DSS с точки зрения требований к серверу подписи, разработанных Европейским Комитетом по Стандартизации (CEN).

Наше будущее

Решение КриптоПро DSS поддерживает широкий набор методов аутентификации, среди которых для каждой задачи возможно подобрать подходящий. Надёжность наиболее безопасных из них соответствует самым строгим критериям европейских требований CEN/TS 419241 и, как мы рассчитываем, в недалёком будущем будет подтверждена сертификатом соответствия ФСБ России.

Алексей Голдбергс,

 заместитель технического директора

ООО «КРИПТО-ПРО»

Станислав Смышляев, к.ф.-м.н.,

начальник отдела защиты информации

ООО «КРИПТО-ПРО»

Павел Смирнов, к.т.н.,

заместитель начальника отдела разработок

ООО «КРИПТО-ПРО»

Облачная подпись


Концепция облачной подпись предполагает хранение закрытого ключа и выполнение процедуры подписи/шифрования данных непосредственно на сервере.

Для безопасного применения облачной подписи требуется решить задачу строгой аутентификации клиента при доступе к его закрытому ключу и задачу надежного хранения закрытого ключа на сервере. Примером подобного решения может служить КриптоПро DSS, который в качестве одного из вариантов аутентификации поддерживает Рутокен WEB (строгая двухфакторная аутентификация), а для хранения закрытого ключа использует HSM.

Отдельные библиотеки

BouncyCastle — это open source библиотека, в которой реализована своя система криптографических классов для платформы Microsoft.NET. В библиотеке поддерживаются как базовые криптографические алгоритмы ГОСТ 28147-89, ГОСТ Р 34.10-2001, ГОСТ Р 34.11-94, так и криптографические форматы PKCS#7/CMS, PKCS#10, X.

Отдельные браузеры с российской криптографией

Браузеры, созданные на базе open source проектов Mozilla FireFox и Chromium, используют в качестве криптоядра NSS или OpenSSL. OpenSSL поддерживает российские криптоалгоритмы. Для NSS также существуют разработки, которые обеспечивают поддержку российских криптоалгоритмов. Некоторое время назад на рынке появились полнофункциональные браузеры с поддержкой российской криптографии.

Подобное решение обладает большим, на данный момент невостребованным, потенциалом, так как позволяет создавать защищенные стандартные WEB-клиенты для систем с высокими требованиями к безопасности. Еще одним плюсом подобного браузера является его «портабельность».

С учетом существования USB-токенов с защищенной FLASH-памятью созданы безопасные решения, в котором наиболее критические операции с закрытом ключом осуществляются на «борту» USB-токена, а сам браузер хранится в его защищенной от модификации FLASH-памяти. Подобное решение кроме высокого уровня безопасности является очень удобным в применении.

Расширения классов

В платформе существует набор криптографических классов, в которых предусмотрены механизмы расширения сторонними алгоритмами. Наиболее известным на рынке решением по расширению платформы Microsoft.NET российскими криптоалгоритмами является продукт КриптоПро. NET, представляющий собой надстройку над КриптоПро CSP.


Установка КриптоПро.NET позволяет использовать российские криптоалгоритмы, например,

в WEB-сервисах на базе ASP.NET, SOAP-сервисах, в клиентских браузерных приложениях MS.Silverlight.

ПлатформыMicrosoft.NET 2.0 и старше
Алгоритмы и криптографические протоколыЭЦП, шифрование, хэш-функция, имитозащита, HMAC, VKO, TLS, SOAP
Интеграция с PKIX.509, PKCS#10, CMS, CRL
Механизмы ЭЦПНабор классов. Есть полностью “управляемые” реализации. Есть реализации на базе Crypto API 2.0 и CNG
Механизмы аутентификацииклиентская аутентификация в рамках TLS
аутентификация в SOAP-сервисах
собственные механизмы аутентификации на базе ЭЦП случайных данных
TLS-ГОСТВстраивание
Форматы защищенных сообщенийPKCS#7, CMS, XMLSec, SOAP (OASIS Standard 200401), S/MIME
Интеграция с браузеромЭЦП и шифрование через MS Silverlight
Хранилища ключейРеестр, UBS-токены
Взаимодействие с USB-токенамиХранилище ключей и сертификатов
Использование аппаратной реализации алгоритмов
Через Crypto API 2.0
ПриложенияMicrosoft Lync 2022, Microsoft Office Forms Server 2007 и Microsoft SharePoint 2022, Microsoft XPS Viewer
ИнсталляцияMicrosoft. NET включен в состав Windows, начиная с Windows Vista. Поддержка российских криптоалгоритмов требует установки дополнительного ПО
Примеры (ГОСТ)КриптоПро. NET (на базе КриптоПро CSP)

Средства формирования доверенной среды

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

На последнем способе формирования ДС хотелось бы остановиться подробнее.

Компанией «Код безопасности» предложен интересный продукт Jinn, который позволяет эмулировать доверенную среду как на многоядерном, так и на одноядерном компьютере. Основной идеей данного решения является то, что доверенная среда выполняется на логических ядрах, на которых не выполняется сама клиентская ОС.

Для случая многоядерного компьютера доверенная среда функционирует на 2 ядрах, на остальных ядрах функционирует клиентская ОС. Доверенная среда загружается перед загрузкой клиентской ОС либо с флешки, либо с электронного замка Соболь. Решение гарантирует, что клиентская ОС (а следовательно и потенциальное вредоносное ПО) не управляет поведением доверенной среды.

По сути, в решении две ОС разнесены по различным ядрам одного компьютера и между ними настроен канал передачи данных. При этом одна из ОС (доверенная среда), спроектирована таким образом, что варианты ее заражения минимизированы и ее функционал служит исключительно цели безопасной визуализации данных и их пописи.

Для доступа к доверенной среде из клиентской ОС используется специальная библиотека (COM-объект). При подписи платежки через данную библиотеку Jinn перехватывает управление графическим адаптером и визуализирует на нем платежку. Если представленная информация верна, то после подтверждения пользователя Jinn подписывает платежку и возвращает управление клиентской ОС.

Установка на смартфоне приложения mydss #

Запускаем приложение Play Маркет или Apple store в зависимости от типа вашего устройства. В форме поиске, введите myDSS и нажмите кнопку Установить. После окончания установки нажимаем на кнопку Открыть.

Установка скзи криптопро csp 5 #

Для начала работы с вашей облачной подписью необходима установленная ОС Windows 7, 8,8.1 или 10. Необходимо проверить, что у вашей Операционной Системы установлены все последние обновления. Для этого запустите Центр Обновления Windows и произведите поиск и обновления компонентов Windows.Основным элементом для работы с облачной подписью является установленное и настроенное КриптоПро CSP 5.0.

Оцените статью
ЭЦП64
Добавить комментарий