BandwidthSwap

A bandwidth market where the payment is the proof.

Field notes · Oct 2026

Field notes

The Receipt Is the Proof

October 17, 2026 · about 6 minutes · what the protocol pays for, what it refuses to pay for, and what three computers on a bench showed

What a network rewards is what it becomes

Every protocol is a job offer. It names one thing it will pay for, and the network that grows around it is the network of people doing that thing, whatever the authors hoped the thing would be.

The 2021 version of Bandwidth Swap offered to pay for a report. Once a minute each node told a validator its uptime and its available bandwidth, and the validator wrote the report down. It would have built a network of nodes that were very good at reporting. Not one byte had to move for a node to be paid, and no customer had to want it to.

That is the trap most "proof of" networks fall into. Proof of storage can be faked by a disk that answers challenges and holds nothing else. Proof of coverage can be faked by a radio in a closet. The faking is not a bug in the code. It is the code working as written, paying for the thing it measures instead of the thing it wants.

So the 2026 revision asks a narrower question. Not "is this node up?" but "did someone who could not be fooled pay for bytes that arrived?" Everything the protocol rewards, and everything it refuses to, follows from that one sentence.

It pays for exactly one thing

A relay earns a share of a settled fee, and nothing else. A fee settles when the person who paid for the bytes and the relay that carried them have both signed for how many crossed, and a Mint, which is a bookkeeper and not a judge, has written the window down.

Here is a window as it runs in the lab today. At the top of every hour the payer reads how many bytes went through the tunnel, signs a receipt for them, and asks the relay to acknowledge. The relay checks the signature, checks the payer's clock, and countersigns with its own count. Both copies go to the Mint. If the two counts are within one percent, the window settles. If they are not, the Mint records a dispute and settles anyway, at the smaller count. Nobody is asked who is right. The smaller number is paid, because each side can only lower the number the other side gets, and neither gains by doing it.

Three things fall out of that rule that the 2021 design could not have:

The paper's phrase for this is that the payment is the proof. Delivery, demand and quality, the three questions any bandwidth network has to answer, collapse into one receipt from one party who had no reason to lie.

What it refuses to pay for

The cleverness is less in what the protocol pays than in what it makes unprofitable. Each of these is a way to earn without serving a customer, and each costs more than it returns.

Paying yourself. The obvious attack on a network that pays for traffic is to run both ends and send traffic to yourself all day. Bandwidth Swap makes that a loss by burning five percent of every fee. An operator who runs the payer, the relay and the Mint still loses five cents of every dollar it pays itself, and no rule anywhere pays it more than a dollar back. The paper states the condition in one line: no reward may exceed the fee that produced it, and no subsidy may exceed the burn.

Claiming more than was paid for. A relay that signs for more than the payer signed for is paid for the payer's number and marked as disputed. There is no upside to the lie, and there is a record of it.

Declining, dropping, or going quiet. A relay that refuses a receipt loses that window; the payer's count governs it. A relay that accepts a payload and does not forward it is never paid for it. A relay that is offline earns nothing, which is not a punishment, only the absence of a customer.

Appearing to exist. Uptime, capacity, a big antenna in a closet: none of it earns, because none of it produces a receipt. The 2021 design would have paid for the appearance of a network. This one cannot see appearances.

Lying as the bookkeeper. A Mint publishes what it settled as a Merkle commitment. Anyone holding a receipt can prove it was included or left out, and a Mint caught altering one forfeits more of its bond than it earned for the summary. The Mint is modeled on the notary in Open-Transactions, where the client holds the signed receipt and the server's word counts for nothing against it.

And then the subsidy. Every network like this wants to pay people to build links that do not exist yet, which is exactly the door through which the appearance of a network walks back in. So the treasury here never hands out a bonus. It buys bandwidth on a link it wants to exist, matching what paying users have already bought there, and never by more than the burn collected. That bounds the bonus hard, and the paper admits it may bound it to the point of uselessness. More on that below.

Three computers on a bench

The receipt mechanism has run on real hardware since October 16, 2026: three Raspberry Pi 3 boards on one home network, a gateway that pays, a relay that carries, and a Mint that keeps the ledger. The code is public and small, one Python file for all three roles.

On the first day, three tests were forced by resetting a byte counter on one side so that the two signed counts would disagree.

TestPayer signedRelay signedMint wrote
Relay under-claims (its counter reset)21,945,428 bytes1,712 bytesDisputed, settled at 1,712
Relay over-claims (payer's counter reset)272 bytes21,947,428 bytesDisputed, settled at 272
Relay's clock stepped 10 seconds2,160 bytesDeclined, then 5,040Receipt declined; next window settled at 2,160

In every case the Mint resolved the window from the two signed receipts alone, with no measurement of its own. The over-claim is the one worth staring at: a relay that said it carried twenty-two megabytes was paid for 272 bytes, because 272 is what the payer signed for. The clock test is the quiet one: a relay five seconds out of step is declined, the window is lost, and nothing is paid. Synchronized, the three clocks agree within a millisecond; left alone, the fastest would drift past the tolerance in about a week.

None of this is a network yet. It is one person operating three machines that are not trusted to agree, and showing that they settle anyway. That is the part a whitepaper cannot show on paper.

What it cannot prove yet

The paper lists its own gaps, and the biggest is the bonus. With the subsidy capped at the burn, the most the treasury can add to a link is five cents on every dollar users pay across it. Whether that moves anyone to string a radio across a valley is unknown. The alternatives, grants from a treasury that does not depend on traffic, or a cap lifted by charging for identity instead of counting fees, each give back some of the protection. A simulation of one operator playing every role decides it.

The second gap is the customer. The pilot's use case is site-to-site backhaul between places that already overbuy capacity, chosen because the authors can supply both sides of it. Whether anyone picks this over a carrier contract or a satellite is a question only paying traffic answers.

Then the ordinary unknowns of a system with one hop and one operator: whether a Mint can verify a chain of receipts without learning the route, which settlement layer to use when a stranger joins, and what clocks do between sites instead of across a desk. The next step is a radio link between the house and the trees, and a test the paper names in its introduction: cut the house's internet mid-window and show the window still settles when it returns. After that, a second operator who is not one of the authors.

A protocol is its incentives

Strip away the terms and Bandwidth Swap is a rule about who gets paid: the party that carried bytes someone who could not be fooled paid for, and no one else. Every other mechanism in the paper, the burn, the smaller-count rule, the Merkle summaries, the clock tolerance, exists to make faking that one receipt cost more than it returns.

It is a modest claim next to the 2021 paper's, and the modesty is what makes it testable. The paper, the open questions and the live state of the three nodes are on this site, and the code is at github.com/bandwidthswap/kit. The next thing it needs is someone who is not its authors to run a node.

Sources: the Bandwidth Swap whitepaper, v0.3 (Section 3 for the receipt and the burn, Section 5.1 for purchase commitments, Section 9 for the bench), the open questions, the kit, lab status.