Меню

Ошибка при вызове pkcs7подписать менеджера криптографии

Я
   ВикторП

10.01.19 — 13:58

При подписании

Ошибка при вызове «PKCS7Подписать» менеджера криптографии.

по причине:

Ошибка вызова метода внешней компоненты

по причине:

Ошибка исполнения функции.

Кто сталкивался, как решал?

   Voblhned

1 — 15.01.19 — 09:49

та же проблема, пока понимания нету

   dka80

2 — 15.01.19 — 10:11

Зарегистрированные ошибки смотрел? Там что-то было про криптографию

   ВикторП

3 — 16.01.19 — 11:05

Срок действия вышел 🙂

   Мыш

4 — 16.01.19 — 11:12

(3) Релиз какой?

   Mr Roudyk

5 — 16.04.19 — 10:39

Почти та же ошибка. Кто-нибудь нашёл решение?

Ошибка при вызове «PKCS7ПодписатьСДанными» менеджера криптографии.

по причине:

Ошибка вызова метода внешней компоненты

по причине:

Ошибка исполнения функции.

  

Max411

6 — 16.07.19 — 04:36

(5) Та же ошибка.

Была просрочена лицензия Крпто-про. После заполнения другой лицензией и обязательного перезапуска сеанса windows всё заработало )

TurboConf — расширение возможностей Конфигуратора 1С

ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.

Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.

Форум КриптоПро
 » 
Общие вопросы
 » 
Общие вопросы
 » 
Авторизация СКБ Контур в фирме 1С


Offline

dzemon

 


#1
Оставлено
:

17 декабря 2018 г. 12:03:51(UTC)

dzemon

Статус: Новичок

Группы: Участники

Зарегистрирован: 17.12.2018(UTC)
Сообщений: 2

Всем добрый день.
Я не нашел такой же темы, поэтому создал здесь, админы думаю исправят если что не так.
У нас в конторе стоит Крипто про 4 пользуемся ЭЦП для отправке отчетов в различные органы.
Так же подписывали шифровали данные для отправки отчетов в фсс по средствам 1с ЗУП 3.1, после очередного обновления отправка эта накрылась, теперь невозможно отправлять отчеты.

ОШИБКА В САМОЙ 1С СЛУДУЮЩАЯ —
«Ошибка при вызове «PKCS7ПодписатьСДаннымиИЗашифровать» менеджера криптографии.
по причине:Ошибка вызова метода внешней компоненты
по причине:Удостоверяющий центр ‘АО «ПФ «СКБ КОНТУР»‘, издавший сертификат ‘АО «************»‘ (ДАТА), на момент издания сертификата не авторизован фирмой ‘1С’.
«

Сейчас удается загрузить больничный с ФСС по средствам 1с, но при выгрузке отчета(не отправке, а именно выгрузке в файл) просто выгружается файл в формате.xml а самого зашифрованного файла нет.
Т.е. получается не удается зашифровать файл даже при выгрузке???

Вопрос в следующем,
1)как можно авторизовать СКБ Контур в фирме 1с, что бы отправлять как раньше напрямую из 1эски.
2)Если это не возможно сделать, то хотя бы как возможно выгрузить зашифрованный отчет из 1с.
3)И если я ошибаюсь в двух первых вопросах, то получается 1с выгружает лишь только файл xml , который потом отдельно нужно шифровать и отравлять???
Спасибо.


Вверх


Offline

Александр Лавник

 


#2
Оставлено
:

17 декабря 2018 г. 12:09:38(UTC)

Александр Лавник

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 30.06.2016(UTC)
Сообщений: 3,192
Мужчина
Российская Федерация

Сказал «Спасибо»: 51 раз
Поблагодарили: 719 раз в 672 постах

Автор: dzemon Перейти к цитате

Всем добрый день.
Я не нашел такой же темы, поэтому создал здесь, админы думаю исправят если что не так.
У нас в конторе стоит Крипто про 4 пользуемся ЭЦП для отправке отчетов в различные органы.
Так же подписывали шифровали данные для отправки отчетов в фсс по средствам 1с ЗУП 3.1, после очередного обновления отправка эта накрылась, теперь невозможно отправлять отчеты.

ОШИБКА В САМОЙ 1С СЛУДУЮЩАЯ —
«Ошибка при вызове «PKCS7ПодписатьСДаннымиИЗашифровать» менеджера криптографии.
по причине:Ошибка вызова метода внешней компоненты
по причине:Удостоверяющий центр ‘АО «ПФ «СКБ КОНТУР»‘, издавший сертификат ‘АО «************»‘ (ДАТА), на момент издания сертификата не авторизован фирмой ‘1С’.
«

Сейчас удается загрузить больничный с ФСС по средствам 1с, но при выгрузке отчета(не отправке, а именно выгрузке в файл) просто выгружается файл в формате.xml а самого зашифрованного файла нет.
Т.е. получается не удается зашифровать файл даже при выгрузке???

Вопрос в следующем,
1)как можно авторизовать СКБ Контур в фирме 1с, что бы отправлять как раньше напрямую из 1эски.
2)Если это не возможно сделать, то хотя бы как возможно выгрузить зашифрованный отчет из 1с.
3)И если я ошибаюсь в двух первых вопросах, то получается 1с выгружает лишь только файл xml , который потом отдельно нужно шифровать и отравлять???
Спасибо.

Добрый день.

Все эти вопросы Вам необходимо задавать компании, которая осуществляет Вам техническую поддержку 1С.

Техническую поддержку оказываем тут
Наша база знаний


Вверх


Offline

dzemon

 


#3
Оставлено
:

17 декабря 2018 г. 12:50:46(UTC)

dzemon

Статус: Новичок

Группы: Участники

Зарегистрирован: 17.12.2018(UTC)
Сообщений: 2

Да, забыл указать, общался с 1с фирмой, был дан ответ, что есть список контор, которые прошли авторизацию, а все остальные вопросы задавайте фирме, которая выдала ЭЦП. Получается есть список которые авторизованы у фирмы 1с и СКБ Контур не входит в их число, поэтому хотя бы услышать ответ на первый вопрос — Каким образом сделать так, что бы ЭЦП нашей организации прошла авторизацю у фирмы 1с.Если это возможно.


Вверх


Offline

xrockx

 


#4
Оставлено
:

17 декабря 2018 г. 13:02:27(UTC)

xrockx

Статус: Активный участник

Группы: Участники

Зарегистрирован: 15.03.2013(UTC)
Сообщений: 87
Мужчина
Российская Федерация
Откуда: Санкт-Петербург

Сказал «Спасибо»: 38 раз
Поблагодарили: 10 раз в 8 постах

Опять же — Вопрос в СКБ Контур.
Разработчики Крипто-ПРО тут вообще не причём.


Вверх

Пользователи, просматривающие эту тему

Guest

Форум КриптоПро
 » 
Общие вопросы
 » 
Общие вопросы
 » 
Авторизация СКБ Контур в фирме 1С

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.

Показывать по
10
20
40
сообщений

Новая тема

Ответить

Михаил Федосов

Дата регистрации: 10.12.2018
Сообщений: 1

Здравствуйте.
После обновления 1С:УПП до версии 1.3.113.4 не отправляется реестр пособий в ФСС средствами самой 1С.
Ошибка следующая:

Объект CryptS : Удостоверяющий центр АО «ПФ «СКБ КОНТУР», издавший сертификат Наша организация (07.11.2018 — 07.02.2020), на момент издания сертификата не авторизован фирмой 1С.
Со списком удостоверяющих центров, авторизованных фирмой 1С, можно ознакомиться на сайте v8 1c ru.
Объект CryptS : Не найден сертификат.
Не удалось подписать файл выгрузки:
Ошибка при вызове метода контекста (PKCS7ПодписатьСДанными)

После этого выскакивает ошибка платформы, что файл …Tempv8_54E9_3d.tmp не найден и программа закрывается.

Загрузка данных из ФСС в больничный работает без проблем.
Вариант работы 1С клиент-сервер.
Подскажите в чем может быть причина?

gucci76

Дата регистрации: 16.03.2008
Сообщений: 364

Похожая ситуация в ЗУП 3.1.10.309
(1) Разобрались что делать?

loi1973

Дата регистрации: 10.04.2011
Сообщений: 528

Подниму. Кто-нибудь решил проблему? ЗУП 3.1.13.146

loi1973

Дата регистрации: 10.04.2011
Сообщений: 528

И еще вопрос, ткните пожалуйста — где посмотреть список удостоверяющих центров, которые сертифицированы 1с-кой? По старой ссылке с диска ИТС — «страница отсутствует».
Может у нас правда не той организацией выданы подписи и дело вовсе не в программе 1С.

Ксения Костромитинова

Дата регистрации: 06.07.2020
Сообщений: 1

loi1973, Здравствуйте! вы не нашли ответ на этот вопрос?

Геннадий С

Дата регистрации: 26.03.2017
Сообщений: 637

loi1973, к сожалению, УЦ АО «ПФ «СКБ КОНТУР» всё ещё не авторизован 1С. И имейте ввиду, что сертификат ФСС работает в 1С только с тем криптопровайдером, с которым был сформирован закрытый ключ сертификата.

loi1973

Дата регистрации: 10.04.2011
Сообщений: 528

Ксения, здравствуйте. Почему-то перестали приходить на почту уведомления, не увидела это сообщение.
Решили обращением в другой УЦ, вот в какой — не скажу, не помню ) Но точно из списка, одобренного фирмой 1С )

Показывать по
10
20
40
сообщений

Недавно столкнулись с ошибкой при отправке реестра ЭЛН в ФСС. Система писала что отчет не отправлен. Возникла следующая ошибка.

Ошибка «Не удалось зашифровать файл. Не удалось зашифровать файл выгрузки!»

В журнале регистрации отображалась следующая информация:

Событие:
Электронный документооборот с контролирующими органами. Менеджер криптографии
Комментарий:
Ошибка при вызове «Зашифровать» менеджера криптографии.
по причине:
Ошибка вызова метода внешней компоненты
по причине:
Набор ключей не определен.

Проблема заключалась в том, что некорректно были настроены сертификаты ФСС по организации.

Если открыть организацию, перейти на закладку ЭДО. Нажать ссылку рядом с пунктом «Электронный документооборот с ФСС»

Настройки ЭДО Организации

В настройках обмена нужно указать Сертификат организации, Сертификат ФСС и Сертификат ФСС ЭЛН. Специфика данной настройки заключается в том, что сертификаты ФСС визуально не различимы. Какой куда подставлять на первый взгляд не совсем понятно.

Окно Настройки обмена с ФСС

Сертификат ФСС можно скачать с сайта http://fss.ru/ru/fund/download/282307/index.shtml

Сертификат ФСС ЭЛН можно скачать с сайта https://lk.fss.ru/eln.html


Offline

Евгений_СК

 


#1
Оставлено
:

17 сентября 2018 г. 18:04:37(UTC)

Евгений_СК

Статус: Участник

Группы: Участники

Зарегистрирован: 17.09.2018(UTC)
Сообщений: 17
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 8 раз
Поблагодарили: 1 раз в 1 постах

Добрый день!
Стоит задача подписи строковых данных по формату CADES BES. 1C подписывает только в формате PKCS#7. Как можно интегрировать КриптоПро в 1С для решения описанной задачи?


Вверх


Offline

Андрей Писарев

 


#2
Оставлено
:

17 сентября 2018 г. 21:31:09(UTC)

Андрей *

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,736
Мужчина
Российская Федерация

Сказал «Спасибо»: 451 раз
Поблагодарили: 1838 раз в 1421 постах

Автор: Евгений_СК Перейти к цитате

Добрый день!
Стоит задача подписи строковых данных по формату CADES BES. 1C подписывает только в формате PKCS#7. Как можно интегрировать КриптоПро в 1С для решения описанной задачи?

Здравствуйте.

Интерфейс COM

в 1С — это работа через — COMОбъект

В вашем случае — кодируйте строку в base64, правильно инициализируйте COM и выполняйте подписание.

Примеры:

Код:


...
// Значение свойства ContentEncoding должно быть задано
        // до заполнения свойства Content
        oSignedData.ContentEncoding = CADESCOM_BASE64_TO_BINARY;
        oSignedData.Content = dataToSign;
     sSignedMessage = oSignedData.SignCades(oSigner, CADESCOM_CADES_BES, true);
...

dataToSign — ваши данные (тексxml и т.п.) закодированные в base64

В целом работа аналогична, как с CAPICOM от MS.

Либо используйте возможности из 1С (МенеджерКриптографии).
Будет CMS — CADES BES.

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW


Offline

Евгений_СК

 


#3
Оставлено
:

17 сентября 2018 г. 21:37:53(UTC)

Евгений_СК

Статус: Участник

Группы: Участники

Зарегистрирован: 17.09.2018(UTC)
Сообщений: 17
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 8 раз
Поблагодарили: 1 раз в 1 постах

МенеджерКриптографии 1С не хочет в CADES BES подписывать — только PKCS#7. У 1с в справке написано, что метод «Подписать» подписывает в PKCS#7


Вверх


Offline

Андрей Писарев

 


#4
Оставлено
:

17 сентября 2018 г. 22:36:01(UTC)

Андрей *

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,736
Мужчина
Российская Федерация

Сказал «Спасибо»: 451 раз
Поблагодарили: 1838 раз в 1421 постах

Автор: Евгений_СК Перейти к цитате

МенеджерКриптографии 1С не хочет в CADES BES подписывать — только PKCS#7. У 1с в справке написано, что метод «Подписать» подписывает в PKCS#7

Как это стало известно?

Вместо PKCS#7 — используется CMS.

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW


Offline

Андрей Писарев

 


#5
Оставлено
:

17 сентября 2018 г. 22:37:50(UTC)

Андрей *

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,736
Мужчина
Российская Федерация

Сказал «Спасибо»: 451 раз
Поблагодарили: 1838 раз в 1421 постах

a6404d0827f33a3377aff8b388392639.jpg (157kb) загружен 39 раз(а).

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW

thanks 1 пользователь поблагодарил Андрей * за этот пост.

Евгений_СК

оставлено 18.09.2018(UTC)


Offline

Андрей Писарев

 


#6
Оставлено
:

17 сентября 2018 г. 22:50:13(UTC)

Андрей *

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,736
Мужчина
Российская Федерация

Сказал «Спасибо»: 451 раз
Поблагодарили: 1838 раз в 1421 постах

Особенности создания подписанных CMS сообщений в Крипто-Про CSP 3.6 и выше

Цитата:

Поскольку после создания подписи нельзя добавлять или изменять подписанные атрибуты, Крипто-Про CSP при создании подписанного сообщения с использованием алгоритма ГОСТ Р 34.10/34.11 добавляет к нему подписанный атрибут SigningCertificateV2.

Итого — на выходе CMS (CADES BES).

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW

thanks 1 пользователь поблагодарил Андрей * за этот пост.

Евгений_СК

оставлено 18.09.2018(UTC)


Offline

Евгений_СК

 


#7
Оставлено
:

18 сентября 2018 г. 13:21:35(UTC)

Евгений_СК

Статус: Участник

Группы: Участники

Зарегистрирован: 17.09.2018(UTC)
Сообщений: 17
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 8 раз
Поблагодарили: 1 раз в 1 постах

Автор: Андрей Писарев Перейти к цитате

Автор: Евгений_СК Перейти к цитате

МенеджерКриптографии 1С не хочет в CADES BES подписывать — только PKCS#7. У 1с в справке написано, что метод «Подписать» подписывает в PKCS#7

Как это стало известно?

Вместо PKCS#7 — используется CMS.

У объекта «МенеджерКриптографии» в 1С есть метод «Подписать», с помощью которого, собственно, и осуществляется подпись. В справке к методу написано:
«Создает подпись в формате PKCS#7 и возвращает ее как ДвоичныеДанные или сохраняет ее в файл.»
Нам клиенты присылают некую строку, которую мы должны подписать и отправить им обратно. Когда я подписываю ее методом 1С «Подписать», проверка у клиента не проходит; когда же я подписываю эту строку на страничке https://www.cryptopro.ru…ge/cades_bes_sample.html , подпись срабатывает нормально. Скажите, по подписи можно как-то понять, какого она формата? Первые символы подписи в 1С — «MIIG», на вышеуказанной странице — «MIII»


Вверх


Offline

Андрей Писарев

 


#8
Оставлено
:

18 сентября 2018 г. 20:00:14(UTC)

Андрей *

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,736
Мужчина
Российская Федерация

Сказал «Спасибо»: 451 раз
Поблагодарили: 1838 раз в 1421 постах

Автор: Евгений_СК Перейти к цитате

Автор: Андрей Писарев Перейти к цитате

Автор: Евгений_СК Перейти к цитате

МенеджерКриптографии 1С не хочет в CADES BES подписывать — только PKCS#7. У 1с в справке написано, что метод «Подписать» подписывает в PKCS#7

Как это стало известно?

Вместо PKCS#7 — используется CMS.

У объекта «МенеджерКриптографии» в 1С есть метод «Подписать», с помощью которого, собственно, и осуществляется подпись. В справке к методу написано:
«Создает подпись в формате PKCS#7 и возвращает ее как ДвоичныеДанные или сохраняет ее в файл.»
Нам клиенты присылают некую строку, которую мы должны подписать и отправить им обратно. Когда я подписываю ее методом 1С «Подписать», проверка у клиента не проходит; когда же я подписываю эту строку на страничке https://www.cryptopro.ru…ge/cades_bes_sample.html , подпись срабатывает нормально. Скажите, по подписи можно как-то понять, какого она формата? Первые символы подписи в 1С — «MIIG», на вышеуказанной странице — «MIII»

Вы должны определиться с требованиями.
Подпись должна быть вместе с данными или отдельно?

На странице — подпись присоединенная.

МенеджерКриптографии.Подписать

Цитата:

Создает подпись в формате PKCS#7 и возвращает ее как ДвоичныеДанные или сохраняет ее в файл.
Подпись создается алгоритмами, которые заданы свойствами АлгоритмХеширования и АлгоритмПодписи.
В данные подписи исходный файл не включается.

Значит используйте CadesCOM и при вызове .Sign — указывайте параметр bDetached = false

Код:


 SignedData.Sign( _
  [ ByVal Signer ], _
  [ ByVal bDetached ], _
  [ ByVal EncodingType ] _
)
 

Примеры

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW


Offline

Андрей Писарев

 


#9
Оставлено
:

18 сентября 2018 г. 20:04:21(UTC)

Андрей *

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,736
Мужчина
Российская Федерация

Сказал «Спасибо»: 451 раз
Поблагодарили: 1838 раз в 1421 постах

Автор: Евгений_СК Перейти к цитате

Скажите, по подписи можно как-то понять, какого она формата? Первые символы подписи в 1С — «MIIG», на вышеуказанной странице — «MIII»

Вы привели часть из base64.
Анализировать необходимо ASN.1 структуру, т.е. до кодирования в base64, чтобы понять какой именно вариант
(bestlong).

Повторюсь — используете Вы CMS (Cades BES), а не pkcs#7.
И по сообщениям — присоедиенная подпись используется.

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW

thanks 1 пользователь поблагодарил Андрей * за этот пост.

Евгений_СК

оставлено 19.09.2018(UTC)


Offline

Евгений_СК

 


#10
Оставлено
:

18 сентября 2018 г. 20:14:16(UTC)

Евгений_СК

Статус: Участник

Группы: Участники

Зарегистрирован: 17.09.2018(UTC)
Сообщений: 17
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 8 раз
Поблагодарили: 1 раз в 1 постах

Да, Ваша правда, 1с не присоединяет данные к подписи, мне же нужна именно подпись с данными. Попробую через CadesCOM, спасибо!


Вверх

Пользователи, просматривающие эту тему

Guest

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.

Ошибка интерфейса модуля криптографии. Модуль криптографии не может выполнить требуемое действие, т.к. контекст был получен в ограниченном режиме.

Номер карточки: SD0011817

При возникновении ошибки «Ошибка интерфейса модуля криптографии. Модуль криптографии не может выполнить требуемое действие, т.к. контекст был получен в ограниченном режиме.» необходимо выполнить проверку электронной подписи.

Алгоритм проверки электронной подписи:

В программном продукте 1С необходимо

1. перейти в раздел «Администрирование»

2. «Обмен электронными документами»

3. «Настройка электронной подписи и шифрования»

4. На вкладке «Сертификаты» открыть используемый сертификат

5. Нажать на кнопку «Проверить»

6. Ввести пароль закрытой части ключа (при его наличии) и нажать «Проверить»

! Обращаем Ваше внимание, что программа сама увеличит количество * в поле «Пароль:» до 16 при проверке. Данное поведение является штатным и выступает дополнительной защитой конфиденциальных данных в виде количества символов в пароле. Проверка будет осуществлена на основании введенных Вами данных .

Если в ходе проверки напротив пункта «Подписание данных» возникнет сигнализирующий об ошибке красный символ, на него необходимо нажать для открытия технической информации об ошибке.

Если в технической информации об ошибке указано » «Ошибка интерфейса модуля криптографии. Модуль криптографии не может выполнить требуемое действие, т.к. контекст был получен в ограниченном режиме.» необходимо выполнить проверку электронной подписи.» это обозначает, что проверка сертификата осуществляется без ввода пароля, хотя на контейнере закрытой части ключа установлен пароль.
Рекомендации:

Уточнить у ответственных лиц организации пароль на электронную подпись.

! Обращаем Ваше внимание, что при копировании контейнера из криптопровайдера, последний просит ввести новый пароль для копии закрытой части ключа, которая в последующем могла быть установлена на Вашем рабочем месте.

! Также сообщаем, что ни техническая поддержка 1С-ЭДО, ни Удостоверяющий центр, который выдал сертификат, не располагают информацией о паролях пользователей. Данная информация является строго конфиденциальной и не подлежит разглашению. Если рекомендации Вам не помогли и пароль утрачен безвозвратно, то единственным выходом из данной ситуации будет выпуск нового сертификата.

АйТиБложик

Маленький IT блог с характером 1С.

Страницы

Поиск по блогу

пятница, 24 апреля 2015 г.

Шифрование строковых данных. Менеджер криптографии.

Шифрование — обратимое преобразование некой информации с целью сокрытия от неавторизованных лиц и, в это же время, предоставление, авторизованным пользователям доступа к ней. Главная задача шифрования — это соблюдение конфиденциальности передаваемой информации.

Методы шифрования:

  • Симметричное шифрование — использует один и тот же ключ и для зашифрования, и для расшифрования;
  • Асимметричное шифрование — использует два разных ключа: один для зашифрования (который также называется открытым), другой для расшифрования (называется закрытым).

Объект МенеджерКриптографии платформы 1С позволяет шифровать данные, используя симметричное шифрование, так как криптопровайдеры ОС Windows используют данный вид шифрования (RC2, RC4).

Создание временного сертификата

Так же желательно создавать сертификат с параметром -sp, который позволит задать имя криптопровайдера для сертификата, например, «Microsoft Strong Cryptographic Provider», так как для инициализации объекта МенеджерКриптографии требуется в конструкторе указывать имя криптопровайдера (имя модуля провайдера).

Пример создания временного сертификата для тестирования шифрования в 1С:
makecert.exe -r -pe -n CN=»www.example.com» -ss my -sr currentuser
-sky exchange -sp «Microsoft Strong Cryptographic Provider»

Внимание: пароль на контейнер закрытого ключа при создании сертификата в данном случае не устанавливается!

Реализация шифрования

Функция шифрования строковых данных:
// Функция выполняет шифрование строковых данных.
//
// Параметры
// СтроковыеДанные — Строка — данные для шифрования;
// Отпечаток — Строка — отпечаток сертификата закодированный в Base64;
// ИмяКП — Строка — имя модкля криптографии;
// ТипКП — Строка — Тип модуля криптографии.
//
// Возвращаемое значение:
// Строка — зашифрованный данные формата PKCS#7 закодированные в Base64.
//
&НаКлиенте
Функция ЗашифроватьСтроку(СтроковыеДанные, Отпечаток, ИмяКП, ТипКП)

ИмяВременногоФайла = ПолучитьИмяВременногоФайла();
ЗаписьТекста = Новый ЗаписьТекста(ИмяВременногоФайла, «CESU-8»);
ЗаписьТекста.Записать(СтроковыеДанные);
ЗаписьТекста.Закрыть();

МенеджерКриптографии = Новый МенеджерКриптографии(ИмяКП, «», ТипКП);
ХранилищеСертификатов = МенеджерКриптографии.ПолучитьХранилищеСертификатов(
ТипХранилищаСертификатовКриптографии.ПерсональныеСертификаты,
РасположениеХранилищаСертификатовКриптографии.ДанныеПользователяОС);
Сертификат = ХранилищеСертификатов.НайтиПоОтпечатку(Base64Значение(Отпечаток));

ЗашифрованныеДанные = МенеджерКриптографии.Зашифровать(ИмяВременногоФайла, Сертификат);

В данной функции строковые данные записываются в файл в кодировке CESU-8, т.е. UTF-8 без BOM. Инициализируется менеджер криптографии и по отпечатку происходит поиск сертификата в хранилище сертификатов текущего пользователя в ветке Личное.

Далее происходит шифрование строковых данных, используя найденный сертификат, тем самым, расшифрование сможет произвести тот пользователь, который имеет доступ к закрытому ключу этого сертификата. Результатом шифрования являются двоичные данные, которые кодируются в строку Base64. Двоичные данные имеют формат PKCS#7.

Функция расшифрования строковых данных:
// Функция выполняет расшифровку строковых данных.
//
// Параметры
// ЗашифрованныеДанные — Строка — зашифрованный данные формата PKCS#7 закодированные в Base64;
// Отпечаток — Строка — отпечаток сертификата закодированный в Base64;
// ПарольЗакрытогоКлюча — Строка — пароль к контейнеру закрытого ключа;
// ИмяКП — Строка — имя модкля криптографии;
// ТипКП — Строка — Тип модуля криптографии.
//
// Возвращаемое значение:
// Строка — расшифрованные строковые данные.
//
&НаКлиенте
Функция РасшифроватьСтроку(ЗашифрованныеДанные, Отпечаток, ПарольЗакрытогоКлюча, ИмяКП, ТипКП)

МенеджерКриптографии = Новый МенеджерКриптографии(ИмяКП, «», ТипКП);
МенеджерКриптографии.ПарольДоступаКЗакрытомуКлючу = ПарольЗакрытогоКлюча;

ИмяВременногоФайла = ПолучитьИмяВременногоФайла();
РасшифрованныеДанные.Записать(ИмяВременногоФайла);
ЧтениеТекста = Новый ЧтениеТекста(ИмяВременногоФайла, «CESU-8»);
СтрокаДанных = ЧтениеТекста.Прочитать();
ЧтениеТекста.Закрыть();

В данной функции инициализируется менеджер криптографии и указывается пароль к контейнеру закрытого ключа. Далее происходит расшифровка зашифрованных данных. Результатом расшифрования являются двоичные данные, которые записываются в файл с кодировкой CESU-8 и считываются из него.

Скачать обработку шифрования/расшифрования строковых данных можно по этой ссылке.

Пример работы обработки:

На рисунке 4 поле «Пароль» пустое, так как при создании временного сертификата мы не указывали пароль на контейнер закрытого ключа.

МенеджерКриптографии: ошибка при подписи «ошибка интерфейса модуля криптографии: отсутствует набор ключей»

при попытке использования метода Подписать() менеджера криптографии выскакивает ошибка «ошибка интерфейса модуля криптографии: отсутствует набор ключей»

из других программ с помощью этой же ЭЦП подписывает нормально. ключик настроен через КриптоПро.
релиз 1С 8.2.15.319

в чём может быть проблема?

для (4) сторно, ЭЦП создаётся, всё-таки, обычная. подниму темку — из-за чего такое может быть?

пробовал и на 8.2.15, и на 8.2.16

Тест. Проверка операций формирования/проверки ЭЦП на сервере.
Код ошибки 114. Не удалось выполнить операции формирования/проверки ЭЦП на сервере.

Сертификат не имеет связи с закрытым ключом.
Тест. Проверка операций шифрования/расшифровки на сервере.
Код ошибки 113. Не удалось выполнить операции шифрования/расшифровки на сервере.

А с сервера (на клиенте) так:

Тест. Проверка операций шифрования/расшифровки на компьютере.
Пройден успешно.

Тест. Проверка операций формирования/проверки ЭЦП на компьютере.
Пройден успешно.

Что бы это могло значить? это сертификат для подписантов. Его что на сервер ставить низя.

Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)

Валидата → СКАД Сигнатура → Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)

Страницы 1

Чтобы отправить ответ, вы должны войти или зарегистрироваться

Сообщений 9

1 Тема от badik 2017-10-17 16:19:16 (2017-10-17 16:20:09 отредактировано badik)

  • badik
  • New member
  • Неактивен
  • Зарегистрирован: 2017-10-17
  • Сообщений: 5

Тема: Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)

Разработчики нашей организации сделали попытку соединить Java c Сигнатурой
посредством своей DLL (интерфейс вроде бы spki1) .
в Java выполняется код который возвращает ЭП.

Полученные файлы не проходят проверку в АРМ КБР.
Ошибка:Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)
В АРМ КБР было выполнено преобразование файлов УФЭБС для АРМ РКС Сигнатуры.
Проверка закончилась успешно

при анализе подписи было выяснено что подпись на несколько байт длинее обычной (полученной spki1utl или PKI.VCERT)

Анализ ASN.1 показал что почему то заполнен SignedData/contentInfo/content
SignedData/contentInfo/contentType = 1.2.840.113549.1.7.1

Вопроса два:
1. Как он смог заполнится?
2. Почему АРМ РКС успешно проверил эту подпись?

2 Ответ от alart 2017-10-17 18:22:33

  • alart
  • Administrator
  • Неактивен
  • Откуда: Москва
  • Зарегистрирован: 2011-07-28
  • Сообщений: 281

Re: Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)

А с какими параметрами выполняется вызов VCERT_SignMem? Какие флаги указываются в структуре sign_param_t?

3 Ответ от badik 2017-10-17 20:11:22

  • badik
  • New member
  • Неактивен
  • Зарегистрирован: 2017-10-17
  • Сообщений: 5

Re: Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)

Со слов разработчиков, только отсоединеная и pkcs7
В протоколы АРМ РКС на правильную и эту подпись похожи.
Мне пришлось доказывать что ошибка в АРМ КБР возникла при подписании
Аналогичная ошибка была у пилотов в трех регионах.
Исходного кода промежуточной длл, где описаны прототипы у меня нет. Завтра спрошу у разработчиков.

4 Ответ от badik 2017-10-18 07:57:13 (2017-10-18 12:01:07 отредактировано badik)

  • badik
  • New member
  • Неактивен
  • Зарегистрирован: 2017-10-17
  • Сообщений: 5

Re: Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)

Пример ПП с ЭП без персональных данных
файл УФЭБС с ЗК закодирован в base64, ошибка подписи в АРМ КБР

data (ЗК UTF8) закодирована в base64

ЭП закодирована в base64

5 Ответ от ant 2017-10-24 12:57:09

  • ant
  • Administrator
  • Неактивен
  • Откуда: Москва
  • Зарегистрирован: 2007-02-02
  • Сообщений: 322

Re: Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)

Добрый день, в Вашей подписи присутствуют данные

55| 6| 1| CONTEXT SPECIFIC (0) :
57| 4| 1| OCTET_STRING : ’60E5BA02′

А в случае отсоединенной подписи, данных быть не должно.

6 Ответ от badik 2017-10-26 16:25:13

  • badik
  • New member
  • Неактивен
  • Зарегистрирован: 2017-10-17
  • Сообщений: 5

Re: Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)

Хорошо. Свой механизм простановки подписи Разработчики исправили. АРМ КБР подписи проверяет.

Остался вопрос:
Механизмы проверки ЭП в АРМ КБР (-Н) и АРМ РКС должны быть одинаковыми.
Почему «АРМ Разбора Конфликтных Ситуаций Сигнатуры» считает эту не правильную подпись в отдельном файле корректной?

7 Ответ от ant 2017-10-27 12:46:56

  • ant
  • Administrator
  • Неактивен
  • Откуда: Москва
  • Зарегистрирован: 2007-02-02
  • Сообщений: 322

Re: Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)

АРМ РКС предназначен для криптографической проверки подписи и признак, выставленный в АРМ РКС (что подпись отсоединенная), имеет приоритет над признаком в файле.
Если Вам необходимо получить код возврата как в АРМ КБР используйте утилиту командной строки spki1utl.exe

8 Ответ от badik 2017-10-27 14:35:28 (2017-10-27 14:37:19 отредактировано badik)

  • badik
  • New member
  • Неактивен
  • Зарегистрирован: 2017-10-17
  • Сообщений: 5

Re: Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)

В типовом договоре с ЦБ и в нашем тоже говорится об использовании в конфликтных ситуациях только АРМ РКС.

В АРМ РКС на проверку подаются ДВА файла «отдельной ЭП» и сами Данные. Первый файл ЭП содержит признак встроенной подписи. АРМ РКС игнорирует это не соответствие действительности, не отражает в протоколе
и продолжает проверку дальше.

9 Ответ от ant 2017-10-27 15:07:26

  • ant
  • Administrator
  • Неактивен
  • Откуда: Москва
  • Зарегистрирован: 2007-02-02
  • Сообщений: 322

Re: Неверный тип сообщения в формате PKCS#7 (код: 0xE0700022)

АРМ РКС игнорирует данные в подписи, так как ему явно указывается что данных там нет.
Согласен с Вами, в протокол добавим добавим запись о наличии данных в отсоединенной подписи.

Ошибка при вызове pkcs7расшифровать менеджера криптографии

При получении/отправке отчётных форм, сообщений или другой информации, данные поступают/передаются в зашифрованном виде. Для их расшифровки/шифрования системы криптографии, установленные на компьютере пользователя, обращаются к электронной подписи, используемой пользователем для ФГИС ЕИАС.

При возникновении проблем шифрования/расшифровки пользователю следует убедиться соответствии используемой версии модуля «ЕИАС Мониторинг» (АРМ Специалиста) типу используемой электронной подписи, а так же в корректности установки/настроки средств криптографии и сертификатов электронных подписей.

I. Алгоритм шифрования

Если модуль «ЕИАС Мониторинг» (АРМ Специалиста) выдает сообщение «Ошибка при подписании файла. Указан неправильный алгоритм», это говорит об использовании несовместимой версии модуля «ЕИАС Мониторинг» (АРМ Специалиста) с применяемой пользователем электронной подписью.

ФГИС ЕИАС в рамках модуля «ЕИАС Мониторинг» (АРМ Специалиста) обеспечивает поддержку электронных подписей, соответствующих ГОСТ Р 34.10-2001 (включительно до 31.12.2019, согласно письму ФСБ России №149/7/6-363 от 07.09.2018), а так же электронных подписей, соответствующих ГОСТ Р 34.10-2012 (на текущий момент и далее).

В системе ФГИС ЕИАС поддерживается работа электронных подписей, соответствующих ГОСТ Р 34.10-2012 и ГОСТ Р 34.10-2001. Для работы с теми или иными ключами, следует использовать соответствующую версию модуля «ЕИАС Мониторинг» (АРМ Специалиста).

Дистрибутивы модуля «ЕИАС Мониторинг» (АРМ Специалиста) доступны для загрузки на сайте ФГИС ЕИАС http://eias.ru/

II. Работа систем криптографии и сертификатов электронных подписей

Если модуль «ЕИАС Мониторинг» (АРМ Специалиста) выдает сообщение «Не найден сертификат для расшифровки полученных данных», «Неправильный параметр набора ключей», «Произошла внутренняя ошибка в цепочке сертификатов», «Не удается построить цепочку сертификатов для доверенного корневого центра» и т.п., это говорит о том, что на локальном месте пользователя произведена некорректная установка ЭП, либо отсутствуют необходимые корневые сертификаты, либо имеется ограничение на уровне системы криптографии.



Для исправления ошибки необходимо проверить следующее:

1). На компьютере пользователя должен быть установлен только один криптопровайдер (CSP). Использование разных криптопровайдеров на одном рабочем месте приводит к конфликту механизмов шифрования.

Другие системные требования к рабочему месту указаны в знании #44.

2). Сертификат должен быть установлен для Пользователя, а не для локального компьютера.

При использовании КриптоПро CSP перейдите в оснастку «Сертификаты»: Пуск -> Все рограммы -> Крипто-Про -> Сертификаты».

Здесь необходимо проверить, не добавлен ли ваш личный сертификат в хранилище сертификатов для локального компьютера.

Разверните список «Сертификаты (локальный компьютер) -> Личное -> Реестр -> Сертификаты». Если в данном списке присутствует личный сертификат пользователя вашей организации — его необходимо удалить .

Личный сертификат должен храниться только в «Сертификаты — текущий пользователь -> Личное -> Реестр -> Сертификаты».

Также проверьте хранилища «Другие пользователи» для локального компьютера и текущего пользователя. Личного сертификата там также быть не должно, если он есть — удалить.

3). Убедитесь, что на локальном компьютере установлены корневые сертификаты издателя.

Для этого откройте личный сертификат пользователя и переключитесь на вкладку «Путь сертификации». В цепочке сертификации не должно быть никаких крестиков и восклицательных знаков.

Наличие крестиков и восклицательных знаков говорит о том, что данные корневые сертификаты не установлены.

Для устранения этой ситуации необходимо отметить требуемый сертификат и нажать кнопку «Просмотр сертификата». В открывшемся окне на вкладке «Общие» нажать на кнопку «Установить сертификат» и поместить данный сертификат в хранилище «Доверенные корневые центры сертификации». В случае отсутствия кнопки установки, переключиться на вкладку «Состав» и экспортировать корневой сертификат себе на компьютер по кнопке «Копировать в файл», затем установить полученный сертификат в хранилище «Доверенные корневые центры сертификации».

Если в цепочке сертификации не указан корневой сертификат издателя или у вас возникают трудности с его получением, то вам необходимо обратиться в Удостоверяющий центр, где вами была приобретена электронная подпись.

Также необходимо убедиться, что установлены корневые сертификаты, необходимые для работы модулей и компонентов (в том числе отчетных форм) ФГИС ЕИАС. Запрос на установку корневых сертификатов выдается системой при работе, но если этого не происходит и дальнейшая работа невозможна, то следует установить их вручную, загрузив набор корневых сертификатов.

Установка набора корневых сертификатов производится в полуавтоматическом режиме — для этого следует перейти в указанную выше оснастку «Сертификаты»: Пуск -> Все рограммы -> Крипто-Про -> Сертификаты» и перейти в хранилище «Доверенные корневые центры сертификации».

Развернуть вложенные разделы «Доверенные корневые центры сертификации -> Реестр -> Сертификаты» и кликнуть правой кнопкой мыши на последнем каталоге, выбрав из контекстного меню «Все задачи — Импорт. «

В открывшемся окне мастера установки по кнопке «Обзор» перейдите к папке, где был сохранен скачанный набор корневых сертификатов. В выпадающем списке доступных типов файлов для импорта укажите значение «Сертификаты PKCS #7 (*.spc; *.p7b)» и выберите загруженный файл trust_eias_certs.p7b

В фоновом режиме запустится установка сертификатов в хранилище доверенных корневых центров сертификации. При отсутствии на вашем ПК того или иного сертификата, система выдаст диалоговое окно с уведомление об установке, с которой необходимо согласиться по кнопке «Да».

Данное разрешение будет запрошено для каждого ранее отсутствуещего сертификата в хранилище, следует согласиться на установку каждого из них. По окончании процедуры установки система выдаст соответствующее уведомление. Не следует закрывать мастер импорта сертификатов до завершения процедуры установки.

Для корректной работы ФГИС ЕИАС так же требуется установка корневых сертификатов издателя электронной подписи, в частности УЦ СКБ Контур.

4). Переустановите электронную подпись на локальном компьютере через используемый криптопровайдер.

Инструкция по установке ЭП с примером приведена в знании #31.

5). Убедитесь, что номер лицензии на право инспользования крипровайдера введён корректно (знание #37).

6). В настройках модуля «ЕИАС Мониторинг» (АРМ Специалиста) убедитесь, что для каждого из подключаемых серверов указан действующий сертификат.

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Ошибка при восстановлении подключения не найдено сетевое имя
  • Ошибка при вызове метода контекста выполнить не установлен менеджер временных таблиц