КриптоПро CSP и 1С 8.3: от установки провайдера до первой подписи
Содержание
Чтобы подключить КриптоПро к 1С, нужно три вещи: установленный КриптоПро CSP с действующей лицензией, личный сертификат, привязанный к закрытому ключу, и включённая электронная подпись в самой базе. В БП 3.0 и ЗУП 3.1 настройка находится в Администрирование → Общие настройки → Электронная подпись и шифрование: там добавляют программу «КриптоПро CSP», затем сертификат, и нажимают «Проверить».
Отдельно 1С ничего «интегрировать» не нужно: платформа 8.3 сама обращается к криптопровайдеру через его библиотеку. Задача администратора — чтобы провайдер, ключ и сертификат были видны той учётной записи и тому компьютеру, где реально выполняется подпись. Большинство ошибок возникает именно из-за этого.
Подготовка компьютера: что поставить до запуска 1С
Начните с инвентаризации. На рабочем месте должно быть:
- 🔐 КриптоПро CSP — актуальная ветка 5.0. Для подписей по ГОСТ Р 34.10-2012 старые сборки 3.x не подходят.
- 🔑 Драйвер носителя, если ключ на токене: Рутокен, JaCarta, ESMART. Без драйвера CSP токен не увидит.
- 🧩 Платформа 1С 8.3 актуальной версии. Для веб-клиента — ещё расширение браузера, о нём ниже.
- 📜 Корневой и промежуточный сертификаты удостоверяющего центра, выдавшего вашу подпись.
Установка КриптоПро CSP
- Скачайте дистрибутив с сайта КриптоПро (нужна бесплатная регистрация).
- Запустите установщик от имени администратора, выберите обычную установку.
- Введите серийный номер лицензии. Без него CSP работает в пробном режиме 90 дней, после чего подпись перестанет создаваться.
- Перезагрузите компьютер — после установки провайдера это обязательно.
Проверить версию и срок лицензии можно в программе «КриптоПро CSP» на вкладке «Общие». Там же видно, бессрочная лицензия или нет.
Если на компьютере уже стоит ViPNet CSP или другой ГОСТ-провайдер, лучше его удалить или развести по разным машинам. Два ГОСТ-провайдера на одном компьютере часто конфликтуют, а симптомы выглядят как «ключ не найден».
Лицензия КриптоПро: сколько стоит
Ориентировочные цены разработчика на рабочее место:
| Вариант | Примерная стоимость | Когда подходит |
|---|---|---|
| Лицензия, встроенная в сертификат | бесплатно сверх цены КЭП | работа только с этим сертификатом |
| Годовая на рабочее место | около 1 500–2 000 ₽ | временное место |
| Бессрочная на рабочее место | около 3 000–3 500 ₽ | постоянный компьютер бухгалтера |
| Серверная | от 40 000 ₽ | подпись на сервере 1С |
Цены меняются, точную сумму уточняйте у продавца. Многие УЦ выдают КЭП со встроенной лицензией — тогда отдельный ключ CSP не нужен.
Сертификаты и хранилище ключей в КриптоПро
Самая частая причина проблем — сертификат лежит в хранилище, но не связан с закрытым ключом. 1С такой сертификат видит, а подписать им не может.
Установка личного сертификата из контейнера
- Вставьте токен или убедитесь, что контейнер с ключом есть на компьютере.
- Откройте «КриптоПро CSP» → вкладка «Сервис» → «Просмотреть сертификаты в контейнере».
- Нажмите «Обзор», выберите контейнер, затем «Далее».
- В окне сертификата нажмите «Установить».
- Хранилище оставьте «Личное» (текущего пользователя).
Так сертификат попадает в хранилище вместе со ссылкой на ключ. Двойной щелчок по файлу .cer в проводнике такой ссылки не создаёт.
Цепочка доверия
Подпись проверяется по цепочке: ваш сертификат → промежуточный сертификат УЦ → корневой. Если звена нет, 1С сообщит, что цепочку построить не удалось.
- 🏛️ Корневой сертификат УЦ ставят в «Доверенные корневые центры сертификации».
- 🔗 Промежуточный — в «Промежуточные центры сертификации».
- 📋 Списки отзыва (CRL) Windows скачивает сама, если есть доступ в интернет. В закрытой сети их загружают вручную.
Проверить цепочку просто: откройте сертификат через certmgr.msc → «Личное» → «Сертификаты». На вкладке «Путь сертификации» все звенья должны быть без красных крестов. Внизу вкладки «Общие» должна стоять надпись «Есть закрытый ключ для этого сертификата».
Тест контейнера
На вкладке «Сервис» есть кнопка «Протестировать». Она открывает контейнер, проверяет ключ и запрашивает PIN. Если тест прошёл, проблема дальше будет только в настройках 1С.
Перенос ключа на другой компьютер
Если бухгалтер работает с двух мест, ключ на токене просто носят с собой. Контейнер в реестре или на диске можно скопировать: «Сервис» → «Скопировать», выбрать исходный контейнер и новое место хранения.
Копирование сработает, только если ключ при выпуске помечен как экспортируемый. Неэкспортируемый ключ скопировать нельзя — нужен новый сертификат. После копирования сертификат на новом компьютере ставят тем же способом, через «Просмотреть сертификаты в контейнере».
КриптоПро на Linux
На Linux графической панели может не быть, всё делают утилитами из /opt/cprocsp/bin/amd64/. Список контейнеров с полными именами:
/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -fqcn -verifyc
Установка сертификата из контейнера в личное хранилище текущего пользователя:
/opt/cprocsp/bin/amd64/certmgr -inst -store uMy -cont '\\.\HDIMAGE\имя_контейнера'
Команды выполняют от того пользователя, который запускает 1С. Если ставить сертификат от root, клиент 1С под обычной учётной записью его не увидит.
Подключение КриптоПро в 1С:Предприятии
Механизм общий для типовых конфигураций на БСП: БП 3.0, ЗУП 3.1, УТ 11, КА, ERP. Отличается только раздел, где лежит настройка.
| Конфигурация | Где включить электронную подпись |
|---|---|
| Бухгалтерия предприятия 3.0 | Администрирование → Общие настройки → Электронная подпись и шифрование |
| ЗУП 3.1 | Администрирование → Общие настройки → Электронная подпись и шифрование |
| УТ 11, КА, ERP | раздел НСИ и администрирование, группа общих настроек администрирования |
Шаг 1. Включить подпись в базе
Поставьте флажок «Электронные подписи». Если нужно шифрование документов, включите и его. Ниже станет доступна ссылка «Настройки электронной подписи и шифрования».
Шаг 2. Указать программу
- Откройте настройки и перейдите на вкладку «Программы».
- Если строки КриптоПро CSP нет, нажмите «Добавить» и выберите её из списка поддерживаемых.
- Для ключей по ГОСТ 2012 нужна строка с алгоритмом ГОСТ Р 34.10-2012 (256 или 512 бит — под вашу подпись).
- Нажмите «Проверить». 1С покажет, установлена ли программа на этом компьютере.
Под Windows путь к библиотеке указывать не нужно, платформа найдёт CSP сама. Под Linux путь задают явно, например /opt/cprocsp/lib/amd64/libcapi20.so для 64-битной системы.
Шаг 3. Добавить сертификат
- Вкладка «Сертификаты» → «Добавить» → «Из установленных на компьютере».
- Выберите свой сертификат из списка «Личное».
- Укажите организацию и пользователя, которому разрешено им подписывать.
- Сохраните карточку.
Сертификат, не связанный с ключом, в этом списке может не показаться или будет помечен как недоступный для подписания. Это сигнал вернуться к предыдущему разделу.
Подпись на сервере 1С
В клиент-серверном варианте можно подписывать на стороне сервера. Для этого в настройках включают флажки создания и проверки подписей на сервере.
Тогда КриптоПро CSP и лицензия нужны на сервере 1С, а сертификат с ключом — в хранилище учётной записи, под которой запущена служба агента сервера (по умолчанию USR1CV8). Ключ, установленный в профиль бухгалтера, сервер не увидит.
Перезапуск службы сервера 1С после установки CSP обрывает сеансы всех пользователей. Делайте его вне рабочего времени и предупредите коллег.
Работа через браузер: веб-клиент и КриптоПро
В веб-клиенте 1С не использует КриптоПро ЭЦП Browser plug-in. Подпись идёт через собственные расширения платформы, которые уже обращаются к установленному CSP.
Что нужно на компьютере пользователя:
- Расширение браузера «1С:Предприятие» — ставится из магазина расширений Chrome, Яндекс Браузера или Firefox.
- Расширение для работы с файлами — веб-клиент сам предложит установить его при первой операции с файлами.
- Расширение для работы с криптографией — устанавливается по запросу при первой попытке подписать.
- КриптоПро CSP с сертификатом в личном хранилище — так же, как для тонкого клиента .
После установки расширений браузер нужно перезапустить полностью, а не обновить вкладку.
Плагин КриптоПро ЭЦП Browser plug-in всё равно пригодится для порталов госорганов. Удалять его ради 1С не нужно — он не мешает.
Если веб-клиент открывается по HTTP без шифрования, часть браузеров блокирует установку расширений. Публикуйте базу по HTTPS или добавьте адрес в доверенные узлы политикой браузера.
Тестовое подписание: как проверить, что всё работает
В карточке сертификата в 1С есть кнопка «Проверить». Она прогоняет полный цикл:
- ✅ данные сертификата и цепочка доверия;
- ✅ наличие сертификата в личном хранилище;
- ✅ создание подписи с запросом PIN или пароля;
- ✅ проверка созданной подписи;
- ✅ шифрование и расшифровка тестовых данных (если шифрование включено).
Каждая строка отмечается отдельно. Красная строка сразу показывает, на каком звене поломка.
Если в базе включён режим подписи на сервере, проверка покажет два столбца: на компьютере и на сервере. Ошибка только на сервере значит, что нет CSP, лицензии или ключа именно там.
Боевая проверка
После теста подпишите реальный, но безопасный объект. Например, приложите к карточке контрагента любой файл и выберите в его меню команду подписания. Убедитесь, что подпись появилась в списке подписей файла и проходит проверку.
Заодно посмотрите в карточке сертификата срок действия. Сертификат КЭП обычно выдают примерно на 15 месяцев, и о его окончании проще помнить заранее: перевыпуск занимает от одного дня до недели, а без подписи встанут отправка отчётности и ЭДО.
Ошибки при подписании в 1С и как их снять
Тексты ошибок 1С берёт из криптопровайдера, поэтому формулировки зависят от версии CSP. Ниже самые узнаваемые.
Ещё три ситуации, которые путают
- 🔄 После обновления CSP пропали сертификаты. Обычно хранилище цело, но потерялась ссылка на ключ. Помогает повторная установка из контейнера.
- 🖥️ В RDP-сессии токен не виден. Проверьте, что в свойствах подключения включено перенаправление смарт-карт.
- 🔢 Подпись создаётся, но контрагент её не проверяет. Чаще всего сертификат выпущен по одному алгоритму, а в 1С выбрана строка программы с другим. Сверьте алгоритм в составе сертификата с выбранной программой.
Частые вопросы
Нужна ли отдельная лицензия КриптоПро для 1С?
Можно ли подписывать в 1С без КриптоПро?
Что делать после замены сертификата?
Подпись в 1С соответствует закону?
Почему на одном компьютере работает, а на соседнем нет?
Источники
- Федеральный закон от 06.04.2011 № 63-ФЗ «Об электронной подписи»