Нативные библиотеки
OpenSSL-style
Спецификация | OpenSSL API — один из де-факто стандартов для СПО |
Платформы | Семейство Windows, GNU\Linux, OS X, iOS, Android |
Алгоритмы и криптографические протоколы | ЭЦП, шифрование, хэш-функция, имитозащита, HMAC, VKO; TLS |
Интеграция с PKI | X.509, PKCS#10, CMS, CRL, OCSP, TSP |
Механизмы ЭЦП | Нативный программный интерфейс, Си-style; |
Механизмы аутентификации | клиентская аутентификация в рамках TLS собственные механизмы на базе ЭЦП случайных данных |
Механизмы “гостирования” TLS | TLS с российской криптографией поддержан в библиотеке (в случае использования OpenSSL в качестве браузерного криптодвижка) TLS-прокси на базе OpenSSL (например, sTunnel) |
Форматы защищенных сообщений | PKCS#7, CMS, XMLSec (при использовании с библиотекой www.aleksey.com/xmlsec, в том числе ГОСТ), S/MIME |
Интеграция с браузером | Через TLS-прокси Через проприетарные плагины В Chromium OpenSSL один из возможных криптодвижков |
Интеграция со службой каталогов | OpenLDAP |
Мобильные платформы | iOS, Android |
Команднострочная утилита | Есть |
Хранилища ключей | Файлы, USB-токены |
Взаимодействие с USB-токенами | Хранилище ключей и сертификатов Использование аппаратной реализации алгоритмов Через PKCS#11 |
Приложения | OpenVPN, Apache, sTunnel, Nginx, Postgre SQL, postfix, dovecot Проприетарные приложения |
Интеграция с фреймворками | OpenSSL интегрирован в большое количество фреймворков (PHP, Python, .NET и др.), но ГОСТа нет. Требуется выпускать патчи к фреймворкам |
Инсталляция | Программа установки, в целом не требуются права системного администратора Копирование Запуск использующих rкриптосредства приложений с FLASH-памяти USB-токена |
Примеры (ГОСТ) | МагПро КриптоПакет ЛирССЛ OpenSSL (несерт.) OpenSSL + engine PKCS11_GOST + Рутокен ЭЦП |
- OpenSSL и его аналоги не поддерживается приложениями Microsoft;
- Необходимость патчить СПО, которое поддерживает OpenSSL, для включения ГОСТов.
- Кроссплатформенность;
- Использование в огромном количестве проектов, открытые исходники большей части проекта — выявление и устранение уязвимостей (как пример, недавнее выявление heartbleed);
- Распространяется копированием — можно делать приложения, не требующие инсталляции;
- Широкий охват приложений СПО, на базе которых можно делать защищенные сертифицированные продукты;
- Широкая интеграция в фреймворки, но при этом проблемы с ГОСТами.
PKCS#11
- Функции доступа к устройству;
- Функции записи/чтения произвольных данных;
- Функции работы с ключами (поиск, создание, удаление, импорт, экспорт);
- Функции работы с сертификатами (поиск, импорт, экспорт);
- Функции ЭЦП;
- Функции хэширования;
- Функции шифрования;
- Функции вычисления имитовставки;
- Функции выработки ключа согласования (Диффи-Хeллман);
- Функции экспорта/импорта сессионного ключа;
NSS
- Компания Лисси периодически публикует на своем сайте доступные для скачивания актуальные версии Mozilla Firefox и Mozilla Thunderbird, пересобранные с поддержкой российской криптографии. Кроме того, существует ряд продуктов этой компании, построенный на базе модифицированной библиотеки NSS — высокоуровневая библиотека NSSCryptoWrapper, плагин LCSignPlugin, десктопное приложение для ЭЦП под Android SignMaker-A.
Следует отметить, что модифицированный специалистами этой компании NSS позволяет использовать как программные PKCS#11-токены, так и аппаратные (Рутокен ЭЦП, eToken ГОСТ, JaCarta ГОСТ, MS_KEY). - Atoken — это open source проект компании R-Альфа. В рамках проекта создан программный PKCS#11-токен с российской криптографией и выложены патчи для определенной версии NSS и компонента Security Manаger, позволяющие использовать в продуктах Mozilla россиийскую криптографию (TLS, ЭЦП, PKI). Кроме того R-Альфа предлагает реализацию программного PKCS#11-токена с поддержкой сертифицированной библиотеки Агава-С под названием Агава-Про.
Проверка правильности настроек
До того как подписать документ электронной подписью, работу плагина нужно протестировать на специальной странице от разработчика. После перехода на нее в браузере с расширением «КриптоПро ЭЦП» в верхнем блоке страницы можно заметить информационный указатель. Красный цвет точки говорит о том, что дополнение неактивно. На сайте настроены специальные скрипты, которые покажут код ошибки в работе плагина.
Работу плагина можно протестировать на специальной странице от разработчика.
В составе программных файлов «КриптоПро» имеются базы, которые обеспечивают шифровку данных. Они же отвечают за проверку списков разрешенных и заблокированных сертификатов. В текстовом поле проверочной страницы нужно нажать кнопку «Подписать». Если на каком-либо этапе создания ЭЦП возникает проблема, сайт укажет на неполадку в графе «Статус».
КриптоПро .NET
Общие сведения
КриптоПро .NET — программный продукт, позволяющий использовать средство криптографической защиты информации (СКЗИ) КриптоПро CSP на платформе Microsoft .NET Framework. КриптоПро .NET является новой версией существовавшего ранее программного продукта КриптоПро Sharpei и реализует набор интерфейсов для доступа к криптографическим операциям .NET Cryptographic Provider:
- хэширование;
- подпись;
- шифрование;
- MAC;
- генерация ключей и т.д.
Кроме того КриптоПро .NET позволяет использовать стандартные классы Microsoft для высокоуровневых операций:
- разбор сертификата;
- построение и проверка цепочки сертификатов;
- обработка CMS сообщений;
- установление защищенного обмена через SSL/TLS, HTTPS и FTPS;
- XML подпись и шифрование.
КриптоПро .NET состоит из двух частей:
- КриптоПро .NET – клиентский модуль для ОС Windows;
- КриптоПро .NET SDK — комплект разработчика, состоящий из документации, примеров и библиотек.
КриптоПро .NET обеспечивает применение всех алгоритмов, реализуемых КриптоПро CSP.
Сценарии использования
- Разработка приложений и веб-сервисов, в которых требуется использование российских криптоалгоритмов, на .NET Framework;
- Подпись и проверка подписи SOAP сообщений для взаимодействия информационных систем в единой системе межведомственного электронного взаимодействия;
- Пакетная подпись документов XPS и Microsoft Office (соответствующие примеры кода входят в состав КриптоПро .NET SDK);
- Подпись и проверка подписи с использованием Microsoft XPS Viewer;
- Защита соединений Microsoft Lync 2010 с использованием российских криптоалгоритмов;
- Использование российских криптоалгоритмов в службах федеративной аутентификации (AD FS, WIF, CardSpace и т.п.).
Документация
Документация на КриптоПро .NET SDK включена в дистрибутив и доступна на портале для разработчиков cpdn.
Вопросы встраивания и использования можно обсудить на форуме.
Лицензирование
Существует два вида лицензий КриптоПро .NET:
- Клиентская лицензия – предоставляет право установки и эксплуатации одной копии продукта на компьютере под управлением клиентской версии ОС Windows (XP/Vista/7/8/8.1/10);
- Серверная лицензия – предоставляет право установки и эксплуатации одной копии продукта на компьютере под управлением серверной версии ОС Windows (2003/2003 R2/2008/2008 R2/2012/2012 R2/2016/2019).
КриптоПро .NET SDK распространяется на бесплатной основе в составе КриптоПро SDK.
Системные требования
КриптоПро .NET функционирует на платформах Microsoft Windows 2000 и выше (x86 и x64) под управлением Microsoft .NET Framework 2.0 и выше и требует установленного КриптоПро CSP версии 2.0 и выше.
Для КриптоПро .NET SDK требуется наличие на компьютере установленного КриптоПро .NET.
Как установить КриптоПро
Для загрузки и проверки электронной подписи на web-страницах с применением КриптоПро CSP понадобится плагин. Вот инструкция, как установить КриптоПро ЭЦП browser plug in для работы на электронной площадке:
Шаг 1. Скачайте актуальную версию плагина.
Шаг 2. Запустите исполняемый файл cadesplugin.exe.
Шаг 3. Подтвердите установку.
Шаг 4. Если потребуется, разрешите внести изменения путем нажатия кнопки «Да».
Шаг 5. Дождитесь окончания установки.
Шаг 6. После окончания установки нажмите «ОК».
Существует несколько версий программы. Дистрибутив приобретают:
- у производителя или у официального дилера на материальном носителе;
- на сайте производителя или официального дилера.
Из описания делаем вывод о том, с какими операционными системами совместима программа. Удостоверимся, что у нужного функционала есть сертификат.
Во вкладке «Продукты» выберем раздел «Сертификаты». Ознакомимся с описанием.
Когда появятся предпочтения по выбору определенной версии, получите представление о возможных затратах. Опубликован прайс-лист услуг получения лицензий и сертификатов компании по состоянию на август 2020. Например, годовая техническая поддержка на рабочем месте стоит 850 рублей, а установка или обновление на рабочем месте или сервере — 5500 руб.
Как получить электронную подпись
Если вы планируете использовать систему электронного документооборота, то для создания подписи надо подключиться к этой системе и получить от ее оператора учетную запись с логином и паролем. Например, подпись можно создать, зарегистрировавшись на сайтах госорганов, чтобы отправлять им сообщения и получать определенные госуслуги.
Можно использовать простую электронную подпись и без информационной системы. Для этого надо подписать с контрагентом соглашение об обмене документами по электронной почте с использованием такой подписи. В качестве подписи будет использоваться адрес электронной почты и пароль к определенному почтовому ящику.
Локальные прокси
Спецификация | — |
Платформы | Семейство Windows, GNU\Linux, OS X. На базе СПО iOS, Android |
Алгоритмы и криптографические протоколы | ЭЦП, шифрование, хэш-функция, имитозащита, HMAC, VKO; TLS |
Интеграция с PKI | X.509, PKCS#10, CMS, CRL, OCSP, TSP |
Механизмы ЭЦП | Подпись WEB-форм при прохождении траффика WEB API |
Механизмы аутентификации | клиентская аутентификация в рамках TLS |
Механизмы “гостирования” TLS | Через механизм проксирования |
Форматы защищенных сообщений | PKCS#7, CMS |
Интеграция с браузером | Через механизм проксирования |
Мобильные платформы | iiOS, Android на базе СПО sTunnel |
Хранилища ключей | Реестр, файлы, USB-токены |
Взаимодействие с USB-токенами | Хранилище ключей и сертификатов Использование аппаратной реализации алгоритмов Через PKCS#11, PC/SC, APDU |
Приложения | Браузеры WEB-сервера RDP Почтовые клиенты и сервера |
Инсталляция | Программа установки, в целом не требуются права системного администратора Копирование, запуск Запуск с FLASH-памяти USB-токена |
Примеры (ГОСТ) | МагПро КриптоТуннель Inter-PRO VPNKey-TLS LirTunnel КриптоПро sTunnel sTunnel |
- прокси должен быть запущен;
- приложение должно работать через прокси, нужно «научить» его этому;
- могут использоваться нестандартные порты, отсюда проблемы в файрволом
- если приложение «ходит» через localhost, то, например, в адресной строке браузера прописано localhost… — нестандартно
- дополнительные ограничения на разработку web-сайта — в ряде случаев использование только относительных ссылок, чтобы не «вылететь» из туннеля
- прокси сконфигурирован на проксирование конечной группы сайтов, расширение группы — это обновление клиентского конфига
- работа через внешний прокси требует дополнительного конфигурирования локального прокси, при этом могут быть проблемы с аутентификацией пользователя на внешнем прокси
- решение использует универсальную технологию, поэтому можно не бояться его устаревания;
- решение может применяться на большом числе платформ, в том числе на мобильных платформах;
- кроссбраузерность, поддержка всех WEB-серверов без модификации;
- не требует инсталляции;
- поддержка различных прикладных протоколов.
Разновидности стрижки
Существует не одна разновидность данной стрижки. Чтобы выбрать подходящую, за помощью необходимо обратиться к квалифицированному специалисту. Он сможет подобрать вариант прически «кроп», подходящий по типу лица и возрасту, к структуре волос и индивидуальному стилю. Прическа бывает следующих видов:
френч кроп. Для френч кропа желательно наличие гладкой макушки, челки аккуратно срезают по краям, выбривают волосы на висках и затылке
Особое внимание уделяют контрасту между короткими волосками снизу и более длинными, главное, чтобы он не становился резким.
гладкий. Для данного типа стрижки предусмотрена ровно подстриженная челка, которая плавно переходит к краям макушке
Отлично подходит мужчинам с гладкими и ровными волосами. Красиво смотрится у мужчин с овальным или квадратным лицом, а также асимметричная челка поможет сгладить недостатки вытянутого лица.
рваный. Отличительной особенностью является филировка челки и наличие многослойных прядей, которые все вместе образуют каскад, нависающий друг над другом. При данном виде стрижки, челка не всегда может быть рваной, подойдет также прямая, волнистая или с неоднородной структурой.
смешанный. Для создания эффекта неоднородности подстригают волосы на макушке лесенкой, подрезая прядки через одну-две. В результате волосы будут напоминать зубья пилы или уложенные перья.
Установка и настройка на разных браузерах
Расширение работает с браузерами, установленными во всех версиях Windows – от XP SP3 до 10. Исключением является EDGE. Этот браузер поставляется в наборе стандартных программ Win 10.
Для работы с электронной подписью нужно скачать и установить «КриптоПро CSP», после чего:
- Загрузить файл плагина на ПК с официального сайта. Исполняемый пакет получит название «cadesplugin.exe».
- Запустить файл и подтвердить установку в диалоговом окне.
- При запросе на разрешение изменить данные пользователя от Windows, нажать «Да».
- Дождаться завершения процесса установки плагина.
- Перезагрузить компьютер.
Для работы с электронной подписью нужно скачать “cadesplugin.exe”.
Дальнейшая настройка «КриптоПро ЭЦП Browser plug» in отличается в зависимости от используемого браузера.
Opera
Для браузера «Опера» plugin нужно скачать из официального репозитория. На странице расширения следует нажать зеленую кнопку «Добавить в Opera» в верхней правой части экрана и разрешить установку.
Страница расширения “КриптоПро ЭЦП Browser plug in” в браузере Opera.
Mozilla Firefox
Для Firefox дополнения устанавливают вручную. Предварительно нужно скачать файл на сайте разработчиков.
Алгоритм:
- Откройте браузер Mozilla, перейдите в раздел меню «Настройки».
- Слева в вертикальном подменю выберите пункт «Расширения».
- Правее заголовка раздела «Управление моими расширениями» нажмите серую кнопку с рисунком шестеренки.
- В выпадающем меню выберите пункт «Установить дополнение из файла…».
- В окне проводника укажите загруженный ранее файл дополнения «firefox_cryptopro_extension_latest.xpi».
«Яндекс Браузер»
В «Яндекс Браузере» установка проходит так же, как в «Опере». Ссылка для скачивания используется та же. Единственным отличием будет надпись на зеленой кнопке – «Add to Yandex.Browser».
Браузерные плагины
Кроссбраузерные плагины
Спецификация | — |
Платформы | Семейство Windows, GNU\Linux, OS X |
Алгоритмы и криптографические протоколы | ЭЦП, шифрование, хэш-функция, имитозащита, HMAC |
Интеграция с PKI | X.509, PKCS#10, CMS, CRL, OCSP (КриптоПро ЭЦП Browser plugin), TSP (КриптоПро ЭЦП Browser plugin) |
Механизмы ЭЦП | Программный интерфейс для использования в JavaScript |
Механизмы аутентификации | ЭЦП случайных данных |
Механизмы “гостирования” TLS | — |
Форматы защищенных сообщений | PKCS#7, CMS, XMLSec (КриптоПро ЭЦП Browser plugin), CADES (КриптоПро ЭЦП Browser plugin) |
Интеграция с браузером | ActiveX (для IE) NPAPI |
Мобильные платформы | не поддерживаются |
Хранилища ключей | Реестр, файлы, USB-токены |
Взаимодействие с USB-токенами | Хранилище ключей и сертификатов Использование аппаратной реализации алгоритмов Через PKCS#11, через CryptoAPI |
Приложения | Браузеры |
Инсталляция | Программа установки, не требуются права системного администратора |
Примеры (ГОСТ) | КриптоПро ЭЦП Browser plugin eSign-PRO КриптоПлагин Лисси Плагин портала госуслуг JC-WebClient Рутокен Плагин Плагин BSS КриптоАРМ Browser plugin |
- отсутствие TLS
- удаление NPAPI из Chromium
- браузеры на мобильных платформах не поддерживают плагины
- настройки безопасности IE могут блокировать исполнение плагина
- кроссплатформенность для плагинов на базе PKCS#11
- кроссбраузерность
- плагины на базе PKCS#11 не требуют установки СКЗИ
- прозрачное использование для пользователя
По каким причинам расширение может не работать
Неполадки в работе могут возникнуть, если какой-то из шагов инструкции по установке не был выполнен. На устройстве должны быть установлены все указанные выше программы от CryptoPro, а не только расширение в браузере. Само дополнение должно быть включено.
В разделе «Расширения» настроек браузера имеются переключатели для временного прекращения работы подпрограмм в виде кнопок с подписью или без. В Chrome используется специальный индикатор. Он будет серым, если дополнение находится в деактивированном состоянии, и синим – если оно активно.
При появлении ошибки 0x800B010A проблему нужно искать на этапе создания цепочки сертификатов, ведущих к доверенному источнику.
Неполадка возникает, если:
- отсутствует привязка к закрытому ключу;
- у программы нет связи с OCSP-сервисом или списками отзыва;
- не заданы корневые сертификаты.
Решить проблему можно установкой базовых и промежуточных электронных разрешений. Они доступны для скачивания с портала удостоверяющего центра, который издал сертификат для пользователя.
Для установки нужно:
- Нажать на загруженный файл правой кнопкой мыши и выбрать пункт «Установить сертификат».
- При выборе хранилища указать пункт «Доверенные корневые центры сертификации» для основных сертификатов и «Промежуточные центры сертификации» – для документов сервисов-посредников.
Появление сообщения об ошибке параллельно с созданием подписи указывает на проблему с проверкой перечня отозванных сертификатов. Они скачиваются на портале УЦ. Процесс установки на ПК такой же, как при работе с промежуточными сертификатами.
Ошибка 0x8007064A появляется из-за окончания периода действия лицензий для «КриптоПро CSP». Нужно обновить программу и при необходимости оформить разрешение на использование. Работа с форматом XLT1 потребует установки дополнительного ПО от разработчика, включая клиенты TSP и OCSP.
Ошибка 0x80090010 возникает из-за прекращения периода использования закрытого ключа. Проверить его можно через меню программы «Крипто-Про CSP». В разделе «Сервис» нужно выбрать команду «Протестировать» и указать контейнер с закрытым ключом. Если его срок действия уже истек, нужно получить новый.
Причиной ошибки 0x80090008 является несовместимость стандартов работы сертификата и криптопровайдера. Решить ошибку можно обновлением «КриптоПро CSP».
Новости КриптоПро
Когда переустанавливать
Если заменяете демо-программу на основную или переходите на следующую версию дистрибутива, переустановите КриптоПро. Удостоверьтесь в том, что на компьютере есть лицензии или сертификаты. Если нет, сохраните их.
Через запуск меню имеющейся программы с функциями администратора системы удалите предыдущую программу стандартным способом. Если через панель установки и удаления корректно удалить программу не получается, используйте дистрибутив. В аварийном случае удалите через утилиту КриптоПро.
Утилита подходит для всех версий CSP. Для выполнения очистки запустите файл cspclean.exe, перезагрузите компьютер и повторно запустите утилиту.
Теперь установите новый продукт.
Криптопровайдеры
Спецификация | Microsoft CSP, Microsoft CNG, CryptoAPI 1.0 -> CryptoAPI 2.0 |
Платформы | Семейство Windows. Есть порт на GNU\Linux, OS X, iOS, Android |
Алгоритмы и криптографические протоколы | ЭЦП, шифрование, хэш-функция, имитозащита, HMAC, VKO; TLS, EAP-TLS, Kerberos |
Интеграция с PKI | X.509, PKCS#10, CMS, CRL, OCSP, TSP |
Механизмы ЭЦП | Нативный программный интерфейс, Си-style; Встраивание в приложения |
Механизмы аутентификации | Клиентская аутентификация в рамках TLS. KERBEROS-аутентификация в домене Windows. Собственные механизмы аутентификации на базе ЭЦП случайных данных |
Механизмы “гостирования” TLS | Встраивание в системный TLS |
Поддержка прикладных протоколов | HTTPS, SMTPS, IMAPS, POP3S, RDP, NNTPS, FTPS, LDAPS |
Форматы защищенных сообщений | PKCS#7, CMS, XMLSec, S/MIME; CADES (КриптоПро ЭЦП), PDF signature (КриптоПро PDF), MS Office Signature (КриптоПро Office Signature) |
Интеграция с браузером | ЭЦП в IE через ActiveX CAPICOM, PKCS#10 через ActiveX XEnroll/CertEnrool TLS в IE через встраивание в SSPI-провайдер ЭЦП в различных браузерах через проприетарные плагины (КриптоПро ЭЦП Browser Plugin) TLS-прокси (КриптоПро sTunnel) Кастомные браузеры (КриптоПро Fox, Защищенный браузер Digital Design) |
Интеграция со службой каталогов | MS Active Directory; клиентская часть с произвольным LDAP-каталогом |
Мобильные платформы | Порт КриптоПро CSP на iOS, Android |
Команднострочная утилита | Есть |
Хранилища ключей | Реестр, USB-токены |
Взаимодействие с USB-токенами | Хранилище ключей и сертификатов Использование аппаратной реализации алгоритмов Через PKCS#11, PC/SC, APDU |
Приложения | IE, Microsoft Office, Microsoft Outlook Express, Microsoft Outlook, Microsoft Word/Excel, Microsoft Authenticode, Microsoft RDP, Microsoft Certification Authority, Microsoft IIS, Microsoft Exchange, Microsoft Terminal Server, Winlogon, Microsoft EFC Проприетарные приложения СПО (sTunnel, FireFox, Apache через Trusted TLS, патч для OpenVPN) Adobe Reader SAP |
Интеграция с фреймворками | Microsoft.NET (КриптоПро.NET) |
Инсталляция | Программа установки, требуются права системного администратора |
Примеры (ГОСТ) | КриптоПро CSP ViPNet CSP Signal-COM CSP Лисси CSP КриптоПро Рутокен CSP Валидата CSP |
- Отсутствие нормальной кроссплатформенности;
- Установка с правами администратора, настройка;
- Установка обновления Windows может потребовать обновления провайдера;
- Необходимость встраивания в приложения посредством модификации кода «на лету»;
- CSP — неродной интерфейс для не-Windows-приложений.
- Широкий охват Windows-приложений;
- Богатый инструментарий для разработчиков защищенных систем;
- Апробированная на большом количестве проектов технология.
Как работать с КриптоПро
Имея необходимые сведения, используем программу в демонстрационном режиме. Вот инструкция, как бесплатно пользоваться КриптоПро:
Шаг 1. Загружаем файлы через продукты и вкладку СКЗИ КриптоПро CSP.
Шаг 2. Видим сообщение об ограниченном доступе. Пройдем предварительную регистрацию и ответим на несколько вопросов.
Шаг 3. Заполняем поля и отправляем запрос на регистрацию, совершаем дальнейшие действия на следующей странице
Обратим внимание на сообщение о сроке использования демонстрационной версии: 90 дней с момента установки. Передача прав на пользование приобретается в виде лицензии
Демо-версия рассчитана на работу при первичной установке продукта. При повторной попытке загрузки не произойдет.
Шаг 4. Выбираем дистрибутив, который соответствует операционной системе компьютера, и скачиваем его. Загружается быстро. Запускаем программный файл с расширением .ехе. Программная система безопасности предупредит о том, что в компьютер внесут изменения. Если согласны, нажимаем «Установить». Загружается модуль.
После того как установили последнюю версию, работайте с программой сразу. Если загружали предыдущие версии, перезагрузите компьютер сразу или отложите это действие.