Remix.run Logo
josephg 2 days ago

I'm glad unencrypted http/1.1 was deprecated. I want a privacy online. TLS also gives you much better data integrity guarantees. Some ISPs - particularly in the US - actively inject javascript code into websites served over plain HTTP.

I just wish nginx / caddy / etc had better out-of-the-box support for letsencrypt. It would be way easier to set up if it was just built in to nginx. Let me specify my domain in my nginx config, and just make it work.

sam_lowry_ 2 days ago | parent [-]

Look at this from the Digital Sovereignty angle.

AFAU Let's Encrypt gets its money from Google. There are other minor providers of similar services over the ACME protocol, but this does not change the fact that they issue the the majority of the free TLS certificates.

We already had one centralized domain name system managed by the US Government that we have to hop through before publishing our content online for everyone.

Now, we silently and tacitly added another US-based one.

josephg a day ago | parent [-]

Yea from a technical perspective I think it’s ridiculous that organisations like lets encrypt are even needed. DNS could easily service both roles and make letsencrypt redundant.

Here's how it could work: First, you generate a tls signing certificate. The signing cert gets stored in DNS. When anyone makes a DNS query, the response contains your root certificate's signature (HMAC). When you initiate a TLS connection, you check the root certificate in the cert chain against the signature provided over DNS.

The dns response would also need to be cryptographically signed by the dns provider. Instead of operating systems shipping trust roots of TLS cert providers, we ship the root certificates of DNS registrars. Eg, .com, .com.au, etc would each publish one or more root certificates that would get distributed with operating systems.

Trust already depends on dns (since that’s how you prove who you are to letsencrypt). So the whole system would rely on fewer trusted entities - which would hopefully make it more secure. It would be simpler to run - less organisations needing to do anything. And simpler to make use of, since you wouldn’t need programs like certbot to keep your tls certs up to date. This would also prevent the danger of malicious TLS providers being involved in MITM attacks on TLS.

sam_lowry_ a day ago | parent [-]

I think we should have gone the legal route, forbidding JS injection in pasing HTML by carriers by e. g. conditioning their liability to the modification of data.

That is, if they inject JS or modify the data in any way, they are liable for the content, otherwise not.

josephg a day ago | parent [-]

Yeah I think we should have done both. Made this illegal, and stopped it via encrypted channels.

Computers are fast now. We should just encrypt everything that gets sent over the open internet.

The IETF put out a statement about this a few years ago. I agree with their stance.

> The IAB urges protocol designers to design for confidential operation by default. We strongly encourage developers to include encryption in their implementations, and to make them encrypted by default. We similarly encourage network and service operators to deploy encryption where it is not yet deployed, and we urge firewall policy administrators to permit encrypted traffic.

https://datatracker.ietf.org/doc/statement-iab-statement-on-...

sam_lowry_ a day ago | parent [-]

Encrypted channels as the solution to people's problems is exactly what Poul-Henning Kemp warned against in his last Bikeshed: https://queue.acm.org/detail.cfm?id=3818307

josephg a day ago | parent [-]

That's a long rant and I don't like homework. Can you summarise his position, or at least the parts you agree with?