Работа с ЭЦП, прикрепленная подпись

Matvey

Коллеги, есть такая задача:
Нужно подписать строку сертификатом. Нужно чтобы подпись была прикрепленная.
Перелопатил БСП, но так и не понял, как сделать так, чтобы на входе - строка, а на выходе эта же строка с подписью.
На странице
https://www.cryptopro.ru/sites/default/files/products/cades/demopage/cades_bes_sample.html
создается все правильно.
А вот как это в 1С повторить?

7

Ответы

DMITRY KANAEV
#1, 20 февраля 2021 08:05

Стандартными средствами у меня не получилось, писал под это отдельную COM+ либу на C#. Если интересно - могу кинуть исходники.


Matvey
#2, 20 февраля 2021 08:18

Был бы благодарен. Лучше конечно уже собранную либу)


bolsun
#3, 20 февраля 2021 08:41

(1) DMITRY KANAEV, будет здорово, если добавите 😃


Бестолочь
#4, ред. 20 февраля 2021 08:53

Начните копать в типовой, например ЗУП общий модуль ЭлектроннаяПодписьКлиент процедура Подписать. Насколько помню, там все через менеджер криптографии делается.


DMITRY KANAEV
#5, 21 февраля 2021 16:21

(3) bolsun, https://github.com/dimmkan/1C_CriptoLibrary/blob/master/CL2/bin/Debug/Crypto1CLib.dll - скомпилированная либа, но она немного под другое, близкое по смыслу.
Полные исходники - https://github.com/dimmkan/1C_CriptoLibrary


DMITRY KANAEV
#6, 21 февраля 2021 16:22

(2) Matvey, https://github.com/dimmkan/1C_CriptoLibrary/blob/master/CL2/bin/Debug/Crypto1CLib.dll - скомпилированная либа, но она немного под другое, близкое по смыслу.
Полные исходники - https://github.com/dimmkan/1C_CriptoLibrary


DMITRY KANAEV
#7, 21 февраля 2021 16:34

Основной метод в этой либе - packingBinaryData(string sourceString, string certSerialNumber)
На вход принимается строка в Base64 - данные которые необходимо подписать. На выходе - подписанный криптоконтейнер с прикрепленной подписью в формате Base64.Поиск сертификата из локального хранилища пользователя идет по серийному номеру серта.


См. также

1с82. Прикрепление файла к документу. Обычное приложение

Правило обмена прикрепленных файлов

ОбновитьПодпись (БСП)

СохранитьПодпись (БСП)

ПроверитьПодпись (БСП)

ЭтоПодписьИлиПечать (БСП)

Модератору