Class GostKeyExchangeFormatter
Класс формирования данных для обмена симметричным ключом на основе ГОСТ Р 34.10 транспорта.
Inherited Members
Namespace: CryptoPro.Security.Cryptography
Assembly: CryptoPro.Security.Cryptography.dll
Syntax
public class GostKeyExchangeFormatter : AsymmetricKeyExchangeFormatter
Remarks
Класс позволяет отправителю сформировать зашифрованные данные, которые получатель может расшифровать и использовать в качестве симметричного ключа для расшифрования сообщения.
В отличии от аналогичных классов, порожденных от AsymmetricKeyExchangeFormatter, данный класс нельзя использовать для получения произвольной общей информации, или произвольных симметричных ключей. Алгоритм предназначен только для форматирования данных на основе симметричного ключа ГОСТ 28147.
Для получения данных обмена ключами и извлечения соответствующего симметричного ключа служит класс GostKeyExchangeDeformatter.
Constructors
GostKeyExchangeFormatter()
Создание объекта класса GostKeyExchangeFormatter.
Declaration
public GostKeyExchangeFormatter()
GostKeyExchangeFormatter(AsymmetricAlgorithm)
Конструктор объекта класса GostKeyExchangeFormatter с заданным открытым ключом получателя.
Declaration
public GostKeyExchangeFormatter(AsymmetricAlgorithm key)
Parameters
Type | Name | Description |
---|---|---|
AsymmetricAlgorithm | key | Класс, содержащий ключ, для которого будет производиться шифрование пердаваемой информации. |
Properties
Parameters
Возвращает параметры обмена ключами.
Declaration
public override string Parameters { get; }
Property Value
Type | Description |
---|---|
string | Всегда null. |
Overrides
Remarks
Не используется.
Methods
CreateKeyExchange(byte[])
Формирование данных обмена, на основе симметричного ключа шифрования сообщения ГОСТ 28147.
Declaration
public override byte[] CreateKeyExchange(byte[] data)
Parameters
Type | Name | Description |
---|---|---|
byte[] | data | "Чистый" симметричный ключ ГОСТ 28147. |
Returns
Type | Description |
---|---|
byte[] | Зашифрованные данные для отправки стороне получателю. |
Overrides
Remarks
В данной сборке функция всегда возбуждает исключение CryptographicException.
В зависимости от сборки функция может всегда возбуждать исключение CryptographicException, так как использует "чистый" ключ. По возможности используйте безопасную функцию CreateKeyExchange(SymmetricAlgorithm, GostKeyWrapMethod)
CreateKeyExchange(byte[], Type)
Формирование данных обмена, на основе симметричного ключа шифрования сообщения ГОСТ 28147.
Declaration
public override byte[] CreateKeyExchange(byte[] data, Type symAlgType)
Parameters
Type | Name | Description |
---|---|---|
byte[] | data | "Чистый" симметричный ключ ГОСТ 28147. |
Type | symAlgType | Параметр не используется в этой версии. |
Returns
Type | Description |
---|---|
byte[] | Зашифрованные данные для отправки стороне получателю. |
Overrides
Remarks
В данной сборке функция всегда возбуждает исключение CryptographicException.
В зависимости от сборки функция может всегда возбуждать исключение CryptographicException, так как использует "чистый" ключ. По возможности используйте безопасную функцию CreateKeyExchange(SymmetricAlgorithm, GostKeyWrapMethod)
CreateKeyExchange(SymmetricAlgorithm)
Формирование данных обмена, на основе симметричного ключа шифрования сообщения ГОСТ 28147.
Declaration
public GostKeyTransport CreateKeyExchange(SymmetricAlgorithm alg)
Parameters
Type | Name | Description |
---|---|---|
SymmetricAlgorithm | alg | Симметричный ключ ГОСТ 28147. |
Returns
Type | Description |
---|---|
GostKeyTransport | Зашифрованные данные для отправки стороне получателю. |
CreateKeyExchange(SymmetricAlgorithm, GostKeyWrapMethod)
Формирование данных обмена, на основе симметричного ключа шифрования сообщения ГОСТ 28147.
Declaration
public GostKeyTransport CreateKeyExchange(SymmetricAlgorithm alg, GostKeyWrapMethod keyWrapMethod)
Parameters
Type | Name | Description |
---|---|---|
SymmetricAlgorithm | alg | Симметричный ключ ГОСТ 28147. |
GostKeyWrapMethod | keyWrapMethod | Алгоритм симметричного экспорта |
Returns
Type | Description |
---|---|
GostKeyTransport | Зашифрованные данные для отправки стороне получателю. |
CreateKeyExchange15(SymmetricAlgorithm, GostKeyWrapMethod)
Формирование данных обмена, на основе симметричного ключа шифрования сообщения ГОСТ 34.12-2015.
Declaration
public Gost3412_2015KeyTransport CreateKeyExchange15(SymmetricAlgorithm alg, GostKeyWrapMethod keyWrapMethod)
Parameters
Type | Name | Description |
---|---|---|
SymmetricAlgorithm | alg | Симметричный ключ ГОСТ 34.12-2015. |
GostKeyWrapMethod | keyWrapMethod | Алгоритм симметричного экспорта |
Returns
Type | Description |
---|---|
Gost3412_2015KeyTransport | Зашифрованные данные для отправки стороне получателю. |
CreateKeyExchangeData(SymmetricAlgorithm)
Формирование данных обмена, на основе симметричного ключа шифрования сообщения ГОСТ 28147.
Declaration
public byte[] CreateKeyExchangeData(SymmetricAlgorithm alg)
Parameters
Type | Name | Description |
---|---|---|
SymmetricAlgorithm | alg | Симметричный ключ ГОСТ 28147. |
Returns
Type | Description |
---|---|
byte[] | Зашифрованные данные для отправки стороне получателю. |
CreateKeyExchangeData(SymmetricAlgorithm, GostKeyWrapMethod)
Формирование данных обмена, на основе симметричного ключа шифрования сообщения ГОСТ 28147.
Declaration
public byte[] CreateKeyExchangeData(SymmetricAlgorithm alg, GostKeyWrapMethod wrapMethod)
Parameters
Type | Name | Description |
---|---|---|
SymmetricAlgorithm | alg | Симметричный ключ ГОСТ 28147. |
GostKeyWrapMethod | wrapMethod | Алгоритм экспорта |
Returns
Type | Description |
---|---|
byte[] | Зашифрованные данные для отправки стороне получателю. |
SetKey(AsymmetricAlgorithm)
Устанавливает открытый ключ.
Declaration
public override void SetKey(AsymmetricAlgorithm key)
Parameters
Type | Name | Description |
---|---|---|
AsymmetricAlgorithm | key | Алгоритм, содержащий открытый ключ получателя. |
Overrides
Remarks
Данный ключ необходимо установить до первого вызова фунций формирования обмена данных.