КриптоПро CSP  

Структуры данных

Предназначены для взаимодействия с программами пользователя, непосредственно использующими "КриптоПро CSP 4.0".

СтруктурыОписание
_PUBLICKEYSTRUCСтруктура PUBLICKEYSTRUC, также известная, как структура BLOBHEADER, указывает тип ключевого блоба и алгоритм ключа, находящегося в нём. Экземпляр этой структуры находится в начале поля pbData каждого ключевого блоба.
_PROV_PP_VERSION_EXСтруктура описывает версию СКЗИ, ПКЗИ, тип сборки, аппаратную архитектуру и ОС, для которой предназначен продукт.
_SELFTEST_HEADERЗаголовок результата встроенного тестирования и контроля целостности СКЗИ.
_SELFTEST_CHECKSUM_ELEMENTРезультат контроля целостности модуля.
_PROV_PP_SELFTESTРезультат встроенного тестирования и контроля целостности СКЗИ.
_CRYPT_SIMPLEBLOB_HEADERСтруктура CRYPT_SIMPLEBLOB_HEADER является расширением структуры BLOBHEADER и находится в начале поля pbData ключевого блоба типа SIMPLEBLOB для ключей "КриптоПро CSP".
_CRYPT_SIMPLEBLOBПсевдоструктура (т. е. недоопределенная структура) CRYPT_SIMPLEBLOB полностью описывает ключевой блоб типа SIMPLEBLOB для ключей "КриптоПро CSP".
_CRYPT_SIMPLEBLOB_512Псевдоструктура (т. е. недоопределенная структура) CRYPT_SIMPLEBLOB полностью описывает ключевой блоб типа SIMPLEBLOB для ключей "КриптоПро CSP".
_CRYPT_OPAQUEBLOBПсевдоструктура (т. е. недоопределенная структура) CRYPT_OPAQUEBLOB полностью описывает ключевой блоб типа OPAQUEKEYLOB для ключей "КриптоПро CSP".
_CRYPT_PUBKEYPARAMСтруктура CRYPT_PUBKEYPARAM содержит признак ключей по ГОСТ Р 34.10-2001.
_CRYPT_PUBKEY_INFO_HEADERСтруктура CRYPT_PUBKEY_INFO_HEADER содержит заголовок блоба открытого ключа или блоба ключевой пары по ГОСТ Р 34.10-2001.
_CRYPT_PUBLICKEYBLOBПсевдоструктура CRYPT_PUBLICKEYBLOB полностью описывает ключевой блоб типа PUBLICKEYBLOB для ключей "КриптоПро CSP".
_CRYPT_PRIVATEKEYBLOBПсевдоструктура CRYPT_PRIVATEKEYBLOB полностью описывает ключевой блоб типа PRIVATEKEYBLOB для ключей "КриптоПро CSP".
_CRYPT_DIVERSBLOBHEADERСтруктура CRYPT_DIVERSBLOBHEADER описывает блоб типа DIVERSBLOB для процедуры диверсификации ключей КриптоПро CSP.
_CRYPT_DIVERSBLOBСтруктура CRYPT_DIVERSBLOB описывает блоб типа DIVERSBLOB для процедуры диверсификации ключей КриптоПро CSP.
_CRYPT_PIN_NK_PARAMСтруктура передачи информации для слияния частей контейнера.
_CRYPT_PIN_PARAMСтруктура передачи информации для: 1) смены пароля контейнера, 2) указания способа доступа к контейнеру (имя, handle, пароль), на ключе которого зашифровано содержимое другого контейнера.
_CRYPT_NK_INFO_PARAMСтруктура получения информации о контейнере разделенного на части.
_CRYPT_PASSWD_INFO_PARAMСтруктура для получения информации о пароле на контейнер.
_CRYPT_PIN_INFO_SOURCEСтруктура для получения информации о пароле на контейнер.
_CRYPT_PIN_INFOСтруктура для получения информации о пароле на контейнер.
_CRYPT_FKC_EKE_AUTH_INFO_PARAMСтруктура получения информации о пароле контейнера для аутентификации по EKE.
_CRYPT_FKC_PIN_INFO_SOURCEСтруктура для получения информации о пароле на контейнер.
_CRYPT_FKC_PIN_INFOСтруктура для получения информации о пароле на контейнер.
_CRYPT_FKC_DH_CHECKСтруктура для получения статуса проверки открытого ключа. Получает и устанавливает параметр "проверка открытого ключа в операции Диффи-Хеллмана" для провайдеров FKC ( PP_FKC_DH_CHECK ).
_CRYPT_CACHE_SIZEСтруктура для получения и установки настроек кэширования контейнеров.
_CRYPT_ENUMREADER_INFOБлоб с информацией о считывателе, представляющий собой сериализованную псевдоструктуру.
_CRYPT_ENUMREADER_INFO_MEDIAБлоб с информацией о считывателе, представляющий собой сериализованную псевдоструктуру.
_CRYPT_HASH_BLOB_EXСтруктура передачи информации для получения и установки разделённого значения параметра R для ЭЦП на базе функционального ключевого носителя.
_CRYPT_KEY_PERIODСтруктура для задания периодов действия ключей во вновь создаваемом контейнере.
_TOKEN_VERIFYDATAСтруктура передачи информации функции хэширования по алгоритму CALG_EKEVERIFY_HASH.
_CONTAINER_EXTENSIONБлоб с сериализованной псевдоструктурой с расширением.
_VTABLEPROVSTRUCСтруктура VTABLEPROVSTRUC содержит указатели на callback функции, которые могут быть использованы функциями криптопровайдера (CSP).
Определения типовОписание
CPC_Kernel_Fpu_Begin_Callback Описание функции захвата FPU в режиме ядра ОС.
CPC_Kernel_Fpu_End_Callback Описание функции освобождения FPU в режиме ядра ОС.
МакросыОписание
CRYPT_MODE_CBCSTRICT Режим блочного шифрования с обратной связью на базе ГОСТ 28147-89, шифр-текст блока всегда является IV для следующего.
CRYPT_MODE_CBCRFC4357 Режим блочного шифрования с обратной связью на базе ГОСТ 28147-89, согласно RFC 4357.
CRYPT_MODE_CNT Режим шифрования "гаммированием" по ГОСТ 28147-89.
CRYPT_MODE_CTR Режим шифрования "гаммирование" по ГОСТ Р 34.13-2015.
SECRET_KEY_LEN Длина в байтах ключа ГОСТ 28147-89 и закрытых ключей ГОСТ Р 34.10-94 и ГОСТ Р 34.10-2001.
G28147_KEYLEN Длина в байтах ключа ГОСТ 28147-89.
EXPORT_IMIT_SIZE Длина в байтах имитовставки при импорте/экспорте.
CHECK_VALUE_SIZE Длина в байтах контрольной величины ключа при импорте и получении параметра ключа.
SEANCE_VECTOR_LEN Длина в байтах вектора инициализации алгоритма.
MAX_CONTAINER_NAME_LEN Максимальная разрешённая длина имени ключевого контейнера.
GR3410_1_MAGIC Признак ключей ГОСТ Р 34.10-94 и ГОСТ Р 34.10-2001.
G28147_MAGIC Признак ключей ГОСТ 28147-89 и мастер ключей TLS.
DIVERS_MAGIC Признак ключевого блоба функции диверсификации ключа.
BLOB_VERSION Текущее значение версии ключевого блоба.
VER_TYPE_DEBUG Отладочная версия дистрибутива.
VER_TYPE_RELEASE Релизная версия дистрибутива.
VER_ARCH_IA32 Архитектура IA32.
VER_ARCH_IA64 Архитектура IA64.
VER_ARCH_SPARC32 Архитектура Sparc32.
VER_ARCH_SPARC64 Архитектура Sparc64.
VER_ARCH_AMD64 Архитектура AMD64.
VER_ARCH_ARM Архитектура ARM.
VER_ARCH_PPC32 Архитектура PowerPC32.
VER_ARCH_PPC64 Архитектура PowerPC64.
VER_ARCH_ARM64 Архитектура ARM64.
VER_ARCH_MIPS Архитектура MIPS.
VER_OS_WINDOWS ОС Windows.
VER_OS_SOLARIS ОС Solaris.
VER_OS_FREEBSD ОС FreeBSD.
VER_OS_LINUX ОС Linux.
VER_OS_AIX ОС AIX.
VER_OS_DARWIN ОС Mac OS X.
VER_OS_IOS Apple iOS.
VER_OS_ANDROID ANDROID OS.
VER_OS_BITVISOR BITVISOR_OS.
VER_OS_UCLIBC UCLIBC runtime.
ПеречисленияОписание
_CRYPT_FKC_DH_CHECK_VAL Значения параметра "проверка открытого ключа в операции Диффи-Хеллмана". При установке параметра передается переменной типа DWORD.