crypto-ISSUE-15: Discovering certificates associated with (private) keys [Web Cryptography API]

crypto-ISSUE-15: Discovering certificates associated with (private) keys [Web Cryptography API]

http://www.w3.org/2012/webcrypto/track/issues/15

Raised by: Ryan Sleevi
On product: Web Cryptography API

During the July Face-to-Face, one attribute that was desired to be associated with the Key object was if the user has any associated certificates for that key.

For operations involving digital signatures, it's highly desirable to be able to produce both a signature and embed an associated certificate. See, for example, S-MIME.

However, exposing certificates opens a host of implementation and privacy concerns:
- Certificates associated with Keys may be transient (for example, backed on temporary storage). Should discovery be static (ie: as an attribute of the Key) or dynamic (ie: as a method on the Key)
- What is the form that certificates should take? Does this API require specifying an X.509v3 API as well? ASN.1 -> WebIDL representation?
- What are the privacy risks associated with exposing certificates to an application? Some pre-provisioned certificates may contain personally identifying information, and thus user consent may be desired before granting access to the certificate.
- Additionally, if the application can construct (temporary/ephemeral) public keys, and then execute certificate discovery on those key, they might be able to discover sensitive information about the user, without requiring access to the key handle itself.
- If key handles can be shared between origins (either at the application's discretion during key generation or based on some form of user assent/input), do certificates represent a way to smuggle information between origins, using application/x-x509-user-cert to deliver cert payloads?

Received on Monday, 6 August 2012 04:24:59 UTC