---
title: Криптография ЭДКО клиент
slug: zup/криптография-эдко-клиент
---


## СоздатьМенеджерКриптографии
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Создает менеджер криптографии из внешней компоненты. При необходимо компонента будет установлена.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//
//  ВыводитьСообщения - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  ПараметрыМодуляКриптографии - Структура - параметры создаваемого криптопровайдера
//    * Имя  - Строка - имя модуля криптографии.
//                      Используется, если менеджер создается для ОС Windows.
//    * Путь - Строка - путь к файлу-библиотеке, реализующей требуемый набор функций.
//                      Используется, если менеджер создается для ОС Linux.
//    * Тип  - Число  - тип модуля криптографии.
//
//  ПредлагатьУстановкуРасширения - Булево.
//
//  ПараметрыОпределенияАлгоритма - Структура - параметры для определения алгоритма:
//    * Алгоритм         - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512", если алгоритм известен,
//                         при "" или ПараметрыОпределенияАлгоритма = Неопредлено используется первый алгоритм из списка
//                         КриптографияЭДКОКлиентСервер.ПоддерживаемыеАлгоритмы(), с поддержкой которого установлен криптопровайдер.
//                       - Неопределено - определить алгоритм по криптографическому сообщению или сертификату
//    * Криптосообщение  - ДвоичныеДанные, Строка - файл (двоичные данные, адрес во временном хранилище) в формате PKCS #7,
//                         из них извлекается алгоритм публичного ключа.
//                       - Неопределено - определить алгоритм по сертификату.
//    * Сертификат       - Структура - описание сертификата формата X.509, извлекается алгоритм ключа подписи.
//      ** СерийныйНомер - Строка - серийный номер сертификата.
//      ** Поставщик     - Строка - издатель сертификата.
//      ** Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//      ** Сертификат    - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//
Процедура СоздатьМенеджерКриптографии( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.СоздатьМенеджерКриптографии();
```
</details>

## ПолучитьКриптопровайдеры
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Получает список поддерживаемых установленных криптопровайдеров.
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * Криптопровайдеры    - ФиксированныйМассив - список описаний криптопровайдеров
//        ** Имя  - Строка - имя модуля криптографии.
//        ** Путь - Строка - путь к файлу-библиотеке, реализующей требуемый набор функций.
//        ** Тип  - Число  - тип модуля криптографии.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//
//  ТолькоПоддерживаемые - Булево - если Истина, то будут полученны криптопровайдеры из списка поддерживаемых
//                                  (см. КриптографияЭДКОКлиентСервер.ПоддерживаемыеКриптопровайдеры).
//  ВыводитьСообщения    - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
Процедура ПолучитьКриптопровайдеры(ОповещениеОЗавершении, ТолькоПоддерживаемые = Истина, ВыводитьСоообщения = Истина, МенеджерКриптографии = Неопределено) Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПолучитьКриптопровайдеры(ОповещениеОЗавершении, ТолькоПоддерживаемые, ВыводитьСоообщения, МенеджерКриптографии);
```
</details>

## ПолучитьАлгоритмы
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Получает список поддерживаемых алгоритмов хеширования.
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * Алгоритмы - ФиксированныйМассив - список описаний алгоритмов
//        ** Идентификатор - Число  - идентификатор алгоритма, используется в Подписать и Зашифровать.
//        ** Имя           - Строка - текстовове представление алгоритма.
//        ** ДлинаКлюча    - Число  - длина ключа в битах.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр АлгоритмИлиСертификат.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//
//  ВыводитьСообщения    - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  АлгоритмИлиСертификат - Неопределено - использовать алгоритм по умолчанию КриптографияЭДКОКлиентСервер.АлгоритмПоУмолчанию().
//                          Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//                          Структура    - сертификат подписанта.
//    * СерийныйНомер    - Строка - серийный номер сертификата.
//    * Поставщик        - Строка - издатель сертификата.
//    * Отпечаток        - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * Сертификат       - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//
Процедура ПолучитьАлгоритмы( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПолучитьАлгоритмы();
```
</details>

## ПолучитьКонтейнерыКлючей
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Получает список имен контейнеров ключей.
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево              - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * КонтейнерыКлючей     - ФиксированныйМассив - список имен контейнеров.
//      * МенеджерКриптографии - AddIn               - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * ОписаниеОшибки       - Строка              - описание ошибки выполнения.
//
//  ПолучатьУникальныеИмена - Булево - Если Истина, то будут возвращены уникальные имена вида <носитель>\\<имя>, иначе - только <имя>.
//
//  ВыводитьСообщения    - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
Процедура ПолучитьКонтейнерыКлючей(ОповещениеОЗавершении, ПолучатьУникальныеИмена = Ложь, ВыводитьСоообщения = Истина, МенеджерКриптографии = Неопределено) Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПолучитьКонтейнерыКлючей(ОповещениеОЗавершении, ПолучатьУникальныеИмена, ВыводитьСоообщения, МенеджерКриптографии);
```
</details>

## СгенерироватьИмяКонтейнера
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Генерирует имя контейнера ключей на основе текущего времени и понятного пользователю наименования.
//
// Параметры:
//  ОсноваИмени - Строка - например, краткое название организации.
//
// Возвращаемое значение:
//  Строка - user-friendly имя контейнера ключей.
//
Функция СгенерироватьИмяКонтейнера(ОсноваИмени) Экспорт
```

Пример вызова
```bsl
Результат = КриптографияЭДКОКлиент.СгенерироватьИмяКонтейнера(ОсноваИмени) 
```
</details>

## СоздатьКонтейнерКлючей
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Создает контейнер с закрытым ключом.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено               - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * УникальноеИмяКонтейнера - Строка - полное имя созданного контейнера ключей.
//      * МенеджерКриптографии    - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм                - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                           параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки          - Строка - описание ошибки выполнения.
//
//  ИмяКонтейнераКлючей  - Строка - имя создаваемого контейнера ключей.
//
//  ВыводитьСообщения    - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм             - Неопределено - использовать алгоритм по умолчанию КриптографияЭДКОКлиентСервер.АлгоритмПоУмолчанию().
//                         Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//
//  ЭкспортируемыйКлюч   - Булево.
//
Процедура СоздатьКонтейнерКлючей( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.СоздатьКонтейнерКлючей();
```
</details>

## СоздатьЗапросНаСертификат
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Создает файл запроса на сертификат.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * ЗапросНаСертификат   - Строка - запрос на сертификат в формате Base64-based.
//
//  ТелоЗапросаНаСертификат - Строка - специально подготовленные данные для создания запроса на сертификат.
//
//  ИмяКонтейнераКлючей     - Строка - полное имя контейнера ключей.
//
//  ВыводитьСообщения       - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии    - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм                - Неопределено - использовать алгоритм по умолчанию КриптографияЭДКОКлиентСервер.АлгоритмПоУмолчанию().
//                            Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//
Процедура СоздатьЗапросНаСертификат( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.СоздатьЗапросНаСертификат();
```
</details>

## СоздатьКонтейнерИЗапросНаСертификат
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Создает файл запроса на сертификат.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * ЗапросНаСертификат   - Строка - запрос на сертификат в формате Base64-based.
//      * УникальноеИмяКонтейнера - Строка - полное имя созданного контейнера ключей.
//
//  ТелоЗапросаНаСертификат - Строка - специально подготовленные данные для создания запроса на сертификат.
//
//  ИмяКонтейнераКлючей     - Строка - полное имя контейнера ключей.
//
//  ВыводитьСообщения       - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии    - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм                - Неопределено - использовать алгоритм по умолчанию КриптографияЭДКОКлиентСервер.АлгоритмПоУмолчанию().
//                            Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//
//  ЭкспортируемыйКлюч      - Булево.
//
Процедура СоздатьКонтейнерИЗапросНаСертификат( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.СоздатьКонтейнерИЗапросНаСертификат();
```
</details>

## СвязатьСертификатСКонтейнеромКлючей
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Связывает сертификат из хранилища сертификатов с соответствующим контейнером закрытого ключа.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено               - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии    - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм                - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                           параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки          - Строка - описание ошибки выполнения.
//
//  Сертификат - Структура - описание сертификата.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * Сертификат    - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//
//  ИмяКонтейнераКлючей   - Строка - полное имя контейнера ключей.
//
//  ВыводитьСообщения     - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии  - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм              - Неопределено - определить алгоритм по сертификату.
//                          Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//
Процедура СвязатьСертификатСКонтейнеромКлючей( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.СвязатьСертификатСКонтейнеромКлючей();
```
</details>

## УстановитьСертификатВКонтейнерИХранилище
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Добавляет сертификат в хранилище сертификатов и связывает с соответствующим контейнером закрытого ключа.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено               - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии    - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм                - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                           параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки          - Строка - описание ошибки выполнения.
//
//  ИмяФайлаСертификата   - Строка - файл сертификата.
//
//  ИмяКонтейнераКлючей   - Строка - полное имя контейнера ключей.
//
//  ВыводитьСообщения     - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии  - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм              - Неопределено - определить алгоритм по сертификату.
//                          Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//
Процедура УстановитьСертификатВКонтейнерИХранилище( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.УстановитьСертификатВКонтейнерИХранилище();
```
</details>

## ПолучитьСертификатИзКонтейнера
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Получает файл сертификата из ключевого контейнера.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * ИмяФайлаСертификата  - Строка - имя файла, в который выгружен сертификат.
//
//  ИмяКонтейнераКлючей   - Строка.
//
//  ИмяФайлаИлиРасширение - Строка - имя файла, в который необходимо сохранить результат.
//                                   Также можно указать только расширение создаваемого файла - ".расширение".
//
//  ВыводитьСообщения     - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии  - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
Процедура ПолучитьСертификатИзКонтейнера( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПолучитьСертификатИзКонтейнера();
```
</details>

## ПолучитьСертификаты
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Получает список описаний сертификатов из хранилищ сертификатов: локальном и/или облачном.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки и КодОшибки.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * КодОшибки            - Строка - код ошибки выполнения.
//      * Сертификаты          - ФиксированныйМассив - список описаний сертификатов.
//        ** Версия                    - Строка - версия сертификата.
//        ** Наименование              - Строка - представление сертификата.
//        ** СерийныйНомер             - Строка - серийный номер сертификата.
//        ** Поставщик                 - Строка - издатель сертификата.
//        ** ПоставщикСтруктура        - ФиксированнаяСтруктура - информация об издателе сертификата:
//           *** CN - commonName;           2.5.4.3,  Краткое наименование организации или ФИО для физ.лица
//           *** O - organizationName;      2.5.4.10, Краткое наименование организации, для физ лица отсуствует.
//           *** OU - organizationUnitName; 2.5.4.11, Подразделение владельца ЭП
//           *** C - countryName;           2.5.4.6,  Страна
//           *** ST - stateOrProvinceName;  2.5.4.8,  Регион, область
//           *** L - localityName;          2.5.4.7,  Населенный пункт
//           *** E - emailAddress;          1.2.840.113549.1.9.1, Электронная почта
//           *** SN - surname;              2.5.4.4,  Фамилия
//           *** GN - givenName;            2.5.4.42, Имя Отчество
//           *** T - title;                 2.5.4.12, Должность
//           *** STREET - streetAddress;    2.5.4.9,  Название улицы, номер дома
//           *** OGRN - ОГРН;               1.2.643.100.1,     ОГРН
//           *** OGRNIP - ОГРНИП;           1.2.643.100.5,     ОГРНИП
//           *** INN - ИНН;                 1.2.643.3.131.1.1, ИНН (ФЛ)
//           *** SNILS - СНИЛС;             1.2.643.100.3,     СНИЛС
//           *** INNLE - ИНН ЮЛ;            1.2.643.100.4,     ИНН ЮЛ
//        ** Владелец                  - Строка - владелец сертификата.
//        ** ВладелецСтруктура         - ФиксированнаяСтруктура - информация об владельце сертификата. См. ПоставщикСтруктура:
//        ** Отпечаток                 - Строка - отпечаток сертификата.
//        ** ИспользоватьДляПодписи    - Булево - пригоден для подписывания.
//        ** ИспользоватьДляШифрования - Булево - пригоден для шифрования.
//        ** ДействителенС             - Дата   - начало срока действия.
//        ** ДействителенПо            - Дата   - конец срока дейстия.
//        ** Хранилище                 - Структура - описание хранилища, из которого получен сертификат
//           *** Хранилище             - Строка - одно из хранилищ MY, AddressBook, CA, ROOT.
//           *** ЭтоЛокальноеХранилище - Булево - Ложь - хранилище сертификатов на сервере, Истина - локальное хранилище.
//
//  ХранилищеСертификатов - Массив, Структура - описание хранилища, из которого необходимо получить сертификаты.
//    * Хранилище             - Строка - одно из хранилищ MY, AddressBook, CA, ROOT.
//    * ЭтоЛокальноеХранилище - Булево - Ложь - хранилище сертификатов на сервере, Истина - локальное хранилище.
//
//  ДополнительныеПараметры - Неопределено, Структура, ФиксированнаяСтруктура.
//    * ПредлагатьУстановкуВнешнейКомпоненты - Булево - если Истина, то будет выведено предложение установить компоненту (если не установлена).
//                                                      Значение по умолчанию - Истина.
//    * ВыводитьСообщения - Булево - если Истина, то ошибки выполнения будут выведены пользователю.
//                                   Значение по умолчанию - Истина.
//
Процедура ПолучитьСертификаты(ОповещениеОЗавершении, ХранилищеСертификатов = Неопределено, ДополнительныеПараметры = Неопределено) Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПолучитьСертификаты(ОповещениеОЗавершении, ХранилищеСертификатов, ДополнительныеПараметры);
```
</details>

## ЭкспортироватьСертификатВФайл
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выгружает указанный сертификат хранилища в файл.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * ИмяФайлаСертификата  - Строка - имя файла, в который выгружен сертификат.
//
//  Сертификат - Структура - описание сертификата.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//
//  ИмяФайлаИлиРасширение - Строка - имя файла, в который необходимо сохранить результат.
//                                   Также можно указать только расширение создаваемого файла - ".расширение".
//
//  ВыводитьСообщения     - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии  - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
Процедура Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ЭкспортироватьСертификатВФайл(ОповещениеОЗавершении, Сертификат, ИмяФайлаИлиРасширение, );
```
</details>

## ЭкспортироватьСертификатВBase64
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выгружает указанный сертификат хранилища в строку base64.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * СтрокаBase64         - Строка - содержимое сертификата в Base64.
//
//  Сертификат - Структура - описание сертификата.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//
//  ВыводитьСообщения     - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии  - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
Процедура Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ЭкспортироватьСертификатВBase64(ОповещениеОЗавершении, Сертификат, ВыводитьСоообщения, МенеджерКриптографии, ДвоичныеДанные);
```
</details>

## ИмпортироватьСертификат
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Добавляет сертификат в указанное хранилище сертификатов.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * СвойстваСертификата  - ФиксированнаяСтруктура - описание сертификата.
//        ** Версия                    - Строка - версия сертификата.
//        ** Наименование              - Строка - представление сертификата.
//        ** СерийныйНомер             - Строка - серийный номер сертификата.
//        ** Поставщик                 - Строка - издатель сертификата.
//        ** Владелец                  - Строка - владелец сертификата.
//        ** Отпечаток                 - Строка - отпечаток сертификата.
//        ** ИспользоватьДляПодписи    - Булево - пригоден для подписывания.
//        ** ИспользоватьДляШифрования - Булево - пригоден для шифрования.
//        ** ДействителенС             - Дата   - начало срока действия.
//        ** ДействителенПо            - Дата   - конец срока дейстия.
//
//  ИмяФайлаСертификата   - Строка - файл сертификат.
//
//  ХранилищеСертификатов - Строка - одно из хранилищ MY, AddressBook, CA, ROOT.
//
//  ВыводитьСообщения     - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии  - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
Процедура ИмпортироватьСертификат(ОповещениеОЗавершении, ИмяФайлаСертификата, ХранилищеСертификатов, Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ИмпортироватьСертификат(ОповещениеОЗавершении, ИмяФайлаСертификата, ХранилищеСертификатов, );
```
</details>

## ПроверитьСертификат
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выполняет проверку сертификата.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * Валиден              - Булево - сертификат соответствует требованиям проверки.
//
//  Сертификат - Структура - описание сертификата.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * Сертификат    - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//
//  Проверки   - Строка - при значении "ПроверитьТолькоПоСпискуУстановленныхУЦ" выполняется толко проверка соответствия списку установленных УЦ,
//                        при значении Неопределено выполняется проверка соответствию списка УЦ и срока действия.
//
//  ВыводитьСообщения     - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии  - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм              - Неопределено - использовать автоопределение алгоритма внешней компонентой в момент операции.
//                          Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения(),
//                                         при значении "*" определять алгоритм и криптопровайдер по сертификату.
//
Процедура ПроверитьСертификат( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПроверитьСертификат();
```
</details>

## ВыбратьСертификат
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Открывает форму списка сертификатов для выбора.
//
// Параметры:
//  МестоХраненияКлюча 					- Булево, Структура - определяет системное хранилище: локальное, защищенное хранилище на сервере или облачная подпись КриптоПро DSS.
//
//  НачальноеЗначениеВыбора             - Строка - отпечаток сертификата, на котором будет выполнено позиционирование при открытии формы выбора.
//
//  ХранилищеСертификатов               - Строка - задает хранилище, в котором необходимо произвести выбор. MY, AddressBook, CA, ROOT.
//
//  ПоказыватьПросроченные              - Булево - устанавливает признак необходимости отображать просроченные сертификаты в форме выбора.
//
//  МножественныйВыбор                  - Булево - устанавливает признак множественного выбора сертификатов.
//
//  Отпечатки                           - СписокЗначений - отпечатки тех сертификатов, которые должны быть отображены в списке.
//
//  ЗапретитьВыборПросроченных          - Булево - отпечатки тех сертификатов, которые должны быть отображены в списке.
//
Процедура ВыбратьСертификат( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ВыбратьСертификат();
```
</details>

## ОтобразитьПредставлениеСертификата
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура - Отображает представления сертификата или сертификатов в поле ввода
//
// Параметры:
//  МестоХраненияКлюча 					 - Булево, Структура - определяет системное хранилище: локальное, защищенное хранилище на сервере или облачная подпись КриптоПро DSS.
//  ПолеВвода							 - ПолеФормы - поле формы, в котором выводится представление сертификата.
//											  Будет подкрашено красным, если в сертификате есть ошибка.
//  Сертификат							 - Строка - отпечаток сертификата или свойства сертификата.
//  									 - Массив - описание сертификатов.
//  										* Сертификат - Строка - отпечаток сертификата.
//  Форма								 - ФормаКлиентскогоПриложения - форма, в которой выводится представление сертификата.
//  ИмяРеквизитаПредставлениеСертификата - Строка - имя реквизита представления сертификат.
//  ВыполняемоеОповещение				 - ОписаниеОповещения - описание процедуры, принимающей результат (не обязательный)
//  ИспользоватьКомпонентуКриптографии	 - Булево - если ложь, то в коробке не будет использоваться компонента шифрования (не обязательный)
Процедура ОтобразитьПредставлениеСертификата( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ОтобразитьПредставлениеСертификата();
```
</details>

## ОтобразитьПредставленияСертификатов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Процедура - Отображает представления сертификатов в полях ввода
//
// Параметры:
//  ПараметрыОтображенияСертификатов 	- Массив - описание параметров отображения сертификатов
//           *ПолеВвода							 	 - ПолеФормы - поле формы, в котором выводится представление сертификата.
//													  Будет подкрашено красным, если в сертификате есть ошибка.
//           *Сертификат							 - Строка - отпечаток сертификата или свойства сертификата.
//  												 - Массив - описание сертификатов.
//  													* Сертификат - Строка - отпечаток сертификата.
//           *ИмяРеквизитаПредставлениеСертификата	 - Строка - имя реквизита представления сертификат.
//  Форма								 - ФормаКлиентскогоПриложения - форма, в которой выводится представление сертификата.
//  МестоХраненияКлюча 					 - Булево, Структура - определяет системное хранилище: локальное, защищенное хранилище на сервере или облачная подпись КриптоПро DSS.
//  ВыполняемоеОповещение				 - ОписаниеОповещения - описание процедуры, принимающей результат (не обязательный)
Процедура ОтобразитьПредставленияСертификатов(ПараметрыОтображенияСертификатов, Форма, МестоХраненияКлюча, ВыполняемоеОповещение = Неопределено) Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ОтобразитьПредставленияСертификатов(ПараметрыОтображенияСертификатов, Форма, МестоХраненияКлюча, ВыполняемоеОповещение);
```
</details>

## ПолноеПредставлениеСертификата
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Представление и даты действия сертификата.
//
//  Сертификат - Структура - описание сертификата.
//    * Наименование   - Строка - представление сертификата.
//    * ДействителенС  - Дата   - начало срока действия.
//    * ДействителенПо - Дата   - конец срока дейстия.
//
// Возвращаемое значение:
//  Строка.
//
Функция ПолноеПредставлениеСертификата(Сертификат) Экспорт
```

Пример вызова
```bsl
Результат = КриптографияЭДКОКлиент.ПолноеПредставлениеСертификата(Сертификат) 
```
</details>

## НайтиСертификат
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выполняет поиск сертификата в хранилище по серийному номеру и издателю сертификата или по отпечатку.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * СертификатНайден     - Булево - сертификат успешно найден.
//      * СвойстваСертификата  - ФиксированнаяСтруктура - описание сертификата.
//        ** Версия                    - Строка - версия сертификата.
//        ** Наименование              - Строка - представление сертификата.
//        ** СерийныйНомер             - Строка - серийный номер сертификата.
//        ** Поставщик                 - Строка - издатель сертификата.
//        ** Владелец                  - Строка - владелец сертификата.
//        ** Отпечаток                 - Строка - отпечаток сертификата.
//        ** ИспользоватьДляПодписи    - Булево - пригоден для подписывания.
//        ** ИспользоватьДляШифрования - Булево - пригоден для шифрования.
//        ** ДействителенС             - Дата   - начало срока действия.
//        ** ДействителенПо            - Дата   - конец срока дейстия.
//        ** Валиден                   - Булево - сертификат соответствует требованиям проверки.
//
//  Сертификат - Структура - описание сертификата.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * МестоХраненияКлюча - Булево, Структура - определяет системное хранилище: локальное, защищенное хранилище на сервере или облачная подпись КриптоПро DSS.
//
//  ВыполнятьПроверку    - Булево - если Истина, то для найденых сертификатов будет выполняться проверка.
//
//  ВыводитьСообщения    - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  АлгоритмПроверки     - Неопределено - использовать автоопределение алгоритма внешней компонентой при проверке сертификата.
//                         Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения(),
//                                        при значении "*" определять алгоритм и криптопровайдер по сертификату при проверке сертификата.
//
Процедура НайтиСертификат( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.НайтиСертификат();
```
</details>

## НайтиСертификаты
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выполняет поиск сертификатов в хранилище по их серийному номеру и издателю сертификата или по отпечатку.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено              - Булево              - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии   - AddIn               - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * ОписаниеОшибки         - Строка              - описание ошибки выполнения.
//      * Сертификаты            - ФиксированныйМассив - список описаний сертификатов.
//        ** Версия                    - Строка - версия сертификата.
//        ** Наименование              - Строка - представление сертификата.
//        ** СерийныйНомер             - Строка - серийный номер сертификата.
//        ** Поставщик                 - Строка - издатель сертификата.
//        ** Владелец                  - Строка - владелец сертификата.
//        ** Отпечаток                 - Строка - отпечаток сертификата.
//        ** ИспользоватьДляПодписи    - Булево - пригоден для подписывания.
//        ** ИспользоватьДляШифрования - Булево - пригоден для шифрования.
//        ** ДействителенС             - Дата   - начало срока действия.
//        ** ДействителенПо            - Дата   - конец срока дейстия.
//        ** Валиден                   - Булево - сертификат соответствует требованиям проверки.
//      * НенайденныеСертификаты - Массив - сертификаты, которые не удалось найти. Состав свойств такой же как и во входящем параметры Сертификаты.
//        ** СерийныйНомер - Строка - серийный номер сертификата.
//        ** Поставщик     - Строка - издатель сертификата.
//        ** Отпечаток     - Строка - отпечаток сертификата.
//
//  Сертификаты - Массив - описание сертификатов.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * МестоХраненияКлюча - Булево, Структура - определяет системное хранилище: локальное, защищенное хранилище на сервере или облачная подпись КриптоПро DSS.
//
//  ВыполнятьПроверку     - Булево - если Истина, то для найденых сертификатов будет выполняться проверка.
//
//  ВыводитьСообщения     - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии  - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  АлгоритмПроверки      - Неопределено - использовать автоопределение алгоритма внешней компонентой при проверке сертификата.
//                          Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения(),
//                                         при значении "*" определять алгоритм и криптопровайдер по сертификату при проверке сертификата.
//
Процедура НайтиСертификаты( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.НайтиСертификаты();
```
</details>

## НайтиСертификатПоОтпечатку
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выполняет поиск сертификата в хранилище по отпечатку сертификата.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * СертификатНайден     - Булево - сертификат успешно найден.
//      * СвойстваСертификата  - ФиксированнаяСтруктура - описание сертификата.
//        ** Версия                    - Строка - версия сертификата.
//        ** Наименование              - Строка - представление сертификата.
//        ** СерийныйНомер             - Строка - серийный номер сертификата.
//        ** Поставщик                 - Строка - издатель сертификата.
//        ** Владелец                  - Строка - владелец сертификата.
//        ** Отпечаток                 - Строка - отпечаток сертификата.
//        ** ИспользоватьДляПодписи    - Булево - пригоден для подписывания.
//        ** ИспользоватьДляШифрования - Булево - пригоден для шифрования.
//        ** ДействителенС             - Дата   - начало срока действия.
//        ** ДействителенПо            - Дата   - конец срока дейстия.
//        ** Валиден                   - Булево - сертификат соответствует требованиям проверки.
//
//  Отпечаток             - Строка - отпечаток сертификата.
//
//  ХранилищеСертификатов - Строка - задает хранилище для поиска. MY, AddressBook, CA, ROOT.
//
//  ВыполнятьПроверку     - Булево - если Истина, то для найденых сертификатов будет выполняться проверка.
//
//  ВыводитьСообщения     - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии  - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  АлгоритмПроверки      - Неопределено - использовать автоопределение алгоритма внешней компонентой при проверке сертификата.
//                          Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения(),
//                                         при значении "*" определять алгоритм и криптопровайдер по сертификату при проверке сертификата.
//
Процедура НайтиСертификатПоОтпечатку( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.НайтиСертификатПоОтпечатку();
```
</details>

## НайтиСертификатыПоОтпечаткам
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выполняет поиск сертификатов в хранилище по их отпечаткам.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено              - Булево              - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии   - AddIn               - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * ОписаниеОшибки         - Строка              - описание ошибки выполнения.
//      * Сертификаты            - ФиксированныйМассив - список описаний сертификатов.
//        ** Версия                    - Строка - версия сертификата.
//        ** Наименование              - Строка - представление сертификата.
//        ** СерийныйНомер             - Строка - серийный номер сертификата.
//        ** Поставщик                 - Строка - издатель сертификата.
//        ** Владелец                  - Строка - владелец сертификата.
//        ** Отпечаток                 - Строка - отпечаток сертификата.
//        ** ИспользоватьДляПодписи    - Булево - пригоден для подписывания.
//        ** ИспользоватьДляШифрования - Булево - пригоден для шифрования.
//        ** ДействителенС             - Дата   - начало срока действия.
//        ** ДействителенПо            - Дата   - конец срока дейстия.
//        ** Валиден                   - Булево - сертификат соответствует требованиям проверки.
//      * НенайденныеСертификаты - Массив - список отпечатков, для которых не найдены соответсвующие сертификаты.
//
//  Отпечаток             - Строка - отпечаток сертификата.
//
//  ХранилищеСертификатов - Строка - задает хранилище для поиска. MY, AddressBook, CA, ROOT.
//
//  ВыполнятьПроверку     - Булево - если Истина, то для найденых сертификатов будет выполняться проверка.
//
//  ВыводитьСообщения     - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии  - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  АлгоритмПроверки      - Неопределено - использовать автоопределение алгоритма внешней компонентой при проверке сертификата.
//                          Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения(),
//                                         при значении "*" определять алгоритм и криптопровайдер по сертификату при проверке сертификата.
//
Процедура НайтиСертификатыПоОтпечаткам( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.НайтиСертификатыПоОтпечаткам();
```
</details>

## ПоказатьСертификат
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Открывает сертификат для просмотра в специализированной форме.
//
// Параметры:
//  Сертификат - Структура, Массив - описание сертификата.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * Адрес         - Строка - адрес файла сертификата.
//
// ФормаВладелец - ФормаКлиентскогоПриложения - владелец формы.
//
Процедура ПоказатьСертификат(Сертификат, ФормаВладелец = Неопределено) Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПоказатьСертификат(Сертификат, ФормаВладелец);
```
</details>

## ПодписатьPKCS7
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Создает файл подписи для указанного файла данных в формате PKCS#7.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * ФайлПодписи          - Строка - имя файла или адрес во временном хранилище.
//
//  Сертификат - Структура - описание сертификата.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * Сертификат    - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//
//  ФайлДанных             - Строка - полное имя файла, который необходимо подписать, на клиенте.
//                         - Строка - адрес файла, который необходимо подписать, на сервере во временном хранилище.
//
//  ВключатьИсходныеДанные - Булево - если Истина, то создает присоединенную подпись, иначе - отсоединенную.
//
//  ИмяФайлаИлиРасширениеИлиАдрес - Неопределено - если в параметре ФайлДанных передан адрес во временном хранилище,
//                                                 то результат будет помещен во временное хранилище.
//                                               - если передано полное имя файла на клиенте,
//                                                 то результат будет помещен во вновь созданный файл на клиенте.
//                                - Строка - имя файла, в который необходимо сохранить результат.
//                                - Строка - расширение файла результата.
//                                - Строка - адрес во временном хранилище, по которому необходимо сохранить результат.
//
//  ВыводитьСообщения      - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии   - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм               - Неопределено - использовать автоопределение алгоритма внешней компонентой в момент операции.
//                           Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения(),
//                                          при значении "*" определять алгоритм и криптопровайдер по сертификату.
//
Процедура ПодписатьPKCS7( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПодписатьPKCS7();
```
</details>

## ПроверитьПодписьPKCS7
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выполняет проверку файла подписи в формате PKCS#7.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * ПодписьВалидна       - Булево - результат проверки подписи (при множественной подписи Истина, если подпись каждого подписанта валидна).
//      * Подписанты           - ФиксированныйМассив - описания сертификатов подписантов, при параметре ИмпортироватьСертификаты равном Ложь
//                                                     поддерживается извлечение, использование при проверке только одного подписанта.
//        ** СерийныйНомер  - Строка - серийный номер сертификата.
//        ** Поставщик      - Строка - издатель сертификата.
//        ** Отпечаток      - Строка - отпечаток сертификата.
//        ** Выполнено      - Булево - если Истина, то проверка подписи была выполнена для подписанта.
//        ** ПодписьВалидна - Булево - результат проверки подписи для подписанта.
//
//  МестоХраненияКлюча 		 - Булево, Структура - определяет системное хранилище: локальное, защищенное хранилище на сервере или облачная подпись КриптоПро DSS.
//
//  ФайлПодписи              - Строка - полное имя файла подписи на клиенте.
//                           - Строка - адрес файла подписи на сервере во временном хранилище.
//
//  ФайлДанных               - Строка - полное имя файла данных на клиенте.
//                           - Строка - адрес файла данных на сервере во временном хранилище.
//
//  ИмпортироватьСертификаты - Булево - добавлять сертификаты подписантов в хранилище в случае отсутствия там.
//
//  ВыводитьСообщения        - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии     - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм                 - Неопределено - использовать автоопределение алгоритма внешней компонентой в момент операции.
//                             Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения(),
//                                            при значении "*" определять алгоритм и криптопровайдер по подписи.
//
Процедура ПроверитьПодписьPKCS7( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПроверитьПодписьPKCS7();
```
</details>

## ЗашифроватьPKCS7
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Шифрует данные по методу Диффи-Хелмана в формате PKCS#7.
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * ЗашифрованныйФайл    - Строка - имя файла или адрес во временном хранилище.
//
//  ИсходныйФайл - Строка - полное имя исходного файла на клиенте.
//               - Строка - адрес исходного файла на сервере во временном хранилище.
//
//  Сертификаты - Массив - список описаний сертификатов.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * Сертификат    - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//
//  ИмяФайлаИлиРасширениеИлиАдрес - Неопределено - если в параметре ИсходныйФайл передан адрес во временном хранилище,
//                                                 то результат будет помещен во временное хранилище по адресу исходного файла.
//                                               - если передано полное имя файла на клиенте,
//                                                 то результат будет помещен во вновь созданный файл на клиенте.
//                                - Строка - имя файла, в который необходимо сохранить результат.
//                                - Строка - расширение файла результата.
//                                - Строка - адрес во временном хранилище, по которому необходимо сохранить результат.
//
//  ВыводитьСообщения      - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии   - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  ИмяКонтейнераКлючей    - Строка - имя контейнера ключей, следует задавать только при шифровании в на сервере
//
//  Алгоритм               - Неопределено - использовать автоопределение алгоритма внешней компонентой в момент операции.
//                           Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения(),
//                                          при значении "*" определять алгоритм и криптопровайдер по первому сертификату.
//
Процедура ЗашифроватьPKCS7( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ЗашифроватьPKCS7();
```
</details>

## ПодписатьИЗашифроватьPKCS7
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Создает файл подписи и шифрует его по методу Диффи-Хелмана в формате PKCS#7.
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено              - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии   - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм               - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                          параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки         - Строка - описание ошибки выполнения.
//      * ИмяЗашифрованногоФайла - Строка - имя файла, в который будет сохранен результат.
//
//  СертификатПодписанта  - Структура - описание сертификата подписанта.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//
//  ИмяФайлаДанных         - Строка - исходный файл данных.
//
//  ВключатьИсходныеДанные - Булево - если Истина, то создает присоединенную подпись, иначе - отсоединенную.
//
//  СертификатыПолучателей - Массив - список описаний сертификатов получателей.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//
//  ИмяФайлаИлиРасширение  - Строка - имя файла, в который необходимо сохранить результат.
//                                   Также можно указать только расширение создаваемого файла - ".расширение".
//
//  ВыводитьСообщения      - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии   - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм               - Неопределено - использовать автоопределение алгоритма внешней компонентой в момент операции.
//                           Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения(),
//                                          при значении "*" определять алгоритм и криптопровайдер по сертификату подписанта.
//
Процедура ПодписатьИЗашифроватьPKCS7( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПодписатьИЗашифроватьPKCS7();
```
</details>

## РасшифроватьPKCS7
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Расшифровывает файл формата PKCS#7.
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * РасшифрованныйФайл   - Строка - имя файла или адрес во временном хранилище.
//
//  ЗашифрованныйФайл - Строка - полное имя зашифрованного файла на клиенте.
//                    - Строка - адрес зашифрованного файла на сервере во временном хранилище.
//
//  ИмяФайлаИлиРасширениеИлиАдрес - Неопределено - если в параметре ЗашифрованныйФайл передан адрес во временном хранилище,
//                                                 то результат будет помещен во временное хранилище по адресу исходного файла.
//                                               - если передано полное имя файла на клиенте,
//                                                 то результат будет помещен во вновь созданный файл на клиенте.
//                                - Строка - имя файла, в который необходимо сохранить результат.
//                                - Строка - расширение файла результата.
//                                - Строка - адрес во временном хранилище, по которому необходимо сохранить результат.
//
//  Сертификат - Структура - приоритетный сертификат для расшифровки.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//
//  ВыводитьСообщения      - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии   - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм          - Неопределено - использовать автоопределение алгоритма внешней компонентой в момент операции.
//                      Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения(),
//                                     при значении "*" определять алгоритм и криптопровайдер по зашифрованному файлу.
//
Процедура РасшифроватьPKCS7( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.РасшифроватьPKCS7();
```
</details>

## ПолучитьПодписантовPKCS7
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Извлекает из файла подписи (PKCS#7) данные о подписанте: серийный номер и издатель сертификата.
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево                 - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn                  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка                 - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                                        параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки       - Строка                 - описание ошибки выполнения.
//      * Подписанты           - ФиксированныйМассив    - описания сертификатов подписантов, при незаданном параметре КаталогСертификатов
//                                                        поддерживается извлечение только одного подписанта.
//        ** СерийныйНомер - Строка - серийный номер сертификата.
//        ** Поставщик     - Строка - издатель сертификата.
//
//  ИмяФайлаПодписи      - Строка - файл подписи.
//
//  КаталогСертификатов   - Строка - каталог для сохранения сертификатов, если присутствуют в подписи, с именами <серийный номер>.cer.
//
//  ВыводитьСообщения    - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм             - Неопределено - определить алгоритм по подписи.
//                         Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//
Процедура ПолучитьПодписантовPKCS7( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПолучитьПодписантовPKCS7();
```
</details>

## Подписать
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Создает файл подписи для указанного файла данных.
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * ИмяФайлаПодписи      - Строка - имя файла, в который будет сохранена подпись.
//
//  Сертификат - Структура - описание сертификата подписанта.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * Сертификат    - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//
//  ИмяФайлаДанных        - Строка - файл, для которого необходимо сформировать подпись.
//
//  ПараметрыКриптографии - Структура.
//    * АлгоритмХеширования - Число - идентификатор алгоритма хеширования (см. ПолучитьАлгоритмы).
//
//  ИмяФайлаИлиРасширение  - Строка - имя файла, в который необходимо сохранить результат.
//                                   Также можно указать только расширение создаваемого файла - ".расширение".
//
//  ВыводитьСообщения     - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии  - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм              - Неопределено - определить алгоритм по сертификату.
//                          Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//
Процедура Подписать( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.Подписать();
```
</details>

## ПроверитьПодпись
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выполняет проверку файла для указанного файла данных.
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * ПодписьВалидна       - Булево - результат проверки подписи.
//
//  Сертификат - Структура - описание сертификата подписанта.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * Сертификат    - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//
//  ИмяФайлаПодписи       - Строка - файл подписи, которую необходимо проверить.
//
//  ИмяФайлаДанных        - Строка - файл, для которого необходимо проверить подпись.
//
//  ПараметрыКриптографии - Структура.
//    * АлгоритмХеширования - Число - идентификатор алгоритма хеширования (см. ПолучитьАлгоритмы).
//
//  ВыводитьСообщения     - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии  - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм              - Неопределено - определить алгоритм по сертификату.
//                          Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//
Процедура ПроверитьПодпись( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПроверитьПодпись();
```
</details>

## Зашифровать
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Шифрует данные по методу Диффи-Хелмана.
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * КаталогРезультатаИлиАдреса - Строка - каталог, в который будут сохранены файлы результата.
//                                   - Структура - параметры с адресами хранилище результатов в модели сервиса.
//        ** ЗашифрованныйФайл        - Строка.
//        ** ПубличныйКлючОтправителя - Строка.
//        ** СессионныйКлюч           - Строка.
//        ** ИнициализационныйВектор  - Строка.
//
//  СертификатОтправителя - Структура, Неопределено - описание сертификата.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * Сертификат    - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//
//  ИмяФайлаДанных - Строка - шифруемый файл.
//                 - Строка - адрес шифруемого файла на сервере во временном хранилище, в модели сервиса.
//
//  СертификатПолучателя - Структура - описание сертификата.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * Сертификат    - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//
//  ПараметрыКриптографии - Структура.
//    * АлгоритмШифрования - Число - алгоритм шифрования. Если параметр не задан, идентификатор алгоритма будет браться из сертификата.
//    * АлгоритмКлюча      - Число - алгоритм генерации сессионного ключа.
//    * Режим              - Число - 0 - используется режим по умолчанию.
//                                   1 - Cipher block chaining
//                                   2 - Electronic code book
//                                   4 - Cipher feedback mode
//                                   5 - Ciphertext stealing mode
//
//  КаталогРезультатаИлиАдреса - Строка - каталог, в который будут сохранены файлы результата.
//                             - Структура - параметры для помещения в хранилище результата в модели сервиса.
//    * ЗашифрованныйФайл        - УникальныйИдентификатор.
//    * ПубличныйКлючОтправителя - УникальныйИдентификатор.
//    * СессионныйКлюч           - УникальныйИдентификатор.
//    * ИнициализационныйВектор  - УникальныйИдентификатор.
//
//  ВыводитьСообщения    - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм             - Неопределено - определить алгоритм по сертификату получателя.
//                         Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//
Процедура Зашифровать( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.Зашифровать();
```
</details>

## РасшифроватьФайл
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Расшифровывает данные методу Диффи-Хелмана в блочном режиме с обратной связью.
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр Алгоритм.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * РасшифрованныйФайл   - Строка - имя файла или адрес во временном хранилище, в модели сервиса.
//
//  СертификатПолучателя - Структура - сертификат для расшифровки.
//    * СерийныйНомер    - Строка - серийный номер сертификата.
//    * Поставщик        - Строка - издатель сертификата.
//    * Отпечаток        - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * Сертификат       - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//
//  ИмяЗашифрованногоФайла - Строка - полное имя зашифрованного файла на клиенте.
//                         - Строка - адрес зашифрованного файла на сервере во временном хранилище, в модели сервиса.
//
//  ПубличныйКлючОтправителя - Строка - полное имя файла публичного ключа эфемерной ключевой пары отправителя на клиенте.
//                           - Строка - адрес файла публичного ключа эфемерной ключевой пары отправителя во временном хранилище, в модели сервиса.
//
//  СессионныйКлюч - Строка - полное имя файла сессионного ключа на клиенте.
//                 - Строка - адрес файла сессионного ключа на сервере во временном хранилище, в модели сервиса.
//
//  ИнициализационныйВектор - Строка - полное имя файла инициализационного вектора на клиенте.
//                          - Строка - адрес файла инициализационного вектора во временном хранилище, в модели сервиса.
//
//  ИмяФайлаИлиРасширениеИлиАдрес - Строка - имя файла, в который необходимо сохранить результат.
//                                           Также можно указать только расширение создаваемого файла - ".расширение".
//                                - Строка - адрес файла, в который необходимо сохранить результат, во временном хранилище, в модели сервиса.
//
//  ВыводитьСообщения      - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии   - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  Алгоритм               - Неопределено - определить алгоритм по сертификату получателя.
//                           Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//
Процедура РасшифроватьФайл( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.РасшифроватьФайл();
```
</details>

## ХешироватьДанные
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Создает файл подписи для указанного файла данных в формате PKCS#7.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр АлгоритмИлиСертификат.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * Хеш                  - Строка - шестнадцатеричное представление хеша.
//
//  МестоХраненияКлюча 	   - Булево, Структура - определяет системное хранилище: локальное, защищенное хранилище на сервере или облачная подпись КриптоПро DSS.
//
//  ФайлДанных             - Строка - полное имя файла, который необходимо подписать, на клиенте.
//                         - Строка - адрес файла, который необходимо подписать, на сервере во временном хранилище.
//
//  ПараметрыКриптографии - Структура.
//    * АлгоритмХеширования - Число - идентификатор алгоритма хеширования (см. ПолучитьАлгоритмы).
//
//  ВыводитьСообщения      - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии   - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан новый.
//
//  АлгоритмИлиСертификат  - Неопределено - использовать алгоритм по умолчанию КриптографияЭДКОКлиентСервер.АлгоритмПоУмолчанию().
//                           Строка       - алгоритм, возвращаемый КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//                           Структура    - сертификат подписанта, вариант параметра не поддерживается в модели сервиса.
//    * СерийныйНомер    - Строка - серийный номер сертификата.
//    * Поставщик        - Строка - издатель сертификата.
//    * Отпечаток        - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * Сертификат       - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//  ПеревернутьБайтыХеша   - Булево - в возвращаемом хеше поменять местами шестнадцатеричные цифры внутри байта.
//
Процедура ХешироватьДанные( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ХешироватьДанные();
```
</details>

## ПолучитьУстройстваUSB
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает все устройства USB, подключенные к системе.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе
//                                        см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом
//                                        запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр АлгоритмИлиСертификат.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * УстройстваUSB        - Массив - список подключенных устройств USB.
//          * device_name        - Строка - имя устройства (примеры: "USB Composite Device", "Sentinel USB Key").
//          * hardware_id        - Строка - идентификатор устройства (примеры: "USB\VID_046D&PID_C31C&REV_6400",
//                                          примеры идентификаторов разных устройств с одинаковым именем:
//                                          "USB\VID_0529&PID_0001&REV_0325", "USB\VID_0529&PID_0001&REV_0100").
//
//  ВыводитьСообщения      - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии   - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан
//                                    новый.
//
//  АлгоритмИлиСертификат  - Неопределено - использовать алгоритм по умолчанию
//                                          КриптографияЭДКОКлиентСервер.АлгоритмПоУмолчанию().
//                           Строка       - алгоритм, возвращаемый
//                                          КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//                           Структура    - сертификат подписанта, вариант параметра не поддерживается в модели
//                                          сервиса.
//    * СерийныйНомер    - Строка - серийный номер сертификата.
//    * Поставщик        - Строка - издатель сертификата.
//    * Отпечаток        - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны
//                                  СерийныйНомер и Поставщик.
//    * Сертификат       - Строка - содержимое сертификата в Base64, если поле присутствует, используется
//                                  при определении алгоритма.
//
Процедура ПолучитьУстройстваUSB( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПолучитьУстройстваUSB();
```
</details>

## УстановитьОбработчикСобытия
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Устанавливает обработчик событий при подключении/отключении устройства USB.
// Компонента должна быть на стеке, что бы событие обрабатывалось, то есть нужно сохранить в памяти "МенеджерКриптографии"
// результата оповещения о завершении.
// Информация о событии получается в рамках обработки события от внешнего компонента, для которой определить в форме:
// Процедура ВнешнееСобытие(Источник, Событие, Данные) Экспорт
// Пример:
// Источник: CCrypt
// Событие: "Подключение устройства" или "Отключение устройства"
// Данные:
// \\?\Aladdin#Vid0529&Pid0001&HaspHL#7&243274f3&2&00#{44207c5e-33d5-4bd3-89d5-ed357c08df3c}
// Описание формата строки (Данные):
// https://community.silabs.com/s/article/windows-usb-device-path?language=en_US
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе
//                                        см. ОписаниеОшибки.
//      * МенеджерКриптографии - AddIn  - объект используемый для работы с файлами. Работать напрямую с объектом
//                                        запрещено.
//      * Алгоритм             - Строка - алгоритм криптопровайдера созданного менеджера криптографии, при заданном
//                                        параметре МенеджерКриптографии возвращается параметр АлгоритмИлиСертификат.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//
//  Фильтр                 - Строка - возвращаются события устройств, в идентификаторе которых присутствует данная
//                                    подстрока.
//
//  ВыводитьСообщения      - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
//  МенеджерКриптографии   - AddIn  - объект используемый для работы с криптографией. Если не задан, то будет создан
//                                    новый.
//
//  АлгоритмИлиСертификат  - Неопределено - использовать алгоритм по умолчанию
//                                          КриптографияЭДКОКлиентСервер.АлгоритмПоУмолчанию().
//                           Строка       - алгоритм, возвращаемый
//                                          КриптографияЭДКОСлужебныйВызовСервера.ПолучитьСвойстваКриптосообщения().
//                           Структура    - сертификат подписанта, вариант параметра не поддерживается в модели
//                                          сервиса.
//    * СерийныйНомер    - Строка - серийный номер сертификата.
//    * Поставщик        - Строка - издатель сертификата.
//    * Отпечаток        - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны
//                                  СерийныйНомер и Поставщик.
//    * Сертификат       - Строка - содержимое сертификата в Base64, если поле присутствует, используется
//                                  при определении алгоритма.
//
Процедура УстановитьОбработчикСобытия( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.УстановитьОбработчикСобытия();
```
</details>

## ОпределитьАлгоритм
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает алгоритм зашифрованного или подписанного сообщения PKCS#7 либо сертификата X.509.
//
// Параметры:
//  ОповещениеОЗавершении - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено         - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * Алгоритм - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//      * ОписаниеОшибки    - Строка - описание ошибки выполнения.
//
//  МестоХраненияКлюча 		- Булево, Структура - определяет имя события при записи в журнал событий.
//
//  ПараметрыОпределенияАлгоритма - Структура:
//    * Алгоритм         - Строка - возвращаемый алгоритм, если задано.
//    * Криптосообщение  - Строка - адрес во временном хранилище зашифрованного или подписанного сообщения PKCS#7.
//                       - Строка - имя файла зашифрованного или подписанного сообщения PKCS#7.
//    * Сертификат
//      ** СерийныйНомер - Строка - серийный номер сертификата.
//      ** Поставщик     - Строка - издатель сертификата.
//      ** Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//      ** Сертификат    - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//
//  ВыводитьСообщения    - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//
Процедура ОпределитьАлгоритм( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ОпределитьАлгоритм();
```
</details>

## ЗашифроватьXML
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Шифрует данные по XML, актуально только для облачной подписи
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * ЗашифрованныйФайл    - Строка - имя файла или адрес во временном хранилище.
//
//  ИсходныйФайл - Строка - полное имя исходного файла на клиенте.
//               - Строка - адрес исходного файла на сервере во временном хранилище.
//
//  Сертификаты - Массив - список описаний сертификатов.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//    * Сертификат    - Строка - содержимое сертификата в Base64, если поле присутствует, используется при определении алгоритма.
//
//  ИмяФайлаИлиРасширениеИлиАдрес - Неопределено - если в параметре ИсходныйФайл передан адрес во временном хранилище,
//                                                 то результат будет помещен во временное хранилище по адресу исходного файла.
//                                               - если передано полное имя файла на клиенте,
//                                                 то результат будет помещен во вновь созданный файл на клиенте.
//                                - Строка - имя файла, в который необходимо сохранить результат.
//                                - Строка - расширение файла результата.
//                                - Строка - адрес во временном хранилище, по которому необходимо сохранить результат.
//
//  ВыводитьСообщения      - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//  ПараметрыОперации      - Структура
//
Процедура ЗашифроватьXML( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ЗашифроватьXML();
```
</details>

## РасшифроватьXML
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Расшифровывает файл формата XML, актуально только для облачной подписи
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено            - Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * ОписаниеОшибки       - Строка - описание ошибки выполнения.
//      * РасшифрованныйФайл   - Строка - имя файла или адрес во временном хранилище.
//
//  ЗашифрованныйФайл - Строка - полное имя зашифрованного файла на клиенте.
//                    - Строка - адрес зашифрованного файла на сервере во временном хранилище.
//
//  ИмяФайлаИлиРасширениеИлиАдрес - Неопределено - если в параметре ЗашифрованныйФайл передан адрес во временном хранилище,
//                                                 то результат будет помещен во временное хранилище по адресу исходного файла.
//                                               - если передано полное имя файла на клиенте,
//                                                 то результат будет помещен во вновь созданный файл на клиенте.
//                                - Строка - имя файла, в который необходимо сохранить результат.
//                                - Строка - расширение файла результата.
//                                - Строка - адрес во временном хранилище, по которому необходимо сохранить результат.
//
//  Сертификат - Структура - приоритетный сертификат для расшифровки.
//    * СерийныйНомер - Строка - серийный номер сертификата.
//    * Поставщик     - Строка - издатель сертификата.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//
//  ВыводитьСообщения      - Булево - устанавливает признак необходимости выводить сообщения об ошибках.
//  ПараметрыОперации      - Структура
//
Процедура РасшифроватьXML( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.РасшифроватьXML();
```
</details>

## ПакетнаяПодписьОблачнойПодписи
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Запускает пакетный режим подписи для облачной подписи
//
// Параметры:
//  ОповещениеОЗавершении  - ОписаниеОповещения - описание процедуры, принимающей результат.
//    Результат - Структура:
//      * Выполнено	- Булево - если Истина, то процедура успешно выполнена и получен результат, иначе см. ОписаниеОшибки.
//      * Ошибка	- Строка - описание ошибки выполнения.
//      * Результат	- Массив - двоичные данные или адрес во временном хранилище.
//
//	УчетнаяЗаписьОблачнойПодписи - Структура, СправочникСсылка.УчетныеЗаписиDSS - данные для авторизации в сервисе
//
//  МассивДокументов - Массив - двоичные данные или адрес во временном хранилище.
//
//  СертификаПодписи - Структура - приоритетный сертификат для расшифровки.
//    * Отпечаток     - Строка - отпечаток сертификата. Используется для поиска сертификата если не указаны СерийныйНомер и Поставщик.
//
//	ПараметрыОперации - Структура:
//  	* ПодтверждатьОперацию - Булево - (опционально) признак принудельного подтверждения операции
//		* ОписаниеДокументов - Строка - (опционально)
//		* ТипДокументов	- Строка - (опционально)
//
Процедура ПакетнаяПодписьОблачнойПодписи( Экспорт
```

Пример вызова
```bsl
КриптографияЭДКОКлиент.ПакетнаяПодписьОблачнойПодписи();
```
</details>

---

© 2024, **ООО 1С-Софт**  
Все права защищены. Эта программа и сопроводительные материалы предоставляются  
в соответствии с условиями лицензии [Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/legalcode).

---
