Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
collapsetrue
CK_BYTE Pin[] = {'1', '2', '3', '4', '5', '6', '7', '8'};		// текущий PIN-код Пользователя или локальный PIN-код
CK_SLOT_ID slots[100];											// массив идентификаторов слотов

.
.
rv = pfGetFunctionListEx -> C_EX_SetLocalPIN(
	slots[0], 													// считаем, что токен подключен к первому слоту
	Pin, 														// текущий PIN-код Пользователя или текущий локальный PIN-код
	arraysize(Pin),												// длина текущего PIN-кода Пользователя или локального PIN-кода
	"000000000000000000000000000000",							// указатель на новый Локальный PIN-код
	30,															// длина нового Локального PIN-кода
	0x1F														// идентификатор Локального PIN-кода
);
if (rv != CKR_OK)												// проверка результата
	printf("C_EX_SetLocalPIN() -> failed \n");
else
	printf("C_EX_SetLocalPIN() -> OK \n"); 

к содержанию ↑

Anchor
C_EX_

...

TokenManageSlotAndToken
C_EX_TokenManageSlotAndToken

Назначение

Предоставляет механизм принудительной смены PIN-кода пользователя.

...

CKR_USER_NOT_LOGGED_IN – пользователь SKU_SO не авторизован на токене (режимы)


Info
titleМультифункциональная функция

Здесь описаны не все возможные параметры функции. Описание других параметров функции можно найти здесь

к содержанию ↑

C_EX_SlotManage

...

CKR_OK – функция выполнена успешно.

к содержанию ↑

Anchor
C_EX_

...

TokenManageBluetooth
C_EX_TokenManageBluetooth

Назначение

Управляет режимом работы токена и таймаутом беспроводного соединения Рутокен Bluetooth.

...

CKR_OK – функция выполнена успешно.

к содержанию ↑

Функции для работы с ключами в оперативной памяти

C_EX_WrapKey

Назначение

Генерирует сессионный ключ, вычисляет ключ согласования, шифрует сессионный ключ ключом согласования и возвращает указатель на дескриптор сессионного ключа, хранящегося в оперативной памяти токена.

Синтаксис

Code Block
CK_DEFINE_FUNCTION(CK_RV, C_EX_WrapKey)(
 CK_SESSION_HANDLE hSession,
 CK_MECHANISM_PTR pGenerationMechanism,
 CK_ATTRIBUTE_PTR pKeyTemplate,
 CK_ULONG ulKeyAttributeCount,
 CK_MECHANISM_PTR pDerivationMechanism,
 CK_OBJECT_HANDLE hBaseKey,
 CK_MECHANISM_PTR pWrappingMechanism,
 CK_BYTE_PTR pWrappedKey,
 CK_ULONG_PTR pulWrappedKeyLen,
 CK_OBJECT_HANDLE_PTR phKey
);

Параметры

...

hSession

...

pGenerationMechanism

...

механизм генерации сессионного ключа. Допустимое значение:

CKM_GOST28147_KEY_GEN – по стандарту ГОСТ 28147-89

...

pKeyTemplate

...

ulKeyAttributeCount

...

pDerivationMechanism

...

механизм выработки ключа согласования. Допустимые значения:

CKM_GOSTR3410_DERIVE – по стандарту ГОСТ Р 34.10-2001
CKM_GOSTR3410_12_DERIVE – по стандарту ГОСТ Р 34.10-2012

...

hBaseKey

...

pWrappingMechanism

...

pWrappedKey

...

pulWrappedKeyLen

...

длина зашифрованного сессионного ключа

...

phKey

...


Info
titleМультифункциональная функция

Здесь описаны не все возможные параметры функции. Описание других параметров функции можно найти здесь

к содержанию ↑

C_EX_UnwrapKey

Назначение

Вычисляет ключ согласования, расшифровывает зашифрованный сессионный ключ и возвращает указатель на дескриптор расшифрованного сессионного ключа, хранящего в оперативной памяти токена.

Синтаксис

Code Block
CK_DEFINE_FUNCTION(CK_RV, C_EX_UnwrapKey)(
 CK_SESSION_HANDLE hSession,
 CK_MECHANISM_PTR pDerivationMechanism,
 CK_OBJECT_HANDLE hBaseKey,
 CK_MECHANISM_PTR pUnwrappingMechanism,
 CK_BYTE_PTR pWrappedKey,
 CK_ULONG ulWrappedKeyLen,
 CK_ATTRIBUTE_PTR pKeyTemplate,
 CK_ULONG ulKeyAttributeCount,
 CK_OBJECT_HANDLE_PTR phKey
);

Параметры

...

hSession

...

pDerivationMechanism

...

механизм выработки ключа согласования (KEK). Допустимые значения:

CKM_GOSTR3410_DERIVE – по стандарту ГОСТ Р 34.10-2001
CKM_GOSTR3410_12_DERIVE – по стандарту ГОСТ Р 34.10-2012

...

hBaseKey

...

pUnwrappingMechanism

...

механизм расшифрования зашифрованного сессионного ключа

...

pWrappedKey

...

ulWrappedKeyLen

...

[in]

...

pKeyTemplate

...

ulKeyAttributeCount

...

phKey

...


к содержанию ↑

Вспомогательные функции

C_EX_FreeBuffer()

Назначение

Функция освобождает память, выделенную другими расширенными функциями, например C_EX_GetCertificateInfoText.

Синтаксис

Code Block
CK_DEFINE_FUNCTION(CK_RV, C_EX_FreeBuffer)(
	CK_BYTE_PTR		pBuffer
);

Параметры

pBuffer[in]указатель на буфер

...