Subject: <keygen> - An HTML5 standard facility?

From: "Anders Rundgren" <[email-masked]>
Date: Tue, 7 Apr 2009 22:13:42 +0200

http://www.whatwg.org/specs/web-apps/current-work/#the-keygen-element

Since the PKI community at large seems to ignore the client-side of
PKI in browsers, the HTML 5 designers apparently didn't find any other
solution but adopting the 15 year old Netscape hack known as <keygen>.

It is indeed as said in this list very simple to use etc.  However,
does it really match the needs of today?

My guess FWIW, is that the serious users of on-line provisioning of PKI
which includes governments and banks in the EU, as well as the USPTO
will continue to use entirely proprietary solutions (mostly using Java), since
the browser-schemes are all-over-the-map and do not do signatures either.

A few things to consider:

How could a static tag in a page mark-up language match an API
or a protocol?

Algorithm agility, isn't that a requirement these days?

PIN-codes anybody?

TPM - A dead duck?

Anders

---

From: Stefan Santesson <[email-masked]>
Date: Wed, 08 Apr 2009 00:30:00 +0200

I find it a bit remarkable that they reference RFC 2459 for algorithm
identifier OIDs

Quote:
"3. Let algorithm be an ASN.1 AlgorithmIdentifier structure as defined by
RFC2459, with the algorithm field giving the ASN.1 OID used to identify
signature algorithm, using the OIDs defined in section 7.2 ("Signature
Algorithms") of RFC2459, and the parameters field set up as required by
RFC2459 for AlgorithmIdentifier structures for that algorithm. [X690]
[RFC2459]"

It's a tiny bit more than slightly outdated...

/Stefan

---

From: "Anders Rundgren" <[email-masked]>
Date: Thu, 9 Apr 2009 23:36:32 +0200

It is indeed true that the write-up refers to out-dated RFCs but since <keygen> was designed ages ago that is sort of aligned with the rest of the scheme as well :-)

IMO it doesn't really matter if <keygen> gets standardized or not, it will anyway be obviated by other solutions since <keygen> doesn't support even the most basic security features needed, like giving the issuer an indication whether keys are stored in the file system, or are generated and stored in a secure container like a smart card.  The technique for doing that (container attestations) has been known for a decade or more, and since trusted HW is already a part of high-end mobile devices, it seems pretty short-sighted not to make use of it.

BTW, <keygen> and its numerous cousins are actually much more important for mobile devices than for PCs, since for the latter we already have physical token distribution (PIV/CAC/eID etc), which I believe is the main reason why the state of on-line key-generation doesn't exactly top the agendas of W3C, OASIS, or the IETF.  One may argue that SIM-cards already have what it takes, but then you probably haven't tried it in practice :-)

Anders

----- Original Message ----- 
From: "Stefan Santesson" <[email-masked]>
To: "Anders Rundgren" <[email-masked]>; <[email-masked]>
Sent: Wednesday, April 08, 2009 00:30
Subject: Re: <keygen> - An HTML5 standard facility?

Quote:

/Stefan