From f3cbd19825e874ecf3a91e1d02b149fe8bea9d7d Mon Sep 17 00:00:00 2001 From: fengweihao Date: Wed, 25 Nov 2020 14:10:26 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=8E=B7=E5=8F=96HSM?= =?UTF-8?q?=E7=A7=81=E9=92=A5=E5=8F=A5=E6=9F=84=20=E5=AE=89=E8=A3=85?= =?UTF-8?q?=E5=8C=85=E5=A2=9E=E5=8A=A0libcertex=E5=BA=93=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0HSM=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6rcsp.con?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cmake/Package.cmake | 3 + common/CMakeLists.txt | 4 +- common/pkcs11/include/ErrorHSM.h | 36 ++ common/{rt => pkcs11}/include/pkcs11.h | 4 +- common/{rt => pkcs11}/include/pkcs11f.h | 0 common/{rt => pkcs11}/include/pkcs11g.h | 0 common/{rt => pkcs11}/include/pkcs11t.h | 63 +++- common/pkcs11/include/rlib_load.h | 139 ++++++++ common/pkcs11/include/tdefs.h | 208 ++++++++++++ common/pkcs11/src/rlib_load.cpp | 344 ++++++++++++++++++++ common/rt/include/rlib_load.h | 45 --- common/rt/src/rlib_load.cpp | 220 ------------- program/include/cert_conf.h | 3 + program/src/cert_session.cpp | 131 +++++--- resource/conf/cert_store.ini | 6 +- resource/lib/libcertex-rcsp_r.so.v.3.0.40.3 | Bin 0 -> 778448 bytes resource/rcsp/rcsp.conf | 18 + 17 files changed, 899 insertions(+), 325 deletions(-) create mode 100644 common/pkcs11/include/ErrorHSM.h rename common/{rt => pkcs11}/include/pkcs11.h (99%) rename common/{rt => pkcs11}/include/pkcs11f.h (100%) rename common/{rt => pkcs11}/include/pkcs11g.h (100%) rename common/{rt => pkcs11}/include/pkcs11t.h (96%) create mode 100644 common/pkcs11/include/rlib_load.h create mode 100644 common/pkcs11/include/tdefs.h create mode 100644 common/pkcs11/src/rlib_load.cpp delete mode 100644 common/rt/include/rlib_load.h delete mode 100644 common/rt/src/rlib_load.cpp create mode 100644 resource/lib/libcertex-rcsp_r.so.v.3.0.40.3 create mode 100644 resource/rcsp/rcsp.conf diff --git a/cmake/Package.cmake b/cmake/Package.cmake index 86fc9bc..083001b 100644 --- a/cmake/Package.cmake +++ b/cmake/Package.cmake @@ -28,6 +28,7 @@ set(CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX /home/tsg) install(PROGRAMS build/program/certstore DESTINATION ./bin) install(DIRECTORY resource/cert DESTINATION ./) install(DIRECTORY resource/conf DESTINATION ./) +install(DIRECTORY resource/lib DESTINATION ./) install(FILES script/tool/signssl.sh DESTINATION ./tool) install(FILES script/tool/x509 DESTINATION ./tool) @@ -35,6 +36,8 @@ install(FILES script/tool/x509 DESTINATION ./tool) install(FILES script/service/certstore.service DESTINATION /usr/lib/systemd/system/) install(FILES script/tmpfiles/cert_store.conf DESTINATION /usr/lib/tmpfiles.d/) +install(FILES resource/rcsp/rcsp.conf DESTINATION /etc) + # Must uninstall the debug package before install release package if(CMAKE_BUILD_TYPE STREQUAL "Debug") set(CPACK_RPM_PACKAGE_CONFLICTS "certostre") diff --git a/common/CMakeLists.txt b/common/CMakeLists.txt index 60b82a3..bb934f5 100644 --- a/common/CMakeLists.txt +++ b/common/CMakeLists.txt @@ -2,7 +2,7 @@ add_library(common syslogd/src/logging.cpp json/src/arraylist.c json/src/debug.c json/src/json_object.c json/src/json_object_iterator.c json/src/json_tokener.c json/src/json_util.c json/src/libjson.c json/src/linkhash.c json/src/parse_flags.c json/src/printbuf.c json/src/json_checker.c json/src/random_seed.c - rt/src/rt_file.cpp rt/src/rt_stdlib.cpp rt/src/rt_string.cpp rt/src/rt_tmr.cpp rt/src/rt_time.cpp rt/src/rlib_load.cpp) + rt/src/rt_file.cpp rt/src/rt_stdlib.cpp rt/src/rt_string.cpp rt/src/rt_tmr.cpp rt/src/rt_time.cpp pkcs11/src/rlib_load.cpp) -target_include_directories(common PUBLIC syslogd/include json/include rt/include) +target_include_directories(common PUBLIC syslogd/include json/include rt/include pkcs11/include) target_link_libraries(common PUBLIC rt MESA_handle_logger breakpad_mini) diff --git a/common/pkcs11/include/ErrorHSM.h b/common/pkcs11/include/ErrorHSM.h new file mode 100644 index 0000000..83923c7 --- /dev/null +++ b/common/pkcs11/include/ErrorHSM.h @@ -0,0 +1,36 @@ +// Допустимые ошибки при работе с CERTEX HSM +// Ошибки сервера +#define ERR_SRV_BASE 0xFF000000 +#define ERR_BindInProgress (ERR_SRV_BASE+1) // Процесс аутентификации не завершен. Требуются дополнительные данные +#define ERR_InvalidCredentials (ERR_SRV_BASE+2) // Ошибочные имя или пароль +#define ERR_OperationsError (ERR_SRV_BASE+3) // Неизветная операция +#define ERR_ProtocolError (ERR_SRV_BASE+4) // Неверная последовательность команд +#define ERR_SizeLimitExceeded (ERR_SRV_BASE+5) // Объем данных слишком велик +#define ERR_StrongAuthRequired (ERR_SRV_BASE+6) // Для выполнения операции требуется строгая аутентификация +// Ошибки клиента +#define ERROR_BASE 0xFF008000 +#define ERROR_CONNECT_TO_SERVER (ERROR_BASE+1) // Ошибка подключения к HSM +#define ERROR_SSL_HANDLE (ERROR_BASE+2) // Не создан SSL-контекст (возможно ошибка настроек SSL) +#define ERROR_SSL_CONNECT (ERROR_BASE+3) // Ошибка SSL-подключения к HSM (неверные ключи, невалидные сертификаты и т.д.) +#define ERROR_DN_CHECK (ERROR_BASE+4) // Ошибка DN-имени владельца сертификата +#define ERROR_SEND_REQUEST (ERROR_BASE+5) // Ошибка отправки запроса команды +#define ERROR_RECV_RESPONSE (ERROR_BASE+6) // Ошибка получения ответа команды +#define ERROR_BAD_RESPONSE (ERROR_BASE+7) // Ошибочный формат данных ответа +#define ERROR_INVALID_PARAM (ERROR_BASE+8) // Ошибка в параметрах команд +#define ERROR_BIND (ERROR_BASE+9) // Ошибка выполнения команды Bind (запрос на соединение) +#define ERROR_CONFIG_LOAD (ERROR_BASE+10) // Ошибка загрузки/чтения файла конфигурации +// Дополнительные коды ошибок +#define ERR_SSL_PARAM 40 - FF008028 +#define ERR_SSL_CREATE_CTX 41 - FF008029 +#define ERR_SSL_SET_OPTION 42 - FF00802A +#define ERR_SSL_SET_CERT_CA 43 - FF00802B +#define ERR_SSL_SET_CERT_MY 44 - FF00802C +#define ERR_SSL_SET_PKEY 45 - FF00802D +#define ERR_SSL_SESSION_CLOSE 47 - FF00802F +#define ERR_SSL_CONNECT 48 - FF008030 +#define ERR_SSL_ACCEPT 49 - FF008031 +#define ERR_SSL_CREATE_SSL 50 - FF008032 +#define ERR_SSL_SET_FD 51 - FF008033 +#define ERR_SSL_IO 52 - FF008034 +#define ERR_SSL_LOAD_LIB 53 - FF008035 +#define ERR_SSL_CHECK_PKEY 54 - FF008036 \ No newline at end of file diff --git a/common/rt/include/pkcs11.h b/common/pkcs11/include/pkcs11.h similarity index 99% rename from common/rt/include/pkcs11.h rename to common/pkcs11/include/pkcs11.h index 26c959f..6c61220 100644 --- a/common/rt/include/pkcs11.h +++ b/common/pkcs11/include/pkcs11.h @@ -223,9 +223,7 @@ extern "C" { /* All the various Cryptoki types and #define'd values are in the * file pkcs11t.h. */ -#pragma pack(push, cryptoki, 1) - #include "pkcs11t.h" -#pragma pack(pop, cryptoki) +#include "pkcs11t.h" #define __PASTE(x,y) x##y diff --git a/common/rt/include/pkcs11f.h b/common/pkcs11/include/pkcs11f.h similarity index 100% rename from common/rt/include/pkcs11f.h rename to common/pkcs11/include/pkcs11f.h diff --git a/common/rt/include/pkcs11g.h b/common/pkcs11/include/pkcs11g.h similarity index 100% rename from common/rt/include/pkcs11g.h rename to common/pkcs11/include/pkcs11g.h diff --git a/common/rt/include/pkcs11t.h b/common/pkcs11/include/pkcs11t.h similarity index 96% rename from common/rt/include/pkcs11t.h rename to common/pkcs11/include/pkcs11t.h index 25f687f..14ac456 100644 --- a/common/rt/include/pkcs11t.h +++ b/common/pkcs11/include/pkcs11t.h @@ -270,8 +270,17 @@ typedef CK_TOKEN_INFO CK_PTR CK_TOKEN_INFO_PTR; /* CK_SESSION_HANDLE is a Cryptoki-assigned value that * identifies a session */ -typedef CK_ULONG CK_SESSION_HANDLE; - +#ifdef WIN64 +typedef unsigned long long CK_SESSION_HANDLE; +typedef unsigned long long CK_SESSION_HANDLE_64; +#else +typedef CK_ULONG CK_SESSION_HANDLE; +#ifdef _OLD_HSM_VERSION +typedef unsigned long CK_SESSION_HANDLE_64; +#else +typedef unsigned long long CK_SESSION_HANDLE_64; +#endif +#endif typedef CK_SESSION_HANDLE CK_PTR CK_SESSION_HANDLE_PTR; @@ -319,7 +328,17 @@ typedef CK_SESSION_INFO CK_PTR CK_SESSION_INFO_PTR; /* CK_OBJECT_HANDLE is a token-specific identifier for an * object */ -typedef CK_ULONG CK_OBJECT_HANDLE; +#ifdef WIN64 +typedef unsigned long long CK_OBJECT_HANDLE; +typedef unsigned long long CK_OBJECT_HANDLE_64; +#else +typedef CK_ULONG CK_OBJECT_HANDLE; +#ifdef _OLD_HSM_VERSION +typedef unsigned long CK_OBJECT_HANDLE_64; +#else +typedef unsigned long long CK_OBJECT_HANDLE_64; +#endif +#endif typedef CK_OBJECT_HANDLE CK_PTR CK_OBJECT_HANDLE_PTR; @@ -603,6 +622,7 @@ typedef CK_ULONG CK_ATTRIBUTE_TYPE; /* CK_ATTRIBUTE is a structure that includes the type, length * and value of an attribute */ +//#pragma pack (push, 8) typedef struct CK_ATTRIBUTE { CK_ATTRIBUTE_TYPE type; CK_VOID_PTR pValue; @@ -610,6 +630,7 @@ typedef struct CK_ATTRIBUTE { /* ulValueLen went from CK_USHORT to CK_ULONG for v2.0 */ CK_ULONG ulValueLen; /* in bytes */ } CK_ATTRIBUTE; +//#pragma pack (pop) typedef CK_ATTRIBUTE CK_PTR CK_ATTRIBUTE_PTR; @@ -1883,27 +1904,37 @@ typedef struct CK_ARIA_CBC_ENCRYPT_DATA_PARAMS { typedef CK_ARIA_CBC_ENCRYPT_DATA_PARAMS CK_PTR CK_ARIA_CBC_ENCRYPT_DATA_PARAMS_PTR; /* Key Gost */ -#define CKK_CERTEX_DEFINED (CKK_VENDOR_DEFINED + 0x0E000000) // = 0x8E000000 +#define CKK_CERTEX_DEFINED (CKK_VENDOR_DEFINED + 0x0E000000) // = 0x8E000000 /* GOST 28147.89 */ -#define CKK_CERTEX_GOST_28147_89 (CKK_CERTEX_DEFINED + 0x00000001) +#define CKK_CERTEX_GOST_28147_89 (CKK_CERTEX_DEFINED + 0x00000001) /* RDS - GOST R 34.10-2001 */ -#define CKK_CERTEX_RDS (CKK_CERTEX_DEFINED + 0x00000002) +#define CKK_CERTEX_RDS (CKK_CERTEX_DEFINED + 0x00000002) /* Atributes Gost*/ -#define CKA_CERTEX_DEFINED (CKA_VENDOR_DEFINED + 0x0E000000) // = 0x8E000000 -#define CKA_CERTEX_RDS_TYPE (CKA_CERTEX_DEFINED + 0x00000011) +#define CKA_CERTEX_DEFINED (CKA_VENDOR_DEFINED + 0x0E000000) // = 0x8E000000 +#define CKA_CERTEX_RDS_TYPE (CKA_CERTEX_DEFINED + 0x00000011) /* Mechanisms Gost*/ -#define CKM_CERTEX_DEFINED (CKM_VENDOR_DEFINED + 0x0E000000) // = 0x8E000000 +#define CKM_CERTEX_DEFINED (CKM_VENDOR_DEFINED + 0x0E000000) // = 0x8E000000 /* GOST 28147.89 */ -#define CKM_CERTEX_GOST_28147_89_KEY_GEN (CKM_CERTEX_DEFINED + 0x00000000) -#define CKM_CERTEX_GOST_28147_89 (CKM_CERTEX_DEFINED + 0x00000001) -#define CKM_CERTEX_GOST_28147_89_MAC (CKM_CERTEX_DEFINED + 0x00000002) +#define CKM_CERTEX_GOST_28147_89_KEY_GEN (CKM_CERTEX_DEFINED + 0x00000000) +#define CKM_CERTEX_GOST_28147_89 (CKM_CERTEX_DEFINED + 0x00000001) +#define CKM_CERTEX_GOST_28147_89_MAC (CKM_CERTEX_DEFINED + 0x00000002) /* Hash for GOST R 34.11-94 */ -#define CKM_CERTEX_GOSTR3411 (CKM_CERTEX_DEFINED + 0x0000000A) +#define CKM_CERTEX_GOSTR3411 (CKM_CERTEX_DEFINED + 0x0000000A) +#define CKM_CERTEX_GOSTR3411_2012_32 (CKM_CERTEX_DEFINED + 0x00000010) +#define CKM_CERTEX_GOSTR3411_2012_64 (CKM_CERTEX_DEFINED + 0x00000011) /* GOST R 34.10-2001 keypair generation mechanism */ -#define CKM_CERTEX_GOSTR3410_2001_KEY_PAIR_GEN (CKM_CERTEX_DEFINED + 0x0000000B) +#define CKM_CERTEX_GOSTR3410_2001_KEY_PAIR_GEN (CKM_CERTEX_DEFINED + 0x0000000B) +#define CKM_CERTEX_GOSTR3410_2012_KEY_PAIR_GEN (CKM_CERTEX_DEFINED + 0x00000012) /* GOST R 34.10-2001 'raw' mechanism */ -#define CKM_CERTEX_GOSTR3410_2001 (CKM_CERTEX_DEFINED + 0x0000000C) +#define CKM_CERTEX_GOSTR3410_2001 (CKM_CERTEX_DEFINED + 0x0000000C) +#define CKM_CERTEX_GOSTR3410_2012 (CKM_CERTEX_DEFINED + 0x00000013) /* GOST R 34.11-94 hash with GOST R 34.10-2001 mechanism */ -#define CKM_CERTEX_GOSTR3411_94_GOSTR3410_2001 (CKM_CERTEX_DEFINED + 0x0000000D) +#define CKM_CERTEX_GOSTR3411_94_GOSTR3410_2001 (CKM_CERTEX_DEFINED + 0x0000000D) +#define CKM_CERTEX_GOSTR3411_GOSTR3410_2012 (CKM_CERTEX_DEFINED + 0x00000014) +#define CKM_CERTEX_GOSTR3411_2012_GOSTR3410_2001 (CKM_CERTEX_DEFINED + 0x00000015) + +#define CKM_CERTEX_DES_X919_MAC (CKM_CERTEX_DEFINED + 0x00000004) +#define CKM_CERTEX_DES_X919_MAC_GENERAL (CKM_CERTEX_DEFINED + 0x00000005) + #endif diff --git a/common/pkcs11/include/rlib_load.h b/common/pkcs11/include/rlib_load.h new file mode 100644 index 0000000..ba903fe --- /dev/null +++ b/common/pkcs11/include/rlib_load.h @@ -0,0 +1,139 @@ +//------------------------------------------------------------------------------ +// RCSP Project +// Copyright (c) 2007 Scientific Lab. Gamma Technologies. All rights reserved. +// +// R-CSP/R-PKCS11 LIB Loader +//------------------------------------------------------------------------------ +#ifndef __RLIB_LOAD_H +#define __RLIB_LOAD_H +//------------------------------------------------------------------------------ +#define LOADLIBRARY +//------------------------------------------------------------------------------ +#ifndef CK_PTR +#define CK_PTR * +#endif +#ifndef NULL_PTR +#define NULL_PTR 0 +#endif +#ifndef CK_CALLBACK_FUNCTION +#define CK_CALLBACK_FUNCTION(returnType, name) returnType (* name) +#endif +#ifndef CK_DEFINE_FUNCTION +#define CK_DEFINE_FUNCTION(returnType, name) returnType name +#endif +#ifndef CK_DECLARE_FUNCTION +#define CK_DECLARE_FUNCTION(returnType, name) returnType name +#endif +#ifndef CK_DECLARE_FUNCTION_POINTER +#define CK_DECLARE_FUNCTION_POINTER(returnType, name) returnType (* name) +#endif + +#pragma pack(push, cryptoki, 1) +#include "pkcs11.h" +#pragma pack(pop, cryptoki) +//------------------------------------------------------------------------------ +#ifdef WIND32 +#define CSP_REGKEY "SOFTWARE\\Microsoft\\Cryptography\\Defaults\\Provider\\Tumar CSP" +#define CAPI_LIB_PATH "" +#define PKCS_LIB_PATH "" +#else +#ifdef USE_CRITICAL_SECTION +#if defined HPXX +#define CAPI_LIB_PATH "/usr/lib/libcertex-csp.1.0.0_r.sl" +#define PKCS_LIB_PATH "/usr/lib/libcertex-pkcs11.1.0.0_r.sl" +#elif defined DEC64 +#define CAPI_LIB_PATH "/usr/shlib/libcertex-csp.1.0.0_r.so" +#define PKCS_LIB_PATH "/usr/shlib/libcertex-pkcs11.1.0.0_r.so" +#else +#define CAPI_LIB_PATH "/lib/libcertex-csp_r.so.1.0.0" +#define PKCS_LIB_PATH "/lib/libcertex-pkcs11_r.so.1.0.0" +#endif +#else +#if defined HPXX +#define CAPI_LIB_PATH "/usr/lib/libcertex-csp.1.0.0.sl" +#define PKCS_LIB_PATH "/usr/lib/libcertex-pkcs11.1.0.0.sl" +#elif defined DEC64 +#define CAPI_LIB_PATH "/usr/shlib/libcertex-csp.1.0.0.so" +#define PKCS_LIB_PATH "/usr/shlib/libcertex-pkcs11.1.0.0.so" +#else +#define CAPI_LIB_PATH "/lib/libcertex-csp.so.1.0.0" +#define PKCS_LIB_PATH "/lib/libcertex-pkcs11.so.1.0.0" +#endif +#endif +#endif +//------------------------------------------------------------------------------ +int LoadPkcsLib (char *dllpkcs); +void FreePkcsLib(void); +int do_GetFunctionList( void ); +//------------------------------------------------------------------------------ + +extern CK_C_Initialize FC_Initialize; +extern CK_C_Finalize FC_Finalize; +extern CK_C_GetInfo FC_GetInfo; +extern CK_C_GetFunctionList FC_GetFunctionList; +extern CK_C_GetSlotList FC_GetSlotList; +extern CK_C_GetSlotInfo FC_GetSlotInfo; +extern CK_C_GetTokenInfo FC_GetTokenInfo; +extern CK_C_GetMechanismList FC_GetMechanismList; +extern CK_C_GetMechanismInfo FC_GetMechanismInfo; +extern CK_C_InitToken FC_InitToken; +extern CK_C_InitPIN FC_InitPIN; +extern CK_C_SetPIN FC_SetPIN; +extern CK_C_OpenSession FC_OpenSession; +extern CK_C_CloseSession FC_CloseSession; +extern CK_C_CloseAllSessions FC_CloseAllSessions; +extern CK_C_GetSessionInfo FC_GetSessionInfo; +extern CK_C_GetOperationState FC_GetOperationState; +extern CK_C_SetOperationState FC_SetOperationState; +extern CK_C_Login FC_Login; +extern CK_C_Logout FC_Logout; +extern CK_C_CreateObject FC_CreateObject; +extern CK_C_CopyObject FC_CopyObject; +extern CK_C_DestroyObject FC_DestroyObject; +extern CK_C_GetObjectSize FC_GetObjectSize; +extern CK_C_GetAttributeValue FC_GetAttributeValue; +extern CK_C_SetAttributeValue FC_SetAttributeValue; +extern CK_C_FindObjectsInit FC_FindObjectsInit; +extern CK_C_FindObjects FC_FindObjects; +extern CK_C_FindObjectsFinal FC_FindObjectsFinal; +extern CK_C_EncryptInit FC_EncryptInit; +extern CK_C_Encrypt FC_Encrypt; +extern CK_C_EncryptUpdate FC_EncryptUpdate; +extern CK_C_EncryptFinal FC_EncryptFinal; +extern CK_C_DecryptInit FC_DecryptInit; +extern CK_C_Decrypt FC_Decrypt; +extern CK_C_DecryptUpdate FC_DecryptUpdate; +extern CK_C_DecryptFinal FC_DecryptFinal; +extern CK_C_DigestInit FC_DigestInit; +extern CK_C_Digest FC_Digest; +extern CK_C_DigestUpdate FC_DigestUpdate; +extern CK_C_DigestKey FC_DigestKey; +extern CK_C_DigestFinal FC_DigestFinal; +extern CK_C_SignInit FC_SignInit; +extern CK_C_Sign FC_Sign; +extern CK_C_SignUpdate FC_SignUpdate; +extern CK_C_SignFinal FC_SignFinal; +extern CK_C_SignRecoverInit FC_SignRecoverInit; +extern CK_C_SignRecover FC_SignRecover; +extern CK_C_VerifyInit FC_VerifyInit; +extern CK_C_Verify FC_Verify; +extern CK_C_VerifyUpdate FC_VerifyUpdate; +extern CK_C_VerifyFinal FC_VerifyFinal; +extern CK_C_VerifyRecoverInit FC_VerifyRecoverInit; +extern CK_C_VerifyRecover FC_VerifyRecover; +extern CK_C_DigestEncryptUpdate FC_DigestEncryptUpdate; +extern CK_C_DecryptDigestUpdate FC_DecryptDigestUpdate; +extern CK_C_SignEncryptUpdate FC_SignEncryptUpdate; +extern CK_C_DecryptVerifyUpdate FC_DecryptVerifyUpdate; +extern CK_C_GenerateKey FC_GenerateKey; +extern CK_C_GenerateKeyPair FC_GenerateKeyPair; +extern CK_C_WrapKey FC_WrapKey; +extern CK_C_UnwrapKey FC_UnwrapKey; +extern CK_C_DeriveKey FC_DeriveKey; +extern CK_C_SeedRandom FC_SeedRandom; +extern CK_C_GenerateRandom FC_GenerateRandom; +extern CK_C_GetFunctionStatus FC_GetFunctionStatus; +extern CK_C_CancelFunction FC_CancelFunction; +extern CK_C_WaitForSlotEvent FC_WaitForSlotEvent; +//------------------------------------------------------------------------------ +#endif diff --git a/common/pkcs11/include/tdefs.h b/common/pkcs11/include/tdefs.h new file mode 100644 index 0000000..90bf049 --- /dev/null +++ b/common/pkcs11/include/tdefs.h @@ -0,0 +1,208 @@ +//------------------------------------------------------------------------------ +// ALL Projects +// Copyright (c) 2010 Scientific Lab. Gamma Technologies. All rights reserved. +//------------------------------------------------------------------------------ +#ifndef __TDEFS_H +#define __TDEFS_H +//------------------------------------------------------------------------------ +#undef LINUX32 +#undef LINUX64 +#undef LINUXXX +#undef DEC64 +#undef WIND32 +#undef WIND64 +#undef WINDXX +#undef SPARC32 +#undef SPARC64 +#undef SPARCXX +#undef AIX32 +#undef AIX64 +#undef AIXXX +#undef HP32 +#undef HP64 +#undef HPXX +//------------------------------------------------------------------------------ +#if defined(WIN32) || defined(__WIN32__) +#if !defined(_WIN32) +#define _WIN32 +#endif +#endif +// +#if defined(WIN64) || defined(__WIN64__) +#if !defined(_WIN64) +#define _WIN64 +#endif +#endif +//------------------------------------------------------------------------------ +#if defined(__gnu_linux__) || defined(__linux__) + #define LINUXXX + #if defined(__x86_64__) || defined(__x86_64) || defined(__amd64__) + #define LINUX64 + #else + #define LINUX32 + #endif +#elif defined(_WIN32) || defined(_WIN64) + #define WIND32 + #define WINDXX + #ifdef _WIN64 + #define WIND64 + #endif +#elif defined(__alpha) && defined(__arch64__) + #define DEC64 +#elif __sparc__ + #define SPARCXX + #ifdef FORCE32 + #define SPARC32 + #else + #define SPARC64 + #endif +#elif _AIX + #define AIXXX + #ifdef FORCE32 + #define AIX32 + #else + #define AIX64 + #endif +#else // __hpux + #define HPXX + #ifdef FORCE32 + #define HP32 + #else + #define HP64 + #endif +#endif +//------------------------------------------------------------------------------ +#ifdef WINDXX + #ifndef _MT + #define _MT + #endif +// #include + #define SLASH '\\' +#else + #ifdef PTHREAD + #include + #endif + #define SLASH '/' +#endif +//------------------------------------------------------------------------------ +#if defined DEC64 + #define _BSD +#endif +//------------------------------------------------------------------------------ +#if defined WINDXX + #define RANG32 + #define INVERT + typedef __int64 long64; + typedef unsigned __int64 ulong64; +#elif defined LINUX32 + #define RANG32 + #define INVERT + typedef long long long64; + typedef unsigned long long ulong64; +#elif defined LINUX64 + #define RANG64 + #define INVERT + typedef long long64; + typedef unsigned long ulong64; +#elif defined DEC64 + #define RANG64 + #define INVERT + typedef long long64; + typedef unsigned long ulong64; +#elif defined SPARC32 + #define RANG32 + #define DIRECT + typedef long long long64; + typedef unsigned long long ulong64; +#elif defined SPARC64 + #define RANG64 + #define DIRECT + typedef long long64; + typedef unsigned long ulong64; +#elif defined HP32 + #define RANG32 + #define DIRECT + typedef long long long64; + typedef unsigned long long ulong64; +#elif defined HP64 + #define RANG64 + #define DIRECT + typedef long long64; + typedef unsigned long ulong64; +#elif defined AIX32 + #define RANG32 + #define DIRECT + typedef long long long64; + typedef unsigned long long ulong64; +#elif defined AIX64 + #define RANG64 + #define DIRECT + typedef long long64; + typedef unsigned long ulong64; +#endif +//------------------------------------------------------------------------------ +#if defined(RANG32) && !defined(WIND64) + typedef long long32; + typedef unsigned long ulong32; +#else + typedef int long32; + typedef unsigned int ulong32; +#endif + typedef unsigned short int UINT2; + typedef unsigned int UINT4; + typedef ulong64 UINT8; +//------------------------------------------------------------------------------ +#if defined INVERT + #define I0 0 + #define I1 1 + #define C0 0 + #define C1 1 + #define C2 2 + #define C3 3 +#elif defined DIRECT + #define I0 1 + #define I1 0 + #define C0 3 + #define C1 2 + #define C2 1 + #define C3 0 +#endif +//------------------------------------------------------------------------------ +#ifndef drct_i +#define drct_i(i) i=((i>>8)|(i<<8)) +#endif +#ifndef drct_l +#define drct_l(l) l=(((l<<24)|(l>>8))&0xFF00FF00)|(((l<<8)|(l>>24))&0x00FF00FF) +#endif +//------------------------------------------------------------------------------ +#if defined WINDXX + // необходимые типы unix вида + typedef int pid_t; + // приведение имен run time libc к unix виду + // функции + #define getpid _getpid + #define mkdir _mkdir + #define open _open + #define creat _creat + #define close _close + #define write _write + #define read _read + #define unlink _unlink + #define chmod _chmod + #define utime _utime + #define itoa _itoa + // флаги + #define O_CREAT _O_CREAT + #define O_RDWR _O_RDWR + #define O_EXCL _O_EXCL + #define O_WRONLY _O_WRONLY + #define O_TRUNC _O_TRUNC + #define S_IREAD _S_IREAD + #define S_IWRITE _S_IWRITE + #if defined WIND64 + #define _CRT_SECURE_NO_WARNINGS + #define strdup _strdup + #endif +#endif +//------------------------------------------------------------------------------ +#endif diff --git a/common/pkcs11/src/rlib_load.cpp b/common/pkcs11/src/rlib_load.cpp new file mode 100644 index 0000000..e63e973 --- /dev/null +++ b/common/pkcs11/src/rlib_load.cpp @@ -0,0 +1,344 @@ +//------------------------------------------------------------------------------ +// RCSP Project +// Copyright (c) 2007 Scientific Lab. Gamma Technologies. All rights reserved. +// +// R-CSP/R-PKCS11 LIB Loader +//------------------------------------------------------------------------------ +#include "tdefs.h" +#include +#include +#ifdef WIND32 +#include +#else +#include +#include +#include +#endif +#include "rlib_load.h" + +#ifndef WIND32 +typedef void* HINSTANCE; +#endif +//------------------------------------------------------------------------------ +#ifndef F_CPAcquireContext +#define F_CPAcquireContext 1 +#define F_CPGetProvParam 2 +#define F_CPReleaseContext 3 +#define F_CPSetProvParam 4 +#define F_CPDeriveKey 5 +#define F_CPDestroyKey 6 +#define F_CPDuplicateKey 7 +#define F_CPExportKey 8 +#define F_CPGenKey 9 +#define F_CPGenRandom 10 +#define F_CPGetKeyParam 11 +#define F_CPGetUserKey 12 +#define F_CPImportKey 13 +#define F_CPSetKeyParam 14 +#define F_CPDecrypt 15 +#define F_CPEncrypt 16 +#define F_CPCreateHash 17 +#define F_CPDestroyHash 18 +#define F_CPDuplicateHash 19 +#define F_CPGetHashParam 20 +#define F_CPHashData 21 +#define F_CPHashSessionKey 22 +#define F_CPSetHashParam 23 +#define F_CPSignHash 24 +#define F_CPVerifySignature 25 +#endif +//------------------------------------------------------------------------------ +#ifndef F_Initialize +#define F_Initialize 31 +#define F_Finalize 32 +#define F_GetInfo 33 +#define F_GetFunctionList 34 +#define F_GetSlotList 35 +#define F_GetSlotInfo 36 +#define F_GetTokenInfo 37 +#define F_GetMechanismList 38 +#define F_GetMechanismInfo 39 +#define F_InitToken 40 +#define F_InitPIN 41 +#define F_SetPIN 42 +#define F_OpenSession 43 +#define F_CloseSession 44 +#define F_CloseAllSessions 45 +#define F_GetSessionInfo 46 +#define F_GetOperationState 47 +#define F_SetOperationState 48 +#define F_Login 49 +#define F_Logout 50 +#define F_CreateObject 51 +#define F_CopyObject 52 +#define F_DestroyObject 53 +#define F_GetObjectSize 54 +#define F_GetAttributeValue 55 +#define F_SetAttributeValue 56 +#define F_FindObjectsInit 57 +#define F_FindObjects 58 +#define F_FindObjectsFinal 59 +#define F_EncryptInit 60 +#define F_Encrypt 61 +#define F_EncryptUpdate 62 +#define F_EncryptFinal 63 +#define F_DecryptInit 64 +#define F_Decrypt 65 +#define F_DecryptUpdate 66 +#define F_DecryptFinal 67 +#define F_DigestInit 68 +#define F_Digest 69 +#define F_DigestUpdate 70 +#define F_DigestKey 71 +#define F_DigestFinal 72 +#define F_SignInit 73 +#define F_Sign 74 +#define F_SignUpdate 75 +#define F_SignFinal 76 +#define F_SignRecoverInit 77 +#define F_SignRecover 78 +#define F_VerifyInit 79 +#define F_Verify 80 +#define F_VerifyUpdate 81 +#define F_VerifyFinal 82 +#define F_VerifyRecoverInit 83 +#define F_VerifyRecover 84 +#define F_DigestEncryptUpdate 85 +#define F_DecryptDigestUpdate 86 +#define F_SignEncryptUpdate 87 +#define F_DecryptVerifyUpdate 88 +#define F_GenerateKey 89 +#define F_GenerateKeyPair 90 +#define F_WrapKey 91 +#define F_UnwrapKey 92 +#define F_DeriveKey 93 +#define F_SeedRandom 94 +#define F_GenerateRandom 95 +#define F_GetFunctionStatus 96 +#define F_CancelFunction 97 +#define F_WaitForSlotEvent 98 +#endif + + +//------------------------------------------------------------------------------ +CK_C_Initialize FC_Initialize; +CK_C_Finalize FC_Finalize; +CK_C_GetInfo FC_GetInfo; +CK_C_GetFunctionList FC_GetFunctionList; +CK_C_GetSlotList FC_GetSlotList; +CK_C_GetSlotInfo FC_GetSlotInfo; +CK_C_GetTokenInfo FC_GetTokenInfo; +CK_C_GetMechanismList FC_GetMechanismList; +CK_C_GetMechanismInfo FC_GetMechanismInfo; +CK_C_InitToken FC_InitToken; +CK_C_InitPIN FC_InitPIN; +CK_C_SetPIN FC_SetPIN; +CK_C_OpenSession FC_OpenSession; +CK_C_CloseSession FC_CloseSession; +CK_C_CloseAllSessions FC_CloseAllSessions; +CK_C_GetSessionInfo FC_GetSessionInfo; +CK_C_GetOperationState FC_GetOperationState; +CK_C_SetOperationState FC_SetOperationState; +CK_C_Login FC_Login; +CK_C_Logout FC_Logout; +CK_C_CreateObject FC_CreateObject; +CK_C_CopyObject FC_CopyObject; +CK_C_DestroyObject FC_DestroyObject; +CK_C_GetObjectSize FC_GetObjectSize; +CK_C_GetAttributeValue FC_GetAttributeValue; +CK_C_SetAttributeValue FC_SetAttributeValue; +CK_C_FindObjectsInit FC_FindObjectsInit; +CK_C_FindObjects FC_FindObjects; +CK_C_FindObjectsFinal FC_FindObjectsFinal; +CK_C_EncryptInit FC_EncryptInit; +CK_C_Encrypt FC_Encrypt; +CK_C_EncryptUpdate FC_EncryptUpdate; +CK_C_EncryptFinal FC_EncryptFinal; +CK_C_DecryptInit FC_DecryptInit; +CK_C_Decrypt FC_Decrypt; +CK_C_DecryptUpdate FC_DecryptUpdate; +CK_C_DecryptFinal FC_DecryptFinal; +CK_C_DigestInit FC_DigestInit; +CK_C_Digest FC_Digest; +CK_C_DigestUpdate FC_DigestUpdate; +CK_C_DigestKey FC_DigestKey; +CK_C_DigestFinal FC_DigestFinal; +CK_C_SignInit FC_SignInit; +CK_C_Sign FC_Sign; +CK_C_SignUpdate FC_SignUpdate; +CK_C_SignFinal FC_SignFinal; +CK_C_SignRecoverInit FC_SignRecoverInit; +CK_C_SignRecover FC_SignRecover; +CK_C_VerifyInit FC_VerifyInit; +CK_C_Verify FC_Verify; +CK_C_VerifyUpdate FC_VerifyUpdate; +CK_C_VerifyFinal FC_VerifyFinal; +CK_C_VerifyRecoverInit FC_VerifyRecoverInit; +CK_C_VerifyRecover FC_VerifyRecover; +CK_C_DigestEncryptUpdate FC_DigestEncryptUpdate; +CK_C_DecryptDigestUpdate FC_DecryptDigestUpdate; +CK_C_SignEncryptUpdate FC_SignEncryptUpdate; +CK_C_DecryptVerifyUpdate FC_DecryptVerifyUpdate; +CK_C_GenerateKey FC_GenerateKey; +CK_C_GenerateKeyPair FC_GenerateKeyPair; +CK_C_WrapKey FC_WrapKey; +CK_C_UnwrapKey FC_UnwrapKey; +CK_C_DeriveKey FC_DeriveKey; +CK_C_SeedRandom FC_SeedRandom; +CK_C_GenerateRandom FC_GenerateRandom; +CK_C_GetFunctionStatus FC_GetFunctionStatus; +CK_C_CancelFunction FC_CancelFunction; +CK_C_WaitForSlotEvent FC_WaitForSlotEvent; +//------------------------------------------------------------------------------ +HINSTANCE load_lib(char *lib) +{ +#ifdef WIND32 + return LoadLibrary(lib); +#else + return dlopen(lib,RTLD_LAZY); +#endif +} +//------------------------------------------------------------------------------ +void* get_sym(HINSTANCE inst, const char *proc) +{ +#ifdef WIND32 + return (void*) GetProcAddress(inst,proc); +#else + return dlsym(inst,proc); +#endif +} +//------------------------------------------------------------------------------ +void free_lib(HINSTANCE inst) +{ +#ifdef WIND32 + FreeLibrary(inst); +#else + dlclose(inst); +#endif +} +//------------------------------------------------------------------------------ +int Get_PKCS_Fancs(HINSTANCE hLib) +{ + FC_Initialize =(CK_C_Initialize ) get_sym(hLib,"C_Initialize" ); if (!FC_Initialize ) return F_Initialize; + FC_Finalize =(CK_C_Finalize ) get_sym(hLib,"C_Finalize" ); if (!FC_Finalize ) return F_Finalize; + FC_GetInfo =(CK_C_GetInfo ) get_sym(hLib,"C_GetInfo" ); if (!FC_GetInfo ) return F_GetInfo; + FC_GetFunctionList =(CK_C_GetFunctionList ) get_sym(hLib,"C_GetFunctionList" ); if (!FC_GetFunctionList ) return F_GetFunctionList; + FC_GetSlotList =(CK_C_GetSlotList ) get_sym(hLib,"C_GetSlotList" ); if (!FC_GetSlotList ) return F_GetSlotList; + FC_GetSlotInfo =(CK_C_GetSlotInfo ) get_sym(hLib,"C_GetSlotInfo" ); if (!FC_GetSlotInfo ) return F_GetSlotInfo; + FC_GetTokenInfo =(CK_C_GetTokenInfo ) get_sym(hLib,"C_GetTokenInfo" ); if (!FC_GetTokenInfo ) return F_GetTokenInfo; + FC_GetMechanismList =(CK_C_GetMechanismList ) get_sym(hLib,"C_GetMechanismList" ); if (!FC_GetMechanismList ) return F_GetMechanismList; + FC_GetMechanismInfo =(CK_C_GetMechanismInfo ) get_sym(hLib,"C_GetMechanismInfo" ); if (!FC_GetMechanismInfo ) return F_GetMechanismInfo; + FC_InitToken =(CK_C_InitToken ) get_sym(hLib,"C_InitToken" ); if (!FC_InitToken ) return F_InitToken; + FC_InitPIN =(CK_C_InitPIN ) get_sym(hLib,"C_InitPIN" ); if (!FC_InitPIN ) return F_InitPIN; + FC_SetPIN =(CK_C_SetPIN ) get_sym(hLib,"C_SetPIN" ); if (!FC_SetPIN ) return F_SetPIN; + FC_OpenSession =(CK_C_OpenSession ) get_sym(hLib,"C_OpenSession" ); if (!FC_OpenSession ) return F_OpenSession; + FC_CloseSession =(CK_C_CloseSession ) get_sym(hLib,"C_CloseSession" ); if (!FC_CloseSession ) return F_CloseSession; + FC_CloseAllSessions =(CK_C_CloseAllSessions ) get_sym(hLib,"C_CloseAllSessions" ); if (!FC_CloseAllSessions ) return F_CloseAllSessions; + FC_GetSessionInfo =(CK_C_GetSessionInfo ) get_sym(hLib,"C_GetSessionInfo" ); if (!FC_GetSessionInfo ) return F_GetSessionInfo; + FC_GetOperationState =(CK_C_GetOperationState ) get_sym(hLib,"C_GetOperationState" ); if (!FC_GetOperationState ) return F_GetOperationState; + FC_SetOperationState =(CK_C_SetOperationState ) get_sym(hLib,"C_SetOperationState" ); if (!FC_SetOperationState ) return F_SetOperationState; + FC_Login =(CK_C_Login ) get_sym(hLib,"C_Login" ); if (!FC_Login ) return F_Login; + FC_Logout =(CK_C_Logout ) get_sym(hLib,"C_Logout" ); if (!FC_Logout ) return F_Logout; + FC_CreateObject =(CK_C_CreateObject ) get_sym(hLib,"C_CreateObject" ); if (!FC_CreateObject ) return F_CreateObject; + FC_CopyObject =(CK_C_CopyObject ) get_sym(hLib,"C_CopyObject" ); if (!FC_CopyObject ) return F_CopyObject; + FC_DestroyObject =(CK_C_DestroyObject ) get_sym(hLib,"C_DestroyObject" ); if (!FC_DestroyObject ) return F_DestroyObject; + FC_GetObjectSize =(CK_C_GetObjectSize ) get_sym(hLib,"C_GetObjectSize" ); if (!FC_GetObjectSize ) return F_GetObjectSize; + FC_GetAttributeValue =(CK_C_GetAttributeValue ) get_sym(hLib,"C_GetAttributeValue" ); if (!FC_GetAttributeValue ) return F_GetAttributeValue; + FC_SetAttributeValue =(CK_C_SetAttributeValue ) get_sym(hLib,"C_SetAttributeValue" ); if (!FC_SetAttributeValue ) return F_SetAttributeValue; + FC_FindObjectsInit =(CK_C_FindObjectsInit ) get_sym(hLib,"C_FindObjectsInit" ); if (!FC_FindObjectsInit ) return F_FindObjectsInit; + FC_FindObjects =(CK_C_FindObjects ) get_sym(hLib,"C_FindObjects" ); if (!FC_FindObjects ) return F_FindObjects; + FC_FindObjectsFinal =(CK_C_FindObjectsFinal ) get_sym(hLib,"C_FindObjectsFinal" ); if (!FC_FindObjectsFinal ) return F_FindObjectsFinal; + FC_EncryptInit =(CK_C_EncryptInit ) get_sym(hLib,"C_EncryptInit" ); if (!FC_EncryptInit ) return F_EncryptInit; + FC_Encrypt =(CK_C_Encrypt ) get_sym(hLib,"C_Encrypt" ); if (!FC_Encrypt ) return F_Encrypt; + FC_EncryptUpdate =(CK_C_EncryptUpdate ) get_sym(hLib,"C_EncryptUpdate" ); if (!FC_EncryptUpdate ) return F_EncryptUpdate; + FC_EncryptFinal =(CK_C_EncryptFinal ) get_sym(hLib,"C_EncryptFinal" ); if (!FC_EncryptFinal ) return F_EncryptFinal; + FC_DecryptInit =(CK_C_DecryptInit ) get_sym(hLib,"C_DecryptInit" ); if (!FC_DecryptInit ) return F_DecryptInit; + FC_Decrypt =(CK_C_Decrypt ) get_sym(hLib,"C_Decrypt" ); if (!FC_Decrypt ) return F_Decrypt; + FC_DecryptUpdate =(CK_C_DecryptUpdate ) get_sym(hLib,"C_DecryptUpdate" ); if (!FC_DecryptUpdate ) return F_DecryptUpdate; + FC_DecryptFinal =(CK_C_DecryptFinal ) get_sym(hLib,"C_DecryptFinal" ); if (!FC_DecryptFinal ) return F_DecryptFinal; + FC_DigestInit =(CK_C_DigestInit ) get_sym(hLib,"C_DigestInit" ); if (!FC_DigestInit ) return F_DigestInit; + FC_Digest =(CK_C_Digest ) get_sym(hLib,"C_Digest" ); if (!FC_Digest ) return F_Digest; + FC_DigestUpdate =(CK_C_DigestUpdate ) get_sym(hLib,"C_DigestUpdate" ); if (!FC_DigestUpdate ) return F_DigestUpdate; + FC_DigestKey =(CK_C_DigestKey ) get_sym(hLib,"C_DigestKey" ); if (!FC_DigestKey ) return F_DigestKey; + FC_DigestFinal =(CK_C_DigestFinal ) get_sym(hLib,"C_DigestFinal" ); if (!FC_DigestFinal ) return F_DigestFinal; + FC_SignInit =(CK_C_SignInit ) get_sym(hLib,"C_SignInit" ); if (!FC_SignInit ) return F_SignInit; + FC_Sign =(CK_C_Sign ) get_sym(hLib,"C_Sign" ); if (!FC_Sign ) return F_Sign; + FC_SignUpdate =(CK_C_SignUpdate ) get_sym(hLib,"C_SignUpdate" ); if (!FC_SignUpdate ) return F_SignUpdate; + FC_SignFinal =(CK_C_SignFinal ) get_sym(hLib,"C_SignFinal" ); if (!FC_SignFinal ) return F_SignFinal; + FC_SignRecoverInit =(CK_C_SignRecoverInit ) get_sym(hLib,"C_SignRecoverInit" ); if (!FC_SignRecoverInit ) return F_SignRecoverInit; + FC_SignRecover =(CK_C_SignRecover ) get_sym(hLib,"C_SignRecover" ); if (!FC_SignRecover ) return F_SignRecover; + FC_VerifyInit =(CK_C_VerifyInit ) get_sym(hLib,"C_VerifyInit" ); if (!FC_VerifyInit ) return F_VerifyInit; + FC_Verify =(CK_C_Verify ) get_sym(hLib,"C_Verify" ); if (!FC_Verify ) return F_Verify; + FC_VerifyUpdate =(CK_C_VerifyUpdate ) get_sym(hLib,"C_VerifyUpdate" ); if (!FC_VerifyUpdate ) return F_VerifyUpdate; + FC_VerifyFinal =(CK_C_VerifyFinal ) get_sym(hLib,"C_VerifyFinal" ); if (!FC_VerifyFinal ) return F_VerifyFinal; + FC_VerifyRecoverInit =(CK_C_VerifyRecoverInit ) get_sym(hLib,"C_VerifyRecoverInit" ); if (!FC_VerifyRecoverInit ) return F_VerifyRecoverInit; + FC_VerifyRecover =(CK_C_VerifyRecover ) get_sym(hLib,"C_VerifyRecover" ); if (!FC_VerifyRecover ) return F_VerifyRecover; + FC_DigestEncryptUpdate=(CK_C_DigestEncryptUpdate) get_sym(hLib,"C_DigestEncryptUpdate"); if (!FC_DigestEncryptUpdate) return F_DigestEncryptUpdate; + FC_DecryptDigestUpdate=(CK_C_DecryptDigestUpdate) get_sym(hLib,"C_DecryptDigestUpdate"); if (!FC_DecryptDigestUpdate) return F_DecryptDigestUpdate; + FC_SignEncryptUpdate =(CK_C_SignEncryptUpdate ) get_sym(hLib,"C_SignEncryptUpdate" ); if (!FC_SignEncryptUpdate ) return F_SignEncryptUpdate; + FC_DecryptVerifyUpdate=(CK_C_DecryptVerifyUpdate) get_sym(hLib,"C_DecryptVerifyUpdate"); if (!FC_DecryptVerifyUpdate) return F_DecryptVerifyUpdate; + FC_GenerateKey =(CK_C_GenerateKey ) get_sym(hLib,"C_GenerateKey" ); if (!FC_GenerateKey ) return F_GenerateKey; + FC_GenerateKeyPair =(CK_C_GenerateKeyPair ) get_sym(hLib,"C_GenerateKeyPair" ); if (!FC_GenerateKeyPair ) return F_GenerateKeyPair; + FC_WrapKey =(CK_C_WrapKey ) get_sym(hLib,"C_WrapKey" ); if (!FC_WrapKey ) return F_WrapKey; + FC_UnwrapKey =(CK_C_UnwrapKey ) get_sym(hLib,"C_UnwrapKey" ); if (!FC_UnwrapKey ) return F_UnwrapKey; + FC_DeriveKey =(CK_C_DeriveKey ) get_sym(hLib,"C_DeriveKey" ); if (!FC_DeriveKey ) return F_DeriveKey; + FC_SeedRandom =(CK_C_SeedRandom ) get_sym(hLib,"C_SeedRandom" ); if (!FC_SeedRandom ) return F_SeedRandom; + FC_GenerateRandom =(CK_C_GenerateRandom ) get_sym(hLib,"C_GenerateRandom" ); if (!FC_GenerateRandom ) return F_GenerateRandom; + FC_GetFunctionStatus =(CK_C_GetFunctionStatus ) get_sym(hLib,"C_GetFunctionStatus" ); if (!FC_GetFunctionStatus ) return F_GetFunctionStatus; + FC_CancelFunction =(CK_C_CancelFunction ) get_sym(hLib,"C_CancelFunction" ); if (!FC_CancelFunction ) return F_CancelFunction; + FC_WaitForSlotEvent =(CK_C_WaitForSlotEvent ) get_sym(hLib,"C_WaitForSlotEvent" ); if (!FC_WaitForSlotEvent ) return F_WaitForSlotEvent; + return 0; +} +//------------------------------------------------------------------------------ +HINSTANCE hPkcsLib=NULL; +//------------------------------------------------------------------------------ +#ifdef WIND32 +int GetCapiPath(char *path) +{ + HKEY hKey; + DWORD Disposition,DataSize; + if (RegOpenKeyEx(HKEY_LOCAL_MACHINE,CSP_REGKEY,0,KEY_READ,&hKey)!=ERROR_SUCCESS) return 1; + path[0]=0; DataSize=255; RegQueryValueEx(hKey,"Image Path",0,&Disposition,(BYTE *)path,&DataSize); + RegCloseKey(hKey); + if (!strlen(path)) return 2; + return 0; +} +#else +int GetCapiPath(char *path) {strcpy(path,CAPI_LIB_PATH); return 0;} +#endif +//------------------------------------------------------------------------------ +#ifdef WIND32 +int GetPkcsPath(char *path) + {return GetCapiPath(path);} +#else +int GetPkcsPath(char *path) {strcpy(path,PKCS_LIB_PATH); return 0;} +#endif +//------------------------------------------------------------------------------ +int LoadPkcsLib(char *dllpkcs) +{ + int code; + char path[260]; + if (hPkcsLib) return 0; + if ((dllpkcs)&&(*dllpkcs)) strcpy(path,dllpkcs); + else if (GetPkcsPath(path)) return -1; + hPkcsLib=load_lib(dllpkcs); + if (!hPkcsLib) return -2; + code=Get_PKCS_Fancs(hPkcsLib); + if (code) {free_lib(hPkcsLib); hPkcsLib=NULL;} + return code; +} +//------------------------------------------------------------------------------ +void FreePkcsLib(void) +{ + if (hPkcsLib) {free_lib(hPkcsLib); hPkcsLib=NULL;} +} +//------------------------------------------------------------------------------ +int do_GetFunctionList( void ) +{ + CK_RV rc = 0; + extern CK_FUNCTION_LIST *funcs; + rc=FC_GetFunctionList(&funcs); + if (rc != CKR_OK) {printf ("err %x\n",rc); return rc;} + return 0; +} +//------------------------------------------------------------------------------ diff --git a/common/rt/include/rlib_load.h b/common/rt/include/rlib_load.h deleted file mode 100644 index eb331d5..0000000 --- a/common/rt/include/rlib_load.h +++ /dev/null @@ -1,45 +0,0 @@ -//------------------------------------------------------------------------------ -// RCSP Project -// Copyright (c) 2007 Scientific Lab. Gamma Technologies. All rights reserved. -// -// R-CSP/R-PKCS11 LIB Loader -//------------------------------------------------------------------------------ -#ifndef __RLIB_LOAD_H -#define __RLIB_LOAD_H -//------------------------------------------------------------------------------ -#define LOADLIBRARY -//------------------------------------------------------------------------------ -#ifndef CK_PTR -#define CK_PTR * -#endif -#ifndef NULL_PTR -#define NULL_PTR 0 -#endif -#ifndef CK_CALLBACK_FUNCTION -#define CK_CALLBACK_FUNCTION(returnType, name) returnType (* name) -#endif -#ifndef CK_DEFINE_FUNCTION -#define CK_DEFINE_FUNCTION(returnType, name) returnType name -#endif -#ifndef CK_DECLARE_FUNCTION -#define CK_DECLARE_FUNCTION(returnType, name) returnType name -#endif -#ifndef CK_DECLARE_FUNCTION_POINTER -#define CK_DECLARE_FUNCTION_POINTER(returnType, name) returnType (* name) -#endif - -#pragma pack(push, cryptoki, 1) -#include "pkcs11.h" -#pragma pack(pop, cryptoki) -//------------------------------------------------------------------------------ -#define CSP_REGKEY "SOFTWARE\\Microsoft\\Cryptography\\Defaults\\Provider\\Tumar CSP" -#define CAPI_LIB_PATH "" -#define PKCS_LIB_PATH "" -//------------------------------------------------------------------------------ -int LoadPkcsLib (char *dllpkcs); -void FreePkcsLib(void); -int do_GetFunctionList( void ); -//------------------------------------------------------------------------------ -extern CK_C_GetFunctionList FC_GetFunctionList; -//------------------------------------------------------------------------------ -#endif diff --git a/common/rt/src/rlib_load.cpp b/common/rt/src/rlib_load.cpp deleted file mode 100644 index abcc7e0..0000000 --- a/common/rt/src/rlib_load.cpp +++ /dev/null @@ -1,220 +0,0 @@ -//------------------------------------------------------------------------------ -// RCSP Project -// Copyright (c) 2007 Scientific Lab. Gamma Technologies. All rights reserved. -// -// R-CSP/R-PKCS11 LIB Loader -//------------------------------------------------------------------------------ -#include -#include -#include -#include "rlib_load.h" -//------------------------------------------------------------------------------ -#ifndef F_CPAcquireContext -#define F_CPAcquireContext 1 -#define F_CPGetProvParam 2 -#define F_CPReleaseContext 3 -#define F_CPSetProvParam 4 -#define F_CPDeriveKey 5 -#define F_CPDestroyKey 6 -#define F_CPDuplicateKey 7 -#define F_CPExportKey 8 -#define F_CPGenKey 9 -#define F_CPGenRandom 10 -#define F_CPGetKeyParam 11 -#define F_CPGetUserKey 12 -#define F_CPImportKey 13 -#define F_CPSetKeyParam 14 -#define F_CPDecrypt 15 -#define F_CPEncrypt 16 -#define F_CPCreateHash 17 -#define F_CPDestroyHash 18 -#define F_CPDuplicateHash 19 -#define F_CPGetHashParam 20 -#define F_CPHashData 21 -#define F_CPHashSessionKey 22 -#define F_CPSetHashParam 23 -#define F_CPSignHash 24 -#define F_CPVerifySignature 25 -#endif -//------------------------------------------------------------------------------ -#ifndef F_Initialize -#define F_Initialize 31 -#define F_Finalize 32 -#define F_GetInfo 33 -#define F_GetFunctionList 34 -#define F_GetSlotList 35 -#define F_GetSlotInfo 36 -#define F_GetTokenInfo 37 -#define F_GetMechanismList 38 -#define F_GetMechanismInfo 39 -#define F_InitToken 40 -#define F_InitPIN 41 -#define F_SetPIN 42 -#define F_OpenSession 43 -#define F_CloseSession 44 -#define F_CloseAllSessions 45 -#define F_GetSessionInfo 46 -#define F_GetOperationState 47 -#define F_SetOperationState 48 -#define F_Login 49 -#define F_Logout 50 -#define F_CreateObject 51 -#define F_CopyObject 52 -#define F_DestroyObject 53 -#define F_GetObjectSize 54 -#define F_GetAttributeValue 55 -#define F_SetAttributeValue 56 -#define F_FindObjectsInit 57 -#define F_FindObjects 58 -#define F_FindObjectsFinal 59 -#define F_EncryptInit 60 -#define F_Encrypt 61 -#define F_EncryptUpdate 62 -#define F_EncryptFinal 63 -#define F_DecryptInit 64 -#define F_Decrypt 65 -#define F_DecryptUpdate 66 -#define F_DecryptFinal 67 -#define F_DigestInit 68 -#define F_Digest 69 -#define F_DigestUpdate 70 -#define F_DigestKey 71 -#define F_DigestFinal 72 -#define F_SignInit 73 -#define F_Sign 74 -#define F_SignUpdate 75 -#define F_SignFinal 76 -#define F_SignRecoverInit 77 -#define F_SignRecover 78 -#define F_VerifyInit 79 -#define F_Verify 80 -#define F_VerifyUpdate 81 -#define F_VerifyFinal 82 -#define F_VerifyRecoverInit 83 -#define F_VerifyRecover 84 -#define F_DigestEncryptUpdate 85 -#define F_DecryptDigestUpdate 86 -#define F_SignEncryptUpdate 87 -#define F_DecryptVerifyUpdate 88 -#define F_GenerateKey 89 -#define F_GenerateKeyPair 90 -#define F_WrapKey 91 -#define F_UnwrapKey 92 -#define F_DeriveKey 93 -#define F_SeedRandom 94 -#define F_GenerateRandom 95 -#define F_GetFunctionStatus 96 -#define F_CancelFunction 97 -#define F_WaitForSlotEvent 98 -#endif - -#define HINSTANCE void* - -//------------------------------------------------------------------------------ -CK_C_Initialize FC_Initialize; -CK_C_GetFunctionList FC_GetFunctionList; -//------------------------------------------------------------------------------ -HINSTANCE load_lib(char *lib) -{ - return dlopen(lib, RTLD_LAZY | RTLD_LOCAL); -} -//------------------------------------------------------------------------------ -void* get_sym(HINSTANCE inst, const char *proc) -{ - return (void*)dlsym(inst,proc); -} -//------------------------------------------------------------------------------ -void free_lib(HINSTANCE inst) -{ - dlclose(inst); -} -//------------------------------------------------------------------------------ -int Get_PKCS_Fancs(HINSTANCE hLib) -{ - FC_GetFunctionList =(CK_C_GetFunctionList) get_sym(hLib,"C_GetFunctionList"); - if (!FC_GetFunctionList) - return F_GetFunctionList; - return 0; -} -//------------------------------------------------------------------------------ -HINSTANCE hPkcsLib=NULL; -//------------------------------------------------------------------------------ -#ifdef WIND32 -int GetCapiPath(char *path) -{ - HKEY hKey; - DWORD Disposition,DataSize; - if (RegOpenKeyEx(HKEY_LOCAL_MACHINE,CSP_REGKEY,0,KEY_READ,&hKey)!=ERROR_SUCCESS) - return 1; - path[0]=0; - DataSize=255; - RegQueryValueEx(hKey,"Image Path",0,&Disposition,(BYTE *)path,&DataSize); - RegCloseKey(hKey); - if (!strlen(path)) - return 2; - return 0; -} -#else -int GetCapiPath(char *path) -{ - strcpy(path,CAPI_LIB_PATH); - return 0; -} -#endif -//------------------------------------------------------------------------------ -#ifdef WIND32 -int GetPkcsPath(char *path) -{ - return GetCapiPath(path); -} -#else -int GetPkcsPath(char *path) -{ - strcpy(path,PKCS_LIB_PATH); - return 0; -} -#endif -//------------------------------------------------------------------------------ -int LoadPkcsLib(char *dllpkcs) -{ - int code; - char path[260]; - if (hPkcsLib) - return 0; - - if ((dllpkcs)&&(*dllpkcs)) - strcpy(path,dllpkcs); - else if (GetPkcsPath(path)) - return -1; - - hPkcsLib=load_lib(path); - if (!hPkcsLib) - return -2; - - code=Get_PKCS_Fancs(hPkcsLib); - if(code) - { - free_lib(hPkcsLib); - hPkcsLib=NULL; - } - return code; -} -//------------------------------------------------------------------------------ -void FreePkcsLib(void) -{ - if (hPkcsLib) - { - free_lib(hPkcsLib); - hPkcsLib=NULL; - } -} -//------------------------------------------------------------------------------ -int do_GetFunctionList( void ) -{ - CK_RV rc = 0; - extern CK_FUNCTION_LIST *funcs; - rc=FC_GetFunctionList(&funcs); - if (rc != CKR_OK) {printf ("err %x\n",rc); return rc;} - return 0; -} -//------------------------------------------------------------------------------ diff --git a/program/include/cert_conf.h b/program/include/cert_conf.h index 3b2e5fa..3412b81 100644 --- a/program/include/cert_conf.h +++ b/program/include/cert_conf.h @@ -86,6 +86,9 @@ struct cert_store_policy{ uint16_t store_port; char store_ip[46]; + char password[128]; + char label[128]; + char ca_path[128]; char uninsec_path[128]; }; diff --git a/program/src/cert_session.cpp b/program/src/cert_session.cpp index 9de5cfb..5f614cc 100644 --- a/program/src/cert_session.cpp +++ b/program/src/cert_session.cpp @@ -785,6 +785,7 @@ int pkcs11_signature_algotonid(unsigned long algo) case CKM_SHA1_RSA_PKCS: return NID_sha1WithRSAEncryption; case CKM_RSA_PKCS: + case CKM_CERTEX_GOSTR3410_2001: case CKM_SHA256_RSA_PKCS: return NID_sha256WithRSAEncryption; default: @@ -792,40 +793,85 @@ int pkcs11_signature_algotonid(unsigned long algo) } return 0; } - -int X509_pkcs11_sign(X509* x509, unsigned long pkcs11_signing_algo, CK_SESSION_HANDLE pkcs11_session) +int x509_find_object(CK_SESSION_HANDLE session, CK_OBJECT_HANDLE *hObject) { - int rv =0; - CK_OBJECT_HANDLE pkcs11_key_handle = 0; + int xret=0; + CK_ULONG objcount; + CK_OBJECT_CLASS sec_class = CKO_PRIVATE_KEY; + CK_BBOOL xtrue = 1; - // set signature algorithm in the certificate + CK_ATTRIBUTE key_attr[] = + { + {CKA_CLASS, &sec_class, sizeof(sec_class) }, + {CKA_PRIVATE, &xtrue, sizeof (xtrue) }, + {CKA_LABEL, g_certstore_policy->label, strlen((const char *)g_certstore_policy->label)} + }; + + xret = FC_FindObjectsInit( session, key_attr, sizeof(key_attr)/sizeof(CK_ATTRIBUTE) ); + if (xret != CKR_OK) + { + mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "Object failed to initialize"); + goto finish; + + } + xret = FC_FindObjects(session, hObject, 1,&objcount); + if (xret != CKR_OK || objcount == 0) + { + mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "Failed to get private key handle"); + goto finish; + } + return 0; +finish: + *hObject = CK_INVALID_HANDLE; + return -1; +} + +int X509_hsm_sign(X509* x509, unsigned long mech, CK_SESSION_HANDLE session) +{ + int xret =1; + CK_OBJECT_HANDLE hObject = 0; + + xret = x509_find_object(session, &hObject); + if(xret != 0 || hObject == CK_INVALID_HANDLE) + { + return 0; + } + + CK_MECHANISM sign_mechanism; + memset (&sign_mechanism, 0, sizeof (sign_mechanism)); + sign_mechanism.mechanism = mech; + xret = FC_SignInit (session, &sign_mechanism, hObject); + if (xret != CKR_OK ) + { + mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "There was an error initializing the sign function"); + return 0; + } + // set signature algorithm in the certificate const X509_ALGOR *tsig_alg_org = X509_get0_tbs_sigalg(x509); X509_ALGOR *tsig_alg=const_cast(tsig_alg_org); if (tsig_alg) { - const int signingAlgoNid = pkcs11_signature_algotonid(pkcs11_signing_algo); + const int signingAlgoNid = pkcs11_signature_algotonid(mech); X509_ALGOR_set0(tsig_alg, OBJ_nid2obj(signingAlgoNid), V_ASN1_NULL, NULL); } - const X509_ALGOR *sig_alg_org; X509_get0_signature(NULL, &sig_alg_org, x509); X509_ALGOR *sig_alg=const_cast(sig_alg_org); if (sig_alg) { - const int signingAlgoNid = pkcs11_signature_algotonid(pkcs11_signing_algo); + const int signingAlgoNid = pkcs11_signature_algotonid(mech); X509_ALGOR_set0(sig_alg, OBJ_nid2obj(signingAlgoNid), V_ASN1_NULL, NULL); } - // DER-encode certificate - unsigned char *x509_der_buf; + // DER-encode certificate + unsigned char *x509_der_buf;CK_ULONG signature_size = 0; const size_t x509_der_len = i2d_re_X509_tbs(x509, &x509_der_buf); + xret = FC_Sign (session, x509_der_buf, x509_der_len, NULL, &signature_size); + if (xret != CKR_OK) + { + return 0; + } - CK_MECHANISM mechanism = { pkcs11_signing_algo, NULL_PTR, 0 }; - rv = funcs->C_SignInit(pkcs11_session, &mechanism, pkcs11_key_handle); - - // determine signature size - CK_ULONG signature_size = 0; - rv= funcs->C_Sign(pkcs11_session, x509_der_buf, x509_der_len, NULL, &signature_size); // sign const ASN1_BIT_STRING *psig_org; X509_get0_signature(&psig_org, NULL, x509); @@ -834,13 +880,14 @@ int X509_pkcs11_sign(X509* x509, unsigned long pkcs11_signing_algo, CK_SESSION_H OPENSSL_free(psig->data); psig->data = (unsigned char*)OPENSSL_malloc(signature_size); psig->length = signature_size; - rv = funcs->C_Sign(pkcs11_session, x509_der_buf, x509_der_len, psig->data, &signature_size); - + xret = FC_Sign(session, x509_der_buf, x509_der_len, psig->data, &signature_size); psig->flags&= ~(ASN1_STRING_FLAG_BITS_LEFT|0x07); psig->flags|=ASN1_STRING_FLAG_BITS_LEFT; - OPENSSL_free(x509_der_buf); - return rv; + OPENSSL_free(x509_der_buf); + FC_FindObjectsFinal(session); + + return xret; } X509 *ssl_x509_forge(X509 *cacrt, EVP_PKEY *cakey, X509 *origcrt, char *pkey, int *expire_time, char *crlurl, char *public_algo, CK_SESSION_HANDLE session) @@ -947,7 +994,7 @@ X509 *ssl_x509_forge(X509 *cacrt, EVP_PKEY *cakey, X509 *origcrt, char *pkey, in } else { - if(!X509_pkcs11_sign(crt, CKM_RSA_PKCS, session)) + if(!X509_hsm_sign(crt, CKM_CERTEX_GOSTR3410_2001, session)) goto errout; } @@ -1115,6 +1162,11 @@ long __attribute__((__unused__))argl, void __attribute__((__unused__))*argp) if (pxy_obj->stack_ca) sk_X509_pop_free(pxy_obj->stack_ca, X509_free); + if(pxy_obj->session) + { + FC_Logout(pxy_obj->session); + FC_CloseSession(pxy_obj->session); + } free(pxy_obj); pxy_obj = NULL; *ad=NULL; @@ -2256,6 +2308,7 @@ static int field_stat_init(struct cert_store_policy *certstore_policy, const cha return 0; } +#if 0 static struct pxy_profile_hsm* get_profile_by_id(int profile_id) { struct pxy_profile_hsm* ply_profile=NULL; @@ -2267,6 +2320,7 @@ static struct pxy_profile_hsm* get_profile_by_id(int profile_id) ply_profile = (struct pxy_profile_hsm*)Maat_plugin_get_EX_data(g_certstore_policy->feather, table_id, (const char*)cfg_id_str); return ply_profile; } +#endif CK_SESSION_HANDLE keyring_pkcs11_login(int slot_id) { @@ -2274,30 +2328,26 @@ CK_SESSION_HANDLE keyring_pkcs11_login(int slot_id) CK_FLAGS flags; CK_SESSION_HANDLE session=0; - struct pxy_profile_hsm* ply_profile = get_profile_by_id(0); - if(ply_profile == NULL || funcs->C_OpenSession==NULL) - { - goto error; - } - + //struct pxy_profile_hsm* ply_profile = get_profile_by_id(0); flags = CKF_SERIAL_SESSION | CKF_RW_SESSION; - ret = funcs->C_OpenSession(slot_id, flags, NULL, NULL, &session); - if(ret) + ret = FC_OpenSession(slot_id, flags, NULL, NULL, &session); + if(ret != CKR_OK) { - mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "hsm_sdk open session faild, error : %d", ret); + mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "Hsm open session faild, error : %d", ret); goto error; } - ret = funcs->C_Login(session, CKU_USER, (CK_UTF8CHAR_PTR)ply_profile->passwd, strlen(ply_profile->passwd)); - if(ret) + ret = FC_Login(session, CKU_USER, (CK_UTF8CHAR_PTR)g_certstore_policy->password, strlen(g_certstore_policy->password)); + if(ret != CKR_OK) { - mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "hsm_sdk login faild, error : %d", ret); + mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "Hsm login faild, error : %d", ret); goto error; } return session; error: if(session) { - funcs->C_CloseSession(session); + mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "Init FC_OpenSession faild, error : %d", ret); + FC_CloseSession(session); } return 0; } @@ -2558,12 +2608,14 @@ int maat_feather_init(struct cert_store_policy *certstore_policy, const char *ma mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "certstore register table PXY_PROFILE_KEYRING failed"); } +#if 0 table_id = maat_table_ex_init("PXY_PROFILE_HSM", POLICY_PROFILE_TABLE_HSM, hsm_profile_table_start_cb, hsm_profile_table_free_cb, hsm_profile_table_dup_cb); if(table_id<0) { mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "Register table PXY_PROFILE_HSM failed"); return 0; } +#endif field_stat_init(certstore_policy, main_profile); @@ -2583,6 +2635,8 @@ int pkcs11_module_init(struct cert_store_policy *certstore_policy, const char *m MESA_load_profile_uint_nodef(main_profile, "certex_hsm", "enable", &(certstore_policy->enable)); MESA_load_profile_string_def(main_profile, "certex_hsm", "library_path", library_path, sizeof(library_path), ""); + MESA_load_profile_string_def(main_profile, "certex_hsm", "password", g_certstore_policy->password, sizeof(g_certstore_policy->password), "987654321"); + MESA_load_profile_string_def(main_profile, "certex_hsm", "label", g_certstore_policy->label, sizeof(g_certstore_policy->label), "TEST"); if(certstore_policy->enable == 0) { @@ -2595,17 +2649,20 @@ int pkcs11_module_init(struct cert_store_policy *certstore_policy, const char *m mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "Load %s failed", library_path); goto finish; } +#if 0 xret = do_user_GetFunctionList(); if(xret!=0 || funcs->C_Initialize==NULL) { mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "Get function list failed, errro = %d",xret); goto finish; } +#endif memset(&cinit_args, 0x0, sizeof(cinit_args)); cinit_args.flags = CKF_OS_LOCKING_OK; - xret = funcs->C_Initialize(&cinit_args); + xret = FC_Initialize(&cinit_args); if(xret!=0) { + //FreePkcsLib(); mesa_runtime_log(RLOG_LV_FATAL, MODULE_NAME, "Function Initialize failed"); } finish: @@ -2614,10 +2671,10 @@ finish: int cert_store_session_init(struct cert_store_policy *certstore_policy, const char *main_profile) { - maat_feather_init(certstore_policy, main_profile); - pkcs11_module_init(certstore_policy, main_profile); + maat_feather_init(certstore_policy, main_profile); + keyring_server_init(certstore_policy); return 0; diff --git a/resource/conf/cert_store.ini b/resource/conf/cert_store.ini index 19e4550..455f0d4 100644 --- a/resource/conf/cert_store.ini +++ b/resource/conf/cert_store.ini @@ -59,6 +59,8 @@ statsd_server=192.168.10.72 statsd_port=8126 [certex_hsm] -enable=0 -library_path=lib/libcertex-rcsp_r.so.v.3.0.40.2 +enable=1 +password="987654321" +label="TEST" +library_path=./lib/libcertex-rcsp_r.so.v.3.0.40.3 diff --git a/resource/lib/libcertex-rcsp_r.so.v.3.0.40.3 b/resource/lib/libcertex-rcsp_r.so.v.3.0.40.3 new file mode 100644 index 0000000000000000000000000000000000000000..b3a22cd516d04a4b1d240b134adf5bcc6af3e2b4 GIT binary patch literal 778448 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œ>ZM{wVYt=j6{5#({T0(cB7FG2 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%0D_?PvM^8n10lbqUG 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 E0RHgA8UO$Q literal 0 HcmV?d00001 diff --git a/resource/rcsp/rcsp.conf b/resource/rcsp/rcsp.conf new file mode 100644 index 0000000..e94dfa5 --- /dev/null +++ b/resource/rcsp/rcsp.conf @@ -0,0 +1,18 @@ +[RAPI] +host = 172.16.172.216 +port = 62556 +auth = 0 + +[Admin] +name = hsm +pass = qwerty + +[SSL] +level = 0 +host = 172.16.172.216 +key_file = /Certex/etc/ssl/key.pem +crt_file = /Certex/etc/ssl/cert.pem +ca_file = /Certex/etc/ssl/ca.pem +ca_path = /Certex/etc/ssl/certs +mask = C=KZ;O=Gamma;OU=Certex;CN=HSMII-B-0028 +