Редактирование: ЭП

Перейти к: навигация, поиск

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

Внимание: Вы работаете как анонимный пользователь. Ваш IP-адрес будет записан в историю изменений этой страницы.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия Ваш текст
Строка 1: Строка 1:
Дмитрий Державин, [http://www.basealt.ru/ Базальт СПО], [[Файл:cc-by-sa-80x15.png|link=http://ru.wikisource.org/wiki/Creative_Commons_Attribution-ShareAlike_3.0_Unported#.D0.9F.D1.80.D0.BE.D1.81.D1.82.D0.BE.D0.B9_.D0.B2.D0.B8.D0.B4]], [mailto:gost@basealt.ru обратная связь].
+
Дмитрий Державин, [http://www.basealt.ru/ Базальт СПО], версия 72, 01:08, 10 января 2017 (MSK), [[Файл:cc-by-sa-80x15.png|link=http://ru.wikisource.org/wiki/Creative_Commons_Attribution-ShareAlike_3.0_Unported#.D0.9F.D1.80.D0.BE.D1.81.D1.82.D0.BE.D0.B9_.D0.B2.D0.B8.D0.B4]], [mailto:gost@basealt.ru обратная связь].
  
 
= Краткая аннотация =
 
= Краткая аннотация =
Строка 15: Строка 15:
 
= О чём это =
 
= О чём это =
  
Статья посвящена поддержке [[ruwp:Электронная_подпись|электронной цифровой подписи]] (ЭЦП) документов в [https://www.basealt.ru/products/ ОС ALT], а также специфике применения ЭЦП в Российской федерации.
+
Статья посвящена поддержке [https://ru.wikipedia.org/wiki/Электронная_подпись электронной цифровой подписи] (ЭЦП) документов в [https://www.basealt.ru/products/ ОС ALT], а также специфике применения ЭЦП в Российской федерации.
  
Основная задача — понять, что нужно сделать «обычному пользователю»™ — не важно, физическому или юридическому лицу, — действующему на общих основаниях, чтобы, работая в ОС из [https://reestr.minsvyaz.ru/reestr/ Реестра отечественного ПО], полноценно использовать возможности [[ruwp:Электронная_торговая_площадка|электронных торговых площадок]] и [[ruwp:Портал_государственных_услуг_Российской_Федерации|порталов государственных услуг]]. Под «полноценным использованием» подразумевается в первую очередь возможность аутентификации на соответствующем сайте по сертификату, размещённому на отдельном физическом носителе, и возможность электронной подписи документов, сформированных в интерфейсе сайта.
+
Основная задача — понять, что нужно сделать «обычному пользователю»™ — не важно, физическому или юридическому лицу, — действующему на общих основаниях, чтобы, работая в ОС из [https://reestr.minsvyaz.ru/reestr/ Реестра отечественного ПО], полноценно использовать возможности [https://ru.wikipedia.org/wiki/Электронная_торговая_площадка электронных торговых площадок] и [https://ru.wikipedia.org/wiki/Портал_государственных_услуг_Российской_Федерации порталов государственных услуг]. Под «полноценным использованием» подразумевается в первую очередь возможность аутентификации на соответствующем сайте по сертификату, размещённому на отдельном физическом носителе, и возможность электронной подписи документов, сформированных в интерфейсе сайта.
  
 
На эту тему уже проведён ряд исследовательских работ, результатом которых стало заключение о том, что, в принципе, всё работает. Здесь важно понимать, что большинство исследований совместимости с порталами государственных услуг РФ современных криптосредств, работающих под ОС Linux, проводилось в лабораторных условиях. Например, при наличии специальных договорённостей между исследователем и удостоверяющим центром, выдающим сертификат. К сожалению, по результатам таких работ о реальных возможностях лиц, действующих на общих основаниях, судить сложно.
 
На эту тему уже проведён ряд исследовательских работ, результатом которых стало заключение о том, что, в принципе, всё работает. Здесь важно понимать, что большинство исследований совместимости с порталами государственных услуг РФ современных криптосредств, работающих под ОС Linux, проводилось в лабораторных условиях. Например, при наличии специальных договорённостей между исследователем и удостоверяющим центром, выдающим сертификат. К сожалению, по результатам таких работ о реальных возможностях лиц, действующих на общих основаниях, судить сложно.
Строка 29: Строка 29:
 
=== Основные механизмы ===
 
=== Основные механизмы ===
  
В основе технологии ЭЦП, официально применяемой в РФ, находится [[ruwp:%D0%98%D0%BD%D1%84%D1%80%D0%B0%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%BE%D1%82%D0%BA%D1%80%D1%8B%D1%82%D1%8B%D1%85_%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%B9|инфраструктура открытых ключей]]. Рассмотрим её работу на примере.
+
В основе технологии ЭЦП, официально применяемой в РФ, находится [https://ru.wikipedia.org/wiki/%D0%98%D0%BD%D1%84%D1%80%D0%B0%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%BE%D1%82%D0%BA%D1%80%D1%8B%D1%82%D1%8B%D1%85_%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%B9 инфраструктура открытых ключей]. Рассмотрим её работу на примере.
  
Для наглядности рассмотрим механизм действия универсальных алгоритмов, пригодных как для электронной подписи, так и для шифрования. К таким алгоритмам, в том числе, относятся принятый в качестве стандарта Интернет [[ruwp:RSA|RSA]] и российский [[ruwp:%D0%93%D0%9E%D0%A1%D0%A2_%D0%A0_34.10-94|ГОСТ Р 34.10-94]], действовавший в РФ в качестве стандарта электронной подписи до 2001 года. Более современные алгоритмы ЭЦП, к которым относятся, в том числе, действующие в настоящий момент ГОСТ Р 34.10-2001 и ГОСТ Р 34.10-2012, как правило, специализированы. Они предназначены исключительно для подписи документов, и непригодны для шифрования. Технически, отличие специализированных алгоритмов в том, что хэш в их случае не шифруется. Вместо шифрования над ним также с помощью закрытого ключа производятся другие вычисления, результат которых сохраняется в качестве подписи. При проверке подписи соответствующие комплиментарные вычисления производятся с помощью открытого ключа. Потеря универсальности в данном случае — плата за более высокую криптостойкость. Приведённый ниже пример с универсальным алгоритмом, возможно, чуть менее актуален, но, наверняка более понятен неподготовленному читателю.
+
Для наглядности рассмотрим механизм действия универсальных алгоритмов, пригодных как для электронной подписи, так и для шифрования. К таким алгоритмам, в том числе, относятся принятый в качестве стандарта Интернет [https://ru.wikipedia.org/wiki/RSA RSA] и российский [https://ru.wikipedia.org/wiki/%D0%93%D0%9E%D0%A1%D0%A2_%D0%A0_34.10-94 ГОСТ Р 34.10-94], действовавший в РФ в качестве стандарта электронной подписи до 2001 года. Более современные алгоритмы ЭЦП, к которым относятся, в том числе, действующие в настоящий момент ГОСТ Р 34.10-2001 и ГОСТ Р 34.10-2012, как правило, специализированы. Они предназначены исключительно для подписи документов, и непригодны для шифрования. Технически, отличие специализированных алгоритмов в том, что хэш в их случае не шифруется. Вместо шифрования над ним также с помощью закрытого ключа производятся другие вычисления, результат которых сохраняется в качестве подписи. При проверке подписи соответствующие комплиментарные вычисления производятся с помощью открытого ключа. Потеря универсальности в данном случае — плата за более высокую криптостойкость. Приведённый ниже пример с универсальным алгоритмом, возможно, чуть менее актуален, но, наверняка более понятен неподготовленному читателю.
  
 
==== Подпись документа ====
 
==== Подпись документа ====
  
Итак, для формирования электронной подписи в инфраструктуре открытых ключей применяется  [[ruwp:Электронная_подпись#.D0.90.D1.81.D0.B8.D0.BC.D0.BC.D0.B5.D1.82.D1.80.D0.B8.D1.87.D0.BD.D0.B0.D1.8F_.D1.81.D1.85.D0.B5.D0.BC.D0.B0|асимметричная схема]] шифрования, для которой характерно использование пары ключей. То, что зашифровано одним из этих ключей, может быть расшифровано только другим ключом пары. Один из ключей пары называется секретным, или закрытым, и хранится максимально скрытно, другой называется публичным, или открытым, и свободно распространяется — как правило, в составе сертификата. Кроме ключа в состав сертификата электронной подписи входит информация о владельце сертификата, а также подпись ключа совместно с информацией о владельце, сделанная некоей доверенной стороной. Таким образом, в составе сертификата уже находится электронная подпись, подтверждающая соответствие информации о владельце его паре ключей.
+
Итак, для формирования электронной подписи в инфраструктуре открытых ключей применяется  [https://ru.wikipedia.org/wiki/Электронная_подпись#.D0.90.D1.81.D0.B8.D0.BC.D0.BC.D0.B5.D1.82.D1.80.D0.B8.D1.87.D0.BD.D0.B0.D1.8F_.D1.81.D1.85.D0.B5.D0.BC.D0.B0 асимметричная схема] шифрования, для которой характерно использование пары ключей. То, что зашифровано одним из этих ключей, может быть расшифровано только другим ключом пары. Один из ключей пары называется секретным, или закрытым, и хранится максимально скрытно, другой называется публичным, или открытым, и свободно распространяется — как правило, в составе сертификата. Кроме ключа в состав сертификата электронной подписи входит информация о владельце сертификата, а также подпись ключа совместно с информацией о владельце, сделанная некоей доверенной стороной. Таким образом, в составе сертификата уже находится электронная подпись, подтверждающая соответствие информации о владельце его паре ключей.
  
 
Организационно эта подпись выполняется удостоверяющим центром (УЦ) — юридическим лицом, которому делегированы полномочия устанавливать и подтверждать соответствие владельца и ключа. Устанавливается соответствие после предъявления бумажных документов, а подтверждается именно путём электронной подписи, которую удобно рассмотреть как раз на примере изготовления сертификата.
 
Организационно эта подпись выполняется удостоверяющим центром (УЦ) — юридическим лицом, которому делегированы полномочия устанавливать и подтверждать соответствие владельца и ключа. Устанавливается соответствие после предъявления бумажных документов, а подтверждается именно путём электронной подписи, которую удобно рассмотреть как раз на примере изготовления сертификата.
  
У удостоверяющего центра для подписи клиентских сертификатов тоже есть пара ключей. Подтверждённая информация о владельце сертификата в виде специальным образом оформленной таблицы объединяется в один документ с его публичным ключом. Этот документ затем проходит через два преобразования. Сначала с помощью функции [[ruwp:%D0%A5%D0%B5%D1%88%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5|хэширования]] документ превращается в уникальную последовательность символов фиксированной длины (хэш). Далее полученный хэш шифруется закрытым ключом удостоверяющего центра. Результат шифрования и есть собственно электронная подпись. Она прикрепляется к подписанному документу, в данном случае — информации о пользователе и его ключу, и распространяется вместе с ним. Всё это вместе — документ с информацией о пользователе и его публичным ключом, а также подпись этого документа публичным ключом УЦ, оформляется специальным образом и называется сертификатом пользователя.
+
У удостоверяющего центра для подписи клиентских сертификатов тоже есть пара ключей. Подтверждённая информация о владельце сертификата в виде специальным образом оформленной таблицы объединяется в один документ с его публичным ключом. Этот документ затем проходит через два преобразования. Сначала с помощью функции [https://ru.wikipedia.org/wiki/%D0%A5%D0%B5%D1%88%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5 хэширования] документ превращается в уникальную последовательность символов фиксированной длины (хэш). Далее полученный хэш шифруется закрытым ключом удостоверяющего центра. Результат шифрования и есть собственно электронная подпись. Она прикрепляется к подписанному документу, в данном случае — информации о пользователе и его ключу, и распространяется вместе с ним. Всё это вместе — документ с информацией о пользователе и его публичным ключом, а также подпись этого документа публичным ключом УЦ, оформляется специальным образом и называется сертификатом пользователя.
  
 
Так же точно, как и в случае данных пользователя в составе сертификата, оформляется электронная подпись любого другого документа. Например, файла с заявлением на получение какой-нибудь услуги. Файл хэшируется, полученный хэш шифруется секретным ключом пользователя и прикрепляется к документу. В результате получается подписанный документ.
 
Так же точно, как и в случае данных пользователя в составе сертификата, оформляется электронная подпись любого другого документа. Например, файла с заявлением на получение какой-нибудь услуги. Файл хэшируется, полученный хэш шифруется секретным ключом пользователя и прикрепляется к документу. В результате получается подписанный документ.
Строка 75: Строка 75:
 
==== Токены ====
 
==== Токены ====
  
В данный момент общепринятый термин для обозначения отдельных физических устройств, используемых для хранения ключей электронной подписи — [[ruwp:%D0%A2%D0%BE%D0%BA%D0%B5%D0%BD_(%D0%B0%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8)|токен]]. Токены могут подключаться к компьютеру через интерфейсы USB, Bluetooth, или через специальные устройства-считыватели. Большинство современных токенов используют интерфейс USB. Но главное различие между типами токенов не в интерфейсе подключения. Токены можно разделить на два типа — те, которые используются фактически только как хранилище ключей, и те, которые «умеют» выполнять криптографические операции собственными средствами.
+
В данный момент общепринятый термин для обозначения отдельных физических устройств, используемых для хранения ключей электронной подписи — [https://ru.wikipedia.org/wiki/%D0%A2%D0%BE%D0%BA%D0%B5%D0%BD_(%D0%B0%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8) токен]. Токены могут подключаться к компьютеру через интерфейсы USB, Bluetooth, или через специальные устройства-считыватели. Большинство современных токенов используют интерфейс USB. Но главное различие между типами токенов не в интерфейсе подключения. Токены можно разделить на два типа — те, которые используются фактически только как хранилище ключей, и те, которые «умеют» выполнять криптографические операции собственными средствами.
  
 
Токены первого типа отличаются от обычных flash-накопителей по сути только тем, что считать с них данные можно только с помощью специального программного обеспечения. В остальном — это обычное внешнее хранилище данных, и, если мы храним в нём секретный ключ, то украсть его может любой, кто получит права на доступ к устройству и будет знать, как считать с него ключ. Такие токены называются программными и практически не дают преимуществ по сравнению с хранением ключа на диске компьютера — владелец ключа так же не может быть уверен, что ему известны все места, где хранится его секретный ключ.
 
Токены первого типа отличаются от обычных flash-накопителей по сути только тем, что считать с них данные можно только с помощью специального программного обеспечения. В остальном — это обычное внешнее хранилище данных, и, если мы храним в нём секретный ключ, то украсть его может любой, кто получит права на доступ к устройству и будет знать, как считать с него ключ. Такие токены называются программными и практически не дают преимуществ по сравнению с хранением ключа на диске компьютера — владелец ключа так же не может быть уверен, что ему известны все места, где хранится его секретный ключ.
Строка 191: Строка 191:
 
==== Алгоритмы электронной подписи ====
 
==== Алгоритмы электронной подписи ====
  
В данный момент в Российской Федерации для квалифицированной электронной подписи официально разрешено использовать только два алгоритма подписи и два алгоритма хэширования. До конца 2017 года разрешено использовать [[ruwp:%D0%93%D0%9E%D0%A1%D0%A2_%D0%A0_34.10-2001|ГОСТ Р 34.10-2001]] совместно с алгоритмом хэширования [[ruwp:%D0%93%D0%9E%D0%A1%D0%A2_%D0%A0_34.10-94|ГОСТ Р 34.11-94]]. С начала 2018 года разрешено использовать только [[ruwp:%D0%93%D0%9E%D0%A1%D0%A2_%D0%A0_34.10-2012|ГОСТ Р 34.10-2012]] и хэши по [[ruwp:%D0%93%D0%9E%D0%A1%D0%A2_%D0%A0_34.11-2012|ГОСТ Р 34.11-2012]]. В ситуациях, когда не требуется обязательное использование алгоритмов ГОСТ, можно пользоваться любыми доступными алгоритмами.
+
В данный момент в Российской Федерации для квалифицированной электронной подписи официально разрешено использовать только два алгоритма подписи и два алгоритма хэширования. До конца 2017 года разрешено использовать [https://ru.wikipedia.org/wiki/%D0%93%D0%9E%D0%A1%D0%A2_%D0%A0_34.10-2001 ГОСТ Р 34.10-2001] совместно с алгоритмом хэширования [https://ru.wikipedia.org/wiki/%D0%93%D0%9E%D0%A1%D0%A2_%D0%A0_34.10-94 ГОСТ Р 34.11-94]. С начала 2018 года разрешено использовать только [https://ru.wikipedia.org/wiki/%D0%93%D0%9E%D0%A1%D0%A2_%D0%A0_34.10-2012 ГОСТ Р 34.10-2012] и хэши по [https://ru.wikipedia.org/wiki/%D0%93%D0%9E%D0%A1%D0%A2_%D0%A0_34.11-2012 ГОСТ Р 34.11-2012]. В ситуациях, когда не требуется обязательное использование алгоритмов ГОСТ, можно пользоваться любыми доступными алгоритмами.
  
 
Например, сейчас большинство веб-сайтов, доступных по протоколу HTTP, не умеет использовать алгоритмы ГОСТ для взаимной аутентификации клиента и сервера. В случае взаимодействия с одним из таких сайтов, клиентской стороне также придётся применить алгоритмы «иностранного производства». Но, например, если хочется использовать аппаратный токен в качестве хранилища ключей для аутентификации на сайте Госуслуг, придётся выбирать токен с поддержкой ЭЦП по ГОСТ.
 
Например, сейчас большинство веб-сайтов, доступных по протоколу HTTP, не умеет использовать алгоритмы ГОСТ для взаимной аутентификации клиента и сервера. В случае взаимодействия с одним из таких сайтов, клиентской стороне также придётся применить алгоритмы «иностранного производства». Но, например, если хочется использовать аппаратный токен в качестве хранилища ключей для аутентификации на сайте Госуслуг, придётся выбирать токен с поддержкой ЭЦП по ГОСТ.
Строка 199: Строка 199:
 
==== Интерфейсы, форматы и протоколы ====
 
==== Интерфейсы, форматы и протоколы ====
  
Для обеспечения совместимости при работе с электронной подписью выработан ряд международных [[enwp:PKCS|стандартов]], касающихся хранения данных и предоставления к ним доступа. К основным стандартам относятся:
+
Для обеспечения совместимости при работе с электронной подписью выработан ряд международных [https://en.wikipedia.org/wiki/PKCS стандартов], касающихся хранения данных и предоставления к ним доступа. К основным стандартам относятся:
  
* [[ruwp:PC/SC|PC/SC]] — низкоуровневый интерфейс доступа к криптографическим устройствам, в том числе — программным и аппаратным токенам;
+
* [https://ru.wikipedia.org/wiki/PC/SC PC/SC] — низкоуровневый интерфейс доступа к криптографическим устройствам, в том числе — программным и аппаратным токенам;
 
* PKCS#11 — высокоуровневый интерфейс для взаимодействия с аппаратными криптографическими модулями, можно рассматривать как унифицированный интерфейс доступа к криптопровайдерам;
 
* PKCS#11 — высокоуровневый интерфейс для взаимодействия с аппаратными криптографическими модулями, можно рассматривать как унифицированный интерфейс доступа к криптопровайдерам;
 
* PKCS#15 — формат контейнера с ключами электронной подписи, предназначенный для хранения на физическом устройстве;
 
* PKCS#15 — формат контейнера с ключами электронной подписи, предназначенный для хранения на физическом устройстве;
Строка 320: Строка 320:
 
==== OpenSSL ====
 
==== OpenSSL ====
  
Чтобы полноценно использовать возможности ЭЦП, кроме собственно библиотеки PKCS#11 должны быть реализованы пользовательские приложения, предоставляющие оператору доступ к функциям библиотеки и возможностям токена. Ярким примером такой реализации является открытое ПО из проекта [[ruwp:OpenSSL|OpenSSL]]. В нём поддерживаются, в частности, следующие функции:
+
Чтобы полноценно использовать возможности ЭЦП, кроме собственно библиотеки PKCS#11 должны быть реализованы пользовательские приложения, предоставляющие оператору доступ к функциям библиотеки и возможностям токена. Ярким примером такой реализации является открытое ПО из проекта [https://ru.wikipedia.org/wiki/OpenSSL OpenSSL]. В нём поддерживаются, в частности, следующие функции:
  
 
* зашифрование данных;
 
* зашифрование данных;
Строка 340: Строка 340:
 
==== Firefox ====
 
==== Firefox ====
  
Кроме OpenSSL взаимодействовать с библиотеками PKCS#11 умеет также всем известный html-браузер [[ruwp:Mozilla_Firefox|Firefox]]. Для подключения библиотеки PKCS#11 нужно зайти в меню управления настройками «Preferences», далее — в вертикальном списке слева выбрать «Advanced», в горизонтальном списке выбрать «Certificates», нажать кнопку «Security Devices», в появившемся диалоговом окне нажать кнопку «Load». Появится ещё одно окно с возможностью выбора пути к файлу с библиотекой PKCS#11 и возможностью ввода локального имени для этой конкретной библиотеки. Можно таким образом загрузить несколько разных модулей PKCS#11 для разных типов физических и виртуальных устройств.
+
Кроме OpenSSL взаимодействовать с библиотеками PKCS#11 умеет также всем известный html-браузер [https://ru.wikipedia.org/wiki/Mozilla_Firefox Firefox]. Для подключения библиотеки PKCS#11 нужно зайти в меню управления настройками «Preferences», далее — в вертикальном списке слева выбрать «Advanced», в горизонтальном списке выбрать «Certificates», нажать кнопку «Security Devices», в появившемся диалоговом окне нажать кнопку «Load». Появится ещё одно окно с возможностью выбора пути к файлу с библиотекой PKCS#11 и возможностью ввода локального имени для этой конкретной библиотеки. Можно таким образом загрузить несколько разных модулей PKCS#11 для разных типов физических и виртуальных устройств.
  
 
[[Файл:Ecp-firefox-load-pkcs11.png|900px|Подключение к Firefox модуля PKCS#11]]
 
[[Файл:Ecp-firefox-load-pkcs11.png|900px|Подключение к Firefox модуля PKCS#11]]
Строка 402: Строка 402:
 
=== Браузеры ===
 
=== Браузеры ===
  
Иногда, для доступа к сайтам, на которых мы планируем применять механизмы электронной подписи, приходится задействовать другие технологии, использующие российскую криптографию. Например, алгоритмы ГОСТ могут использоваться для организации шифрованного канала передачи данных. В этом случае необходима поддержка соответствующих алгоритмов в браузере. К сожалению, официальные сборки Firefox и Chromium пока не поддерживают российскую криптографию в полной мере. Поэтому приходится пользоваться альтернативными сборками. Такие сборки есть, например, в арсенале криптосредств компаний «КриптоПро» и «Лисси СОФТ», а также, [https://packages.altlinux.org/ru/Sisyphus/srpms/firefox-gost конечно], в дистрибутивах Альт. Для Альт Линукс также доступен [https://browser.sputnik.ru/ «Спутник/браузер»] (основан на Chromium) поддерживающий алгоритмы ГОСТ (кроме авторизации по клиентскому сертификату).
+
Иногда, для доступа к сайтам, на которых мы планируем применять механизмы электронной подписи, приходится задействовать другие технологии, использующие российскую криптографию. Например, алгоритмы ГОСТ могут использоваться для организации шифрованного канала передачи данных. В этом случае необходима поддержка соответствующих алгоритмов в браузере. К сожалению, официальные сборки Firefox и Chromium пока не поддерживают российскую криптографию в полной мере. Поэтому приходится пользоваться альтернативными сборками. Такие сборки есть, например, в арсенале криптосредств компаний «КриптоПро» и «Лисси СОФТ», а также, [https://packages.altlinux.org/ru/Sisyphus/srpms/firefox-gost конечно], в дистрибутивах Альт.
  
 
== Сайты ==
 
== Сайты ==
Строка 414: Строка 414:
 
Основная функциональность [http://gosuslugi.ru портала государственных услуг], доступная с помощью механизмов ЭЦП — возможность подписи документов, сформированных в интерфейсе сайта. Так, например, можно через веб-форму заполнить заявление, тут же его подписать и передать в работу. Кроме того, ЭЦП позволяет аутентифицироваться на сайте без предъявления логина и пароля, только по сертификату на токене.
 
Основная функциональность [http://gosuslugi.ru портала государственных услуг], доступная с помощью механизмов ЭЦП — возможность подписи документов, сформированных в интерфейсе сайта. Так, например, можно через веб-форму заполнить заявление, тут же его подписать и передать в работу. Кроме того, ЭЦП позволяет аутентифицироваться на сайте без предъявления логина и пароля, только по сертификату на токене.
  
За взаимодействие с программными и аппаратными токенами со стороны портала отвечает разработанное Ростелекомом ПО «IFCPlugin», имеющее в своём составе ряд библиотек PKCS#11 для доступа к заранее определённым типам токенов, и позволяющее подключать сторонние библиотеки PKCS#11 для доступа новым неизвестным устройствам. Некоторые библиотеки — например, [http://soft.lissi.ru/ls_product/skzi/PKCS11/ Лисси] — подключить удаётся.
+
За взаимодействие с программными и аппаратными токенами со стороны портала отвечает разработанное Ростелекомом ПО «IFCPlugin», имеющее в своём составе ряд библиотек PKCS#11 для доступа к заранее определённым типам токенов, и позволяющее подключать сторонние библиотеки PKCS#11 для доступа новым неизвестным устройствам. Некоторые библиотеки — например, [http://soft.lissi.ru/ls_product/skzi/PKCS11/ Лисси] — подключить удаётся. Некоторые — например, КриптоПро — нет.
  
Достоверно известно, что работу с порталом госуслуг под ОС семейства Linux можно организовать сейчас одним из трех способов. Один способ [https://geektimes.ru/post/280268/ описан] разработчиками «Лисси СОФТ», [https://habrahabr.ru/company/aktiv-company/blog/219071/ другой] — разработчиками компании «Актив». Оба способа предполагают наличие специальных договорённостей с удостоверяющим центром. В первом случае придётся ехать за токеном в УЦ Лисси в город Юбилейный Московской области. Во втором случае — найти УЦ, который выдаст клиентский сертификат на основе запроса на подпись в формате PKCS#10. Первый вариант может оказаться проще. И — да — УЦ Лисси СОФТ не работает с запросами на подпись удалённо.
+
Достоверно известно, что работу с порталом госуслуг под ОС семейства Linux можно организовать сейчас одним из двух способов. Один способ [https://geektimes.ru/post/280268/ описан] разработчиками «Лисси СОФТ», [https://habrahabr.ru/company/aktiv-company/blog/219071/ другой] — разработчиками компании «Актив». Оба способа предполагают наличие специальных договорённостей с удостоверяющим центром. В первом случае придётся ехать за токеном в УЦ Лисси в город Юбилейный Московской области. Во втором случае — найти УЦ, который выдаст клиентский сертификат на основе запроса на подпись в формате PKCS#10. Первый вариант может оказаться проще. И — да — УЦ Лисси СОФТ не работает с запросами на подпись удалённо.
  
Что касается поддержки самого распространённого варианта токенов — программных (или аппаратных в режиме программных) токенов, обслуживаемых ПО КриптоПро, она в настоящий момент в IFCPlugin под Linux работает начиная с версии CSP 4.0R3 (требуется ручная правка файла ifc.cfg по инструкции [https://www.cryptopro.ru/forum2/default.aspx?g=posts&m=83121#post83121 опубликованной на форуме] сотрудником тюменской ООО «ОАС»). <!-- В полученном 19 декабря 2016 года официальном ответе Ростелекома, в частности, указано: «Просим рассмотреть возможность работы Плагина и ЭЦП с порталом через MSIE 10 или 11 на виртуализированной или хостовой ОС Windows XP/7/8/10, при обязательной установке сертификата в личное хранилище сертификатов в системе». То есть, если прийти в первый попавшийся УЦ со своим токеном с просьбой оформить на нём ключ и сертификат электронной подписи, почти наверняка зайти с таким токеном на сайт Госуслуг под Linux не получится. -->
+
Вообще, если удастся найти удостоверяющий центр, готовый работать с запросами на подпись, можно попробовать вместо Рутокен использовать, например, JaCarta ГОСТ. Или использовать Рутокен, но не с ПО компании Актив, а с открытым ПО. Но поддержка таких решений со стороны IFCPlugin весьма сомнительна. Работа с Рутокенами поддерживается в IFCPlugin нативно, поддержка реализована разработчиками компании «Актив». Поддержка токенов Лисси реализована путём подключения сторонних библиотек PKCS#11 через конфигурационный файл IFCPlugin.
  
Вообще, если удастся найти удостоверяющий центр, готовый работать с запросами на подпись, можно попробовать вместо Рутокен использовать, например, JaCarta ГОСТ. Или использовать Рутокен, но не с ПО компании Актив, а с открытым ПО. Но поддержка таких решений со стороны IFCPlugin весьма сомнительна. Работа с Рутокенами поддерживается в IFCPlugin нативно, поддержка реализована разработчиками компании «Актив». Поддержка токенов Лисси реализована путём подключения сторонних библиотек PKCS#11 через конфигурационный файл IFCPlugin.
+
Что касается поддержки самого распространённого варианта токенов — программных (или аппаратных в режиме программных) токенов, обслуживаемых ПО КриптоПро, она в настоящий момент в IFCPlugin под Linux не работает. В полученном 19 декабря 2016 года официальном ответе Ростелекома, в частности, указано: «Просим рассмотреть возможность работы Плагина и ЭЦП с порталом через MSIE 10 или 11 на виртуализированной или хостовой ОС Windows XP/7/8/10, при обязательной установке сертификата в личное хранилище сертификатов в системе». То есть, если прийти в первый попавшийся УЦ со своим токеном с просьбой оформить на нём ключ и сертификат электронной подписи, почти наверняка зайти с таким токеном на сайт Госуслуг под Linux не получится.
  
 
=== Торговые площадки ===
 
=== Торговые площадки ===
Строка 446: Строка 446:
 
| [http://www.rts-tender.ru РТС-тендер] || {{yes}} || {{yes}} || {{no}}
 
| [http://www.rts-tender.ru РТС-тендер] || {{yes}} || {{yes}} || {{no}}
 
|-
 
|-
| [https://etp-ets.ru/ Национальная электронная площадка] || {{yes}} || {{n/a|Не проверялась}} || {{no}}
+
| [http://www.etp-micex.ru ММВБ — Информационные технологии] || {{no}} || {{n/a|Не проверялась}} || {{no}}
|-
 
| [https://gz.lot-online.ru/ Российский аукционный дом] || {{yes}} || {{n/a|Не проверялась}} || {{no}}
 
 
|}
 
|}
  
Для ЭТП, обеспечивающих совместимость с Linux, единственным поддерживаемым криптосредством в данный момент является Cades plugin, который умеет использовать в качестве криптопровайдера только КриптоПро CSP. <!-- Таким образом, хорошая новость заключается в том, что получить токен для доступа к электронным торговым площадкам очень просто — большинство УЦ выдают именно их. Плохие новости — токен будет программным и не будет совместим с сайтом Госуслуг. -->
+
Для ЭТП, обеспечивающих совместимость с Linux, единственным поддерживаемым криптосредством в данный момент является Cades plugin, который умеет использовать в качестве криптопровайдера только КриптоПро CSP. Таким образом, хорошая новость заключается в том, что получить токен для доступа к электронным торговым площадкам очень просто — большинство УЦ выдают именно их. Плохие новости — токен будет программным и не будет совместим с сайтом Госуслуг.
  
Для остальных торговых площадок пока единственным средством доступа к функциональности ЭЦП является компонент ОС Windows под названием [[ruwp:CAPICOM|CAPICOM]]. Специалистами компании «[http://www.etersoft.ru Этерсофт]» проведена исследовательская работа, в результате которой выяснена теоретическая возможность запуска CAPICOM в среде [[ruwp:WINE@Etersoft|Wine]].
+
Для остальных торговых площадок пока единственным средством доступа к функциональности ЭЦП является компонент ОС Windows под названием [https://ru.wikipedia.org/wiki/CAPICOM CAPICOM]. Специалистами компании «[http://www.etersoft.ru Этерсофт]» проведена исследовательская работа, в результате которой выяснена теоретическая возможность запуска CAPICOM в среде [https://ru.wikipedia.org/wiki/WINE@Etersoft Wine].
  
 
=== Прочие сайты ===
 
=== Прочие сайты ===
Строка 461: Строка 459:
 
= Пример готового решения =
 
= Пример готового решения =
  
<!-- К сожалению, на текущий момент авторам данного документа неизвестен способ применения одного и того же токена одновременно на сайте Госуслуг и на электронных торговых площадках. Поэтому придётся сделать два токена с двумя парами ключей и двумя сертификатами соответственно. Законодательно это не запрещено, технически — осуществимо. Финансово тоже вполне реально: одним токеном будет, например, аппаратный Рутокен ЭЦП, другим — какая-нибудь старая модель eToken, которую сейчас вполне можно найти за символическую плату. -->
+
К сожалению, на текущий момент авторам данного документа неизвестен способ применения одного и того же токена одновременно на сайте Госуслуг и на электронных торговых площадках. Поэтому придётся сделать два токена с двумя парами ключей и двумя сертификатами соответственно. Законодательно это не запрещено, технически — осуществимо. Финансово тоже вполне реально: одним токеном будет, например, аппаратный Рутокен ЭЦП, другим — какая-нибудь старая модель eToken, которую сейчас вполне можно найти за символическую плату.
  
 
== Доступ к сайту Госуслуг ==
 
== Доступ к сайту Госуслуг ==
Строка 488: Строка 486:
  
 
Возможность подписи документов в виде файлов будет доступна через консольные утилиты КриптоПро и через сторонние приложения-обёртки типа уже упоминавшегося {{cmd|rosa-crypto-tool}}.
 
Возможность подписи документов в виде файлов будет доступна через консольные утилиты КриптоПро и через сторонние приложения-обёртки типа уже упоминавшегося {{cmd|rosa-crypto-tool}}.
 
  
 
[[Категория:Documentation]]
 
[[Категория:Documentation]]
 
[[Категория:HOWTO]]
 
[[Категория:HOWTO]]
[[Категория:Криптография]]
 
{{Category navigation|title=Криптография|category=Криптография|sortkey={{SUBPAGENAME}}}}
 
{{Category navigation|title=ПО уровня предприятия|category=Enterprise Software|sortkey={{SUBPAGENAME}}}}
 

Обратите внимание, что все добавления и изменения текста статьи рассматриваются, как выпущенные на условиях лицензии CC-BY-SA-3.0.

В целях защиты вики от автоматического спама в правках просим вас решить следующую каптчу:

Отменить Справка по редактированию (в новом окне)
Вики-разметка
Заголовки: 1-го: == ==, 2-го: === ===, 3-го: ==== ==== уровня.
Быстрая вставка: «» | [[]] [[|]] {{}} {{|}} [[Категория:]] [[altbug:]] <source lang=""></source> <pre></pre> <!-- -->.
Определения: {{man|}} {{lists|}} {{cmd|}} {{path|}} {{prg|}} {{pkg|}} {{term|}} {{span||}} {{altbug|}}
Выделение: ''italics'', '''bold''', <tt>моноширинный</tt>, <code>код</code>.
Списки: * ненумерованный список, ** вложенный список, # нумерованный список, ## вложенный нумерованный список, *# вложенный смешанный список, ;список :определений.
Verbatim: Пробел в начале строки или <pre>Явный тэг</pre>
Ссылки: [http://www.altlinux.ru/ внешние], [[Main Page|внутренние]], [http://altlinux.ru], [[Main Page]]
Шаблоны: {{Crap}} {{D}} {{Policy}} {{DraftPolicy}} {{Merge|}} {{Улучшение}} {{Тимовец|}}