2010-11-14 27 views
14

Je cherche une librairie crypto JS (similaire à, par exemple, libcrypto d'OpenSSL) qui facilite la signature numérique des données dans le navigateur.
Je souhaite signer des données de formulaire de formulaire côté client à l'aide d'une clé privée (RSA, certificats PKI ou similaire).Bibliothèque de cryptographie Javascript pour signer les données de formulaire dans le navigateur

EXEMPLE

  1. charges de données de formulaire dans le navigateur
  2. utilisateur A données critiques et le signe => la signature est créée dans le navigateur en utilisant les js lib et la clé privée signature=RSA_encrypt(A_private_key, hash(data))
  3. La forme les données et la signature sont envoyées au serveur et stockées

  4. Un autre utilisateur (B) peut vérifier la validité de la signature en comparant hash(data) avec RSA_decrypt(A_public_key, signature) Si quelqu'un modifie les données du formulaire, la signature ne sera plus valide.

EDIT

https://developer.mozilla.org/en/javascript_crypto
http://www.hanewin.net/encrypt
http://tomas.styblo.name/cryptoapplet/

VIA APPLETS
Best way to sign data in web form with user certificate
! =>http://www.nakov.com/research/documents-signing/digital-document-signing-in-java-based-web-applications/
http://www.nakov.com/research/documents-signing/
http://www.developer.com/java/other/article.php/10936_3587361_1
http://www.developer.com/java/web/article.php/3083161
http://blogs.nologin.es/rickyepoderi/index.php?/archives/12-Signature-Applet.html

LIÉES
http://ccff02.minfin.fgov.be/CCFF_Authentication/views/login/signature/signatureHelp.html
http://msdn.microsoft.com/en-us/library/cc778518%28VS.85%29.aspx

+0

Existe-t-il une raison pour que HTTPS ne soit pas suffisant pour cela? Qu'est-ce que vous essayez d'accomplir? – cdhowie

+2

HTTPS ne peut pas signer de données, pensez à un formulaire comme un type de document à signer, si les données de formulaire sont modifiées, la signature n'est plus valide – clyfe

+1

Droit, mais à qui appartient la clé privée? L'utilisateur ou votre service? L'utilisateur doit-il avoir accès à la clé privée? (Parce qu'ils le font ...) Pourquoi ne pouvez-vous pas signer les données après que votre service le reçoive? – cdhowie

Répondre