La Signature numérique à l'aide du certificat et la clé USB token

Je veux signer un fichier à l'aide de la clé de l'utilisateur et le certificat à partir d'une clé USB (dongle).

J'ai été chercher sur ce pendant un certain temps, sur stackoverflow et d'autres sites, mais ne pas obtenir quelque chose d'utile à part quelques bonnes capacités .NET framework (dont je ne suis pas de l'utiliser).

Il semble que, depuis la clé n'est pas exposé, le cryptage est fait par le matériel lui-même. Est-ce à dire que chaque fabricant de votre matériel fournit sa propre Api et qu'il n'existe pas de méthode générique pour remédier à ce problème?

Aussi, j'ai lu qu'une fois que le jeton est branché à l'ordinateur, son certificat est chargé dans le magasin du système. Est-il possible d'utiliser le certificat dans le magasin? Comment un tel certificat est identifié et accessible, entre autres, dans le magasin? et que dire de la clé privée?

J'ai OpenSSL utilisée pour la signature numérique lorsque le certificat peut être extraite d'une .p12 ou .fichier pfx.

Corrigez-moi si je me trompe quelque part, je suis nouveau sur ce sujet.

Il y a une norme appelée pkcs11 pour la signature, à l'aide des périphériques matériels. Je ne sais pas si cela va vous aider, mais vous pouvez être en mesure d'en apprendre davantage en lisant par exemple en.wikipedia.org/wiki/PKCS_%E2%99%AF11
@Jcoder l'indique, de nombreux équipements pour utiliser une interface PKCS#11 pour les opérations de chiffrement. Vous devez demander au vendeur de matériel qui les Api qu'ils soutiennent avant de poursuivre.
oui, je l'avais brièvement lire sur PKCS#11. Mais j'espérais une solution plus élégante, plutôt que de soutenir chaque vendeur séparément. Spécialement, quand je ne sais pas le vendeur du matériel utilisé.

OriginalL'auteur sg1 | 2013-03-12