Есть люди которые сталкивались с PKCS#11 ?

Тема в разделе "WASM.CRYPTO", создана пользователем dead_body, 17 сен 2008.

  1. dead_body

    dead_body wasm.ru

    Публикаций:
    0
    Регистрация:
    3 сен 2004
    Сообщения:
    603
    Адрес:
    Украина;г.Харьков;г.Н.Каховка
    Если есть, то хотел бы спросить.
    В функции
    Код (Text):
    1. CK_DEFINE_FUNCTION(CK_RV, C_SignInit)(
    2. CK_SESSION_HANDLE hSession,
    3. CK_MECHANISM_PTR pMechanism,
    4. CK_OBJECT_HANDLE hKey
    5. )
    сохраняю ссылку на ключ.

    В функции C_Sign нужно реализовать RSA или DSA подпись. Но после недели мучений, не могу придумать как.
    На вход же нам идут только

    Код (Text):
    1. CK_DEFINE_FUNCTION(CK_RV, C_Sign)(
    2. CK_SESSION_HANDLE hSession,
    3. CK_BYTE_PTR pData,
    4. CK_ULONG ulDataLen,
    5. CK_BYTE_PTR pSignature,
    6. CK_ULONG_PTR pulSignatureLen
    7. )
    а в реализациях openssl нужно
    Код (Text):
    1. static int RSA_eay_public_encrypt(int flen, const unsigned char *from,
    2.         unsigned char *to, RSA *rsa,int padding);
    3. static int RSA_eay_private_encrypt(int flen, const unsigned char *from,
    4.         unsigned char *to, RSA *rsa,int padding);
    5. static int RSA_eay_public_decrypt(int flen, const unsigned char *from,
    6.         unsigned char *to, RSA *rsa,int padding);
    7. static int RSA_eay_private_decrypt(int flen, const unsigned char *from,
    8.         unsigned char *to, RSA *rsa,int padding);
    RSA *rsa - и где его взять - непонятно, не нашел ни одного внятного примера.
    Я в этом деле только учусь, и любой помощи был бы признателен.

    Получаеться что имею хэндл на ключ(что с ним вообще делать, с этим хэндлом, с какими функциями юзать - не ясно) , имею данные, и нужно всего их как то подписать.
    У кого есть примеры или литература, или кто знает помогите.
     
  2. chAlx

    chAlx New Member

    Публикаций:
    0
    Регистрация:
    17 июл 2008
    Сообщения:
    74
    Пример известный: openssl.c ;)