2017-06-04 3 views
0

J'essaie d'utiliser PKCS11Interop Library avec la dernière version (0.16) d'OpenSC (opensc-pkcs11.dll). J'ai essayé des jetons USB de trois fournisseurs qui sont Yubico 4, NitroKey Pro/Start, Fetian ePass2003 mais incapable d'utiliser la plupart des fonctions de PKCS11Interop Library. Je reçois Net.Pkcs11Interop.Common.Pkcs11Exception: 'La méthode C_SignRecoverInit a renvoyé CKR_FUNCTION_NOT_SUPPORTED' pour la plupart des fonctions fournies par la bibliothèque. Les fonctions qui jettent cette exception sont C_GetOperationState, C_SetOperationState, C_GenerateKey, C_GenerateKeyPair, fonctions Crypter/Décrypter, Signer/Vérifier les fonctions etc.Exception "CKR_FUNCTION_NOT_SUPPORTED", PKCS11Interop avec OpenSC

La chose étrange est fonctionne comme GetSlotInfo, GetMechanisms, Connexion, Session fonctionne très bien. J'ai passé beaucoup de temps à essayer de trouver une solution ici. Apprécierait si quelqu'un peut aider à ce sujet.

Répondre

0

Net.Pkcs11Interop.Common.Pkcs11Exception indique toujours une erreur renvoyée par la bibliothèque PKCS # 11 sous-jacente non gérée qui est généralement fournie par le fournisseur du périphérique. Erreur que vous recevez - CKR_FUNCTION_NOT_SUPPORTED - indique que la bibliothèque PKCS # 11 non managée ne prend pas en charge/n'implémente pas de fonction particulière définie dans la spécification PKCS # 11.

OpenSC source code confirme votre constatation qu'il ne supporte pas C_SignRecoverInit et aussi quelques autres fonctions.

BTW c'est un comportement normal et plutôt courant. Vous trouverez à peine la bibliothèque PKCS # 11 qui supporte toutes les fonctions de PKCS # 11. Si la bibliothèque PKCS # 11 fournie par OpenSC ne fournit pas certaines fonctions dont vous avez réellement besoin, alors je vous suggère de vérifier les autres solutions fournies par les vendeurs commerciaux.

0

C_SignRecoverInit Les fonctions ne sont pas implémentées dans la plupart des pilotes d'OpenSC. Les autres fonctions devraient être bien et sinon, lisez ce qu'il faut faire et comment signaler les bogues dans le OpenSC wiki.