RSSAmplifier

Blog

Educated Guesswork

educatedguesswork.orgRSS feed ↗144 posts

Latest posts

What policy makers need to know about AI safety and security

We can all see that AI is rapidly changing the world, and it's bringing with it a whole new set of safety and security issues. Fundamentally these are technical problems, but they raise enormous policy questions about how to manage the risks associated with these new technologies. As with all technology policy questions, making good decisions requires some understanding of the technology, but it's…

Notes on Amazon v. Perplexity

Figure by Gemini. One of the many sites of conflict over AI use on the Internet is about the use of "agentic" Web browsers: those that incorporate AI features where the user can give the AI instructions and then let it interact with the site independently. For example, you might ask your browser to book travel and it would then go to travel sites, look at the various flights, and eventually buy…

Why your asthma inhaler is so expensive (in the US)

A little under 10% of the US population suffers from asthma . The good news is we have highly effective treatments. The bad news is that despite these treatments being decades old, they're shockingly expensive in the US as the result of a really bad interaction between the ozone hole, the patent system, the way drugs get priced, and the profit-seeking behavior of drug companies. Note: This post is…

Understanding age assurance accuracy

Note: you will probably want to view this post on the web because there is some math notation that uses MathJax to render. I've recently seen a number of pieces of pieces about age assurance that want to talk about the degree to which age assurance mechanisms are "accurate" or "effective". In discussions like this it's common for people to talk about accuracy and effectiveness as if they were…

How not to mandate device-based age assurance

Over the past several years, quite a few jurisdictions have started to require age assurance for access to various forms of content and experiences. In most current cases, this amounts to a mandate on the service (PornHub, Facebook, etc.), but understandably this isn't popular with services, who have in some cases been advocating to move requirements from the service to the device. A number of…

Let's build a tool-using agent

At this point, if you haven't heard about "agentic AI", you haven't just been living under a rock but under a huge pile of rocks. However, even you have heard of agentic AI, you may also have only some idea of what it actually means. If so, you've come to the right place. In this post we're going to build a simple tool-using AI agent and try to get some sense of what it's actually doing. Here's a…

I automatically generated minutes for five years of IETF meetings

Auto Minutes Logo [by Gemini] It is characteristic of all committee discussions and decisions that every member has a vivid recollection of them and that every member’s recollection of them differs violently from every other member’s recollection. Consequently, we accept the convention that the official decisions are those and only those which have been officially recorded in the minutes by the…

Using Government IDs for Age Assurance

On the Internet, nobody knows you're a dog. By Gemini, riffing off the New Yorker original . Over the past few years, an increasing number of jurisdictions have started to require that service providers of various kinds (most frequently pornography but also social networking sites) check the age of their users. Many of these laws and regulations don't specify any particular form of age assurance,…

Ultra Tour Monte Rosa (UTMR) Race Report

The pre-race picture. I look happier now than I will be later. This year my occasional [1] training partner Chris Wood was selected in the UTMB lottery and asked me to come over to Chamonix and crew him. Europe is a long way to go and not race, so I looked around and finally settled on Ultra Tour Monte Rosa (UTMR) as my "A" race. UTMR is conceptually similar to UTMB in that it's a 170K tour around…

Olympic Grand Loop (Deer Park Loop)

This year my occasional [1] training partner Chris Wood was selected in the UTMB lottery and asked me to come over to Chamonix and crew him. Europe is a long way to go and not race, so I looked around and finally settled on Ultra Tour Monte Rosa (UTMR) . UTMR is conceptually similar to UTMB in that it's a 170K tour around a mountain in the Alps but it's about 10% more climbing than UTMB and…

Understanding Memory Management, Part 7: Advanced Garbage Collection

Attention: Read this post on the Web # This post uses extensive client-side JavaScript and so won't render properly in your mail client. You should read this post on the Web site . This is the seventh and final (phew!) post in my multipart series on memory management. You may want to go back and read Part I , which covers C, parts II and III , which cover C++, and parts IV and V which cover Rust,…

Understanding Memory Management, Part 6: Basic Garbage Collection

This is the sixth post in my multipart series on memory management. You will probably want to go back and read Part I , which covers C, parts II and III , which cover C++, and parts IV and V which cover Rust. C++ RAII and Rust do a lot to simplify memory management but still force you to constantly think about how you are using memory (this is even more true with Rust). It's natural to ask why we…

Understanding Memory Management, Part 5: Fighting with Rust

This is the fifth post in my planned multipart series on memory management. You will probably want to go back and read Part I , which covers C, parts II and III , which cover C++, and part IV , which introduces Rust memory management. In part IV, we got through the basics of Rust memory management up through smart pointers. In this post I want to look at some of the gymnastics you need to engage…

Understanding Memory Management, Part 4: Rust Ownership and Borrowing

[Post updated 2025-04-20 to fix some minor errors flagged by Erik Taubeneck] This is the fourth post in my planned multipart series on memory management. Part I covers the basics of memory allocation and how it works in C, and parts II and III covered the basics of C++ memory management, including RAII and smart pointers. These tools do a lot to simplify memory management but because they were…

Understanding Memory Management, Part 3: C++ Smart Pointers

This is the third post in my planned multipart series on memory management. In part I we covered the basics of memory allocation and how it works in C, and in part II we covered the basics of C++ memory management, including the RAII idiom for memory management. In this post, we'll be looking at a powerful technique called "smart pointers" that lets you use RAII-style idioms but for pointers…

Understanding Memory Management, Part 2: C++ and RAII

This is the second post in my planned multipart [1] series on memory management. In part I we covered the basics of memory allocation and how it works in C, where the programmer is responsible for manually allocating and freeing memory. In this post, we'll start looking at memory management in C++, which provides a number of much fancier affordances. Background: C++ # As the name suggests, C++ is…

Understanding Memory Management, Part 1: C

UPDATED: 2025-02-15: Fixed some bugs in the examples and pointed out that you don't usually just want to panic on memory allocation failure. I've been writing a lot of Rust recently, and as anyone who has learned Rust can tell you, a huge part of the process of learning Rust is learning to work within its restrictive memory model, which forbids many operations that would be perfectly legal in…

Why it's hard to trust software, but you mostly have to anyway

[Edited to change the title and subtitle -- 2024-12-28] . Two children under a trenchcoat. Image from ChatGPT. My long-time collaborator Richard Barnes [1] used to say that "in security, trust is a four letter word" , and yet the dominant experience of using any software-based system—which is, you know, pretty much anything electronic—is trusting the manufacturer. Not only is there no meaningful…

Overloaded fields, type safety, and you

Image by Kate Hudson with help from Photoshop AI I recently learned that Southwest has a policy of giving passengers who don't fit in a single seat a free second seat. This isn't an issue for me personally, but I was curious how it worked and that lead me to Southwest's page on how to book a second seat: Southwest's passenger entry field Here are the instructions: Complete the "Who's Flying?" name…

River of No Return 108K Race Report (2024)

My "A" races for 2024 were Sean O'Brien 100K at the end of January and Tushars 100K at the end of July. 6 months is a long training block and so I decided to break it up with something in between. I've been leaning towards mountainous races with a lot of vert lately (SOB notwithstanding) and after doing a bunch of searching on UltraSignup I decided on the River of No Return 108K (RONR) [1] Challis…

New EV Habits for ICE Vehicle Owners

Generated by Midjourney. Prompt "Man waiting for EV to charge, bored expression, EV charging station, photorealistic --ar 4:3" I spent some time reading this HN thread in response to Wired's article on how many EV charging stations we need and I'm dumber than when I started (isn't that usually the way it is on the orange site?). On one side, we have the Internal Combustion Engine (ICE) forever…

Notes on Post-Quantum Cryptography for TLS 1.2

As mentioned in previous posts , the IETF has decided not to add support for post-quantum (PQ) encryption algorithms to TLS 1.2. In fact, the TLS WG is taking a rather stronger position, namely that it's going to stop enhancing TLS 1.2 more or less entirely , including support for PQ algorithms: While the industry is waiting for NIST to finish standardization, the IETF has several efforts…

How to manage a quantum computing emergency

Illustration by Kate Hudson with MidJourney and Photoshop AI. Recently, I wrote about how the Internet community is working towards post-quantum algorithms in case someone develops a cryptographically relevant quantum computer (CRQC) . That's still what everyone is hoping for, but nobody really know when or even if a CRQC is developed, and even in the best case the transition is going to take a…

Design choices for post-quantum TLS

It's a cruel irony that just as encryption is finally becoming ubiquitous, quantum computers threaten to tear it all down. Firefox HTTPS usage The technical details aren't that important (see here for some background), but the TL;DR version is that many of our cryptographic algorithms are designed to be difficult to break using "classical" computers (which is to say the kind we have now) but may…

Sean O'Brien 100K Race Report (2024)

On Saturday 1/27 I ran the Sean O'Brien (SOB) 100K in Southern California. I ran this same race back in 2021 and got my 100K PR, so I knew the course and felt like it was an opportunity to do better. My training had been going well and I was dropping PRs on my local courses, so I was looking forward to a strong race and taking off bunch of time, with an overall target of 12:00 to 12:25, so ~30-50…

A hard look at Certificate Transparency: CT in Reality

This is part II in my series about Certificate Transparency (CT) and transparency systems. In part I , we looked at how to build a simple transparency system that guaranteed that each certificate was published and that each participant in the system has the same view of the list of certificates. This prevents covert misissuance of certificates and makes it possible—at least in principle—to detect…

A hard look at Certificate Transparency, Part I: Transparency Systems

Identifying the communicating endpoints is a key requirement for nearly every security protocol. You can have the best crypto in the world, but if you aren't able to authenticate your peer, then you are vulnerable to impersonation attacks. If the peers have communicated before, it is sometimes possible to authenticate directly, but this doesn't work in many common situations, such as when you are…

Adventure Run Report: Northern Yosemite 50

After a kind of disappointing—but still the right call—decision to DNF at Teanaway 100, I found myself with a big pile of fitness, nothing planned for the rest of the year, but not really ready to just call it a season and start thinking about 2024. There weren't any races left I wanted to do, so instead I decided to try one of the adventure run loops that I had been eyeing for the summer but had…

Maybe someday we'll actually be able to search the Web privately

The privacy of Web search is tragically bad. For those of you who haven't thought about it, the way that search works is that your query (i.e., whatever you typed in the URL bar) is sent to the search engine, which responds with a search results page (SERP) containing the engine's results. The result is that the search engine gets to learn everything you search for. The privacy risks here should…

Desolation Wilderness Seven^H^H^H^H^HTwo Summits

My two races this season were to be Broken Arrow Skyrace and then a hundred to be named later. I'd originally planned to do Whistler Alpine Meadows 100 but then it was cancelled in February and I spent a long time procrastinating but finally settled on Teanaway Country 100 . Teanaway is about the opposite of UTMB : a tiny low-key race (59 entrants so far), but with pretty similar topline stats,…

Private Access Tokens, also not great

In my post on Chrome's Web Environment Integrity (WEI) proposal I briefly mentioned Apple's Private Access Tokens (PAT) mechanism, which, as Tim Perry observes, is already deployed . The stated use case for Private Access Tokens is to reduce the need for CAPTCHAs (the little puzzles you get asked to solve to prove that you are a human). This is a good objective because (1) CAPTCHAs suck (I can…

The endpoint of Web Environment Integrity is a closed Web

Chrome's Web Environment Integrity (WEI) proposal for remote Web browsing attestation is being justly criticized from a broad variety of perspectives ( Mozilla Standards Position , Brave , EFF ). I certainly agree that WEI is bad news, and I'll get to that part eventually, but first I'd like to situate it in the broader context, both of the Web and the Internet, starting with some history. The…

How NATs Work, Part IV: TURN Relaying

The Internet is a mess, and one of the biggest parts of that mess is Network Address Translation (NAT) , a technique which allows multiple devices to share the same network address. This is part IV in a series on how NATs work and how to work with them. You may want to go back to and review part I (how NATs work), part II (basic concepts of NAT traversal) and part III (ICE). As discussed earlier…

Broken Arrow Triple Crown Race Report

This year has turned out to be light on racing in part because I was kind of wiped out after last year and in part because I had signed up for the Broken Arrow Skyrace in Tahoe in June. Broken Arrow isn't actually one race but a race festival that takes place over three days. All of the races are relatively short compared to what I usually do (the longest is nominally 46 km/29 mi, but they offer…

How NATs Work, Part III: ICE

The Internet is a mess, and one of the biggest parts of that mess is Network Address Translation (NAT) , a technique which allows multiple devices to share the same network address. This is part III in a series on how NATs work and how to work with them. In part I I covered NATs and how they work, and part II covered the basic concepts of NAT traversal. If you haven't read those posts, you'll want…

Defending against Bluetooth tracker abuse: it’s complicated

Bluetooth-based tracking tags like AirTags and Tiles are fantastically useful for finding lost stuff like your keys, your bike, or your cat . Unfortunately, they are a dual use technology which is also easy to use for surreptitiously tracking other people. This isn't a complicated attack to mount: you get a tracking tag and pair it with your own phone, plant it on your victim, and then use the…

How NATs Work, Part II: NAT types and STUN

The Internet is a mess, and one of the biggest parts of that mess is Network Address Translation (NAT) , a technique which allows multiple devices to share the same network address. This is part II in a series on how NATs work and how to work with them. In Part I I covered NATs and how they work. If you haven't read that post, you'll want to go back and do so before starting this one. This post…

Everything you never knew about NATs and wish you hadn't asked

The Internet is a mess, and one of the biggest parts of that mess is Network Address Translation (NAT) , a technique which allows multiple devices to share the same network address. In this series of posts, we'll be looking at NATs and NAT traversal. This post is on NATs and the next one will be on NAT traversal techniques. [1] Background: IP addresses and IP address exhaustion # You may recall…

Architectural options for messaging interoperability

As I mentioned in some previous posts , the EU Digital Markets Act (DMA) requires interoperability for number independent interpersonal communications services (NICS), which is to say stuff like messaging (what we used to call "Instant Messaging") as well as real-time media (voice and video calling). Specifically Article 7 says that: 2. The gatekeeper shall make at least the following basic…

Network-based Web blocking techniques (and evading them)

Via Joseph Lorenzo Hall , Patrick Breyer , and EDRI , I see that the EU's Internet Filtering requirements (sometimes called "chat control") are continuing to move forward. The legal language is a bit hard to wade through, but it appears to require Internet Service Provider (ISPs) to block specific content on Web sites, identified by URL . Article 16 lays out the scope of blocking order: The…

Internet Transport Protocols, Part I: Reliable Transports

Most people who use the Internet just have some vague idea that it carries data from point A to point B (famously, through a series of tubes ). Even people who regularly work on Internet systems tend to work with it through many layers of abstraction, without a clear understanding of the infrastructure components that make it work. This post is the first of a series about one such piece of…

Surprise, blockchains won't fix Internet voting

You'll notice that in my post on end-to-end voting I never mentioned the word "blockchain". However, there's been quite a bit of interest in the "crypto" [1] community around somehow using the blockchain to "fix" voting. For instance, here's Binance CEO Changpeng Zhao arguing back in 2020 that it will lead to more secure elections with faster results: If there is a blockchain based mobile voting…

How to securely vote for (or against) Elon Musk

Note : this post contains a bunch of LaTeX math notation rendered in MathJax, but it doesn't show up right in the newsletter version. You may want to instead read the version on the site . Earlier this week Elon Musk ran a poll for whether he should step down as head of Twitter. As of this writing, the poll stood overwhelming (57.5 to 42.5) against Musk. Should I step down as head of Twitter? I…

One does not simply destroy a nuclear weapon

In a recent article the NYT reports that in the US when nuclear weapons are retired they aren't destroyed but just stored: Typically, nuclear arms retired from the U.S. arsenal are not melted down, pulverized, crushed, buried or otherwise destroyed. Instead, they are painstakingly disassembled, and their parts, including their deadly plutonium cores, are kept in a maze of bunkers and warehouses…

Can we agree on the facts about QWACs?

Disclaimer: Like the rest of the material on EG, these are my opinions and not those of my employer. Over at the day job I've been spending quite a bit of time dealing with the proposed eIDAS Article 45.2 , which would require browsers to accept *Qualified Website Authentication Certificates (QWACS) issued by certificate authorities approved by European Union member states. A lot of the discussion…

First impressions of Bluesky's AT Protocol

The first generation of Internet communications was dominated by largely decentralized—and barely managed—communications systems like USENET and IRC , built on documented, interoperable protocols. By contrast, the current generation is highly centralized, built on a small number of disconnected siloes like Twitter, Facebook, TikTok, etc. In light of recent events , it should be clear that this is…

How to hide your IP address

As I mentioned previously in my posts on private browsing and public WiFi , if you really want to keep your activity on the Internet private, you need some way to protect your IP address (i.e., the address that machines on the Internet use to talk to your computer) and the IP addresses of the servers you are going to. There are a variety of different technologies you can use for this purpose, with…

Self-Driving Vehicles, Monoculture, and You

Warning: this post didn't come out quite as tight as I was hoping. I think there are a bunch of interesting ideas and connections to be drawn, but they don't hang together as well as I wanted. That said, I'm not quite sure how to improve things, and so I'm just going to post it as-is. The Internet has plenty of bits, after all. Max Chafkin's article arguing that self-driving cars are failing is…

On the Security and Privacy Properties of Public WiFi

One of the most common security and privacy questions I get is whether it's safe to use public WiFi networks (and whether you should use a VPN). The answer is "it depends", for the reasons I lay out below. If you want to skip the rest of this, I'll tell you that I mostly just use airport and hotel WiFi but am more hesitant about it if I have to log in with my own identity. "Safe" is a difficult…

ELI15: PCR and PCR Testing

As pretty much everyone is now aware, there are two main kinds of COVID test: At-home based antigen tests (often called "lateral flow") Lab-based molecular tests (often called "PCR" [ though not all molecular tests are PCR—2022-09-14 ]) Lateral flow and PCR are both descriptions of the technology used in the test, but unless you already know what they are, they're just tech jargon. The purpose of…