GoogleChrome / CertificateTransparency

Apache License 2.0
145 stars 60 forks source link

Certificate Transparency Log Certificate Acceptance Proposal #6

Open taknira opened 7 years ago

taknira commented 7 years ago

Problems:

Idea:

When a log operator brings up a new Log, they specify:

For a certificate to be accepted by the Log:

How could Log Operators use this:

Suppose the longest lived cert that a CA can/will ever issue is 3 years (I'm not sure what it actually is, so this example would need to be adjusted to accommodate whatever it really is).

Using this new idea, a log operator could then create 4 logs (to cover a rolling 3 year period), each with the same set of accepted roots, but with (Start, End) values of: (initial, initial+1yr) (initial+1yr, initial+2yrs) (initial+2yrs, initial+3yrs) (initial+3yrs, initial+4yrs) where initial = ~when the logs are created

New certificates issued with short lifetimes (for example Let’s Encrypt certs) would initially end up in the (initial, initial+1yr) log, whereas new certificates with longer lifetimes would end up in the logs with later acceptance ranges. Existing certificates that have not yet expired would fit into whichever log accepts their ‘Not After’ value, and expired certificates would be submitted to already existing archival logs (e.g. Google Daedalus).

As now progressed, and neared initial+1yr, another log would be spun up with (Start, End) = (initial+4yrs, initial+5yrs), to continue to cover any new certificates created with a 3 year lifetime. New short lived certificates would start being logged in the (initial+1yr, initial+2yrs) Log.

Once now passed initial+1yr, the log with (Start, End) = (initial, initial+1yr) would become archival, and not require the same level of maintenance, as all of the certificates within it would be expired.

Pros:

Cons:

pphaneuf commented 7 years ago

Backlink to the ct-policy mailing list topic: https://groups.google.com/a/chromium.org/d/topic/ct-policy/bArUq2nU41E/discussion