Криптография: внешняя компонента для 1С 7.7

08.06.20

Разработка - Разработка внешних компонент

Цифровые подписи, шифрование, просмотр сертификатов ключей ЭЦП, работа с различными криптопровайдерами (в т.ч. КриптоПРО ГОСТ 2012) в 1С 7.7.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Компонента, описание, демо - конфигурация
.zip 291,36Kb
24
24 Скачать (1 SM) Купить за 1 850 руб.
Исходники
.zip 36,50Kb
4
4 Скачать (10 SM) Купить за 4 550 руб.

Функционал компоненты во многом аналогичен функционалу 1С 8.3 из раздела «Криптография».

Компонента разработана по технологии создания внешних компонент COM в среде Lazarus. Тестировалась на платформе 1С релиза 7.70.027 под управлением Windows 10 (64 bit) и Windows Server 2003 (32 bit).

Функционал компоненты:

Методы объекта «AddIn. Crypto»:

Хранилище( ) – возвращает число, количество системных хранилищ в хранилище сертификатов пользователя ОС.

Хранилище(<Индекс>) – возвращает строку, наименование системного хранилища сертификатов.

Провайдер( ) – возвращает число, количество установленных в системе провайдеров криптографии.

Провайдер(<Индекс>, <Тип> ) – возвращает строку, наименование провайдера криптографии, а также его тип.

ВыбратьПровайдера(<ИмяПровайдера>, <Тип>) – выбирает и устанавливает провайдера по умолчанию для  дальнейшего использования его алгоритмов криптографии в методах цифровой подписи и шифрования.

Сертификат(<Хранилище> ) – возвращает количество сертификатов в хранилище.

Сертификат(<Хранилище>, <ИД> ) – возвращает объект - сертификат из указанного хранилища.

СертификатИзФайла(<ИмяФайла> ) – возвращает количество сертификатов в файле.

СертификатИзФайла(<ИмяФайла>, < ИД > ) – возвращает объект - сертификат из файла.

Подписать (<ИсходныеДанные>, <ВыходныеДанные>, <Сертификат>, <Включить>) – формирует цифровую подпись.

ПроверитьПодпись(<ИсходныеДанные>, <ВыходныеДанные>, <Сертификат>)– проверяет цифровую подпись и возвращает сертификат.

Зашифровать(<ИсходныеДанные>, <ВыходныеДанные>, <Получатели>) – шифрует исходные данные для списка получателей.

Расшифровать(<ИсходныеДанные>, <ВыходныеДанные>) – расшифровывает исходные данные.

Свойства объекта «AddIn. Crypto» (все только для чтения):

ИмяПровайдера – строка, наименование провайдера, установленного по умолчанию.

ТипПровайдера – число, тип провайдера, установленного по умолчанию.

АлгоритмПодписи, АлгоритмХеширования, АлгоритмШифрования – строки, соответствующий алгоритм провайдера, установленного по умолчанию.

Ошибка– строка, последняя ошибка.

Методы объекта «Сертификат»:

ОткрытьСертификат ( ) – открывает системную экранную форму сертификата.

Свойства объекта «Сертификат» (все только для чтения):

Версия – строка, версия стандарта сертификата.

НачДата – строка, дата и время начала действия

КонДата– строка, дата и время окончания действия

Издатель– строка, наименование издателя сертификата.

Отпечаток– строка, хеш сертификата, его уникальный идентификатор.

СерийныйНомер– строка, серийный номер сертификата.

ЕстьКлюч– число, 1 – есть закрытый ключ, 0 – нет закрытого ключа в сертификате.

Провайдер– строка, наименование провайдера, связанного с сертификатом.

Субъект– строка, субъект сертификата.

СубъектПодробно– строка, дополнительные  стандартные и нестандартные реквизиты субъекта одной строкой.

Ошибка– строка, последняя ошибка.

ЭЦП криптография внешняя компонента COM 1с7.7

См. также

Разработка внешних компонент Программист Платформа 1С v7.7 1C77 Абонемент ($m)

Компонента позволяет в среде 1С 7.7 генерировать двухмерный QR код из любого текста длиною до 1800 символов и сохранять его в файле BMP формата. Из файла он может быть загружен в объект 1С "Картинка".

1 стартмани

29.01.2025    355    2    mdbruyfn    4    

5

Разработка внешних компонент Системный администратор Программист Платформа 1С v7.7 Платформа 1С v8.3 Платформа 1C v8.2 Платформа 1С v8.1 Россия Платные (руб)

Аддон "Структура Обмена" (ExchangeStruc) - это компонента, которая обеспечивает доступ к разделяемым процессом структурам, аналогичным структурам 1С. Обеспечивает прозрачную передачу данных примитивных типов, в том числе Двоичных данных, в режиме Реального времени между разными контекстами (формами) или потоками одного процесса. В перспективе функционал будет расширен для обмена между процессами, даже разных версий платформ. Совместим с версиями Windows рабочих станций и серверов, с платформами 1С разных версий и релизов в режиме Native начиная с 8.2, и в режиме COM начиная с версий 7.7. По скорости чтения и записи лишь немногим уступает стандартной структуре 1С. НОВОЕ: Добавлен функционал регистрации компоненты COM в качестве OLE Auto (COMОбъект) для поддержки её работы в серверах старых версий 1С: 8.0 и 8.1, где работа с компонентами исключена. Теперь можно коммуникацию с Фоновыми заданиями на этих версиях проводить.

7200 руб.

19.04.2023    5380    1    0    

3

Разработка внешних компонент WEB-интеграция Программист Платформа 1С v7.7 1C77 Платные (руб)

Компонента HttpSrv7 позволяет создавать веб-сервисы в среде 1С 7.7 и даже, используя файлы HTML, несложные веб-сайты. С помощью нее можно обеспечить доступ к данным 1С 7.7 из браузера. Дополнительно используя компоненту HTTP_Async или синхронный клиент HTTP для 1С 7.7 (публикация № 1152364) можно наладить обмен данными между удаленными информационными базами. С помощью компоненты HTTP_Async можно сначала послать несколько запросов к сайтам, веб-сервисам (в т.ч. к HttpSrv7), а затем обрабатывать данные по мере их поступления. Компонента GISMT в дополнение к HTTP_Async имеет функцию цифровой подписи и, таким образом, имеет все возможности для работы с API ГИС МТ "Честный знак" непосредственно из среды 1С 7.7.

2000 руб.

27.05.2022    9234    23    17    

34

Защита ПО и шифрование Программист Платформа 1С v7.7 Платформа 1С v8.3 Абонемент ($m)

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

2 стартмани

09.03.2022    6383    4    ge_ni    9    

2

Разработка внешних компонент Программист Платформа 1С v7.7 Платные (руб)

Компонента для выбора значения из больших списков значений.

1200 руб.

02.12.2021    6363    2    19    

4

Разработка внешних компонент Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v7.7 1C77 Абонемент ($m)

Эта внешняя компонента Base64.dll предназначена для платформы 1С версии 7.7. Используется для преобразования файлов из/в кодировку Base64 из встроенного языка 1С Предприятие. Компонента тестировалась на базе конфигурации Бухгалтерский учет для Казахстана, редакции 7.70.257.

10 стартмани

06.04.2021    10263    14    softmaker    13    

5

Разработка внешних компонент Программист Платформа 1С v7.7 Абонемент ($m)

Обмен сообщениями и небольшими файлами по протоколу UDP с 1С и внешними приложениями в локальной сети или сети VPN.

1 стартмани

23.05.2020    7729    8    mdbruyfn    0    

6
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. M_W_W 35 09.06.20 08:53 Сейчас в теме
Ну, то, что она умеет с КриптоПро работать - это хорошо, но не ново... В принципе, в семерке можно прекрасно работать с ним и через КапиКом или КадесКом...
А вот умеет ли она работать с аппаратными криптопровайдерами, которые "на борту" токена? Например, ЕГАИСовский ключ Рутокен ЭЦП 2.0 или ДжаКарта - ?
2. mdbruyfn 72 10.06.20 11:28 Сейчас в теме
(1) Если 1С 8.3 под Windows с ними работает, то я думаю и эта компонента также сможет работать, т.к. она использует API Windows.
3. M_W_W 35 10.06.20 15:04 Сейчас в теме
Не... Чуда не произошло. Ключи в РуТокен не извлекаемые, а с внутренним криптопровайдером, который "на борту", похоже не хочет работать.

PS Чего-то я где-то читал, что если КриптоПро 5 поставить, то он умеет с РуТокен и его внутренним криптопровайдером работать. Но, тогда и камиком/кадеском должны тоже заработать.
Прикрепленные файлы:
4. mdbruyfn 72 11.06.20 11:52 Сейчас в теме
(3)Судя по сообщению, сертификат, видимо извлеченный с РуТокена и находящийся в системном хранилище, не имеет секретного ключа. Насколько мне известно, 1С 8.3 тоже работает только с сертификатами в системном хранилище. Windows API в принципе может работать и с аппаратными криптопровайдерами, если они реализуют соответствующие интерфейсы. С РуТокенами я не экспериментировал.
5. M_W_W 35 11.06.20 16:36 Сейчас в теме
Да, все именно так. Сертификат я добавил в системное хранилище "от безысходности", это уже "пляски с бубном". Потому, как, на самом РуТокене он просто не видится. Естественно, в хранилище он добавился без ключей, так, как ключи "неизвлекаемые"... В чем, собственно и проблема. Внутренний криптопровайдер работает с ними не извлекая их "наружу". А вот как заставить его работать из программы - х.з.... Есть конечно описание API РуТокена, но мне опыта не хватает разобраться...
Прикрепленные файлы:
6. bigmal 39 03.09.22 08:16 Сейчас в теме
Добрый день. А есть ли возможность добавить в процедуру подписания установку формата выходных данных? То есть как в методе Sign объекта CAPICOM.SignedData? Чтобы на выходе получать данные в кодировке Base64. Или я просто не разобрался в работе вашей компоненты?
7. mdbruyfn 72 19.09.22 16:07 Сейчас в теме
(6)Можно, конечно, добавить функцию перевода подписанных данных в формат Base64 и обратно. Только хотелось бы знать, в каких случаях это нужно?
8. bigmal 39 21.09.22 06:57 Сейчас в теме
(7) Это нужно при подписывании данных для обмена с Честным знаком, необходимо получить открепленную подпись в формате Base64. То есть - в случае использования метода Sign, это третий его параметр - EncodingType.
9. M_W_W 35 07.11.22 22:45 Сейчас в теме
Добрый!
Присоединяюсь к вопросу (6).
Да, в (7) подробно описано, зачем это нужно. в ЧЗ действительно такие требования.
Что-то я сегодня день помучился с CAPICOM/CADESCOM, и так и не получилось получить открепленную ЭЦП в формате Base64... Точнее, я ее получаю, но она выдает ошибку при проверке. И с помощью КриптоАРМ, и на сайте crypto.kontur.ru... Скорее всего что-то с форматом не то...
КриптоАРМ пишет, что проверяемый файл не содержит ЭЦП, а контур говорит, что ЭЦП не соответствует файлу или он изменен.
До этого, подписи в составе документа(не открепленные), и без заморочек с кодировкой - работали нормально.
10. mdbruyfn 72 16.11.22 08:30 Сейчас в теме
(9)Мне для тестирования нужны два образца ЭЦП одних и тех же данных, которые успешно приняты "Честным знаком", в формате Base64 и в бинарном формате. Или может быть есть какой-то тестовый сайт? Есть нюансы в кодировании формата Base64. Хотелось бы с минимальным количеством попыток сделать нужный вариант.
Оставьте свое сообщение