HN user

richm44

326 karma
Posts5
Comments75
View on HN

Downloading things from the AIA fields would mean triggering HTTP/HTTPS requests to an untrusted URL from a certificate you haven't verified - not a good idea. What firefox does is cache intermediates that it has seen elsewhere, the windows TLS stack can fetch additional certs from windows update on-demand (and actually starts with only a small bundle of trusted roots). There is no good solution for incomplete chains other than getting the sites fixed (or using a provider like cloudflare that solves it for them).

I remember coding this effect in C a long time ago. Back in the day we used to use the frame buffer as the data store too, not really feasible today!

TCP Puzzlers 10 years ago

There are some other fun edge cases - for example:

- If you have a port-forward to a machine that is switched off then you can get ICMP network unreachable or ICMP host unreachable as the response to the a SYN in the initial handshake.

This can also happen at any point in the connection. Other ICMP messages can also occur like this (eg. admin prohibited).

It's always worth remembering that the TCP connection is sitting on an underlying network stack that can also signal errors outside of the TCP protocol itself.

I'd like a standardised function to clear a block of memory that is guaranteed to not be optimised out, and a constant time compare function.

Sadly it doesn't on linux due to overcommit. You can actually get the failure much later when you try to use the memory. The exception is when you try to allocate absolutely huge buffers. So malloc returning a valid pointer doesn't indicate success (though it returning NULL does indicate failure).

Heh. Qt was released in 1995 and the The Cathedral and the Bazaar was released in 1997 with the OSI being formed in 1998. This means Qt pre-dates the term 'open source' by approximately 3 years!

- It's somewhat complicated for a site to implement correctly

This is true, but the same thing was said about running a site at all not long ago.

- It mainly protects users who have already connected to a site once from a secure location and whose browsers support HSTS and other "fixes"

The point of using a valid CA is to allow the first connection be secure. It's certainly true that you can secure subsequent connections more than the initial one though.

- Circumvented easily via phishing

Phishing is attacking something completely different and is not something SSL/TLS can or should protect you against. It's like expecting a seat belt to protect you from being run over.

- Does not prevent nation states from MITMing connection

Actually it does if HPKP is used, though not on the initial connection.

- Can only host one site per IP, without a wild-card or UCC cert (which not all clients support)

This is supported via the server name indication extension, and additionally by using multiple subject alternative names. The former is better though since it allows each site to have its own key.

- Makes caching difficult to impossible

True, but that's a feature. Caching on the client is still of course entirely based on what the client chooses to do.

- Adds performance overhead

Not much, see https://istlsfastyet.com/

- Potential for new attacks on the TLS layer (SSL Strip, STARTTLS Command Injection, BEAST, POODLE, RC4, CRIME, TIME, BREACH, Truncation, FREAK, Logjam, Heartbleed, BERserk, Root cert forgery, ChangeCipherSpec injection, Protocol downgrade, Certificate errors, Renegotiation, Triple Handshake, Virtual Host confusion, DoS)

Note that there are protections again those, and saying "because it might have a problem" is basically just burying your head in the sand of the problem you already have.

- General confusion by users as to what makes a connection secure

True, but not a good reason since you as a site owner can do most of the work for them (in combination with their browser).

BoringSSL 11 years ago

That's not correct, it was to learn bignum arithmetic not C.

It's a pity this article is based on a false premise since it could have contributed to the discussion more usefully. What's being removed is the keygen tag, not client certificate support - the two are independent.