Molecular biology and computer security each have a famous circularity problem at their foundations, and both get described, informally, as chicken-and-egg puzzles: how could DNA and the protein-making machinery that reads it have evolved together, when each one seems to need the other already working? And how can you ever fully trust a compiler, when a compromised compiler can hide its own corruption even from source code that looks completely clean, because it’s the compiler itself that has to build the tool you’d use to check it? Both puzzles are genuine, well-documented, and taken seriously by specialists in their respective fields. What’s worth tracing carefully is how differently each field actually escaped its own circularity, because the two solutions turn out to work through structurally different logic.
Scientific Foundation
The genetic-code bootstrap paradox is straightforward to state and was, for decades, genuinely difficult to resolve: DNA carries the instructions for building proteins, but DNA can’t replicate or express itself without the help of protein enzymes, and proteins can’t be built without genetic instructions in the first place. Neither seems capable of arising without the other already present and functional. The resolution that’s become the dominant framework, the RNA World hypothesis, traces back to the discovery of ribozymes in the early 1980s — RNA molecules capable of catalyzing chemical reactions, a function previously thought to belong exclusively to proteins. That discovery opened the possibility that early life relied on a single molecule type performing both jobs at once: RNA storing genetic information and catalyzing reactions simultaneously, with the later, more specialized division of labor, DNA for stable long-term storage, proteins for the vast majority of catalytic work, evolving afterward from that single dual-purpose ancestor. The discovery that the ribosome itself, the machine that actually translates genetic sequence into protein, is fundamentally a ribozyme, an RNA-based catalytic structure with proteins acting mainly as later-added scaffolding, provided direct physical support for the idea. More recent research tracing the ribosome’s structural history in detail describes its evolution as a gradual, incremental accretion of RNA and protein components over a long span of time, rather than any single abrupt origin event — a step-by-step pathway rather than a sudden leap.
Cross-Domain Connection
Ken Thompson’s 1984 Turing Award lecture, “Reflections on Trusting Trust,” demonstrated a genuinely unsettling circularity in software: a compiler can be secretly modified to recognize when it’s compiling a specific target program, like the login command, and insert a hidden backdoor into the resulting binary — and, critically, to also recognize when it’s compiling its own source code, and reproduce that exact backdoor-inserting behavior into the newly compiled compiler. The consequence is that the compiler’s own source code can be examined line by line, found to be entirely clean, and the compromise still persists invisibly, forever, in every future generation of binaries the compiler produces, because the actual malicious logic lives only in the compiled binary already doing the compiling, never in any source code a human could read. The accepted countermeasure, developed by David Wheeler and called Diverse Double-Compiling, works by bringing in a second, genuinely independent compiler, ideally sharing no code lineage with the one under suspicion, and using it to compile the first compiler’s source code, then checking whether the output matches, bit for bit, what the first compiler produces when compiling itself. A match is treated as strong evidence the tested compiler isn’t secretly perpetuating a hidden backdoor.
What Remains Undemonstrated
Here’s the precise, structural difference worth naming. The RNA World hypothesis dissolves its circularity by looking further back in time, within the very same evolutionary lineage — it proposes an earlier, common ancestor that unified what later became two seemingly separate, mutually dependent roles, requiring no appeal to anything genuinely outside the evolving system itself. The paradox disappears once you realize it was never truly a circular dependency between two independent things; it was one thing that later specialized into two. Thompson’s trusting-trust attack is, by careful design, specifically resistant to that exact kind of resolution. A compromised compiler reproduces its corruption identically at every single generation of self-compilation, with no earlier, “innocent” ancestor state anywhere in that particular compiler’s own history to appeal to — looking further back within the same lineage gets you nowhere, because the compromise, once inserted, propagates perfectly and indefinitely. Escaping it requires reaching for something genuinely external: an independently derived compiler from a separate lineage. And even that solution is explicitly, openly acknowledged by its own inventor and by subsequent researchers as incomplete rather than a true resolution — Diverse Double-Compiling still depends on the assumption that at least one genuinely trustworthy compiler exists somewhere to serve as the outside reference, and if that assumed-trustworthy compiler turns out to be compromised too, the entire check silently fails without anyone noticing. It’s worth noting the trusting-trust problem has also recently been shown to generalize well beyond compilers specifically, to any self-propagating build tool, including one demonstrated using an ordinary utility that doesn’t even parse source code at all — underscoring that this is a fully general hazard of self-referential build and replication chains, not a narrow compiler quirk, which is itself a point of real kinship with how biologists understand the genetic-code bootstrap problem: a fully general challenge facing any self-replicating information system, even though the two fields’ actual escape routes from that general problem take genuinely different logical shapes.
Why It Matters
That distinction is worth holding onto because it clarifies what kind of solution to reach for when you actually face one of these circularities. If a circularity can, in principle, be dissolved by tracing the system further back into its own history, uncovering a simpler, earlier common ancestor that unifies the seemingly separate dependent parts, that’s a genuinely different, and in some sense more satisfying, kind of resolution than one that requires permanently importing trust from an outside source that itself can never be fully, self-sufficiently verified. Biology got the first kind of answer. Computer security, dealing with an adversarial problem deliberately engineered to resist internal self-verification, has had to settle, so far, for the second, less final kind — one that pushes the trust problem outward rather than eliminating it.
Human Dimension
There’s something worth sitting with in the fact that one of these two great circularities turned out to have a real ending, a moment far enough back in deep evolutionary time where the two seemingly independent, mutually dependent inventions simply weren’t independent at all. The other one, built by a person specifically to demonstrate how thoroughly trust can be undermined from within a system, still doesn’t have that kind of ending. Computer scientists haven’t found an earlier, innocent ancestor to point to, because Thompson made sure none exists inside the system itself — and forty years later, the best available defense is still, at bottom, an honest admission that somewhere, you have to trust something you can’t fully verify.
Sources:
1. PMC (National Institutes of Health) — “Pseudo-Replication of [GADV]-Proteins and Origin of Life” — https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2680631/
2. Chemistry World — “RNA world hypothesis: how ribozymes reveal the chemical origins of life on Earth” — https://www.chemistryworld.com/features/how-rna-reveals-clues-to-lifes-origins-on-earth/4022833.article
3. Cold Spring Harbor Perspectives in Biology — “Evolution of Protein Synthesis from an RNA World” — https://cshperspectives.cshlp.org/content/4/4/a003681.full
4. EBSCO Research Starters — “RNA world” — https://www.ebsco.com/research-starters/history/rna-world
5. ScienceDirect — “The evolution of the genetic code: Impasses and challenges” — https://www.sciencedirect.com/science/article/abs/pii/S0303264717302769
6. PMC (National Institutes of Health) — “Ribosomal History Reveals Origins of Modern Protein Synthesis” — https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3299690/
7. Medium (Mina Fahim) — “Reflections on Trusting Trust and Diverse Double-Compilation approach” — https://medium.com/@minahff/reflections-on-trusting-trust-and-diverse-double-compilation-approach-2ecfc07d3b34
8. ResearchGate — “Fully Countering Trusting Trust through Diverse Double-Compiling” — https://www.researchgate.net/publication/245578769_Fully_Countering_Trusting_Trust_through_Diverse_Double-Compiling
9. arXiv — “Certified Compilation based on Gödel Numbers” — https://arxiv.org/pdf/2508.12054
10. dwheeler.com — “Fully Countering Trusting Trust through Diverse Double-Compiling (DDC)” — https://dwheeler.com/trusting-trust/
11. Schneier on Security — “Countering ‘Trusting Trust’” — https://www.schneier.com/blog/archives/2006/01/countering_trus.html
Idea originated at artificialideas.org. Article researched and written by Claude Sonnet 5. Published at artificialideas.org.