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

// Выполняет поиска сертификата в хранилище.
Функция НайтиСертификат(Сертификат, ВыполнятьПроверку = Ложь) Экспорт
```

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

// Выполняет поиск сертификата получателя в хранилище сертификатов БРО
//
// Параметры:
//	Сертификат - Структура - содержит поля для поиска сертификата, например поле ТипСертификата может содержать варианты:
//				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

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

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

// Получает основные свойства переданного сертификата.
//
// Параметры:
//   Сертификат - ДвоичныеДанные - сертификат, свойства которого необходимо получить.
//
// Возвращаемое значение:
//	 ФиксированнаяСтруктура - свойства сертификата:
//    * Версия - Строка - версия сертификата.
//    * ДатаНачала - Дата - дата начала действия сертификата (UTC).
//    * ДатаОкончания - Дата - дата окончания действия сертификата (UTC).
//    * Издатель - ФиксированнаяСтруктура - информация об издателе сертификата:
//        ** CN - Строка - commonName
//        ** O - Строка - organizationName;
//        ** OU - Строка - organizationUnitName;
//        ** C - Строка - countryName;
//        ** ST - Строка - stateOrProvinceName;
//        ** L - Строка - localityName;
//        ** E - Строка - emailAddress;
//        ** SN - Строка - surname;
//        ** GN - Строка - givenName;
//        ** T - Строка - title;
//        ** STREET - Строка - streetAddress;
//        ** OGRN - Строка - ОГРН;
//        ** OGRNIP - Строка - ОГРНИП;
//        ** INN - Строка - ИНН;
//        ** SNILS - Строка - СНИЛС;
//           ...
//    * ИспользоватьДляПодписи - Булево - указывает, можно ли использовать данный сертификат для подписи.
//    * ИспользоватьДляШифрования - Булево - указывает, можно ли использовать данный сертификат для шифрования.
//    * ОткрытыйКлюч - ДвоичныеДанные - содержит данные открытого ключа.
//    * Отпечаток - ДвоичныеДанные - содержит данные отпечатка. Вычисляется динамически, по алгоритму SHA-1.
//    * РасширенныеСвойства - ФиксированнаяСтруктура -  расширенные свойства сертификата:
//        ** EKU - ФиксированныйМассив - Enhanced Key Usage.
//    * СерийныйНомер - ДвоичныеДанные - серийный номер сертификата.
//    * Субъект - ФиксированнаяСтруктура - информацию о субъекте сертификата. Состав см. Издатель.
//    * Сертификат - ДвоичныеДанные - файл сертификата в кодировке DER.
//    * Идентификатор - Строка - вычисляется по ключевым свойствам Издателя и серийному номеру по алгоритму SHA1.
//                               Используется для идентификации сертификата в сервисе криптографии.
//
Функция ПолучитьСвойстваСертификатаПолучателя(Сертификат) Экспорт
```

Пример вызова
```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.
Функция АлгоритмКриптосообщенияИлиСертификата( Экспорт
```

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

// Добавляет сертификат в хранилище сертификатов получателей.
//
// Параметры:
//   Сертификат - ДвоичныеДанные - файл сертификата.
//              - Строка - адрес файла сертификата во временном хранилище.
//   ТипХранилища - Строка - тип хранилища, в которое необходимо добавить сертификат, возможные варианты: MY
//
Процедура Добавить(Сертификат, ТипХранилища) Экспорт
```

Пример вызова
```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С-Отчетность)
//
// Возвращаемое значение:
//	Булево - Возвращает Истина, если база используется во Фреш и включена ФО "ЭлектроннаяОблачнаяПодпись"
//
Функция ИспользованиеОблачнойПодписиВозможно() Экспорт
```

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

## ДоступнаПодсистемаКриптографииDSS
<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
Результат = КриптографияЭДКО.ДоступнаПодсистемаКриптографииDSS() 
```
</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С-Отчетность)
//
// Параметры:
//	УчетнаяЗапись 	- СправочникСсылка.УчетныеЗаписиDSS,
//					- СправочникСсылка.Организация
//
// Возвращаемое значение:
//	Структура
//		*
//
Функция ДополнительныеНастройкиОблачнойПодписи(УчетнаяЗапись) Экспорт
```

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

---

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

---
