Saito Consensus: Fixing The Market Failures in Bitcoin: David Lancashire, Richard Parris

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Saito Consensus: Fixing the Market Failures in Bitcoin

David Lancashire, Richard Parris

December 24, 2020


v. 4.0.1

Abstract
Saito fixes the collective action problems that impede scaling in proof-of-work and proof-of-
stake blockchains by coupling a circular ledger to a consensus mechanism that incentivizes the
collection and sharing of transaction fees. The resulting network pays not just for mining and
staking, but for all activities that contribute economic value to the network. In the process
Saito fully eliminates majoritarian among other attacks.

Saito pays user-facing infrastructure nodes out economists have waved away this limitation,
of an open consensus mechanism. Because this claiming that as long as someone is earning
approach scales naturally, it incentivizes the pro-money from the network they will pay all costs
cessing of large amounts of data and can be used necessary to support it. But this is not true, for
to build decentralized versions of many data- proof-of-work and proof-of-stake networks are af-
heavy services, such as un-astroturfable data ex- flicted by two market failures: a tragedy-of-the-
changes, authentication and monetization appli- commons problem that leads to blockchain bloat
cations, distributed key registries that are se- and eventual collapse and a free-rider problem
cure from MITM attacks, payment channels, and that leads to an under-provision of user-facing
much more. network infrastructure and an over-provision of
paid activities like mining and staking. Neither
In economic terms, Saito can be understood as problem is crippling at small scale, but they grow
a solution for inducing a free market to deliver incapacitating as bandwidth and storage costs
a public good. The design corrects the collective rise.
action problems inherent in the proof-of-work
and proof-of-stake mechanisms, so that profit- Are there alternatives? Faced with the need to
seeking actors compete to bring money into the pay for uncompensated network infrastructure,
network, permitting scalability to the point that computer scientists throw the problem to the
underlying network hardware rather than eco- market. As economists have known since the
nomic constraints impose limits on blockchain 1960s, asking the private sector to fund non-
growth. We believe the practical limit for a Saito excludable infrastructure requires closure some-
blockchain today is in the order of 100 TB of where in the economic model. Businesses that
data per day, and advances in routing capac- pay for fee collection must necessarily close ac-
ity will push us to the petabyte level within a cess to the fees they receive. The controlled flow
decade. of funds into the blockchain then undermines the
openness of the consensus layer.
The next section describes briefly the economic
problems that need to be solved in order to The only viable solution is to eliminate these
build a scalable blockchain. The following sec- market failures on the incentive level. Before
tions outlines how Saito solves these problems the solution can be understood, it must be seen
and describes an implementation of these meth- clearly. The major issues are as follows.
ods. The tragedy-of-the-commons issue is created by
1. THE PROBLEM the existence of the permanent ledger, which en-
courages nodes to accept payment today for work
The problem with blockchain scaling is not at that can be offloaded to others tomorrow. This
the network technology layer: at the time of incentive leads to bloated blockchains and more
writing, data centers around the world are im- subtly to transaction mis-pricing, as users can
plementing 400 Gbps network switches while 100 pay fees that do not reflect the true cost of their
Gbps connections are becoming standard even in transaction to the overall network. The fact that
lower-tier colocation facilities. If we had the re- this is a fundamental problem is self-evident from
sources to pay for the necessary equipment there the way Satoshi’s solution is ”not to care,” an ap-
is nothing technically stopping us from building proach that stops being viable in networks that
a blockchain that is as decentralized and open as operate at serious economic scale.
the public Internet backbone.
Eliminating the tragedy-of-the-commons prob-
What limits network growth is the challenge lem requires all nodes that add transactions to
of paying for the network. In the past, non- the blockchain bear the cost of processing those

1
transactions for as long as they remain on the value and then pay nodes in proportion to the
blockchain. In practice, this requires a market amount of it they contribute. Accomplishing this
mechanism for accurately determining the price requires deriving our measure of ”work” from
of on-chain data storage. It also requires elim- the transaction fees that users pay. The work of
inating blockchain creep or deferring fee collec- routing transaction fees into the network is the
tion so that payments are meted-out over time work that our network must encourage. Hon-
as the node continues to do the work required est nodes can be induced to do this work by a
for payment. Our solution to this problem is de- share of the fees collected. The difficulty shifts
scribed in Section 2. to ensuring this mechanism preserves the cost-
of-attack properties, such that attackers cannot
The free-rider problem is more insidious. It
spend their own money to attack the network,
arises in blockchains where payments are made
and harvest it back in a perpetual loop. The se-
for one specific type of work (such as mining
curity mechanism described in Section 3 outlines
or staking) at the expense of other necessary
a technical method of accomplishing this.
activities. This mismatch incentivizes partici-
pants to maximize their spending on paid work 2. FIXING THE TRAGEDY OF THE COM-
and minimize spending on anything else. In MONS
the blockchain space, this results in miners and
Saito solves blockchain creep by allowing the
stakers ”free-riding” on those who do the un-
nodes in the network to delete the oldest blocks
paid work of collecting fees or developing appli-
in the ledger at predictable intervals (”epochs”).
cations or otherwise supporting the user-facing
Epoch length is specified in the consensus code.
network. The problem gets worse as the net-
An extreme case - a blockchain designed to han-
work scales, and evolutionary pressures make the
dle global traffic for distributed key-exchange ap-
trap inescapable: any Bitcoin miner that spends
plications - may have an epoch as short as 24
a smaller percent of its revenue on hashing than
hours.
its more altruistic peers will lose market share
until it also capitulates. Saito specifies that once a block falls out of
the current epoch, its unspent transaction out-
In economics, the typical solution to the free-
puts (UTXO) are no longer spendable. But any
rider problem is to eliminate the property of
UTXO from that set which contains enough to-
”non-excludability” associated with any good or
kens to pay a rebroadcasting fee must be re-
service: restricting its benefits to those who pay
included in the very next block. Block pro-
the costs of provision. In the blockchain space
ducers do this by creating ”automatic transac-
this is impossible to do without destroying the
tion rebroadcasting” (ATR) transactions that in-
openness of the network. Computer scientists
clude the original transaction data, but have en-
often address the problem by adding protective
tirely fresh and newly-spendable UTXO. After
middleware, such as wrapping consensus pay-
two epochs block producers may delete all block
ments in closed voting rings which are of course
data, although the 32-byte header hash may be
themselves susceptible to these attacks. The
retained to prove the connection with the origi-
jiggery-pokery can never these economic prob-
nal genesis block.
lem: markets are powerful enough to undermine
these structures exactly because they incentivize The ATR mechanism fixes the tragedy of the
it. commons problem completely, making it impos-
sible for a blockchain to grow so big that it col-
Without a solution to this problem our choice
lapses. The key is ensuring the ”rebroadcasting
is between a network that cannot scale because
fee” paid by ATR transactions is a positive mul-
it cannot pay for network operations, or a net-
tiple of the average fee paid by new transactions
work that scales but loses the openness, trust-
over the previous epoch. As the blockchain ex-
lessness and economic self-sufficiency that makes
pands and there is less space for new transactions
the blockchain a useful invention. Neither ap-
available, market competition pushes up the fees
proach is useful for building a genuinely open
paid by new transactions. This forces up the
blockchain at massive scale.
fees paid by older transactions and increases the
The theoretical solution to the free-rider problem amount of data pruned by the blockchain. The
requires eliminating the possibility of free-riding: market reaches equilibrium where old data is re-
fixing the underlying incentive structure so that moved from the chain at the same pace that new
participants are paid for providing what the net- data is added.
work actually needs. Because the blockchain re-
Market discovery of the true cost of blockchain
quires a quantifiable cost-of-attack, this requires
processing is a side-effect of this incentive struc-
eliminating ”mining” and ”staking” and shifting
ture, which works by eliminating the incentive
to a different form of work that measures and
block producers have to add unprofitable data
pays nodes in proportion to the ”value” they
to the chain. This mechanism avoids problems
provide the network instead of the amount of
with developers hardcoding economic variables
hashing or staking they do.
and prevents subtle forms of free-riding com-
This requires us to find a new way to measure monly found in other chains (deleting on-chain

2
data, refusing to store or share historical blocks)
where pruning is done to save money. All such
forms of cheating disappear because nodes that
do not store the whole blockchain are incapable
of producing new blocks, as they do not know
which payments must be rebroadcast.

While this avoids the problem of our blockchain


growing too large for network nodes to store, and
ensures space on the blockchain can be priced ac-
curately even as storage times approach infinity, Figure 2: Good Actor Burn Fee Costs...
fixing the tragedy of the commons problem does
not get money to the nodes in the peer-to-peer To secure this mechanism, Saito has routing
network that are paying for all of the miscella- nodes cryptographically sign transactions as
neous activities that keep the network operating. they propagate through the network. Consen-
To solve this problem we need a new consensus sus rules specify that the amount of ”routing
mechanism. work” a transaction provides any node drops
with the number of hops in its routing path,
and that transactions provide no usable rout-
ing work to nodes that are not in their routing
3. ELIMINATING FREE-RIDING path. The work used to produce blocks is the ef-
ficient collection and sharing of inbound network
fees.
In Saito any node can create a block at any
time provided it has enough ”routing work” in As long as there is no payment for block pro-
its mempool. The amount of ”routing work” duction this system offers comparable security
required to produce a block depends on how to Bitcoin: cost-of-attack can always be quanti-
quickly a block follows its predecessor: consen- fied and attackers must spend their own money
sus rules increase the value immediately after a to attack the chain. This allow users to wait
block is found and decrease it gradually until it however many confirmations are needed to meet
reaches zero. Since block producers will issue their security requirements. As a bonus, the net-
blocks as soon as it becomes profitable, the pace work can increase the amount of ”routing work”
of block production is determined by the over- needed for block production to keep blocktime
all amount of ”routing work” generated by the constant as transaction volume grows, so that
network. security scales with fee-volume.
The major problem with this approach lies in the
consequences of requiring the network to burn
capital to produce blocks:

Figure 1: The Burn Fee Curve

Figure 3: Deflation of Burn Fee Over Time


Saito derives routing work from the transaction Avoiding a deflationary crash requires us to in-
fee embedded in every transaction. Using this ject tokens back into our network. But Saito
measure of work to produce blocks makes attack- cannot simply give the fees directly to block pro-
ing the network expensive, since making claims ducers: that would allow attackers to use the
about time cost money. It can be seen from Fig- income from one block to generate the routing
ure 2 that it is impossible for attackers to pro- work needed to produce the next. Dividing up
duce blocks at a faster pace than the main chain the payment between different nodes is prefer-
unless they have access to a larger pool of trans- able, but as long as block-producers have any
action fees. influence over who gets paid a savvy attacker can
1
Many core problems with the proof-of-work and proof-of-stake mechanisms stem from this decision. Leaving aside
the fifty-one percent attack, note the way supply-side constraints in external markets (i.e. inelastic supply curve for
hashpower or capital) are used to impose a ”cost constraint” on attackers. Not only does this design remove any
ability for the blockchain to regulate its own security, but the profits available in external markets necessarily and

3
sybil the network or conduct grinding attacks work. The lucky routing node is selected using
that target the token-issuing mechanism. a random variable sourced from the miner so-
lution, with each routing node’s chance of win-
Solving this problem requires inverting the clas-
ning normalized to be proportional of the overall
sic proof-of-work solution. In Bitcoin, consensus
”routing work” it contributed to the block being
rules make it expensive to produce blocks and
solved.
fees are then handed to the block producer. This
is meant to ensure block production is expen- As transactions are routed into the network, it
sive but in reality guarantees there are always can be seen that the total claims on payment
conditions under which attacks are profitable.1 embedded in them (sum of routing work avail-
In Saito the solution is the opposite. The first- able to all nodes in the routing path) grow while
order problem changes into securing the payment the amount of work available to produce a block
mechanism: ensuring that payments are propor- (the amount of routing work available to spe-
tional to work regardless of who produces blocks. cific nodes) shrinks. Attackers who use honest
The cost-of-attack that a mechanism with this transactions to produce blocks put themselves
property creates is then leveraged into being the on-the-hook for paying the difference.
cost of block production.
We call the division of payment between min-
We call the mechanism that achieves this the ers and routers the ”paysplit” of the network.
”golden ticket” solution. This mechanism pays It is set to 0.5 by default (half to miners, half to
honest nodes for collecting fees regardless of who routers) but can be made adjustable as described
produces blocks. The trick is pulling this off in in the section below. The golden ticket system
a way that ensures there is always a quantifi- can be visualized as follows:
able cost to attacking the system. The prac-
tical solution is returning the transactions fees
to the network through a process that cannot
be gamed by any of the players in the network
without spending far more money on the attack
than they stand to benefit from collecting the
payments. Implementation details are described
in the next section.
4. THE GOLDEN TICKET
Figure 4: The Golden Ticket System
Whenever a node produces a block, it may col-
This system has several major advantages over
lect the difference between the amount of ”rout-
proof-of-work and proof-of-stake mechanisms.
ing work” included in its block and the amount
The most important is that Saito explicitly dis-
of routing work required for block production.
tributes fees to the nodes that service users, col-
No other payments are made.
lect transactions and produce blocks, and does
Unlocking those payments requires the network so in proportion to the amount of value that
to solve a computational puzzle we call the these actors provide to the overall network. Net-
”golden ticket”. This puzzle requires knowledge work nodes compete for access to lucrative in-
of the block hash to solve and cannot be calcu- bound transaction flow, and will happily fund
lated in advance. Miners on the network listen whatever development activities are needed to
for blocks as they are produced and begin hash- get users on the network. Of note, the services
ing in search of a solution. Should they find a provided by edge nodes to attract Saito usage
transaction they propagate it back into the net- can include public-facing infrastructure needed
work as a normal fee-paying transaction. by other blockchains.
Only one solution may be included in any block, This is a fundamental shift. Where other
and that solution must be included in the very blockchains explicitly define which activities
next block to be considered valid. If these con- have value, Saito lets the users signal what ser-
ditions are violated or if a ”golden ticket” is not vices provide value through fee-pricing, while
solved, the funds that were not paid out in the the network infers who deserves payment. Saito
previous block are simply not allocated. They also incentivizes the efficient delivery of value to
fall backwards into the blockchain and eventu- users. And by paying for value rather than a
ally fall off the chain, at which point the lost subset of network activities it provides the only
funds are recollected by the consensus layer and way to guarantee that a self-sufficient network
eventually redistributed as part of a future block can remain open and economically independent
reward. at scale.
Should a solution be found in time, the unal- The Saito consensus mechanism is also ”twice as
located fees are released to the network; split secure” as its proof-of-work and proof-of-stake
between the miner that found the solution and counterpoints. Honest nodes route transactions
a random node in the peer-to-peer routing net- to block producers and earn fees in exchange.
inevitably commoditize the work function and flatten the supply-curve for the work-factor in the external market.

4
But attackers are thrown into a catch-22: they share of the amount of fees paid into the trea-
must not only spend the same amount of fees sury by the staking mechanism during the previ-
as the honest network to produce a competitive ous round. Limits may be put on the size of the
chain, but must also match 100 percent of min- staking pool to induce competition between stak-
ing output to find enough golden ticket solutions ers if desirable or prevent users from spamming
to recapture their funds. Even if attackers suc- the staking mechanism in the hope of dissuading
cessfully launch fee-recycling attacks, they must honest stakers from participating. In normal sit-
still spend 100 percent of their income on hash- uations the looping blockchain and ATR mech-
ing. anism will prevent stakers from launching spam
attacks as multiple UTXO will all pay rebroad-
The basic version of the Saito system achieves cast fees.
100 percent fee-security, eliminating the fifty-one
percent attack completely. Section 5 describes a To ensure the system works, block producers
modification to this mechanism that pushes se- who rebroadcast UTXO must now indicate in
curity above 100 percent and guarantees that their ATR transactions whether the specific out-
attackers will lose money in all circumstances. puts are active in the current or pending staking
Regardless of which implementation is used, the pool. A hash representation of the state of the
economic problems created by mechanisms that staking table may be included in every block in
rely on external supply-curves vanish: mining the form of a commitment to allow nodes to ver-
serves as a pure cost function instead of a diffi- ify the accuracy of the staking table, but the
culty function and the blockchain remains secure ATR rebroadcast mechanism will theoretically
even if the supply curve for hashpower becomes allow all nodes to reconstruct the state of the
perfectly flat. staking pool within one epoch at most.

5. ADVANCED SECURITY - POWS- Mining difficulty can be adjusted upwards if two


PLIT blocks containing golden tickets are found in a
row and downwards if two blocks without golden
It is possible to increase attack costs beyond 100 tickets are found consecutively. A similar puni-
percent of available returns through a ”powsplit” tive cost can throttle the staking payout if two
mechanism. Note that in the normal Saito im- blocks without golden tickets are found in a row
plementation with a fixed paysplit of 0.5, the net- (an ever-increasing amount of the staking rev-
work auto-adjusts mining difficulty so that one enue is withheld). We encourage those interested
solution is found per block, on average. Since in the underlying mathematics to consult our pa-
miners cannot control the variance at which so- pers on the topic. The cost of attacking a Saito
lutions are found, network difficulty may end up network using this mechanism rises significantly
being lower on average than needed for optimal above 100 percent.
security.
6. ADVANCED SECURITY - PAYSPLIT
A ”powsplit” approach eliminates this problem
by adjusting mining difficulty so that one solu- There are several modifications to the paysplit
tion is found every N blocks on average. When mechanism that can be used to increase attack
such a solution is included in the blockchain, costs. While the version of Saito being launched
if the previous block did not contain a golden for production does not include this mechanism,
ticket, the random variable used to pick the win- it is possible to add a dynamic voting system
ning routing node is hashed again to select a to Saito that can allow paysplit to float dynam-
winner from the unsolved block which preceded ically. This section describes a theoretical im-
it or from a table of stakers as described be- provement that allows for a floating paysplit that
low. An upper limit to backwards recursion may will work under certain assumptions about the
be applied for practical purposes, as the circular rationality of the network.
blockchain will recapture any funds that are not
paid out. An implementation of this system modifies
blocks so that they include a vote to increase,
To become stakers in the network, users decrease or hold constant the paysplit of the net-
broadcast a transaction containing a specially- work. Golden ticket solutions may be then mod-
formatted UTXO. These UTXO are added to a ified so that they contain similar vote on the
list of ”pending stakers” on their inclusion in difficulty of the golden-ticket production func-
a block. Once the current staking table has tion. The consensus variables of the network are
been fully paid-out, all pending staking UTXO updated when and only when golden tickets are
are moved into the current staking table. To solved and included in the blockchain.
avoid throttling attacks on the staking mecha-
nism it is wise to not permit stakers to withdraw Adjusting paysplit like this can change the distri-
or spend staked UTXO until they have received bution of fees between routing nodes and miners
payment. in real-time. This allows the network to reach
an optimal equilibrium rather than an arbitrary
The percentage of network revenue allocated to one. To prevent this equilibrium from reflecting
staking nodes should be proportional to their only the preferences of the routing and mining

5
nodes, we recommend letting the users on the of the network by competitive pressures over
network tag their transactions with an optimal time.
paysplit vote as well: should a user-originated
transaction contain such a vote, it may only be The routing network also serves a unique defen-
included in a block that votes in the same direc- sive mechanism. Routing nodes in Saito can in-
tion. Users who take sides in the ongoing strug- crease the cost of attack in real-time by refusing
gle between routers and miners thus sacrifice the to route transactions to attackers, forcing an in-
reliability and speed of transaction confirmation, creased reliance by the attacker on their own wal-
but gain marginal influence over how the network let to fund block production. This mechanism
allocates fees. Users making votes are also with- also defends Saito against subtle attacks like
holding their fees from nodes voting differently monetizing transaction flows and closed-access
to themselves. routing.

Under conditions where network participants As a final observation, we note that the ”scal-
exhibit bounded rationality, this mechanism ability trilemma” often championed as a funda-
pushes paysplit to the point where the security mental law of blockchain does not exist in the
provided is optimal for all participants given the Saito design. There are many obvious configu-
cost of additional fee collection. De Toqueville rations of the network in which redirecting fees
compacts secure the equilibrium: any two play- from miners to routing nodes can simultaneously
ers in the tripartite network structure (routers, increase the throughput, decentralization and se-
miners, users) may team-up to shift the paysplit curity of the network simultaneously.
back to the desired ideal. While we leave re-
8. SUMMARY
search into this mechanism for the future, a use-
ful thought experiment is exploring how the secu-
The fundamental problems affecting blockchain
rity of this three-player system degrades to only
scaling are economic. Saito fixes these is-
bitcoin-class security as the paysplit approaches
sues, allowing us to build a massively-scalable
extreme values. blockchain which achieves scalability by ensur-
7. ADDITIONAL NOTES ON NETWORK SE- ing that payments flow to the nodes that spend
CURITY money on network infrastructure.

Saito’s design solves several long-standing prob- Those who pour over the technical details of the
lems of note. Hoarding attacks are minimized Saito network will find embedded in it at least
because nodes that participate in transaction seven major innovations in blockchain technol-
routing maximize revenue by finding the most ogy: automatic transaction rebroadcasting, the
efficient routing path into the network. Com- burn fee, the golden ticket system, paysplit and
petition encourages the sharing of fees rather powsplit, N-block golden tickets, a secure multi-
than the hoarding of fees. The availability of party voting mechanism, and the chain of cryp-
routing information in blocks also allows par- tographic signatures that permits the blockchain
ticipants to check that their peers are faithfully to identify and reward productive nodes in the
propagating their transactions instead of hoard- routing network.
ing them.
Patent protection has been secured on these
Because adding hops to any routing path neces- techniques and we welcome contact from other
sarily reduces the profitability of routing for ev- blockchain projects looking to incorporate one
ery node in the path, sybil attacks are also elim- or several of these methods in their own net-
inated. Blocks provide the information needed works. We also encourage readers to visit our
for participants to identify and eliminate sybils website (https://io) which includes an interface
in their peer-to-peer networks. And evolu- for the working network, a roadmap outlining
tionary pressures ensures that they will purge future development plans, and tutorials that can
them: weaker nodes which permit themselves help anyone get started building Saito applica-
to be sybilled will find themselves driven out tions today.

You might also like