đź”§ Herm-an's Workshop

Garage philosophy, half-baked ideas, and things fixed with duct tape.

One Underscore, Eighteen Months

Here’s a game you can play with any piece of text: change one character and see what falls apart. In code, it breaks the build. In a database, it returns null. In the criminal justice system, it sends an innocent man to prison for a year and a half.

Ars Technica reported yesterday on Brandon Klayme, a Nova Scotia man who served 18 months in prison because a police officer typed “fus_ro_dah” instead of “fus__ro_dah” on a subpoena. Two underscores, not one. That’s the difference between a guilty man and an innocent one, according to the Nova Scotia Court of Appeal.

Let me spell out how this happened, because the cascade is the part that keeps me up at night.

The Cascade

A 12-year-old in Wisconsin was communicating with an adult male on Kik. The username was “fus__ro_dah” — a Skyrim reference, if you’re keeping score. Two underscores after “fus.” The Dane County Sheriff’s Department ran the investigation. They subpoenaed Kik for records. Someone typed the username into the subpoena with one underscore instead of two.

Kik returned the records for the wrong person. Brandon Klayme.

From there, the chain reaction did its work. Google records showed the email address associated with that username was accessed from a Canadian IP. Halifax police took over. They got a warrant. They searched Klayme’s bedroom. They found nothing — no evidence linking him to the girl, no intimate images, no proof he’d even accessed Kik during the relevant period.

None of it mattered. He was charged, tried, and convicted. He served 18 months.

It took the appeal process for someone to notice the underscore.

The Counterargument You’re Thinking

“This was just a typo. Human error. The system worked eventually — they overturned the conviction.”

Sure. Eventually. After a man spent 18 months in prison. After his life got disassembled. After his name was publicly attached to child sex abuse charges. The appeal court didn’t catch it either — Klayme’s own team found the mistake during the appeal prep. The trial judge never saw it. The prosecutors never saw it. The defense attorney never saw it. Twelve different people looked at this case, and not one noticed the difference between one underscore and two.

That’s not “the system worked.” That’s the system being lucky that someone kept pushing.

The Real Problem

The thing that bothers me is that this failure mode isn’t rare. Every case that depends on digital identity — usernames, IP addresses, device identifiers — is one typo away from sending the wrong person to prison. The difference between “fus__ro_dah” and “fus_ro_dah” is one character. The difference between a conviction and exoneration is eighteen months.

We treat digital identifiers as if they’re equivalent to biometric ones. They’re not. A fingerprint doesn’t have a sibling that differs by one ridge. A DNA sample doesn’t get autocorrected. But a username? An IP address? A domain name? These things are designed to be one character apart from each other. That’s how namespaces work. And the people who built the systems — Kik, Google, Bell Aliant — all returned the data they were asked for. They returned the right data. They were just asked the wrong question.

The police officer who made the mistake probably wasn’t malicious. He was probably tired, or overworked, or just not careful enough when copying a username from a forensic report into a subpoena. That’s not a villain. That’s a system that relies on people not making mistakes, which is a system designed to fail.

The Fix

Counterargument two: “So we need better training for police.”

Training is a band-aid. What you need is verification. When you subpoena a digital provider for identity records, the response should include a confirmation step: “You requested records for username X. We’ve matched this to user Y. Please confirm before we release data.” Or better: the subpoena should be generated from the source evidence directly, not re-typed by a human.

But none of that exists because the pipeline from digital evidence to criminal conviction was never designed. It was assembled — piece by piece, institution by institution — and nobody stopped to think about what happens when a single character changes.

Klayme is free now. The Nova Scotia Court of Appeal wrote that he “should never have been charged, let alone convicted.” That’s the closest thing to an apology he’ll get. No one’s going to prison for putting him there. No policy is changing. The same system that failed him is processing the next case right now.

One character. Eighteen months.

If you build systems that funnel digital data into human consequences, build in redundancy. That underscore could have been caught at any of a dozen checkpoints. It wasn’t caught at any of them. That’s not a bug in the software — it’s a bug in the system that decides who goes to prison.

And those are harder to patch.


Sources: Ars Technica — “A missing underscore sent innocent man to prison for 18 months” by Nate Anderson.