---
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

// Возвращает список криптопровайдеров, поддерживаемых 1С-Отчетностью.
//
// Параметры:
//  Алгоритм            - Строка       - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512",
//                                       при значении "" или Неопределено возвращаются описания для всех алгоритмов.
//  ЭтоLinux            - Булево.
//                        Неопределено - возвращать описания для каждой операционной системы.
//  ТипКриптопровайдера - Перечисления.ТипыКриптоПровайдеров, Строка.
//                        Неопределено - возвращать все типы.
//  Путь                - Строка       - путь модуля криптографии в nix-системах.
//
// Возвращаемое значение:
//  ФиксированныйМассив - массив с описаниями криптопровайдеров.
//    * Имя                 - Строка - имя криптопровайдера.
//    * Тип                 - Число  - тип криптопровайдера.
//    * Путь                - Строка - путь к модулю криптопровайдера в nix-системах.
//    * Представление       - Строка - представление типа криптопровайдера для отображения в интерфейсе.
//    * ТипКриптопровайдера - Перечисления.ТипыКриптоПровайдеров.
//    * Алгоритм            - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//    * Поддерживается      - Булево - Истина.
//
Функция ПоддерживаемыеКриптопровайдеры( Экспорт
```

Пример вызова
```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

// Возвращает свойства криптопровайдера, поддерживаемого 1С-Отчетностью, или криптопровайдера из массива.
//
// Параметры:
//  Имя                            - Строка - имя криптопровайдера.
//  Тип                            - Число  - тип криптопровайдера.
//  ПоддерживаемыеКриптопровайдеры - Неопределено - получить вызовом ПоддерживаемыеКриптопровайдеры().
//                                   ФиксированныйМассив - массив с описаниями криптопровайдеров.
//    * Имя                 - Строка - имя криптопровайдера.
//    * Тип                 - Число  - тип криптопровайдера.
//    * Путь                - Строка - путь к модулю криптопровайдера в nix-системах.
//    * Представление       - Строка - представление типа криптопровайдера для отображения в интерфейсе.
//    * ТипКриптопровайдера - Перечисления.ТипыКриптоПровайдеров, Строка.
//    * Алгоритм            - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//    * Поддерживается      - Булево - флаг поддержки криптопровайдера 1С-Отчетностью.
//  ИндексКриптопровайдеров        - Массив - имя, имя и тип или тип криптопровайдера, для ускорения поиска,
//                                            заполняется при первом и втором вызове автоматически,
//                                            при изменении заполненности параметров Имя, Тип
//                                            передать с Неопределено для перезаполнения.
//
// Возвращаемое значение:
//  Структура    - описание криптопровайдера:
//    * Имя                 - Строка - имя криптопровайдера.
//    * Тип                 - Число  - тип криптопровайдера.
//    * Путь                - Строка - путь к модулю криптопровайдера в nix-системах.
//    * Представление       - Строка - представление типа криптопровайдера для отображения в интерфейсе.
//    * ТипКриптопровайдера - Перечисления.ТипыКриптоПровайдеров, Строка.
//    * Алгоритм            - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//    * Поддерживается      - Булево - флаг поддержки криптопровайдера 1С-Отчетностью.
//    * ИндексЭлемента      - Число  - индекс элемента в ПоддерживаемыеКриптопровайдеры, элемент присутствует,
//                                     если задан параметр ПоддерживаемыеКриптопровайдеры.
//  Неопределено - криптопровайдер не найден.
//
Функция СвойстваКриптопровайдера( Экспорт
```

Пример вызова
```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

// Возвращает свойства криптопровайдера с алгоритмом по умолчанию или заданным.
//
// Параметры:
//  ТипКриптопровайдера - Перечисления.ТипыКриптоПровайдеров.
//  Алгоритм            - Строка.
//  Путь                - Строка - путь модуля криптографии в nix-системах.
//
// Возвращаемое значение:
//  Структура    - описание криптопровайдера:
//    * Имя                 - Строка - имя криптопровайдера.
//    * Тип                 - Число  - тип криптопровайдера.
//    * Путь                - Строка - путь к модулю криптопровайдера в nix-системах.
//    * Представление       - Строка - представление типа криптопровайдера для отображения в интерфейсе.
//    * ТипКриптопровайдера - Перечисления.ТипыКриптоПровайдеров.
//    * Алгоритм            - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//    * Поддерживается      - Булево - флаг поддержки криптопровайдера 1С-Отчетностью.
//
Функция СвойстваКриптопровайдераПоУмолчанию(ТипКриптопровайдера, Алгоритм = Неопределено, Путь = Неопределено) Экспорт
```

Пример вызова
```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

// Возвращает список всех известных криптопровайдеров, поддерживающих отечественные алгоритмы.
//
// Параметры:
//  Поддерживается      - Булево       - поддерживается 1С-Отчетностью.
//                        Неопределено - возврат и поддерживаемых, и неподдерживаемых.
//  Алгоритм            - Строка       - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512",
//                                       при значении "" или Неопределено возвращаются описания для всех алгоритмов.
//  ЭтоLinux            - Булево.
//                        Неопределено - возвращать описания для каждой операционной системы.
//  ТипКриптопровайдера - Перечисления.ТипыКриптоПровайдеров, Строка.
//                        Неопределено - возвращать все типы.
//  Путь                - Строка       - путь модуля криптографии в nix-системах.
//
// Возвращаемое значение:
//  ФиксированныйМассив - массив с описаниями криптопровайдеров.
//    * Имя                 - Строка - имя криптопровайдера.
//    * Тип                 - Число  - тип криптопровайдера.
//    * Путь                - Строка - путь к модулю криптопровайдера в nix-системах.
//    * Представление       - Строка - представление типа криптопровайдера для отображения в интерфейсе.
//    * ТипКриптопровайдера - Перечисления.ТипыКриптоПровайдеров, Строка.
//    * Алгоритм            - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//    * Поддерживается      - Булево - флаг поддержки криптопровайдера 1С-Отчетностью.
//
Функция ИзвестныеКриптопровайдеры( Экспорт
```

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

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

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

```bsl

// Возвращает описание криптопровайдера CryptoPro CSP.
//
// Параметры:
//  Алгоритм        - Строка       - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512",
//                                   при значении "" или Неопределено возвращается массив свойств криптопровайдеров
//                                   всех алгоритмов и классов защиты.
//  ЭтоLinux        - Булево.
//                  - Неопределено - при пустых значениях Алгоритм или КлассЗащиты возвращаются массив свойств
//                                   криптопровайдеров для каждой операционной системы, иначе возвращаются свойства
//                                   криптопровайдера для текущей.
//  КлассЗащиты     - Число        - 1, 2 или 3,
//                                   при значении 0 или Неопределено возвращается массив свойств криптопровайдеров всех
//                                   классов защиты.
//  Путь            - Строка       - путь модуля криптографии в nix-системах.
//                  - Неопределено - определить путь модуля криптографии.
//  ВсеКлассыЗащиты - Булево       - возвращать имена криптопровайдеров со всеми классами защиты, а не только основной.
//
// Возвращаемое значение:
//  ФиксированнаяСтруктура или ФиксированныйМассив из ФиксированнаяСтруктура (при Алгоритм = Неопределено) - описание криптопровайдера.
//    * Имя                 - Строка - имя криптопровайдера.
//    * Тип                 - Число  - тип криптопровайдера.
//    * Путь                - Строка - путь к модулю криптопровайдера в nix-системах.
//    * Представление       - Строка - представление типа криптопровайдера для отображения в интерфейсе.
//    * ТипКриптопровайдера - Перечисления.ТипыКриптоПровайдеров.CryptoPro.
//    * Алгоритм            - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//    * Поддерживается      - Булево - Истина.
//
Функция КриптопровайдерCryptoPro( Экспорт
```

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

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

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

```bsl

// Возвращает описание криптопровайдера ViPNet CSP.
//
// Параметры:
//  Алгоритм - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//                      при значении "" или Неопределено возвращается массив свойств криптопровайдеров всех алгоритмов.
//
// Возвращаемое значение:
//  ФиксированнаяСтруктура или ФиксированныйМассив из ФиксированнаяСтруктура (при Алгоритм = Неопределено) - описание криптопровайдера.
//    * Имя                 - Строка - имя криптопровайдера.
//    * Тип                 - Число  - тип криптопровайдера.
//    * Путь                - Строка - путь к модулю криптопровайдера в nix-системах.
//    * Представление       - Строка - представление типа криптопровайдера для отображения в интерфейсе.
//    * ТипКриптопровайдера - Перечисления.ТипыКриптоПровайдеров.VipNet.
//    * Алгоритм            - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//    * Поддерживается      - Булево - Истина.
//
Функция КриптопровайдерViPNet(Алгоритм = "GOST R 34.10-2012-256") Экспорт
```

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

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

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

```bsl

// Возвращает описание криптопровайдера Signal-COM CSP.
//
// Параметры:
//   Алгоритм - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//                       при значении "" или Неопределено возвращается массив свойств криптопровайдеров всех алгоритмов.
//
// Возвращаемое значение:
//  ФиксированнаяСтруктура или ФиксированныйМассив из ФиксированнаяСтруктура (при Алгоритм = Неопределено) - описание криптопровайдера.
//    * Имя                 - Строка - имя криптопровайдера.
//    * Тип                 - Число  - тип криптопровайдера.
//    * Путь                - Строка - путь к модулю криптопровайдера в nix-системах.
//    * Представление       - Строка - представление типа криптопровайдера для отображения в интерфейсе.
//    * ТипКриптопровайдера - Строка - "SignalCOM".
//    * Алгоритм            - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//    * Поддерживается      - Булево - Ложь.
//
Функция КриптопровайдерSignalCOM(Алгоритм = "GOST R 34.10-2012-256") Экспорт
```

Пример вызова
```bsl
Результат = КриптографияЭДКОКлиентСервер.КриптопровайдерSignalCOM(Алгоритм);
```
</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

// Возвращает описание криптопровайдера ЛИССИ-CSP.
//
// Параметры:
//   Алгоритм - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//                       при значении "" или Неопределено возвращается массив свойств криптопровайдеров всех алгоритмов.
//
// Возвращаемое значение:
//  ФиксированнаяСтруктура или ФиксированныйМассив из ФиксированнаяСтруктура (при Алгоритм = Неопределено) - описание криптопровайдера.
//    * Имя                 - Строка - имя криптопровайдера.
//    * Тип                 - Число  - тип криптопровайдера.
//    * Путь                - Строка - путь к модулю криптопровайдера в nix-системах.
//    * Представление       - Строка - представление типа криптопровайдера для отображения в интерфейсе.
//    * ТипКриптопровайдера - Строка - "LISSI".
//    * Алгоритм            - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//    * Поддерживается      - Булево - Ложь.
//
Функция КриптопровайдерЛИССИ(Алгоритм = "GOST R 34.10-2012-256") Экспорт
```

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

## КриптопровайдерCryptoProDSS
<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.
//
// Параметры:
//   Алгоритм - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//                       при значении "" или Неопределено возвращается массив свойств криптопровайдеров всех алгоритмов.
//
// Возвращаемое значение:
//  ФиксированнаяСтруктура - описание криптопровайдера:
//    * Имя                 - Строка - имя криптопровайдера.
//    * Тип                 - Число  - тип криптопровайдера.
//    * Путь                - Строка - путь к модулю криптопровайдера в nix-системах.
//    * Представление       - Строка - представление типа криптопровайдера для отображения в интерфейсе.
//    * ТипКриптопровайдера - Перечисления.ТипыКриптоПровайдеров.CryptoProDSS.
//    * Алгоритм            - Строка - "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//    * Поддерживается      - Булево - Ложь.
//
Функция КриптопровайдерCryptoProDSS(Алгоритм = "GOST R 34.10-2012-256") Экспорт
```

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

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

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

```bsl

// Возвращает описание криптопровайдера Microsoft Base Cryptographic Provider v1.0.
//
// Возвращаемое значение:
//  ФиксированнаяСтруктура - описание криптопровайдера.
//    * Имя                 - Строка - имя криптопровайдера.
//    * Тип                 - Число  - тип криптопровайдера.
//    * Путь                - Строка - путь к модулю криптопровайдера в *nix-системах.
//    * Представление       - Строка - представление типа криптопровайдера для отображения в интерфейсе.
//    * ТипКриптопровайдера - Строка - "MSRSA".
//    * Алгоритм            - Строка - "RSA".
//    * Поддерживается      - Булево - Ложь.
//
Функция КриптопровайдерMicrosoftBaseCryptographicProvider() Экспорт
```

Пример вызова
```bsl
Результат = КриптографияЭДКОКлиентСервер.КриптопровайдерMicrosoftBaseCryptographicProvider() 
```
</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

// Возвращает свойства алгоритма.
//
// Параметры:
//  Алгоритм - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//
// Возвращаемое значение:
//  ФиксированныйМассив - массив с описаниями криптопровайдеров.
//    * Имя                 - Строка.
//    * Алгоритм            - Строка - "GOST R 34.10-2001", "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//    * АлгоритмХеширования - Число.
//    * АлгоритмХешированияВМоделиСервиса - Строка.
//
Функция СвойстваАлгоритма(Алгоритм = "GOST R 34.10-2012-256") Экспорт
```

Пример вызова
```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

// Возвращает поддерживаемые алгоритмы для алгоритма по умолчанию.
//
// Параметры:
//  ИсключитьУстаревшие - Булево - при значении Истина исключается "GOST R 34.10-2001".
//
// Возвращаемое значение:
//  ФиксированныйМассив - массив строк с именами алгоритмов "GOST R 34.10-2012-256", "GOST R 34.10-2012-512".
//
Функция ПоддерживаемыеАлгоритмы(ИсключитьУстаревшие = Ложь) Экспорт
```

Пример вызова
```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

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

Пример вызова
```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

// Возвращает текстовое представление ошибки.
//
// Параметры:
//	ИнформацияОбОшибке - Строка, ИнформацияОбОшибке, Структура - Содержит информацию об ошибке.
//
// Возвращаемое значение:
//	Строка - Текстовое представление ошибки.
//
Функция КраткоеПредставлениеОшибкиКриптосервиса(Знач ИнформацияОбОшибке, Знач ИнформацияОбОшибкеКомпоненты = Неопределено) Экспорт
```

Пример вызова
```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

// Возвращает описание ошибки, в случае, если не удалось проверить подпись.
//
Функция ОписаниеОшибкиНеУдалосьПроверитьПодпись() Экспорт
```

Пример вызова
```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

// Проверяет, что ошибка вызвана тем, что сертификат не входит в список авторизованных фирмой "1С".
//
// Параметры:
//	ОписаниеОшибки - Строка - проверяется на подстроку.
//
// Возвращаемое значение:
//	Булево - Истина, если текст ошибки указывает на то, что УЦ сертификата не авторизован фирмой "1С".
//
Функция ЭтоОшибкаНеавторизованногоУЦ(ОписаниеОшибки) Экспорт
```

Пример вызова
```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

// Основная функция для получения данных о месте хранения ключа для последующего выбора варианта выполнения криптоопераций.
// Если в первом реквизите передана структура, то будет получено его поле "МестоХраненияКлюча",
// иначе будет будет вычислено реальное место хранения ключа, на основе данных справочника "УчетныеЗаписиДокументооборота".
// Порядок вычисления для облачной подписи:
//	МодельХраненияКлюча - реквизит справочника
//	УчетнаяЗаписьОблачнойПодписи - по поиску отпечатка руководителя в регистре сведений "СертификатыПользователя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

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

Пример вызова
```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

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

Пример вызова
```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

// Вычисляет учетную запись облачной подписи из данных о месте хранения ключа.
// Имеет смысл, если место хранения ключа "Облачная подпись".
//
// Параметры:
//	КонтекстХранения - Структура - См. СвойстваМестаХраненияКлюча()
//
// Возвращаемое значение:
//	Неопределено, СправочникСсылка.СправочникСсылка.УчетныеЗаписи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

// Получает и / или изменяет свойства места хранения ключа
//
// Параметры:
//	МестоХраненияКлюча 	- Структура - см. СвойстваМестаХраненияКлюча()
//	ИмяСвойства 		- Строка
//	НовоеЗначение		- Произвольное - допустимые значения определяются в СвойстваМестаХраненияКлюча()
//
// Возвращаемое значение
//	Неопределено, Произвольное
//
Функция ПараметрыМестаХраненияКлюча(МестоХраненияКлюча, ИмяСвойства, НовоеЗначение = Null) Экспорт
```

Пример вызова
```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

// Формирует номер мобильного телефона без разделителей в формате +79999999999
//
// Параметры:
//	ТелефонМобильный - Строка
//
// Возвращаемое значение:
//	Строка
//
Функция ТелефонПодтвержденияОпераций(ТелефонМобильный) Экспорт
```

Пример вызова
```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);
//	  "SN"     - фамилия (surname);
//	  "GN"     - имя и отчество (givenName);
//	  "O"      - организация (organizationName);
//	  "OU"     - подразделение (organizationUnitName);
//	  "T"      - должность (title);
//	  "C"      - страна, "RU" для России (countryName);
//	  "ST"     - область, например, "77 г. Москва" (stateOrProvinceName);
//	  "L"      - населенный пункт (localityName);
//	  "STREET" - наименование улицы, номер дома (streetAddress);
//	  "E"      - адрес электронной почты (emailAddress).
//
Функция РазобратьСтрокуСубъекта(СтрокаДляРазбора) Экспорт
```

Пример вызова
```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

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

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

---

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

---
