Модуль криптографии не поддерживает алгоритмов подписи 1с
Производители средств криптографической защиты информации (СКЗИ) предлагают различные механизмы для интеграции криптосредств в информационные системы. Существуют решения, ориентированные на поддержку систем с Web-интерфейсом, мобильных и десктопных приложений, серверных компонентов. СКЗИ интегрируются в приложения Microsoft и в продукты Open Source, обеспечивают поддержку различных прикладных протоколов и форматов электронной подписи.
С учетом растущего количества проектов с применением ЭЦП и появления массовых проектов для физических лиц, разработчикам подобных проектов требуется хорошо ориентироваться в предлагаемых производителями решениях по ЭЦП для того, чтобы сделать систему удобной в эксплуатации и недорогой в плане техподдержки. Таким образом, если еще лет 5 назад главным фактором выбора криптосредства являлось его полное соответствие требованиям регуляторов, то при сегодняшнем разнообразии важными критериями могут выступать охват поддерживаемых платформ, возможность интеграции с браузером, поддержка мобильных пользователей, возможность установки без прав системного администратора и т.п.
- Рассмотрены в основном СКЗИ, использующиеся на клиентских местах для защиты клиент-серверных соединений по протоколу TLS, для организации ЭЦП, шифрования передаваемых данных;
- Не рассматриваются СКЗИ, применяемые для создания VPN и шифрования файловой системы, хранимых данных, а так же УЦ;
- Отдельно выделены аппаратные криптографические устройства.
- технологий интеграции (CryptoAPI, Active-X, NPAPI и др.), которые поддерживают СКЗИ для встраивания в приложения и прикладные системы;
- интерфейсов, которые предоставляют СКЗИ для встраивания в приложения и прикладные системы.
Криптопровайдеры
Следует отметить, что несовершенство предлагаемых MS Windows механизмов расширения вынуждает разработчиков криптопровайдеров дополнительно модифицировать высокоуровневые криптобиблиотеки и приложения MS Windows в процессе их выполнения для того, чтобы «научить» их использовать российские криптоалгоритмы.
Следует понимать, что не все СКЗИ одного вида реализуют полный объем функциональности, приведенный в таблицах. Для уточнения возможностей криптосредств следуют обратиться к производителю.
- Отсутствие нормальной кроссплатформенности;
- Установка с правами администратора, настройка;
- Установка обновления Windows может потребовать обновления провайдера;
- Необходимость встраивания в приложения посредством модификации кода «на лету»;
- CSP — неродной интерфейс для не-Windows-приложений.
- Широкий охват Windows-приложений;
- Богатый инструментарий для разработчиков защищенных систем;
- Апробированная на большом количестве проектов технология.
Нативные библиотеки
OpenSSL-style
Open Source библиотека OpenSSL обладает широкими криптографическими возможностями и удобным механизмом ее расширения другими криптоалгоритмами. OpenSSL является основным криптоядром для широкого спектра приложений Open Source.
После того, как в эту библиотеку компанией Криптоком были добавлены ГОСТы, появились патчи для «гостификации» многих популярных приложения, использующих OpenSSL. На базе OpenSSL некоторые вендоры разработали и сертифицировали СКЗИ, кроме того в ряд продуктов OpenSSL входит «неявным» образом.
- OpenSSL и его аналоги не поддерживается приложениями Microsoft;
- Необходимость патчить СПО, которое поддерживает OpenSSL, для включения ГОСТов.
- Кроссплатформенность;
- Использование в огромном количестве проектов, открытые исходники большей части проекта — выявление и устранение уязвимостей (как пример, недавнее выявление heartbleed);
- Распространяется копированием — можно делать приложения, не требующие инсталляции;
- Широкий охват приложений СПО, на базе которых можно делать защищенные сертифицированные продукты;
- Широкая интеграция в фреймворки, но при этом проблемы с ГОСТами.
- Функции доступа к устройству;
- Функции записи/чтения произвольных данных;
- Функции работы с ключами (поиск, создание, удаление, импорт, экспорт);
- Функции работы с сертификатами (поиск, импорт, экспорт);
- Функции ЭЦП;
- Функции хэширования;
- Функции шифрования;
- Функции вычисления имитовставки;
- Функции выработки ключа согласования (Диффи-Хeллман);
- Функции экспорта/импорта сессионного ключа;
Для обеспечения быстродействия часть криптопримитивов может быть реализована программно.
Пример совместимости приложений приведен на схеме. Таким образом, возможно использование подходящего приложения в соответствующем месте инфосистемы.
NSS представляет собой криптографическую библиотеку от сообщества Mozilla. NSS используется такими приложениями, как браузер Mozilla Firefox, почтовым клиентом Mozilla Thunderbird.
В данный момент существуют два проекта по «гостификации» NSS:
Библиотеки c собственным интерфейсом
Локальные прокси
Основным принципом действия локального прокси является прием незащищенного соединения от приложения, установка TLS-туннеля с удаленным сервером и передача «прикладного уровня» между приложением и удаленным сервером по этому туннелю.
- прокси должен быть запущен;
- приложение должно работать через прокси, нужно «научить» его этому;
- могут использоваться нестандартные порты, отсюда проблемы в файрволом
- если приложение «ходит» через localhost, то, например, в адресной строке браузера прописано localhost… — нестандартно
- дополнительные ограничения на разработку web-сайта — в ряде случаев использование только относительных ссылок, чтобы не «вылететь» из туннеля
- прокси сконфигурирован на проксирование конечной группы сайтов, расширение группы — это обновление клиентского конфига
- работа через внешний прокси требует дополнительного конфигурирования локального прокси, при этом могут быть проблемы с аутентификацией пользователя на внешнем прокси
- решение использует универсальную технологию, поэтому можно не бояться его устаревания;
- решение может применяться на большом числе платформ, в том числе на мобильных платформах;
- кроссбраузерность, поддержка всех WEB-серверов без модификации;
- не требует инсталляции;
- поддержка различных прикладных протоколов.
Браузерные плагины
Кроссбраузерные плагины
ActiveX
Настройку программы «1С:Клиент ЭДО 8» можно условно разделить на настройку механизма обмена данными с учетной системой и на настройку механизма обмена электронными документами.
Данные, необходимые для формирования электронных документов (например, реквизиты организации и контрагентов) вводятся и хранятся в самой учетной системе, а в программе «1С:Клиента ЭДО 8» только отображаются. Поэтому при необходимости внести изменения, например, в юридический адрес организации, потребуется зайти в учетную систему и уже там отредактировать данные в соответствующем справочнике.
Процесс взаимодействия программы «1С:Клиента ЭДО 8» и учетной системы, а также процесс изменения правил обмена данными, задаваемых во внешней обработке, описан в Приложении данного руководства.
3.1. Настройка параметров обмена с учетной системой
Для задания параметров обмена с учетной системой можно воспользоваться Помощником подключения к учетной системе или указать их в ручном режиме.
Помощник подключения к учетной системе
При первом входе в новую информационную базу «Клиента ЭДО» Помощник подключения к учетной системе запуститься автоматически. В дальнейшем его всегда можно вызвать повторно через команду группы Сервис Панели действий главного окна программы.
На первом шаге помощника необходимо указать:
1. каталог Информационной базы учетной системы;
2. Имя пользователя и пароль , от имени которого будет происходить подключение к учетной системе (рекомендуется сделать в учетной системе отдельного пользователя с соответствующими правами доступа);
3. Правила обработки данных , которые будут использоваться для обмена данными с учетной системой (более подробно с настройкой правил обработки можно познакомиться в Приложении данного руководства);
4. Наименование настроек для быстрого поиска в списке.
После нажатия кнопки Далее > программа выполнить подключение к учетной системе по указанным параметрам и сохранит в информационной базе для дальнейшего использования.
На следующих шагах можно выполнить импорт организации и контрагентов, которые будет использоваться для обмена электронными документами.
Если в Настройках программы включена возможность использования Электронных цифровых подписей, то н а последнем шаге помощника программа предложит добавить новое соглашение обмена электронными документами через оператора ЭДО.
Настройка обмена с учетной системой в ручном режиме
Для указания параметров настройки обмена данными с учетной системой необходимо:
1. в Настройках программы выбрать команду Настройки обмена данными с учетными системами ;
2. если опция Вести обмен в информационной базе с несколькими учетными системами задана, то в командной панели открывшегося списка выбрать команду Создать ;
3. в открывшейся форме заполнить основные реквизиты, необходимые для подключения к внешней учетной системе;
4. сохранить данные и закрыть форму.
В форме элемента можно выполнить проверку правильности указания параметров обмена данными по команде Тест настроек .
Для того чтобы исключить какие-либо настройки из процесса обмена или временно не использовать для подключения к учетной системе, необходимо включить опцию Не использовать настройки для подключения .
3.2. Настройка обмена электронными документами
Настройка шифрования и ЭП
Если предполагается, что при обмене электронными документами будет использоваться ЭП и/или шифрование, то необходимо установить флаг Электронные подписи (формы Настройки программы ), а также выполнить общую настройку криптографии и настроить сертификаты подписей в форме Настройка криптографии (гиперссылка Настройка криптографии формы Настройки программы ).
Общие настройки
Для указания общих настроек провайдера (поставщика) криптографического сервиса нужно воспользоваться закладкой формы Общие настройки .
На открывшейся закладке система автоматически определит установленный на компьютере криптопровайдер и заполнит следующие поля:
Наиболее распространенные криптопровайдеры, сертифицированные ФСБ России, имеют следующие параметры:
Для указания дополнительных настроек криптографии в программе можно воспользоваться командой Все действия – Расширенная настройка криптографии .
Настройка сертификатов подписей
Для того чтобы в дальнейшем в программе использовать шифрование и ЭП необходимо импортировать сертификаты подписей, используя команды в группе Добавить сертификат – И з хранилища сертификатов или И з файла .
После того как сертификат добавлен в программу, в форме сертификата нужно задать виды документов, для подписи которых будет использоваться данный сертификат.
В процессе обмена электронными документами может возникнуть ситуация, когда функции разделены между пользователями: одни сотрудники организации готовят электронные документы, а другие - только подписывают их ЭП.
В форме сертификата ЭП можно указать ограничение, кому из пользователей этот сертификат будет доступен для подписи. Если флаг Ограничить доступ к сертификату не установлен, то сертификат ЭП в программе будет доступен всем пользователям, зашедшим с компьютера, на котором установлен сертификат подписи.
Если установлен флаг Запомнить пароль к сертификату, то при наличии доступа к закрытой части ключа подписи (обычно закрытая часть ключа храниться на внешних носителях) сформировать ЭП с помощью этого сертификата сможет любой пользователь программы. Такая ситуация может возникнуть, когда необходимо настроить автоматическое формирование ЭП программой на извещениях о получении документов без запроса пользователя.
В форме сертификата по команде Тест настроек сертификата можно проверить корректность настроек криптографии для данного сертификата на текущем компьютере.
Настройка соглашений об использовании электронных документов
Все настройки параметров обмена электронными документами выполняются в справочнике Соглашение об использовании электронных документов . Обмен электронными документами может осуществляться через оператора электронного документооборота (далее оператора ЭДО) или напрямую между контрагентами.
Новый элемент нужного способа обмена можно ввести из списка соглашений, находясь на нужной закладке. Список доступен по команде Соглашения об использовании электронных документов Панели навигации основного окна программы или на форме Настройки программы по отдельной команде.
Настройка соглашения обмена через оператора ЭДО
Для использования обмена электронными документами между контрагентами через оператора ЭДО необходимо ввести одно, общее соглашение для всех участников обмена.
Обмен через оператора ЭДО возможен только при применении электронных цифровых подписей и выполненных настройках криптографии (см. Настройка шифрования и ЭП) .
Согласно законодательству обмен электронными счетами-фактурами между контрагентами предусматривает обязательное участие третьей стороны – Оператора ЭДО.
В настоящее время в программе поддержан обмен через оператора ЭДО – компанию Такском, в рамках совместного решения «1С-Такском» .
Важно! Для того чтобы иметь возможность обмениваться электронными документами через оператора ЭДО «Такском» необходимо внимательно прочитать условия лицензионного соглашения по программе и согласиться с ним (в противном случае обмен через оператора ЭДО будет недоступен в программе).
Соглашение через оператора ЭДО можно ввести 2-мя способами:
Помощник регистрации нового соглашения через оператора ЭДО
Воспользовавшись помощником регистрации нового соглашения , можно последовательно задать и протестировать общую настройку криптографии в системе, импортировать и настроить сертификат ЭП, получить уникальный ИД участника обмена. Результатом работы помощника будет открытая форма новое соглашение с правильными настройками. Именно этот способ ввода нового соглашения является рекомендуемым.
По шагам в помощнике необходимо:
1) Проверить общие настройки криптографии (программа автоматически их предзаполнит).
2) Указать организацию и сертификат организации, который будет использоваться для авторизации на сервисе оператора ЭДО.
3) Получить уникальный идентификатор участника, заполнив заявку на подключении к обмену электронными документами прямо в программе.
Результатом правильного завершения процесса регистрации нового участника ЭДО должен быть присвоенный идентификатор участника обмена ЭД.
Ввод нового соглашения традиционным способом
Если воспользоваться ручным заполнением формы элемента, то в форме соглашения необходимо задать следующие настройки обмена:
Для того чтобы проверить корректность выполненных настро ек, необходимо воспользоваться командой в соглашении Тест настроек соглашения .
Для того чтобы получить новые приглашения от других контрагентов, а также актуализировать статусы участников обмена, необходимо воспользоваться командой Обновить статусы с сервиса . Программа загрузит новые приглашения в статусе Ожидает согласие , которые необходимо обработать (принять их или отклонить).
Чтобы одобрить приглашение к обмену или отказаться от обмена, надо выбрать соответствующую команду из группы Изменить статус . Этими командами можно воспользоваться в любой момент времени, чтобы отказаться от обмена с конкретным контрагентом.
Обмен с контрагентом через оператора ЭДО возможен только в том случае, если участник одобрил приглашение к обмену, тогда сервис оператора ЭДО вернет его Идентификатор и программа установит статус Присоединен .
Настройки, выполненные в соглашении, действуют только в том случае, если соглашение находится в статусе Действует .
Важно! Соглашение прямого обмена имеет более высокий приоритет по сравнению с Соглашением через оператора ЭДО , т.е. если в программе оформлено два действующих соглашения с одним контрагентом (соглашение прямого обмена и соглашение через оператора ЭДО), то программа выполнит отправку электронного документа по «Способу обмена», заданному в Соглашении прямого обмена, если на закладке «Исходящие документы» у используемого «Вида электронного документа» установлен флаг «Отправлять».
Важно! Обмен электронными документами с "не-1С" системой возможен через оператора ЭДО, если учетная система контрагента поддерживает единые с 1С-конфигурациями форматы электронных документов. Для такого контрагента-участника в настройках соглашения об обмене через оператора ЭДО в реквизите Версия регламента ЭДО необходимо указать 2.0.
Настройка соглашения прямого обмена между контрагентами
Для использования прямого обмена электронными документами между контрагентами необходимо ввести для каждого контрагента свое соглашение, где указать индивидуальные параметры взаимодействия сторон.
В соглашении необходимо задать следующие настройки обмена:
На закладке Способ обмена настроить параметры передачи данных между участниками :
Эти настройки также действуют на все виды электронных документов, участвующие в обмене.
В таблице видов документов необходимо флажками отметить те действия, которые будут осуществляться над документами:
Для исходящих документов возможны следующие статусы:
Для входящих документов возможны следующие статусы:
Программа позволяет вкладывать в пакет передаваемых электронных документов файлы, следующих форматов: документ XML (обязательный для использования), документ PDF, документ HTML, документ Word 2007, лист Excel, табличный документ 1С, электронная таблица ODF. Такая возможность позволяет визуально контролировать пересылаемые данные. Для использования такой возможности в форме соглашения на закладке Форматы исходящих документов необходимо установить соответствующие флаги.
На закладке Доверенные сертификаты подписей в таблице можно сформировать перечень эталонных сертификатов подписей, полученных от контрагента. Если такой перечень ведется и установлен флаг Проверять сертификаты подписей контрагента , то в процессе работы с электронными документами программа будет сверять сертификат, которым подписан электронный документ от контрагента с сертификатом из перечня эталонных. Если в процессе проверки, окажется что, сертификат ЭП, которым подписан документ, отсутствует в списке, то строка ЭП с таким сертификатом в форме просмотра электронного документа будет выделена пиктограммой «Внимание» .
Настройки, выполненные в соглашении, действуют только в том случае, если соглашение находится в статусе Действует . Для соглашения можно указать срок действия соглашения (информационно) - Срок действия до .
Для того чтобы проверить корректность выполненных настроек, необходимо воспользоваться командой в соглашении Тест настроек соглашения .
Заполнить соглашение прямого обмена можно по Типовому соглашению . Типовое соглашение является шаблоном и служит для быстрого заполнения настроек Организации для соглашений прямого обмена. Например, с помощью типового соглашения можно быстро заполнить способ обмена, определить состав входящих и исходящих документов, участвующих в обмене, форматы исходящих файлов. Все эти поля могут быть заполнены в соглашении из типового соглашения, после того как типовое соглашение будет выбрано в соответствующем поле формы.
Здравствуй Гиктаймс, сегодня мы поговорим о некоторых, а по сути — одной большой, проблемах сдачи электронной отчетности в системе GNU/Linux.
Вопрос сдачи электронной отчетности из ОС Linux давно обсуждался как на Хабре/Гиктаймс, так и на тематических форумах — Мисте, Убунту, ЛОРе, КриптоПро и форуме техподдержки 1С: ИТС. В двух словах на настоящий момент есть два решения — либо использовать облачную КЭП и сдавать отчетность через обозреватель, либо использовать выделенную/виртуальную машину с установленной ОС Windows (пусть даже пробной версией) для сдачи отчетности. Вариант сдачи отчетности с помощью специализированных утилит предоставляемых органами (ФНС, ПФР, ФСС, Росстат, ФСРАР) возможен только при использовании Wine@Etersoft, что фактически тоже костыль (ибо нам потребуется ДВЕ лицензии на СКЗИ КриптоПро — для Windows и Linux).
Не секрет что для ОС GNU/Linux существует не так уж и много программ, для ведения бухгалтерии: Ананас (который ныне покоится с миром), украинский Дебет+ (у которого модуль поддержки Российского законодательства не обновлялся уже, Ктулу знает сколько) и 1С бухгалтерия. Имеются в виду Нативные приложения. Из всех вышеперечисленных только 1С на момент написания статьи входит в государственный реестр отечественного ПО и содержит механизмы подготовки и сдачи отчетности в электронном виде через спец-операторов электронного документооборота. К слову операторов, поддерживаемых 1С бухгалтерией не много: ЗАО "Калуга-Астрал" (разработчик подсистемы 1С-Отчетность), ООО "Такском", ООО НПФ "Форус" и мифический "Прочий оператор документооборота".
К сожалению сдача отчетности из 1С сопряжена с рядом трудностей, с которыми может столкнуться рядовой (да и опытный) системный администратор. Разумеется мы подробно рассмотрим эти проблемы и способы их решения.
Первая проблема с которой мы сталкиваемся — это СКЗИ. Нет, не их отсутствие, они есть. Для Linux есть несколько сертифицированных СКЗИ (с поддержкой ГОСТ) доступных к установке и используемых в разных подсистемах. На момент написания статьи это следующие СКЗИ, поправьте меня, если я что-то упустил:
CryptoCom
Данная СКЗИ доступна для платформ i686 и amd64, используется в основном в системах интернет-банкинга, в частности системой iBank (используется многими банками, такими как ГазпромБанк, УБРИР, Альфа и д.р.).
CryptoPro CSP
Фактически единственное на настоящий момент комплексное решение для Linux для работы с электронной подписью и шифрованием. Доступна для платформ i686, amd64, armhf (включая android), PowerPC. Это не говоря уже о том что у них есть версии для Solaris (i686, amd64, sparc), AIX, FreeBSD, OSX и iOS. Как ни странно (сарказм), именно КриптоПро официально рекомендуется многими органами государственной власти для взаимодействия и электронного документооборота. Лицензии на КриптоПро часто идут в составе ключа ЭЦП, и в составе договора комплексного обслуживания для сдачи отчетности. Мой выбор был однозначным в пользу этого СКЗИ. К минусам можно отнести относительную сложность установки на системах отличных от RHEL/SLES и встречающиеся недочеты в сборке пакетов ПО (не разрешенные импортируемые символы и экспортируемые функции с разорванными зависимостями). В большинстве случаев эти недочеты не видны пользователю, т.к. данные функции предназначены для работы различных библиотек в составе КриптоПро и автоматически разрешаются при их первом вызове ядром ОС (в адресном пространстве приложения уже загружены нужные библиотеки). Второй минус — отсутствие почтового клиента, если обозреватель CryptoFox представлен, но от поддержки Thunderbird в КриптоПро отказались. Нужно отдать должное, что с их стороны предпринимались активные попытки внести изменения в рабочую версию NSS с целью поддержки ГОСТ, но воз и ныне там. Если бы изменения были приняты, поддержка ГОСТ появилась бы во всех обозревателях и приложениях использующих NSS, таких как Open/LibreOffice, продуктах Mozilla, Nautilus/Nemo, Thunar, XCA и других программах.
По понятным причинам был выбран СКЗИ КриптоПро, и давайте остановимся на нем подробнее.
Во-первых, для платформы Linux отсутствует знакомое многим приложение КриптоАРМ, для подписи документов. Впрочем для создания прикрепленной и открепленной подписи можно воспользоваться утилитами командной строки. Для создания и проверки открепленной цифровой подписи мной были созданы два сценария — sign и verify, соответственно. Текст сценариев приведен ниже, согласен что они несколько костыльные, но писалось на скорую руку, а на тот момент бета-версия CryptoPro 4.0 ведя себя странно, при прямой передаче путей к подписываемым, и выходным файлам.
Во-вторых, и это очень важно, мы имеем следующую картину. в 1С бухгалтерии штатные настройки работы с СКЗИ КриптоПро приведены для версии 3.6. С версией 3.6 работает старая версия CryptoFox. На этом достоинства заканчиваются и начинается головная боль. Старая версия CryptoFox не отображает ни один современный сайт, даже портал налоговой инспекции куда-то уползает. При попытке установить
С версией 3.9 ситуация ещё веселее — 1С её уже не видит, но CryptoFox ещё падает, при чем как старый, так и новый.
Версия 4.0, напротив — не видится 1С, но зато с ней заводится CryptoPro Browser Plugin 2.0, работает вход на госплощадки из CryptoFox (о них разговор отдельный, и если разбирать работу из ОС GNU/Linux с ними — материала хватит на ещё одну статью). Проблема — заставить увидеть 1Ску установленный СКЗИ. Проблема в общем то не такая уж и серьёзная, решается буквально за пятнадцать секунд, но на поиск самого решения ушла целая неделя общения с техподдержкой КриптоПро (и отпинывания меня поддержкой 1С на инструкцию в ИТС). В итоге проблема была решена самостоятельно, и решение в конечном итоге опубликовано на форуме КриптоПро. Методология решения проблемы на будущее:
В 1С бухгалтерии имеется возможность добавить произвольный криптопровайдер. Воспользуемся этим механизмом, добавьте нового криптопровайдера, и назовите его, скажем "КриптоПро CSP 4.0".
- Указываем следующие данные:
Имя программы Crypto-Pro GOST R 34.10-2001 KC1 CSP Тип программы 75 Алгоритм подписи GOST R 34.10-2001 Алгоритм хеширования GOST R 34.11-94 Алгоритм шифрования GOST 28147-89 - Сохраняем криптопровайдер и указываем путь к библиотеке: /opt/cprocsp/lib/amd64/libcapi20.so
Готово, 1С теперь видит установленный криптопровайдер. Казалось бы — всё, можно проступать к добавлению сертификатов и настройке сдачи отчётности, но не тут то было. Маленькая беленькая сибирская лисичка подкралась к нам откуда мы и не ждали — от самих разработчиков 1С. Так исторически сложилось, что подсистему электронного документооборота, 1С-Отчетность, ядро 1С и конфигурации пишут разные люди, и даже разные компании. При создании конфигураций с функцией 1С-Отчетность для 1С 8.3, например "Бухгалтерия предприятия 3.0", разработчики не долго думая перенесли всю подсистему ЭДКО "как есть", без изменений, в результате чего мы получаем парадокс. Сама 1С бухгалтерия видит СКЗИ, видит сертификаты, позволяет их установить, подписать и зашифровать любые документы, но при этом система электронного документооборота (старая версия) в упор не видит ни одного установленного сертификата, и соответственно не может даже получить начальную конфигурацию от оператора документооборота — её попросту нечем расшифровывать. Вернее чем расшифровывать есть, но подсистема ЭДКО использует свой собственный механизм работы с СКЗИ, задействуя внешнюю компоненту (только для Windows) и ничего не знает о существовании встроенных механизмов работы с СКЗИ, которые использует сама 1С в рамках конфигурации.
Тем не менее, подсистема ЭДО (не путать с ЭДКО) с контрагентами видит все актуальные сертификаты и позволяет подключиться к системе электронного документооборота. Но не сдачи отчетности.
Для Linux действует ограничение на прямую работу конфигурации Клиент-ЭДО, с внешней конфигурационной базой, и для этого нужен работающий сервер 1С. Так как базовые версии конфигураций не позволяют использовать клиент-серверный вариант развертывания 1С, интеграция Клиент-ЭДО и бухгалтерии в Linux для таких конфигураций не возможна, будет работать только для полнофункциональных. В большинстве конфигураций можно включить обмен с контрагентами, и он будет работать, несмотря на не работающую 1С-Отчетность.
Если мы откроем конфигуратор и включим режим отладки, мы увидим следующую картину:
Формы 1С-Отчетности используют Общие->ОбщиеМодули->КриптографияЭДКОКлиент, который в свою очередь опирается на работу внешней компоненты Addin.ЭДОNative.CryptS.
Тот же функционал работы с электронной цифровой подписью и шифрованием (без функционала обмена транспортными контейнерами по электронным каналам связи) реализован в Общие->ОбщиеМодули->ЭлектроннаяПодписьКлиент, которая учитывает работу в ОС семейства Linux и корректно загружает как и внешнюю компоненту работы с XMLDSig, так и модуль криптопровайдера. Данная библиотека корректно видит все сертификаты, позволяет осуществлять подпись и шифрование документов, содержит функции для работы как с объектами в памяти так и с файлами на жестком диске. Данная библиотека используется во всех стандартных механизмах работы с ЭЦП внутри 1С, кроме подсистемы 1С-Отчетности (ЭДКО).
То есть для реализации работы подсистемы 1С ЭДКО достаточно переписать либо формы 1С-Отчетности на использование встроенных механизмов, либо перегрузить КриптографияЭДКОКлиент, для использования не внешней компоненты, а переадресовывать вызовы работы с сертификатами, ЭЦП и шифрованием на встроенный клиент работы с СКЗИ.
Общение с техподдержкой 1С дало лишь ответ что они в курсе данной проблемы, но клиентов использующих ОС GNU/Linux слишком мало (потребность не носит массовый характер), но задача у них "записана".
UPD:
Таки удалось завести работу мастера после детального изучения исходников. Пока застрял на расшифровке контейнера от Такском, но сертификаты уже видятся. Работает только на свежей версии КриптоПро 4. Завести как указано ниже. Наименование представления роли не играет, но "внутри" 1С-ЭДКО именно так:
Представление | CryptoPro CSP |
Имя программы | Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider |
Тип программы | 75 |
Алгоритм подписи | GOST R 34.10-2001 |
Алгоритм хеширования | GOST R 34.11-94 |
Алгоритм шифрования | GOST 28147-89 |
Обязательными при проверке являются поля Имя программы и Тип программы. Имя программы относится к режиму совместимости с версией криптопровайдера 2.0, в бета версии 4.0 наименование отсутствовало.
Основная проблема скрыта тут: Общие->Общие модули->КриптографияЭДКОСлужебныйКлиент.ПолучитьКриптопровайдеры
Для Linux убрать единичку. Или добавить проверку для версии КриптоПро 3.9 и выше:
Общие->Общие модули->КриптографияЭДКОКлиентСервер.ПолучитьКриптопровайдеры.КриптопровайдерCryptoPro
Имя: Crypto-Pro GOST R 34.10-2001 KC1 CSP
для клиента, или
Имя: Crypto-Pro GOST R 34.10-2001 KC2 CSP
для сервера.
При работе с сервисом 1С-Отчетность может выходить ошибка: Указан неправильный алгоритм.
Данная ошибка выходит при отправке отчетности, при настройке или продлении сервиса. Она обычно связана с криптопровайдером (СКЗИ). Наиболее популярные это VipNet CSP и КриптоПро CSP и на практике чаще всего используются именно они. В статье рассмотрим, что делать в такой ситуации. Примеры будем разбирать на VipNet CSP.
Проверка версии криптопровайдера
Первым делом необходимо проверить версию криптопровайдера (СКЗИ). Для этого откроем программу через меню Пуск.
Снизу отображается версия.
Проверить и скачать актуальные версии VipNet можно на сайте разработчика. Есть некоторые особенности использования:
- Версия 4.2 не работает совместно с антивирусником Касперский. В таком случае рекомендуется установить бета-версию 4.5.
- С 2020 года для юридически значимых документов требуется использовать ЭЦП согласно ГОСТ 34.10-2012. Этот ГОСТ поддерживается в VipNet с версии 4.2, а в КриптоПро с версии 4.0. К отправке отчетности это тоже относится.
Получите понятные самоучители по 1С бесплатно:
Таким образом, если используется старая версия СКЗИ, нужно ее обновить.
Проверка алгоритмов в программе 1С
Следующая причина — неверный выбор алгоритмов в 1С.
Рассмотрим, где это проверить в 1С:Бухгалтерии предприятия. На других программах меню отличается, но суть такая же.
Зайдем в меню «Администрирование — Настройки программы — Обмен электронными документами».
В разделе «Электронная подпись и шифрование» перейдем по ссылке «Настройки электронной подписи и шифрования».
На закладке «Программы» показываются установленные на компьютере криптопровайдеры. Эта информация появляется автоматически после установки.
Щелкнем два раза на строке с ГОСТ 2012.
Снизу отображаются алгоритмы: подписи, хеширования, шифрования. Они настроены по умолчанию, но допускается ручное редактирование.
Возможно настройки были изменены и выбран неверный алгоритм. Для выбора корректных настроек достаточно в поле «Представление» выбрать программу заново. Тогда алгоритмы установятся по умолчанию.
После сохранения проверьте работу с отчетностью.
Восстановление, переустановка криптопровайдера
Если с версией СКЗИ и алгоритмами все хорошо, попробуем восстановить или переустановить криптопровайдер.
Перед этим лучше создать точку восстановления системы на компьютере, чтобы в случае чего можно было вернуться к начальной ситуации.
Создание точки восстановления системы
Откроем Панель управления и перейдем по ссылке «Система и безопасность».
Далее «Защита системы».
На закладке «Защита системы» создается точка восстановления.
Если кнопки «Создать» и «Восстановить» неактивны, значит эта функция отключена. В таком случае жмем «Настроить» и включаем защиту.
После этого нажимаем кнопку «Создать». Вводим название и снова «Создать».
При необходимости можно вернуться к начальной точке по кнопке «Восстановить».
Восстановление криптопровайдера
Перейдем в список установленных на компьютере программ.
Найдем в списке VipNet, выделим его и нажмем «Восстановить».
После перезагрузки проверяем работу отчетности.
Переустановка криптопровайдера
Если восстановление не помогло, удаляем СКЗИ и устанавливаем заново.
Читайте также: