È possibile richiedere la generazione di coppie di chiavi dei client nel browser e inviare la chiave pubblica alla CA del server da firmare in modo trasparente? Quindi installare il certificato firmato nel browser dell'utente?Generazione di certificati lato client nel browser e accesso al server
Scenario: richiede
- utente apre https://examle.com/ pagina web, l'identità del server è verificata
- utente una creazione di account
- coppia di chiavi è generata in del browser dell'utente e non ha rivelato al server/CA
- Pubkey viene inviato al server per la firma
- Server firma la chiave e genera il certificato
- Il certificato viene inviato al client e installato nel browser insieme alla chiave privata
La prossima volta che il client si collega al server, la sua identità viene verificata in base al certificato client.
Sarebbe bello se il server potesse forzare/suggerire al client di proteggere la sua chiave privata utilizzando la crittografia della password.
Ho visto servizi bancari online utilizzando l'applet Java per questa attività. È possibile farlo usando capabiliti del browser nativo? La soluzione Apache/PHP o Node.js sarebbe la benvenuta.
Come utilizzare la chiave privata per decrittografare i dati (nel caso di HTML5/tag kegen)? – MhdSyrwan
L'elemento '' è deprecato in base a [W3C] (http://w3c.github.io/html/sec-forms.html#elementdef-keygen), [WHATWG] (https: //html.spec.whatwg .org/multipage/forms.html # the-keygen-element) e [MDN] (https://developer.mozilla.org/en-US/docs/Web/HTML/Element/keygen) ed è intenzionalmente disabilitato in Chrome dalla versione 49. –