J'ai besoin d'une paire de clés RSA pour mon projet Web et, alors qu'il y ait des bibliothèques, je pense que ce serait une bonne idée de compter sur le navigateur (pour la sécurité et la vitesse) pour générer la clé pour moi. Est-il possible d'utiliser KeyGen ou quelque chose d'un autre API de navigateur pour le faire? Je ne sais pas comment obtenir les clés de Keygen. Ils semblent être générés sur soumettre, mais je ne veux pas les envoyer au serveur. P>
4 Réponses :
J'ai trouvé ce site , parle de générer des clés RSA dans le navigateur p>
Je pense que c'était voté à la fois parce que cela ne répond pas vraiment à la question - la question portait sur l'utilisation des capacités intégrées du navigateur, par opposition à des bibliothèques tierces.
Oui, je suis juste allé à cela s'attendant à une réponse, mais j'ai eu un exemple à la place, ce que je devrais creuser; Et peut-être que je vais avoir une réponse.
La question a été supprimée, selon Stackoverflow.com/help/how-to-answer vous devriez "toujours citer la partie la plus pertinente d'un lien important. "
Qu'est-ce que vous recherchez probablement est quelque chose comme de Mozilla's proposition d'API DomCrypt . Il vous permet de générer une paire de clés via la fenêtre Malheureusement, cette API n'est pas encore prise en charge par un navigateur. Il n'y a qu'un Extension Firefox qui peut être utilisée pour le tester, Donc, cette proposition en est encore très tôt. Mais je pense que c'est le meilleur que vous puissiez obtenir à ce stade. P> .mozcrypto.pk.generatekair () code> ( window.mozcrypto code> est censé changer dans window.crypto code > Plus tard), vous pouvez obtenir la clé publique et chiffrer ou déchiffrer le texte avec la clé privée. Il ne vous accordera toujours pas un accès direct à la clé privée, cependant, vous obtenez uniquement une clé clé. P>
Il existe un protocole de type SSL implémenté dans JavaScript: Assl . P>
Il utilise un algorithme RSA pour la cryptographie Vous pouvez utiliser leur générateur de clés. P>
Disons simplement que ceci est une idée effrayante due à la possibilité d'injecter du code qui vole la clé privée. P>
Ils ne sont pas envoyés au serveur.
Selon la spécification, la clé publique sera envoyée.
@NEP: Oui, c'est le point - seule la clé publique sera envoyée (pour identifier l'utilisateur dans les prochaines sessions), mais la clé privée est stockée dans le navigateur où le serveur (et le serveur JavaScript) ne peut jamais y accéder. Donc, personne ne peut simuler l'identité de l'utilisateur, pas même le serveur lui-même.
J'ai trouvé cet article qui vaut la peine de lire: MataSano.com/articles/javascript-cryptography < / a>