Указатель Структуры данных Файлы Функции Переменные Определения типов
Структуры данных | Определения типов | Функции
Файл p11.h

Заголовочный файл с описанием функций и структур для управления сессиями и ключами. Подробнее...

#include <openssl/evp.h>
#include <cryptoki.h>
#include "mutex.h"

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

struct  rt_eng_p11_session
 Структура для хранения pkcs11 сессии и её таблицы функций. Подробнее...
 
struct  rt_eng_p11_session_vtable_st
 Таблица функций сессии. Подробнее...
 

Определения типов

typedef struct
rt_eng_p11_session_vtable_st 
rt_eng_p11_session_vtable
 Структура для хранения таблицы функций сессии.
 

Функции

int rt_eng_invalidate_p11_ossl_evp_pkey (EVP_PKEY *pkey)
 Данная функция делает описатель ключевой пары недействительным. При использовании ключевой пары, находящейся на токене, могут возникать ситуации, при которых описатель объектов на токене становится более не актуальным, например при сбросе прав доступа к объектам на токене или при физическом удаление ключа из памяти токена. Во избежании неопределённого поведения описатель ключевой пары необходимо делать недействительным. Подробнее...
 
EVP_PKEY * rt_eng_new_p11_ossl_evp_pkey (rt_eng_p11_session session, CK_OBJECT_HANDLE private_key, CK_OBJECT_HANDLE public_key)
 Получение описателя ключевой пары. Подробнее...
 
rt_eng_p11_session rt_eng_p11_session_new (CK_FUNCTION_LIST_PTR function_list, CK_SESSION_HANDLE handle, int hold, rt_eng_mutex_new_t mutex_new)
 Функция создания сессии. Подробнее...
 
rt_eng_p11_session rt_eng_p11_session_new_null (void)
 Функция создания пустой сессии. Подробнее...
 
int rt_eng_rand_set0_p11_session (rt_eng_p11_session session)
 Установка текущей сессии для получения энтропии. Подробнее...
 

Функции

int rt_eng_invalidate_p11_ossl_evp_pkey ( EVP_PKEY *  pkey)
Аргументы
pkey– описатель ключевой пары.
Возвращает
1 в случае успеха, 0 в случае ошибки.
EVP_PKEY* rt_eng_new_p11_ossl_evp_pkey ( rt_eng_p11_session  session,
CK_OBJECT_HANDLE  private_key,
CK_OBJECT_HANDLE  public_key 
)
Аргументы
session– описатель обёрнутой сессии.
private_key(необязательный) – описатель закрытого ключа, полученный от rtpkcs11ecp. Если для работы приложения отсутствует необходимость использовать закрытый ключ, то следует установить данный параметр в значение NULL.
public_key– описатель открытого ключа, полученный от rtpkcs11ecp.
Возвращает
описатель ключевой пары в случае успеха, NULL в случае ошибки.
rt_eng_p11_session rt_eng_p11_session_new ( CK_FUNCTION_LIST_PTR  function_list,
CK_SESSION_HANDLE  handle,
int  hold,
rt_eng_mutex_new_t  mutex_new 
)
Аргументы
function_list– список функций, полученных от rtpkcs11ecp.
handle– описатель сессии, полученной от rtpkcs11ecp.
hold– параметр передачи прав управления сессией. При его равенстве 1, сессия будет закрыта средствами OpenSSL при завершении работы. При его равенстве 0, сессия должна быть закрыта пользователем самостоятельно.
mutex_new(необязательный) – мьютекс для управления сессией. При отсутствии необходимости его использования, устанавливается в значение NULL.
Возвращает
описатель обёрнутой сессии в случае успеха, NULL в случае ошибки.
rt_eng_p11_session rt_eng_p11_session_new_null ( void  )
Возвращает
описатель обёрнутой сессии в случае успеха, NULL в случае ошибки.
int rt_eng_rand_set0_p11_session ( rt_eng_p11_session  session)
Аргументы
session– описатель обёрнутой сессии.
Возвращает
1 в случае успеха, 0 в случае ошибки.