Hi Adam,
On Thu, Jul 10, 2014 at 10:16:31AM -0700, Adam Langley wrote:
> On Tue, Jul 8, 2014 at 5:05 PM, Matt Palmer <
mpa...@hezmatt.org> wrote:
> > The table on the "comparison" page reads, to me at least, like it's
> > reinforcing that "one or the other" feeling. Maybe I've just been poisoned
> > by too many vendor brochures, but I interpret a table like that as trying to
> > persuade me "CT is better, therefore you should switch to using CT!".
>
> I agree and I was about to say that I didn't have edit rights on the
> page, but it turns out that I do! So I've added a note to that effect.
That seems like a reasonable clarification. Thanks for taking the time to
update that page.
> > Holy bejesus... 4% fail to retrieve a *TXT* record? I've been living in a
> > very sheltered corner of the world. I don't suppose this sort of thing
> > could be expected to get better with the widespread deployment of DNSSEC, so
> > that crappy middleboxes learn there's no value to be had in interfering?
>
> There's also a strong latency argument against trying to chase DNSSEC
> records (esp since clients would have to do several rounds in many
> cases in order to get the full chain).
That seems to me like an argument against DNSSEC itself -- or at least
against very poorly deployed DNSSEC, which isn't very different to the wider
problem of poorly deployed DNS in general. By the time it comes time to
retrieve a TLSA record and use it to establish identity, a client (or
whatever that client is using to do trusted DNSSEC validation, anyway) will
have already done a DNSSEC-enabled lookup down the same chain of trust to
get the A/AAAA record. If someone's then setup a CNAME on _443._tcp.<name>
to somewhere completely different... well, you can't legislate against
stupid.
On the latency issue, though -- wouldn't it be practical to do the TLSA
lookup in parallel with the A/AAAA lookup? By the time you come to do the
A/AAAA lookup, you know enough to know whether (https://) and exactly what
(_443._tcp.<host>) you'd need to lookup if there were a TLSA record to use.
As an added bonus, you can establish the TCP connection and get part way
through the TLS handshake before that TLSA record response *needs* to be
back to you.
The only additional latency you end up with is that, if you don't get a
timely response (even if it's SERVFAIL or NXDOMAIN) you need to wait for a
timeout on that TLSA request before you can proceed with validating the
certificate presented by the client.
> But I think the dismal state of port 53 is sufficiently bad that it's not
> really viable to depend on anyway.
The act of using a web browser establishes the dependency on DNS. DANE
simply utilises that existing dependency. I understand that the situation
isn't *entirely* that cut-and-dried -- middleboxes which interfere with
"weird" DNS record types are going to cause problems, and I suppose that the
statistic you cited about failing to look up TXT records is probably enough
*by itself* to make the idea infeasible. Making TLSA lookups work, though,
would seem to be the right way forward, rather than dumping DANE. Further
discussion of that, though, is probably best left to a DANE advocacy list,
not a CT list. <grin>
> > It seems to me that in practical terms, the vast majority of site operators
> > are going to have to do "work" of some sort to remain EV in Chrome past Feb
> > next year. At the very least, they'll have to change certificate suppliers,
> > but I'd consider it more likely they will modify their HTTPS server
> > infrastructure to retrieve SCTs and serve them in a TLS extension.
>
> We are very much aiming note to have to make server operators do
> anything extra. Having to switch CAs is a possibility.
I was wondering if "economic incentives" for CAs to deploy SCTs in their
certs was a potential part of the plan. One of the benefits of having
control of a major browser, I guess, is that you get to do those sorts of
things. <grin>
I did recently ponder if "DANE stapling" was practical -- and it s! Looks
like that draft didn't go anywhere (expired Jan 2012), though it would no
doubt serve as a good foundation for anyone who wanted to get to a state
where a TLS extension could be standardised.
> * We have been working for a long time to get rid of 1K RSA in the
> PKI. We're not there yet, but we're close. However, DNSSEC is full of
> 1K RSA and regressing would be very sad.
*facepalm* I suppose that's something for DNSSEC people to jump on top of
-- trawling around for 1k RSA keys and hassling DNS admins until it gets
fixed. Unfortunately, absent a directive from the root that all signed
zones must kick all 1k RSA keys out of their zone and not let any new ones
be added (and that this policy must apply recursively) I don't expect this
problem will be solved -- after all, that's pretty much what it's taken to
get them out of the PKI.
> * CT is very important for the future, we're not going to let DANE bypass it.
Hmm... the best interpretation of this I'm coming up with is "we've only got
so many resources, and we're focusing on CT rather than DANE at the moment",
but that doesn't seem like an "issue [Google has] with DANE". Would you
mind clarifying?
> If those three were solved, then it's just a complexity/benefit
> consideration and the question of whether servers would actually use
> it.
I really, *really* think they would. I see DANE as a potential "killer app"
for DNSSEC, as much as that sounds like hyperbole. Anyone using self-signed
certs and "aaah, I'll just click through", anyone running an internal CA
merely (or primarily) because they don't want to have to manually trust the
certs on every machine, and people who buy DV certs for all their internal
and "limited scope of use" services, would all be early adopters -- and we
all know that it's early adopters that make or break a technology.
I can say for a fact that if Chrome (or any other browser) released a
version which fully supported DANE out of the box this minute, I'd have
DNSSEC and TLSA records deployed to about two dozen places by the end of the
day. The fact that Chrome 33(?) on Linux nuked the TLSA verifier extension
(because NSAPI got removed) pushed me *very* close to switching back to
Firefox, and that's not something I consider lightly. Hell, if IE were the
first to provide full built-in DANE support, I'd seriously consider
re-installing WINE. (I know, I know, "don't say things you can't take
back...")
Once I worked out how to provide a local DNSSEC-enabled resolver to OS X and
Windows (I'm sure it's not hard, I've just never done it before), I'd have
DNSSEC and TLSA to a couple of dozen *more* places, and an e-mail out to a
number of people saying "from this day forth, when using the following
sites, you *must* use $DANE_SUPPORTING_BROWSER".
And I'm out of the large-scale infrastructure game at the moment. Six
months ago I would have been in a position to roll out DNSSEC/TLSA and
mandate a browser to a much larger audience.
- Matt