В ФНС рассказали о правилах безопасности работы с ЭП
Федеральная налоговая служба России (ФНС) выпустила рекомендации по использованию носителей, на которых хранятся ключи электронных подписей. В рекомендациях собрана основная методическая информация о видах носителей, правилах работы с ними и мерах предосторожности, которые помогут снизить риски при использовании ЭП.
Закрытые ключи делятся на два вида: пассивные и активные. Пассивные защищаются только PIN-кодом, а активные – встроенными функциями средства криптографической защиты информации (СКЗИ). Безопасность закрытого ключа зависит от ответственности владельца при его использовании, свойств самого ключа и функциональных особенностей ключевого носителя.
Экспортируемость и неэкспортируемость – одно из главных свойств закрытого ключа электронной подписи. Это свойство устанавливается на этапе формирования закрытого ключа. Если ключ экспортируемый, его можно скопировать, а это опасно для конфиденциальности данных. Для того, чтобы скопировать закрытый ключ, злоумышленнику потребуется получить доступ к ключевому носителю и узнать PIN-код владельца. Неэкспортируемый ключ невозможно скопировать, так как он защищен стандартными СКЗИ.
Неизвлекаемость закрытого ключа электронной подписи означает то, что сам ключ никогда не покидает носитель, в котором он был сгенерирован. Для того, чтобы добиться неизвлекаемости, ключ должен быть записан на активный носитель с функциями СКЗИ. В этом случае извлечь его будет невозможно. Извлекаемые ключи – все остальные, в том числе экспортируемые и неэкспортируемые.
Чтобы получить доступ к закрытому ключу, записанному на пассивный носитель, необходимо ввести PIN-код. При формировании закрытого ключа PIN-код устанавливается производителем, поэтому при первом использовании его лучше изменить.
При подписании электронных документов с помощью пассивного ключевого носителя происходит следующее: закрытый ключ копируется в память компьютера, далее в системе выполняются криптографические операции по формированию электронной подписи, после чего закрытый ключ удаляется из памяти устройства. Все это происходит в течение нескольких секунд.
Если несколько раз ввести PIN-код неправильно, пассивный ключевой носитель блокируется. Однако это не избавляет от риска утечки данных. Во время подписания документа данные закрытого ключа несколько секунд хранятся в памяти компьютера, откуда потенциальный злоумышленник может их перехватить.
Виды пассивных ключевых носителей: USB-носитель, смарт-карта, носитель с бесконтактным интерфейсом (NFC интерфейс).
Активный ключевой носитель защищается не только PIN-кодом, но и функциями СКЗИ. Закрытый ключ при этом создается прямо на активном носителе с использованием аппаратных криптографических функций. Подписание электронных документов также происходит на носителе, а не в системе компьютера: данные о закрытом ключе не копируются в память устройства. Так, закрытый ключ никогда не покидает носитель.
Безопасность активного ключевого носителя может быть нарушена только в том случае, если злоумышленник похитит его вместе с PIN-кодом.
Виды активных ключевых носителей: USB-носитель, смарт-карта, носитель с бесконтактным интерфейсом (NFC интерфейс).
Для того, чтобы максимально обезопасить конфиденциальные данные от злоумышленников, ФНС составила список рекомендаций по работе с ключевыми носителями электронных подписей:
- Использовать ключевые носители с наивысшей степенью защиты закрытого ключа
- Сменить пароль (PIN-код), установленный изготовителем, на собственный
- Пароль должен содержать не менее 6 символов, не должен являться последовательностью символов, расположенных на клавиатуре (qwerty, 123456), не должен быть основан на ассоциации, связанной с владельцем (например, кличка питомца)
- Не активировать функцию «запомнить пароль» в средствах электронной подписи и настройках ПО
- Не хранить данные о закрытом ключе (например, пароль) в открытых местах
- Не передавать ключевой носитель третьим лицам
- Не оставлять ключевой носитель без присмотра
- Если необходимо, выдать сотрудникам компании, которые не имеют права действовать без доверенности, их персональные закрытые ключи и сертификаты ЭП, чтобы они могли по доверенности подписывать документы
- Хранить ключевой носитель в недоступном месте
- В случае утери или кражи ключевого носителя необходимо обратиться в свой удостоверяющий центр и прекратить действие сертификата, а также в срочном порядке сообщить контрагентам, что утраченный сертификат недействителен
С 1 июля 2021 стартует новый порядок получения электронных подписей. В период с 1 июля по 1 января 2022 продолжится переходный период, а с 1 января новые правила оформления и использования ЭП вступят в законную силу и станут обязательными для участников электронного документооборота. Частично начать работать по новым правилам можно уже сейчас. Изменения – часть поправок к Федеральному закону от 06.04.2011 № 63-ФЗ «Об электронной подписи», принятых в 2019 году.
Docrobot – компания-разработчик SaaS-решений на основе EDI/ЭДО, провайдер электронного документооборота для ритейла с долей трафика более 40% в крупнейших федеральных сетях.
Подробнее на сайте Docrobot
О формировании заявлений и запросов на сертификат через портал ФЗС
Портал заявителя с функционалом формирования запросов на квалифицированные сертификаты ключей проверки электронных подписей (ФЗС), позволяет получателю сертификата (уполномоченному лицу) формировать комплект документов и сведений для создания/смены сертификата и направлять его в электронном виде в территориальный орган Федерального казначейства (ТОФК). В некоторых случаях без посещения ТОФК.
Требования к автоматизированному рабочему месту, порядок получения доступа к функционалу ФЗС и его описание представлено в документе «Информационная система «Удостоверяющий центр Федерального казначейства». Руководство пользователя».
Перенос контейнеров закрытых ключей и сертификатов CryptoPro
Криптопровайдер КриптоПро на сегодняшний день является, пожалуй, самым популярным на рынке, по крайней мере в России. Я хочу рассказать, как быстро и удобно перенести большое количество контейнеров закрытых ключей CryptoPro и сертификатов к ним. Существует штатный механизм в самой программе, работает в ручном режиме и не подходит, когда надо перенести большое количество.
Введение
Мне постоянно приходится иметь дело с сертификатами, токенами, закрытыми ключами, криптопровайдерами и прочим. Сейчас все завязано на это — банкинг, сдача отчетности в разные гос органы, обращения опять же в эти органы, в том числе и физ лиц. В общем, с этой темой рано или поздно придется познакомиться многим. Для того, чтобы перенести все это хозяйство с одного компьютера на другой, иногда приходится прилично повозиться, особенно тем, кто не в теме. Перенести закрытые ключи и сертификаты КриптоПро на другой компьютер можно двумя способами:
- Перенести или скопировать контейнер закрытого ключа через стандартную оснастку CryptoPro в панели управления. Это самый простой и быстрый способ, если у вас не много сертификатов и ключей. Если же их несколько десятков, а это не такая уж и редкость, то такой путь вам не подходит.
- Скопировать сертификаты и ключи непосредственно через перенос самих исходных файлов и данных, где все это хранится. Объем работы одинаков и для 5 и для 50-ти сертификатов, но требуется больше усилий и знаний.
Я опишу оба этих способа, но подробно остановлюсь именно на втором способе. В некоторых ситуациях он является единственно возможным.
Копирование закрытого ключа через оснастку КриптоПро
Для того, чтобы скопировать контейнер для хранения закрытого ключа сертификата штатным средством, необходимо в Панели управления открыть оснастку CryptoPro, перейти в раздел Сервис и нажать Скопировать.
Далее вы выбираете текущий контейнер, который хотите скопировать. Это может быть либо токен, либо реестр компьютера. Затем новое имя и новое расположение контейнера. Опять же, это может быть как реестр, так и другой токен.
Ошибка копирования контейнера
Но тут есть важный нюанс. Если во время создания закрытого ключа он не был помечен как экспортируемый, скопировать его не получится. У вас будет ошибка:
Ошибка копирования контейнера. У вас нет разрешений на экспорт ключа, потому что при создании ключа не был установлен соответствующий флаг. Ошибка 0x8009000B (-2146893813) Ключ не может быть использован в указанном состоянии. Либо вы просто не сможете его выбрать для копирования, если у вас последняя версия CryptoPro. Он будет неактивен:
Если получили такую ошибку, то для вас этот способ переноса не подходит. Можно сразу переходить к следующему. Отдельно расскажу, как скопировать сертификат и закрытый ключ к нему в файл, чтобы перенести на другой компьютер без использования токена. Делаем это там же на вкладке Сервис в оснастке CryptoPro. Нажимаем Посмотреть сертификаты в контейнере.
Выбираем необходимый сертификат и нажимаем Посмотреть свойства сертификата.
Далее переходим на вкладку Состав в информации о сертификате и нажимаем Копировать в файл.
Если у вас после слов «Экспортировать закрытый ключ вместе с сертификатом» нет возможности выбрать ответ «Да, экспортировать закрытый ключ«, значит он не помечен как экспортируемый и перенести его таким способом не получится. Можно сразу переходить к другому способу, который описан ниже.
Если же такая возможность есть, то выбирайте именно этот пункт и жмите Далее. В следующем меню ставьте все галочки, кроме удаления. Так вам будет удобнее и проще в будущем, если вдруг опять понадобится копировать ключи уже из нового места.
Укажите какой-нибудь пароль и запомните его! Без пароля продолжить нельзя. В завершении укажите имя файла, куда вы хотите сохранить закрытый ключ. Теперь вам нужно скопировать сам сертификат. Только что мы копировали закрытый ключ для него. Не путайте эти понятия, это разные вещи. Опять выбираете этот же сертификат в списке из оснастки Crypto Pro, жмёте Копировать в файл, экспортировать БЕЗ закрытого ключа. И выбираете файл формата .CER.
Сохраните сертификат для удобства в ту же папку, куда сохранили закрытый ключ от него. В итоге у вас должны получиться 2 файла с расширениями:
- .pfx
- .cer
Вам достаточно перенести эти 2 файла на другой компьютер и кликнуть по каждому 2 раза мышкой. Откроется мастер по установке сертификатов. Вам нужно будет выбрать все параметры по умолчанию и понажимать Далее. Сертификат и контейнер закрытого ключа к нему будут перенесены на другой компьютер. Я описал первый способ переноса в ручном режиме. Им можно воспользоваться, если у вас немного сертификатов и ключей. Если их много и руками по одному переносить долго, то переходим ко второму способу.
Массовый перенос ключей и сертификатов CryptoPro с компьютера на компьютер
В интернете достаточно легко находится способ переноса контейнеров закрытых ключей КриптоПро через копирование нужной ветки реестра, где это все хранится. Я воспользуюсь именно этим способом. А вот с массовым переносом самих сертификатов у меня возникли затруднения и я не сразу нашел рабочий способ. Расскажу о нем тоже. Для дальнейшей работы нам надо узнать SID текущего пользователя, у которого мы будем копировать или переносить сертификаты с ключами. Для этого в командной строке выполните команду:
В данном случай user — имя учетной записи, для которой узнаем SID. Далее скопируем контейнеры закрытых ключей в файл. Для этого на компьютере открываем редактор реестра (regedit.exe) и переходим в ветку:
где S-1-5-21-4126888996-1677807805-1843639151-1000 — SID пользователя, у которого копируем сертификаты. Выбираем папку Keys и экспортируем ее. Этот путь актуален для 64-х битных систем — Windows 7, 8, 10. В 32-х битных путь может быть немного другой. Я специально не проверял, но поиском по реестру вы при желании найдете его.
Сохраняем ветку реестра в файл. В ней хранятся закрытые ключи. Теперь нам нужно скопировать сразу все сертификаты. В Windows 7, 8 и 10 они живут в директории — C:\Users\user\AppData\Roaming\Microsoft\SystemCertificates\My. Сохраняйте эту директорию. Для переноса ключей и сертификатов нам надо скопировать на другой компьютер сохраненную ветку реестра и директорию с сертификатами My.
После того, как перенесли файлы со старого компьютера на новый, открываем файл с веткой реестра в текстовом редакторе и меняем там SID пользователя со старого компьютера на SID пользователя нового компьютера. Можно прям в блокноте это сделать поиском с заменой.
После этого запускаем .reg файл и вносим данные из файла в реестр. Теперь скопируйте папку My с сертификатами в то же место в профиле нового пользователя. На этом перенос сертификатов и контейнеров закрытых ключей КриптоПро завершен. Можно проверять работу. Я не раз пользовался этим методом, на текущий момент он 100% рабочий. Написал статью, чтобы помочь остальным, так как сам не видел в интернете подробной и понятной с первого раза статьи на эту тему. Надеюсь, моя таковой получилась.
КриптоПро CSP ошибка 0x80090010 Отказано в доступе
Иногда после переноса контейнеров закрытых ключей через экспорт — импорт ветки реестра с ключами можно увидеть ошибку доступа к контейнерам. Вроде бы все на месте, ключи есть в реестре. Их можно увидеть в останстке CryptoPro, но не получается прочитать. При попытке это сделать возникает ошибка:
Ошибка обращения к контейнеру закрытого ключа. Ошибка 0x80090010: Отказано в доступе. Связано это с тем, что у текущего пользователя, под которым вы хотите получить доступ к контейнеру, нет полных прав на ветку реестра с хранящимися ключами. Исправить это просто. Переходите в редактор реестра и выставляйте полные права к ветке Keys для текущего пользователя.
Убедитесь так же, что новые права наследовались на дочерние ветки с самими ключами. Обычно это так, но перепроверить на всякий случай непомешает. После этого ошибка с доступом к контейнеру закрытого ключа исчезнет.
Часто задаваемые вопросы по теме статьи (FAQ)
Очевидно, что предложенное в статье решение для этого не подойдет. Ведь тут идет речь о переносе сертификатов, которые хранятся в реестре, то есть уже были скопированы. Технические средства для копирования защищенных крипто контейнеров тоже существуют, но это не такое простое и очевидное решение.
Это не безопасно и в общем случае я не рекомендую это делать. USB токены для хранения сертификатов придуманы не просто так. Они реально защищают сертификаты от несанкционированного копирования. Если у вас нет объективной необходимости копировать сертификаты в реестр, лучше этого не делать. Если вам нужно сделать бэкап сертификата на случай поломки токена, то просто скопируйте его в зашифрованный архив и сохраните на флешке.
Нет, не подойдет. В статье описан способ переноса сертификатов CryptoPro. Другие криптопровайдеры хранят сертификаты по-другому. Универсального способа для всех не существует.
Да, есть статья на сайте контура, в ней ссылка на утилиту для копирования контейнеров Certfix. Можете воспользоваться ей.
Онлайн курс по Kubernetes
Онлайн-курс по Kubernetes – для разработчиков, администраторов, технических лидеров, которые хотят изучить современную платформу для микросервисов Kubernetes. Самый полный русскоязычный курс по очень востребованным и хорошо оплачиваемым навыкам. Курс не для новичков – нужно пройти вступительный тест.
Чем отличаются открытый и закрытый ключи ЭЦП?
При создании электронной цифровой подписи с помощью криптографических алгоритмов формируется ключевая пара — открытый и закрытый ключи. Расскажем подробно о том, что такое ключевая пара, чем отличаются части ЭЦП, какие функции они выполняют.
Открытый ключ ЭЦП
Эта часть ключевой пары представляет собой уникальный набор символов, который формируется криптопровайдером (средством криптографической защиты информации). Открытый ключ находится в сертификате проверки электронной подписи (в электронной и бумажной версии). Он доступен всем, так как используется для расшифровки ЭЦП. То есть с его помощью получатель подписанного электронного документа может идентифицировать и проверить ЭЦП. Удостоверяющие центры хранят выданные открытые ключи в специальном реестре.
Закрытый ключ ЭЦП
Это секретный уникальный набор символов, который также формируется криптопровайдером. Закрытый ключ необходим для формирования ЭЦП на электронном документе и хранится в зашифрованном виде на носителе (токене). Доступ к закрытому ключу имеет только владелец ЭЦП, он защищен PIN-кодом. Теоретически, скопировать закрытый ключ на другой носитель можно, но делать это не рекомендуется, так как безопасность использования ЭЦП гарантирована только тогда, когда закрытый ключ существует в единственном экземпляре. Если носитель с закрытым ключом утерян, то в целях безопасности необходимо отозвать ЭЦП, чтобы злоумышленники не могли ей воспользоваться.
В ключевой паре открытая и закрытая части привязаны друг к другу.
Как найти и выгрузить ключи на компьютер?
Чаще всего появляется необходимость выгрузить открытый ключ, например, чтобы предоставить его контрагентам для проверки ЭЦП. На токене сертификат проверки ключа скрыт. Как его открыть? Сделать это можно через свойства браузера или программу КриптоПро CSP. Чтобы экспортировать ключ, в первую очередь необходимо подключить токен к компьютеру.
Через свойства браузера:
В ОС Windows необходимо открыть: «Пуск» — «Панель управления» — «Свойства браузера».
В появившемся окне выбрать вкладку «Содержание», а далее — «Сертификаты».
Появится список сертификатов, в котором следует выбрать нужный, а затем нажать кнопку «Экспорт».
Появится окно «Мастер экспорта сертификатов», где нужно выбрать «Не экспортировать закрытый ключ», если это не требуется.
Выбрать формат файла «Файлы в DER-кодировке X.509 (.CER)».
Выбрать место хранения ключа и сохранить.
Через КриптоПро CSP:
В ОС Windows надо перейти в «Пуск» — «Панель управления» — «КриптоПро CSP».
В открывшемся окне следует выбрать вкладку «Сервис» и нажать «Просмотреть сертификаты в контейнере».
Через кнопку «Обзор» нужно выбрать контейнер.
В окне «Сертификат для просмотра» следует нажать кнопку «Свойства» и на вкладке «Состав» нажать «Копировать в файл».
Далее порядок действий в окне «Мастер экспорта сертификатов» аналогичный: выбрать, нужно ли сохранять закрытый ключ, установить формат и определить место хранения.
Закрытый ключ на токене тоже скрыт. Он выглядит как папка с несколькими файлами с расширением .key. Обычно закрытый ключ экспортируют, если нужно получить прямой к нему доступ. Однако хранить закрытую часть ЭЦП на компьютере категорически не рекомендуется, так как это небезопасно.
Выгрузка закрытого ключа через свойства браузера выполняется по тому же алгоритму, что и в случае с открытым. Только в окне «Мастер экспорта сертификатов» нужно выбрать «Экспортировать закрытый ключ». А порядок действий при выгрузке из КриптоПро CSP следующий:
В ОС Windows нажать «Пуск» перейти на «Панель управления» и выбрать «КриптоПро CSP».
Далее — вкладка «Сервис» и кнопка «Скопировать контейнер».
Через кнопку «Обзор» нужно выбрать контейнер и подтвердить (потребуется ввести PIN-код).
Затем нужно ввести название копии закрытого ключа и нажать «Готово».
Далее нужно выбрать, куда будет записан ключ, установить пароль для обеспечения дополнительной защиты и подтвердить действия.
Ещё раз напомним, что экспортировать закрытый ключ без необходимости, не рекомендуется. Его может использовать любой, кто имеет доступ к компьютеру, на который он скопирован.
Заказав электронную цифровую подпись в СберКорус, вы сможете самостоятельно настроить компьютер для работы с ЭЦП, посмотрев видеоинструкцию. При возникновении сложностей мы поможем настроить компьютер бесплатно. А также в любое время проконсультируем по интересующим вопросам.