Damus
Max Hillebrand profile picture
Max Hillebrand

The Praxeology of Privacy ~ Chapter 15: Bitcoin: Resistance Money

Article header image

Bitcoin solves double-spending without trusted third parties. Sound money enforced by code. Base layer privacy requires additional tools like Lightning and coinjoin.

#The Praxeology of Privacy

"A purely peer-to-peer version of electronic cash would allow online payments to be sent directly from one party to another without going through a financial institution."

Satoshi Nakamoto^1^

Introduction

Digital money faced two fundamental problems that decades of cypherpunk research could not solve simultaneously. The double-spending problem demanded knowing which transaction came first, seemingly requiring a central authority. The base money problem meant that digital currencies were merely claims on issuers, not money proper, making them vulnerable when issuers failed or were shut down.

Satoshi Nakamoto's 2008 breakthrough synthesized prior innovations into a system that solves both problems at once. Bitcoin achieves sound money properties through code, not institutional promise, and combines them with resistance properties that enable the system to survive opposition. It is the first successful implementation of the Axiom of Resistance in monetary form.

This chapter traces the path from problem to solution: the twin challenges that defeated earlier attempts, the precursors that contributed crucial building blocks, and Nakamoto consensus that finally achieved decentralized digital money. It then examines Bitcoin's sound money properties, resistance characteristics, privacy limitations, and the layered solutions built atop the base protocol.

15.1 The Twin Problems of Digital Money

The Double-Spending Problem

Physical cash cannot be spent twice. When Alice hands Bob a gold coin, she no longer possesses it. The physical transfer is the transaction. Physical objects are inherently scarce; possession by one excludes possession by another.

Digital information lacks this property. As Chapter 6 established, information is non-rivalrous: copying a file does not remove the original. If digital cash were simply a file representing value, Alice could send Bob a copy while keeping the original, then send the same "cash" to Carol. The double-spending problem is fundamentally a scarcity problem: how can digital units be made rivalrous when digital information is inherently copyable?

Preventing double-spending requires establishing which transactions came first, thereby determining who possesses each unit. A database can record this, but who controls the database? Whoever controls the database can censor transactions, seize funds, or be compelled by authorities to do so. The problem seemed to require centralization.

The Base Money Problem

Even if double-spending could be solved, a second problem remained: what exactly is being transferred?

Previous digital currencies were money substitutes: claims against issuers rather than money proper. Users held account balances that companies promised to honor, not value itself. DigiCash balances were claims on DigiCash Inc. E-gold balances were claims on e-gold Ltd. These systems created digital IOUs, not digital money.

Money substitutes require trust in the issuer. Issuers can fail, be shut down, refuse redemption, or be compelled by authorities to freeze accounts. The distinction matters: when you hold a money substitute, you hold a promise; when you hold money proper, you hold the value directly. Physical gold in hand requires no backing because you possess the value itself. A paper note promising gold requires trust that someone will honor the promise.

Creating digital money proper, not merely digital promises, requires solving both problems simultaneously. A system must prevent double-spending without central control, and it must constitute base money rather than claims on an issuer. No system before Bitcoin achieved both.

15.2 Precursors and Their Failures

Bitcoin did not emerge from nothing. It synthesized prior cypherpunk innovations, learning from their successes and failures.^2,3^

DigiCash: Privacy and Double-Spending, Without Decentralization

David Chaum's DigiCash (1989-1998) achieved something remarkable: it solved double-spending while preserving privacy. Blind signatures allowed the issuing bank to detect and reject duplicate tokens without being able to link withdrawals to deposits. Users could make untraceable payments, and the bank could prevent double-spending. Both problems seemed to require contradictory information flows, yet Chaum's cryptography threaded the needle.

DigiCash failed on different grounds. It required a central server, creating a single point of failure that authorities could target. And it issued money substitutes: account balances were claims on DigiCash Inc., not money proper. When the company filed for bankruptcy in 1998, the system died with it. Chaum solved the cryptographic problem but not the institutional one.

E-gold: Backing Without Resistance

E-gold (1996-2009) attempted to create digital gold by maintaining physical gold reserves backing account balances. It attracted millions of users but remained a money substitute: account balances were claims on e-gold Ltd., not gold itself. The centralized structure made it vulnerable; US authorities eventually shut down the operation and prosecuted its founders. E-gold demonstrated that even commodity backing cannot substitute for decentralization.

Hashcash: Proof-of-Work as Access Control

Adam Back's Hashcash (1997) introduced proof-of-work: requiring computational effort to produce a token. Originally designed to prevent email spam, Hashcash tokens were genuine base money in one sense: the token itself, validated by its hash, constituted the value. No claim on an issuer, no trust in a third party.

But Hashcash was not money; it was an access control system. Tokens were bound to specific recipients by embedding the recipient's email address in the hashed data. Each mail server maintained its own database of tokens already seen, rejecting duplicates. This prevented reuse of tokens at a single server, but created no global scarcity. A token spent at one server had no effect on any other server. There was no shared ledger, no network-wide state.

Money requires global consensus: all participants must agree on which units exist and who owns them. Hashcash had only local verification. It demonstrated that computational work could create unforgeable tokens, but access rights are not money. The missing element was a shared, agreed-upon record of token ownership across all participants.

B-money and Bit Gold: The Inflation Problem

Wei Dai's B-money (1998) and Nick Szabo's Bit Gold (1998-2005) both proposed systems where proof-of-work directly created monetary units. In B-money, the value of one unit was meant to equal the computational cost of producing it. In Bit Gold, valid hashes were the monetary units themselves.

Both suffered from a fundamental flaw: as computing power increases, tokens become cheaper to produce. Szabo recognized this explicitly: "it might be possible to be a very low cost producer (by several orders of magnitude) and swamp the market with bit gold." His proposed solution was timestamping, so markets could value older hashes (harder to produce at the time) more than newer ones. But this destroys fungibility; not all units would be equal.

Neither solved the distributed consensus problem, and both remained theoretical. But their deepest issue was architectural: conflating proof-of-work with money creation. If work creates money, monetary policy depends on hardware economics.

The Missing Pieces

Each precursor solved part of the puzzle. DigiCash achieved privacy and solved double-spending, but required centralization and issued money substitutes. E-gold achieved commodity backing. Hashcash demonstrated unforgeable tokens through computational work, though as an access control system rather than money. B-money and Bit Gold articulated the architecture for decentralized digital money.

Two problems remained unsolved. First, none achieved decentralized consensus on a shared transaction history, the mechanism required to make digital units rivalrous without central control. Second, systems that used proof-of-work for money creation tied monetary policy to hardware economics, creating perpetual inflation as computing power grew.

Nakamoto solved both. His breakthrough was not merely achieving decentralized consensus on transaction ordering, but separating proof-of-work from money creation entirely.

15.3 Nakamoto Consensus

The Architecture

The problems are now clear. Double-spending requires global consensus on transaction ordering. Previous systems achieved this through central servers, which created single points of failure. Proof-of-work can create unforgeable tokens, but using it for money creation ties monetary policy to hardware economics. The challenge is to build a system where anyone can participate in ordering transactions, where no central authority exists to target, and where monetary policy remains fixed regardless of computational growth.

Bitcoin's architecture has three components working together: a distributed ledger that anyone can read, a block production mechanism that anyone can participate in, and consensus rules that every participant enforces independently. The ledger records transaction history. Block production extends the ledger. Consensus rules determine what extensions are valid.

Anyone can propose a block of transactions to append to the ledger. No permission is required; no single entity controls what gets recorded. But permissionless participation creates a problem: what prevents the system from being overwhelmed?

The Denial of Service Problem

If anyone can produce blocks without restriction, an attacker could flood the network. Each block must be downloaded, validated, and stored by every node. Even without malicious intent, if block production were free, rational participants would produce blocks constantly to collect fees and rewards. The network would drown in data.

This is not merely a bandwidth problem. Verification requires computational resources. Every transaction in every block must be checked: valid signatures, unspent inputs, correct amounts. If blocks arrive faster than nodes can verify them, nodes fall behind. If nodes cannot keep up, only those with exceptional resources can participate in verification. The system would centralize around whoever could afford the infrastructure, defeating its purpose.

A centralized system solves this trivially: the operator decides how many transactions to process. A decentralized system has no operator. The solution requires a throttling mechanism that emerges from the protocol itself, slowing block production without any authority deciding who may produce blocks or how often.

The target is roughly one block every ten minutes across the entire network, regardless of how many participants attempt to produce blocks. This rate is slow enough that ordinary hardware can verify all transactions, yet fast enough for practical use. The question is how to enforce this rate without a rate-limiter.

Proof-of-Work as Throttling

Proof-of-work provides the throttling mechanism. The insight comes from Hashcash: computational work that is difficult to produce but trivial to verify. Producing a valid block requires finding a specific kind of hash, which demands sustained computation. Verifying that someone found it requires a single hash operation, nearly instantaneous.

A block header contains metadata: the hash of the previous block, a hash of included transactions, a timestamp, and a nonce (a variable field the miner can change freely). To produce a valid block, a miner must find a nonce such that hashing the entire header produces a number below a difficulty threshold.

Cryptographic hash functions like SHA-256 produce output that is effectively random given the input. Changing even one bit of input produces an entirely different hash. No mathematical relationship exists between input and output that would allow predicting which inputs yield low hashes. The only way to find a suitable nonce is repeated trial: set a nonce, compute the hash, check if it meets the threshold, increment the nonce, repeat. Miners perform billions of these operations per second.

This process provably takes time. The difficulty threshold determines how many attempts are needed on average. If the threshold requires a hash starting with 20 zero bits, approximately one in a million hashes will qualify. Requiring 30 zero bits means approximately one in a billion. The work cannot be faked or shortcut; either the hash meets the threshold or it does not. Anyone can verify instantaneously by computing a single hash.

The asymmetry is crucial. Production is expensive; verification is cheap. This allows any node to validate blocks without trusting the miner, while making block production costly enough to throttle the rate.

Difficulty Adjustment

Proof-of-work throttles block production, but the throttle must adapt. If difficulty were fixed, increasing computational power would produce blocks faster, eventually overwhelming the network. Decreasing power would slow blocks to a crawl, making the system unusable. The system needs a feedback mechanism.

Every 2016 blocks (approximately two weeks at the target rate), the protocol recalculates difficulty. It compares the actual time elapsed since the previous adjustment to the expected time (2016 blocks times ten minutes). If blocks arrived faster than ten minutes on average, difficulty increases; the threshold lowers, requiring hashes with more leading zeros. If blocks arrived slower, difficulty decreases; the threshold rises, accepting hashes that would previously have been rejected.

The adjustment is bounded: difficulty cannot change by more than a factor of four in either direction per period. This prevents extreme oscillations if hash rate changes dramatically. The bounds also limit potential manipulation; miners cannot game timestamps to radically lower difficulty.

This mechanism makes Bitcoin self-regulating. When mining becomes more profitable (perhaps because price rises), more computational power enters the network. Blocks would arrive faster, but difficulty adjusts upward, restoring the ten-minute average. When profitability falls, miners exit; difficulty adjusts downward to compensate. The system finds equilibrium at whatever level of computational power the market provides.

The result is that increased hash rate produces more security, not more blocks and not more bitcoin. A network with ten times the hash rate is ten times more expensive to attack, but still produces blocks at the same rate with the same reward schedule. This decouples security from monetary policy, a property no predecessor achieved.

What Proof-of-Work Does Not Do

Proof-of-work does not create bitcoin. This distinction separates Bitcoin from its predecessors.

In B-money and Bit Gold, proof-of-work was supposed to create monetary units directly: the work itself was the money. This tied monetary policy to hardware economics. As computing power grew cheaper, money creation would accelerate indefinitely.

Bitcoin inverts this relationship. Proof-of-work throttles block production and orders transactions; it does not determine how much bitcoin exists. The block reward is defined by consensus rules that every full node validates, not by the amount of work performed. A miner who claims a larger reward produces an invalid block, regardless of how much work went into it. Difficulty adjustment ensures that increased computing power produces more security, not more bitcoin.

Monetary policy in Bitcoin is enforced by merchants running full nodes, not by miners performing work. Miners propose blocks; nodes accept or reject them according to fixed rules. This separation is why Bitcoin's supply schedule remains unchanged despite hash rate increasing by orders of magnitude since launch.

Fair Issuance Through Mining

If proof-of-work does not create bitcoin, how do new coins enter circulation? The answer reveals another role for mining: distribution mechanism.

Each valid block includes a coinbase transaction that creates new bitcoin according to a consensus-defined schedule. The initial reward was 50 BTC per block. Every 210,000 blocks (approximately four years), the reward halves: 25, then 12.5, then 6.25, then the current 3.125 BTC. This halving continues until approximately 2140, when the last fraction of a bitcoin is mined and the total supply reaches 21 million.

The miner who produces a valid block receives this reward. Since block production requires proof-of-work, and since anyone can attempt to mine, issuance operates as a continuous open lottery. Every ten minutes on average, the network awards new bitcoin to whoever finds the next valid block.

This mechanism has properties that most later monetary system do not achieved. New coins go to those who expend real resources securing the network, not to insiders, political favorites, or early investors. No premine allocated coins to founders before the network launched. No ICO sold tokens to speculators. No central authority decides who receives new issuance. The first block Satoshi mined followed the same rules as every subsequent block.

The contrast with alternatives is stark. Fiat currencies are issued by central banks to governments and politically connected institutions. Proof-of-stake systems reward existing holders proportionally to their holdings; the rich get richer by definition. Many cryptocurrencies launched with premines or insider allocations that enriched founders before public participation was possible.

Bitcoin's mining lottery ensures that anyone willing to expend resources can compete for new issuance. Geographic location does not matter. Political connections do not matter. Existing wealth provides no special claim. A miner in any jurisdiction, operating any scale of equipment, has a probability of winning proportional to their share of network hash rate. The playing field is not perfectly level, as industrial miners have economies of scale, but it is open. No permission is required to participate.

This transforms issuance from a political question into a market process. New bitcoin flows to those who provide the service the network needs: computational security. The work is not wasted; it simultaneously throttles block production, orders transactions, and distributes new coins to those who protect the ledger.

Chain Selection and Consensus

Bitcoin maintains a blockchain: an ordered sequence of blocks, each referencing the hash of its predecessor. The first block (the genesis block) has no predecessor; every subsequent block commits to the entire history before it. Changing any transaction in any historical block would change that block's hash, which would invalidate the reference in the next block, which would change its hash, cascading forward to the present. The structure makes history tamper-evident.

But tamper-evidence is not consensus. Multiple valid chains could exist. When a miner finds a valid block, they broadcast it to the network. Other miners, upon receiving it, face a choice: build on this block, or continue working on their current candidate. Network latency means different miners see different blocks at different times. Two miners might find valid blocks at nearly the same moment, each unaware of the other. The network temporarily has two valid chain tips.

This is not a bug; it is expected operation. The protocol specifies a resolution rule: nodes follow the chain with the most accumulated proof-of-work. When one branch gets extended before the other, the extended branch has more work. Miners abandon the shorter branch and build on the longer one. The abandoned block becomes orphaned; its transactions return to the mempool for inclusion in future blocks.

The rule means that transactions become more secure over time. A transaction in the most recent block could be displaced if that block is orphaned. A transaction buried under six blocks would require an attacker to produce a competing chain with more work than six blocks' worth, an increasingly expensive proposition. Deep transactions are practically irreversible.

This mechanism achieves consensus without voting, without predetermined validators, without central authority. The chain with most accumulated work represents network agreement on transaction order. Nakamoto called it a "proof-of-work chain" that serves as "proof of the sequence of events witnessed." Miners do not vote; they produce blocks. Nodes independently select the chain with most accumulated proof-of-work.

Why Miners Validate

Miners receive block rewards (newly created bitcoin) and transaction fees for producing valid blocks. But why do miners bother validating transactions and following protocol rules? They could produce blocks containing invalid transactions or claiming excess rewards. Nothing in proof-of-work itself prevents this; the hash function does not know whether the block contents are valid.

The answer lies in the economic structure, specifically in who defines what counts as bitcoin.^10^

Merchants who accept bitcoin run full nodes. A full node independently validates every transaction against protocol rules: correct signatures, unspent inputs, valid amounts, proper block reward. A node does not ask anyone whether a transaction is valid; it checks for itself. If a block violates any rule, the node rejects it. The proof-of-work is irrelevant; invalid blocks are discarded regardless of how much computation went into producing them.

Miners produce blocks, but merchants define money. A miner who produces an invalid block, whether claiming an inflated reward, including a double-spend, or violating any consensus rule, has wasted their computational resources. No merchant will accept payment from that block. The block reward exists only on a chain that no one recognizes. It cannot be spent because no one will accept it.

This creates the enforcement mechanism. Miners validate because merchants validate. The block reward and transaction fees are worthless unless merchants accept them as payment. Since merchants only accept bitcoin from the valid chain with most accumulated work, miners are economically compelled to produce valid blocks on that chain.

The relationship is subtle but crucial. Miners do not control Bitcoin; they serve it. A miner with 51% of hash power could theoretically reorganize recent history or censor transactions, but cannot change the rules. Attempting to claim a larger block reward, create coins from nothing, or spend coins they do not own would produce an invalid chain that merchants reject. Hash power without validity is worthless.

This structure inverts common intuitions. Security does not come from miners being trustworthy; it comes from merchants being vigilant. Every merchant running a full node is an enforcement point. The more merchants validate independently, the more robust the system. Those who do not validate, who trust someone else's node, have delegated their enforcement power and depend on that delegate's honesty.

15.4 Sound Money Properties in Code

Chapter 9 established the properties that sound money requires. Bitcoin exhibits these properties, enforced through code rather than institutional promise.

Fixed Supply Cap

Bitcoin's supply is capped at 21 million coins. This is enforced by code that every full node validates. Transactions creating coins beyond the schedule are invalid and rejected by the network.

This supply cap is immutable and verifiable. Unlike physical gold (where new deposits can be discovered) or fiat currency (where central banks can print), no entity can increase Bitcoin's supply. Because solving double-spending makes bitcoin units rivalrous (one person's possession excludes another's), property rights can apply to this digital asset. The cap is enforced by consensus rules, not political decisions.

Predictable Issuance

The halving schedule described above means the entire supply curve is known in advance. Anyone can calculate future supply at any date. No surprises, no emergency measures, no policy decisions. Monetary policy is transparent and immutable, embedded in code rather than subject to human discretion.

Divisibility

Bitcoin is divisible to eight decimal places. The smallest unit, one hundred-millionth of a bitcoin, is called a satoshi. This enables transactions of any practical size, from micropayments to large settlements.

This divisibility has already increased. The original software displayed only two decimal places; the shift to eight occurred early in Bitcoin's history as the need for smaller units became apparent. If future adoption requires further subdivision, the protocol can accommodate additional decimal places through consensus change. Divisibility is a parameter, not a fixed constraint.

No physical cutting or melting is required. A single bitcoin can be divided into 100 million satoshis without losing value or requiring trust in a third party. This exceeds the divisibility of any physical commodity.

Portability

Bitcoin can be transferred anywhere on earth with network connectivity. Value crosses borders without physical transport, customs inspection, or confiscation risk at checkpoints.

A private key, representing control over any amount of bitcoin, can be memorized, stored on a device, or encoded in various formats. Carrying a billion dollars in gold requires trucks and guards; carrying a billion dollars in bitcoin requires remembering twelve words.

Durability

Bitcoin does not decay. Units created in 2009 remain identical to units created today. There are no storage costs for the asset itself, though maintaining secure access to private keys requires care.

The ledger is replicated across thousands of nodes worldwide. Individual storage media fail, but the network maintains redundant copies. This replication protects against data loss at the network level, though individual users can still lose access to their coins through lost keys, forgotten passwords, or destroyed backups. Gold and bitcoin share this vulnerability: both can be lost through carelessness or disaster. Bitcoin's durability advantage over physical currency is clearer; paper money degrades, coins corrode, but bitcoin units remain cryptographically intact indefinitely.

Verifiability

Anyone running a full node can verify the entire monetary history. Unlike gold, which requires assay, or banknotes, which require specialized equipment to detect counterfeits, bitcoin authenticity is cryptographically certain. A valid transaction either satisfies the protocol rules or it does not; no judgment or expertise is required beyond running the software.

This verification extends to supply. Any participant can independently confirm that total supply follows the schedule. No central authority's statement must be trusted. The ledger itself is the proof.

Fungibility Challenges

Sound money requires that units be interchangeable. A dollar is a dollar regardless of its history. Gold bars are fungible; one ounce equals any other ounce of the same purity.

Bitcoin's transparent blockchain creates fungibility challenges. Every transaction is recorded; every unit has a traceable history. Some exchanges and services reject coins with histories involving sanctioned addresses, darknet markets, or ransomware payments. If units are not interchangeable due to their history, fungibility is compromised.

This is a genuine limitation of base layer Bitcoin. Later sections examine privacy tools (CoinJoin, PayJoin, Lightning, ecash) that address fungibility by breaking the links that enable discrimination.

How Code Enforces Soundness

Traditional monetary soundness depends on institutional promises. Central banks promise stable policy; they often break promises. Gold standards promise convertibility; governments suspend convertibility.

Bitcoin's soundness is enforced by code that every participant runs. Full nodes validate every transaction against protocol rules. Invalid transactions (including those violating supply limits) are rejected automatically. No human decision is required; no human can override the rules without convincing network participants to run different software.

The system is not "trustless" in the sense of requiring no trust. Users trust that the software correctly implements the protocol and that most nodes run compatible software. But this trust is verifiable: anyone can read the code, run their own node, and verify enforcement themselves.

Bitcoin and the Regression Theorem

Chapter 9 presented the regression theorem and the questions it raises for novel moneys. Here we apply that framework directly to Bitcoin.

The problem appears straightforward: Mises demonstrated that money's current value traces back through prior valuations to a time when the money commodity was valued for non-monetary use. Gold was ornament before it was money. But Bitcoin was designed as money from the start. Does it violate the theorem?

The resolution lies in the subjective theory of value itself. The theorem requires that first valuers had reasons for valuing; it does not specify what kinds of reasons qualify. Early Bitcoin adopters valued it for various reasons: ideological commitment to cypherpunk goals, technical fascination with the cryptographic innovation, speculative anticipation of future adoption, or practical desire for censorship-resistant transactions. Each of these is a subjective valuation. Praxeology provides no basis for declaring some valuations legitimate and others illegitimate.

Bitcoin's original utility was real: it enabled permissionless, censorship-resistant transactions that no other system could provide. This utility is distinct from monetary use; one could value Bitcoin for this capability without expecting it to become generally accepted money. The first exchange of bitcoin for dollars (10,000 BTC for two pizzas in May 2010) established a market price based on these prior subjective valuations. From that point, the regression chain operates normally.

The theorem's core insight is that money emerges through market process, not decree. Bitcoin validates this insight more purely than any historical example. No legal tender law compelled acceptance. No government backing supported it. No commodity convertibility anchored it. Market participants adopted bitcoin because they valued its properties, and that voluntary adoption produced monetary status. The emergence demonstrates that the theorem explains how money typically develops; it does not restrict which goods can become money.^9^

15.5 Resistance Properties: Why Bitcoin Survives

Decentralization Prevents Single-Point Shutdown

Bitcoin has no headquarters, no CEO, no server to seize. The network consists of thousands of nodes worldwide, each independently validating transactions. Eliminating Bitcoin would require shutting down all nodes simultaneously across every jurisdiction.

Previous digital currencies failed because authorities could target central points. Bitcoin's distributed architecture eliminates such targets.

Global Distribution

Bitcoin nodes operate in every major country. Mining occurs across continents. Development happens across jurisdictions. This geographic distribution means no single government controls the network.

Even concerted multinational action faces coordination problems. Different governments have different interests. While some jurisdictions restrict Bitcoin, others embrace it. The network routes around restrictions.

Network-Level Attack Vectors

Decentralization does not eliminate all attack vectors. Network-level attacks can disrupt Bitcoin without targeting individual nodes.^11^

BGP hijacking allows autonomous systems to divert Bitcoin traffic by announcing false routing information. Research has demonstrated that hijacking fewer than 900 IP prefixes could partition significant portions of the network. An ISP carrying Bitcoin traffic can delay block propagation by 20 minutes while remaining undetected. Such attacks can cause chain splits, double-spending opportunities during the partition, and loss of mining revenue when orphaned blocks are discarded after the attack ends.

Eclipse attacks target individual nodes by monopolizing their peer connections, isolating them from the honest network. The original eclipse attack research (2015) prompted significant improvements in Bitcoin Core's peer selection and connection handling. Current versions implement multiple mitigations: diverse outbound connections across different network groups, anchors that persist across restarts, and detection of suspicious peer behavior. The specific attacks described in early research are largely mitigated, though the attack class remains a concern that ongoing development continues to address.

DNS-based attacks can disrupt node discovery, and ISP-level blocking can impair operation in specific jurisdictions. China's 2021 mining ban significantly impacted mining geography, demonstrating that jurisdictional action can affect the network even without eliminating it entirely.

These attacks illustrate the distinction between implementation vulnerabilities and structural constraints. Implementation vulnerabilities (specific eclipse attack vectors, peer selection weaknesses) are addressed through ongoing Bitcoin Core development; the project maintains active security review and regularly releases updates. Structural constraints (reliance on internet routing infrastructure, BGP vulnerabilities) cannot be fully eliminated at the application layer, though mitigations like Tor usage and diverse connectivity help. Nodes can use Tor to hide their IP addresses, reducing exposure to some network-level attacks.

Mining Concentration

While Bitcoin's protocol is decentralized, mining has concentrated in practice. Mining pools coordinate hash power from many individual miners, and a small number of pools control the majority of hash rate. As of recent measurements, the top five pools often control over 70% of hash power.

This concentration creates potential vulnerabilities. Pool operators could theoretically censor transactions or coordinate attacks. However, individual miners can switch pools at low cost, and pools that behave maliciously would likely lose miners to competitors. The concentration is in coordination, not in hash power ownership; the underlying mining operations remain distributed among many independent operators who merely point their hash power at pools.

The distinction matters: pools cannot steal funds or rewrite history without controlling the actual mining hardware. But the concentration does mean that pool operators represent a smaller set of actors who could be pressured or compromised. This is a practical deviation from the theoretical ideal of fully distributed mining.

Economic Incentives for Defense

Miners have invested billions in equipment and infrastructure. This investment is worthless if Bitcoin fails. Miners therefore have strong incentives to defend the network against attacks.

Similarly, holders of bitcoin have incentives to support network health. Running nodes, advocating for Bitcoin, and resisting attacks all serve holder interests.

Axiom of Resistance Demonstrated Empirically

Bitcoin demonstrates the Axiom of Resistance empirically. The network has survived repeated government crackdowns in various countries, bans in some jurisdictions, multiple exchange failures and hacks, sustained negative media coverage, technical attacks on the network, and regulatory uncertainty and hostile legislation.

Since launch, Bitcoin has continued producing blocks approximately every 10 minutes without interruption. The hash rate (computational security) has increased by orders of magnitude. This empirical track record validates the resistance properties that theory predicts.

15.6 Programmable Money: Script Primitives

Bitcoin Script

Bitcoin transactions are not simply transfers from one address to another. Each transaction output contains a script specifying conditions that must be satisfied to spend it. This programmability enables sophisticated constructions beyond basic payments.

Bitcoin Script is intentionally limited. It is not Turing-complete; it cannot loop indefinitely or access external state. These limitations are features, not bugs. They make scripts predictable, auditable, and safe from infinite execution attacks. The constraints channel programmability toward financial primitives, not general computation.

Multisignature

Multisignature (multisig) scripts require multiple keys to authorize spending. A 2-of-3 multisig requires any two of three designated keys. This enables shared control without trusting any single party completely.

Applications include corporate treasury management (multiple executives must approve large transfers), inheritance planning (family members share control with attorneys), exchange security (hot wallet operations require multiple employee signatures), and escrow arrangements (buyer, seller, and arbitrator each hold keys; any two can release funds).

Multisig transforms Bitcoin from individual bearer asset to programmable shared custody without introducing trusted intermediaries.

Timelocks

Timelocks prevent spending until specified conditions are met. Two types exist:

Absolute timelocks (CLTV, CheckLockTimeVerify) prevent spending until a specific block height or timestamp. A transaction locked until block 900,000 cannot be spent before that block, regardless of who holds the keys.

Relative timelocks (CSV, CheckSequenceVerify) prevent spending until a specified time has elapsed since the output was created. An output locked for 144 blocks cannot be spent until 144 blocks (approximately one day) after its creation.

Timelocks enable time-delayed transactions, vesting schedules, and critically, the revocation mechanisms that make payment channels secure.

Hash Locks

Hash locks require revealing a secret value (preimage) whose hash matches a specified hash. The script contains a hash; spending requires providing the preimage.

This seems simple but enables powerful constructions. If Alice wants to pay Carol but has no direct channel, she can route through Bob using hash locks: Alice pays Bob conditional on Bob revealing a secret that only Carol knows. Bob pays Carol the same way. When Carol reveals the secret to claim her payment from Bob, Bob learns the secret and can claim his payment from Alice. The payment atomically succeeds or fails across the entire path.

Hash Time-Locked Contracts (HTLCs)

Combining hash locks with timelocks creates Hash Time-Locked Contracts (HTLCs). An HTLC can be spent in two ways: by revealing the hash preimage (success path), or after a timeout expires (refund path).

HTLCs are the foundation of the Lightning Network. They enable trustless multi-hop payments: either the payment completes across all hops when the final recipient reveals the preimage, or all participants recover their funds after timeout. No intermediate routing node can steal funds or block payments indefinitely.

Why These Primitives Matter

These primitives transform Bitcoin from simple digital gold into programmable money. Multisig enables shared control without trusted custodians. Timelocks enable time-based conditions without trusted schedulers. Hash locks enable conditional payments without trusted escrow. HTLCs enable trustless payment routing across multiple hops.

Each primitive removes a category of trusted intermediary. Together, they enable Layer 2 systems like Lightning that inherit Bitcoin's security while adding speed, privacy, and scalability.

15.7 Privacy Limitations of Base Layer

Public Blockchain

Bitcoin's blockchain is public. Every transaction ever made is visible to anyone. Transaction amounts, addresses involved, and timing are all recorded permanently.

This transparency enables trustless verification but undermines privacy. Anyone can analyze the blockchain to extract information about users.

Address Clustering

Blockchain analysis techniques cluster addresses belonging to the same user. When multiple inputs fund a transaction, they likely belong to the same entity. When change returns to an address, it reveals connection to the sender.

Companies specialize in blockchain analysis, building databases linking addresses to identities. Exchanges report user identities under KYC requirements, providing anchors that analysis extends through the graph.

Chain Analysis Threats

Chain analysis can reveal total holdings when addresses are linked, transaction counterparties, spending patterns and timing, and approximate location (through timing and exchange usage).

This analysis serves both law enforcement and surveillance. While Bitcoin is pseudonymous (addresses, not names), it is not anonymous. Determined analysis can often identify users.

What Base Layer Does Not Provide

Bitcoin's base layer does not provide transaction confidentiality (amounts are visible), sender/receiver unlinkability (addresses are visible), denial that a transaction occurred (all transactions are public), or protection from chain analysis (patterns are analyzable).

Privacy on Bitcoin requires additional tools and techniques.

15.8 Privacy Solutions: CoinJoin and PayJoin

CoinJoin: Collaborative Coinjoining

CoinJoin combines inputs from multiple users into a single transaction with multiple outputs.^4^ Participants are not paying each other; each person sends funds to themselves. The privacy gain comes from breaking the link between inputs and outputs: if Alice, Bob, and Carol each contribute one input and each receive one output of equal size, an observer cannot determine which output belongs to which participant.

CoinJoin requires coordination between participants. Two main approaches have emerged.

JoinMarket, the earlier implementation, uses market-based coordination: "takers" initiate CoinJoin rounds and pay "makers" for liquidity. Each taker acts as coordinator for their own transaction, distributing coordination across many participants rather than centralizing it in a single service. Takers must run more complex software and pay for participation, but no external coordinator can be shut down.

Wasabi Wallet improves on JoinMarket with cryptographic blinding (WabiSabi), ensuring the coordinator cannot link inputs to outputs even though it coordinates the transaction. Because the coordinator is cryptographically prevented from learning the mapping, users can safely aggregate at a single coordinator without trusting it with sensitive information. This aggregation produces much larger transactions with higher anonymity sets than JoinMarket's distributed model typically achieves. The tradeoff is that static coordinators present censorship challenges: a coordinator can be taken offline through legal pressure or technical attack. However, the WabiSabi protocol is open; anyone can run a coordinator, and multiple coordinators can operate simultaneously. When Wasabi's original coordinator ceased operation due to regulatory pressure, users migrated to alternative coordinators with minimal disruption, demonstrating resilience through decentralized coordination rather than single-point dependency.

Both approaches support making payments within a CoinJoin, combining the privacy benefits of coinjoining with actual value transfer.

PayJoin: Payment-Integrated Coinjoining

PayJoin is designed explicitly for payment transactions. Instead of Alice sending Bob a payment in a simple transaction, both Alice and Bob contribute inputs. The result looks like an ordinary payment, not a CoinJoin.

PayJoin operates on a fundamentally different privacy model than CoinJoin. Rather than creating anonymity through mixing with other users, PayJoin is steganographic: it makes privacy-enhancing transactions indistinguishable from ordinary transactions. CoinJoin's equal-amount outputs create an obvious fingerprint on the blockchain; PayJoin transactions look like any normal payment.

The privacy benefit is structural. PayJoin breaks the common input ownership heuristic, the assumption that all inputs in a transaction belong to a single entity. Chain analysis depends heavily on this heuristic. When PayJoin transactions are indistinguishable from regular transactions, analysts cannot know which transactions violate the heuristic, degrading the reliability of clustering analysis across all transactions, not just PayJoin ones. Wider PayJoin adoption thus improves privacy for the entire network by introducing uncertainty into chain analysis assumptions.

Limitations

CoinJoin and PayJoin improve privacy but have distinct limitations. For CoinJoin, effective mixing requires other participants, and small anonymity sets provide weak protection. Repeated coinjoining creates patterns that timing analysis can potentially exploit. Unequal amounts can be linked through intersection analysis.

PayJoin's limitations differ. It requires interactive coordination between sender and receiver, adding friction to the payment process. Both parties must be online simultaneously. Adoption remains limited, though PayJoin's steganographic nature means even modest adoption introduces uncertainty into chain analysis.

Both tools require users to understand and correctly apply them, adding implementation complexity.

15.9 Layer 2: Lightning Network

Off-Chain Payment Channels

The Lightning Network enables off-chain transactions through payment channels.^5^ Two parties lock bitcoin in a multisignature address, then exchange signed transactions updating the balance without broadcasting to the blockchain.

Channels can be linked: Alice pays Carol through Bob if channels exist between Alice-Bob and Bob-Carol. This routing enables payments between parties without direct channels.

Instant Finality

Bitcoin's base layer confirmation time is probabilistic and slow. Transactions are included in blocks approximately every ten minutes on average, but actual intervals vary widely. A transaction might confirm in two minutes or forty. Even after inclusion, prudent recipients wait for additional confirmations, often an hour or more for significant amounts, since recent blocks can be reorganized.

Lightning eliminates this uncertainty. When a Lightning payment completes, it is final immediately. The recipient holds a valid, signed commitment transaction that they can broadcast to claim their funds at any time. No waiting for confirmations. No probability calculations. No block timing variance.

This transforms Bitcoin's usability. Point-of-sale transactions become practical: a customer pays, the merchant sees instant confirmation, the transaction concludes. Micropayments become viable: paying fractions of a cent for individual API calls or content access works only if payment overhead is negligible. Machine-to-machine payments become possible: automated systems can exchange value in milliseconds.

The finality is cryptographic, not probabilistic. Lightning payments settle through HTLC resolution: either the recipient reveals the preimage and the payment succeeds across all hops atomically, or timeouts expire and funds return to senders. No intermediate state exists where the payment might or might not have occurred.

Privacy Properties

Lightning offers privacy properties that the base layer lacks:

Payments within channels are invisible on the blockchain; only channel opening and closing transactions are recorded. Payment routing uses onion encryption, so intermediate nodes know only their predecessor and successor, not the payment's origin or destination. Channel capacities are public, but the balance between the two channel parties is private.

Channel Graph Privacy Model

The channel graph (which nodes have channels with which other nodes) is public. This reveals some network structure. Payment paths through the graph are private. Routing nodes do see the amount passing through them, but payments can be split across multiple paths through different nodes, so no single routing node necessarily sees the full payment amount.

This creates a different privacy model than base layer Bitcoin. Network topology is visible; actual usage is not.

Privacy Limitations

Lightning's privacy properties are weaker than they might appear.^12^

Balance discovery through probing is a significant vulnerability. An adversary can send probe payments through target channels, observing which amounts succeed and fail. Research has shown this takes under a minute per channel with no cost to the attacker, since probes are designed to fail. Through systematic probing, adversaries can discover the balance distribution in any channel they can route through.

Routing nodes observe payment amounts passing through them. While onion routing hides the payment's origin and destination, intermediate nodes see values. A routing node that appears in many paths gains statistical information about network payment flows.

Lightning Service Providers (LSPs) present particular privacy concerns. Many mobile wallets connect to a single LSP for channel management and routing. The LSP learns the user's node identity, network address, and potentially all payment activity if payments route through the LSP's node. This reintroduces the trusted third party that Bitcoin was designed to eliminate.

On-chain anchor transactions link Lightning activity to base layer transactions. Channel opens and closes are public; clustering analysis can connect these to other user transactions. Force-close transactions reveal channel states at closure time.

Cross-layer deanonymization research has demonstrated that combining on-chain and Lightning data can link 43.7% of Lightning nodes to associated Bitcoin addresses.^13^ The interaction between layers creates information leakage that neither layer alone would reveal.

Limitations and Current State

Lightning has operational limitations beyond privacy. Channels require locked capital, and receiving capacity requires counterparties to lock funds. Receiving payments requires online presence or watchtower services. Optimal operation requires managing liquidity across channels. Large payments may fail to find paths with sufficient liquidity.

Privacy improvements are actively being developed and deployed. Route blinding (BOLT 12) allows recipients to hide their node identity and channels from payers. Payment splitting across paths reduces information available to any single routing node. Trampoline routing can hide sender information from intermediate nodes. The Lightning protocol undergoes continuous development with regular specification updates; many privacy concerns identified by researchers are being addressed through protocol improvements, though some (like balance probing) remain structural challenges inherent to the routing discovery process. Lightning remains developing technology; privacy properties depend on implementation details, network conditions, and which protocol features users adopt.

15.10 Ecash and Chaumian Mints

Chaumian Ecash Applied to Bitcoin

David Chaum's blind signature scheme enables anonymous digital tokens.^6^ A mint signs tokens without seeing their serial numbers; users can spend tokens without the mint linking spending to issuance.

Applied to Bitcoin: users deposit bitcoin with a mint, receive blind-signed ecash tokens, and spend tokens anonymously. The mint cannot link deposits to withdrawals.

Cashu: Single-Operator Mints

Cashu implements ecash with single-operator mints.^7^ Users accept trust in the mint operator in exchange for simpler setup and operation. Various Cashu mints explore different trust models, user interfaces, and integration approaches.

Fedimint: Federated Custody

Fedimint implements ecash with federated custody.^8^ Multiple guardians jointly control deposited bitcoin using threshold signatures. No single guardian can steal funds; a threshold must cooperate.

This distributes trust among multiple parties instead of concentrating it in a single mint operator. Users gain ecash privacy while reducing single-point-of-failure risk.

Trust Tradeoffs in Custodial Models

Ecash systems improve transaction privacy but introduce custody risk. Users deposit real bitcoin and receive ecash tokens; they must trust that operators will honor redemptions.

The classic tradeoff between privacy and trust operates here. Base layer Bitcoin is non-custodial but transparent. Lightning preserves unilateral exit: users can always reclaim their funds on-chain without counterparty cooperation. Ecash offers no such guarantee; if the mint goes offline, deposited bitcoin cannot be redeemed. Ecash functions as a money substitute, not a layer. Users gain privacy but surrender custody and unilateral exit.

Federated models reduce but do not eliminate trust. Users trust that a threshold of guardians will not collude. This is weaker trust than trusting a single operator but stronger than the trustlessness of self-custody.

Chapter Summary

Bitcoin solves the double-spending problem through proof-of-work consensus, enabling digital money without trusted third parties. This breakthrough synthesized decades of cypherpunk research, including Hashcash, B-money, and Bit Gold, into a working system.

Sound money properties are enforced by code. Fixed supply (21 million), predictable issuance, and transparent monetary policy are validated by every full node. No entity can change these properties without network-wide consensus.

Resistance properties enable Bitcoin's survival. Decentralization eliminates single points of failure. Global distribution across jurisdictions prevents coordinated shutdown. Economic incentives align participants with network defense. Empirically, Bitcoin has survived attacks, bans, and crises while continuing to produce blocks without interruption since 2009.

Base layer Bitcoin has privacy limitations. Public blockchain, address clustering, and chain analysis create transparency that enables surveillance. Privacy requires additional tools: CoinJoin and PayJoin provide coinjoining at the transaction level; Lightning Network provides payment privacy through off-chain channels; ecash mints provide transaction privacy through custodial systems with various trust models.

Bitcoin demonstrates resistance money in practice: sound money properties combined with the ability to survive opposition. This combination, impossible with previous monetary technologies, enables monetary sovereignty independent of state permission.


Footnotes

^1^ Satoshi Nakamoto, "Bitcoin: A Peer-to-Peer Electronic Cash System" (2008), available at https://bitcoin.org/bitcoin.pdf.

^2^ For history of digital cash attempts, see Arvind Narayanan et al., Bitcoin and Cryptocurrency Technologies (Princeton: Princeton University Press, 2016), chapter 1.

^3^ For precursor systems, see Adam Back, "Hashcash: A Denial of Service Counter-Measure" (2002); Wei Dai, "b-money" (1998); Nick Szabo, "Bit Gold" (2005). All available at https://nakamotoinstitute.org/.

^4^ Gregory Maxwell, "CoinJoin: Bitcoin Privacy for the Real World," Bitcoin Forum post (2013).

^5^ Joseph Poon and Thaddeus Dryja, "The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments" (2016).

^6^ David Chaum, "Blind Signatures for Untraceable Payments," Advances in Cryptology - CRYPTO '82 (1983): 199-203.

^7^ For Cashu, see https://cashu.space/.

^8^ For Fedimint, see https://fedimint.org/.

^9^ For regression theorem discussions applied to Bitcoin, see Peter Šurda, "Economics of Bitcoin" (2012); Konrad Graf, "On the Origins of Bitcoin" (2013); Eric Voskuil, "Regression Fallacy," Cryptoeconomics (2020).

^10^ On the economic relationship between merchants and miners, see Eric Voskuil, "Qualitative Security Model," Cryptoeconomics (2020), available at https://github.com/libbitcoin/libbitcoin-system/wiki/Qualitative-Security-Model. Voskuil emphasizes that individuals who do not personally validate have delegated validation to a central authority, undermining the security model.

^11^ On BGP hijacking and network-level attacks against Bitcoin, see Maria Apostolaki et al., "Hijacking Bitcoin: Routing Attacks on Cryptocurrencies," IEEE Symposium on Security and Privacy (2017). For eclipse attacks, see Ethan Heilman et al., "Eclipse Attacks on Bitcoin's Peer-to-Peer Network," USENIX Security (2015). For the stealthier EREBUS attack, see Muoi Tran et al., "A Stealthier Partitioning Attack against Bitcoin Peer-to-Peer Network," IEEE S&P (2020).

^12^ On Lightning privacy limitations, see Sergei Tikhomirov et al., "An Empirical Analysis of Privacy in the Lightning Network," Financial Cryptography (2021); Nishanth Chandran et al., "On the Difficulty of Hiding the Balance of Lightning Network Channels," IACR ePrint (2019).

^13^ Matteo Romiti et al., "Cross-Layer Deanonymization Methods in the Lightning Protocol," Financial Cryptography (2021). The research demonstrated clustering heuristics linking Lightning nodes to Bitcoin addresses through shared naming, hosting information, and on-chain interactions.


Precious chapter: nostr:naddr1qqgrydphv9nrgcfcxg6ryvrzx56kzq3qklkk3vrzme455yh9rl2jshq7rc8dpegj3ndf82c3ks2sk40dxt7qxpqqqp65wsc2nyl

Next Chapter: nostr:naddr1qqgrjd33vvcxyv3kvyurydfexscrgq3qklkk3vrzme455yh9rl2jshq7rc8dpegj3ndf82c3ks2sk40dxt7qxpqqqp65wr064rz