Sovereign tokens
A novel design for cryptocurrency that clarifies its dependency on social consensus
Introduction
In the blockchain space, fundamental differences in “worldview” occasionally emerge, such as the ideal token distribution schedule, the validity of the post-DAO-hack blockchain reorg [1], or the validity of the Steem transactions in which Justin Sun became a majority voter [2]. If these worldview variations are sufficiently well-subscribed, the result is the creation of a separate competing blockchain, with the free market adjudicating their relative value.
But what if there was a way for multiple such worldviews to coexist within a single blockchain? What if the simple on-chain declaration of a disagreement with Justin Sun’s hostile takeover of Steem was sufficient to construct an alternative competing view of the state of the chain in which the takeover didn’t happen?
I want to introduce a concept that I’m calling sovereign tokens, which borrows some ideas from sovereign rollups [3] in order to reconceptualize “tokens” in a way that makes it unambiguously apparent that they represent the opinion of a particular social consensus.
Sovereign rollups
In traditional monolithic blockchain designs, transactions are submitted to nodes who order, authenticate, and then execute the transactions, storing the resulting state. However, transactions in a sovereign rollup are submitted to one or multiple external blockchains for ordering, and then the nodes in the sovereign rollup are free to use the ordering and transaction data from the external chain to calculate their own resulting state. Sovereign rollups are so named due to the resulting jurisdictional flexibility of this design: the rollup submits transactions to multiple external blockchains. That allows the social consensus of the sovereign rollup to easily fork to an alternative data-availability layer if any undesirable behavior (such as censorship) is detected at the base layer.
Interestingly, the data-availability chain only validates signatures and otherwise accepts transactions that could fail during transaction execution.
Distribution of transaction execution workers
Using the psibase [4] protocol (or probably any blockchain protocol), one could define a service (smart contract) action that accepts transactions. The action would validate the transaction signature and simply emit an event with the transaction details without doing any additional validation or state transitions. But in order to distribute the code that performs the transaction execution and calculates the state transitions, it would be helpful to use a protocol like psibase. With psibase, a worldview execution context WebAssembly module could be stored on chain, which anyone could download using a standard HTTP request. That module would read the history of transaction events processed by the service and calculate all state transitions client-side.
Sovereign Tokens
A token service could be written using this model, allowing all users to effectively become their own “full nodes” for validating token transfers and calculating token state. In this way, token balances would no longer be stored on-chain and would instead always be derived from the client-side transaction execution.
Since transactions are executed and state is calculated client-side, a user could censor transactions or otherwise configure custom logic that modifies the calculated state. This configuration is hereafter referred to as a “worldview,” because any differences in such a configuration would cause a divergence in the resulting state, effectively enabling individuals to subjectively interpret the objective statements made on-chain. In this way, not only are token balances not on-chain, but there is truly no canonical token balance.
As a good little Austrian economist, I’d argue that this mirrors the reality of the subjective nature of value better than prior attempts at tokenizing value with traditional money.
Sovereign token interactions across forks
Divergence in client-side state effectively means that people with different worldviews are operating on different “forks” of the data. But in this case, those operating with different views of the world are not necessarily prevented from all interactions.
To minimize worldview incompatibility and better represent how subjective value propagates between humans in real life, an on-chain sovereign token interface should require that the “amount” field in every token transfer is not an absolute value, but a value between 0 and 1 which represents the percentage of the balance being sent. With a traditional absolute value approach to token transfers, every transfer would fail to validate in the execution context of another’s worldview if there was even a slight divergence. By using percentages, most transactions will be valid on all forks as long as the sender has any balance at all, but the amount of tokens being transferred is what varies across forks.
Commerce
If Bob charges for a service, he quotes the cost of the service according to his own worldview. Anyone who would like to purchase the service from Bob can mathematically translate the number of tokens that they are required to send (according to their own worldview) to satisfy the cost according to Bob. For example, Bob charges 10 tokens for a service. Alice believes she only has 4 tokens. However, after checking her balance according to Bob’s worldview, she learns that Bob believes she has 12 tokens. Therefore, she sends a transaction to the blockchain such as:
transfer(from: "alice", to: "bob", amount: 83.5%)
This message is interpreted by Alice (and all who share her worldview) as a reduction in her balance by 3.34 tokens (which is 83.5% of her total balance of 4). But Bob (and all who share his worldview) interprets the message as a transfer of 10.02 tokens from Alice to Bob (83.5% of her total balance of 12). In this way, people on different worldview “forks” can continue to interact provided that their worldviews are not too misaligned. At some point, peoples’ views of the world sufficiently diverge and they are no longer able to transact.
A UX nightmare?
Libraries used by web apps can extract the complexity of translating between worldviews and calculating the correct values to send to the chain. Each person can continue to operate within the context of their worldview, and in principle, it should feel identical to transacting with a traditional cryptocurrency. You may find others who disagree with you about the number of tokens owned by each of you, but that’s okay.
Free money?
What prevents someone from having the view that they are the most valuable person in the world and should therefore receive 100% of all new token distributions? Nothing! But unfortunately for them, they have to convince others to adopt the same worldview to benefit from it. Otherwise, they will simply waste their own compute power calculating the state of a worldview that no one shares. Functionally, it is the worldview of the recipient of any transaction that matters for commerce.
A privileged worldview
One worldview that could be considered privileged is the worldview of those who provide the blockchain infrastructure. Because it is these entities who must be given resource tokens to pay for network bandwidth and storage costs. Diverge too far from the worldview of the infrastructure providers, and your ability to transact on the chain at all could be at risk.
However, this worldview asymmetry is mostly a mirage. It should be very rare that the extent of worldview divergence would be what prohibits someone from transacting. Anyone who does find themselves in such a scenario can coordinate with others who share their worldview and elect a new set of infrastructure providers to form a new blockchain whose operators will allow them to transact. In other words, forming a new blockchain is an option for consideration in extremis, as opposed to the only option as is normally the case.
Token Distribution
Token issuance is effectively a token transfer from a protocol to a recipient account or set of accounts. The interface for a token issuance could, rather than include a percentage of a total balance (which in the case of a protocol is infinite), simply specify the accounts to whom the distribution is directed. It is then up to each worldview to define the parameters related to the token distribution schedule.
Worldview proxy
Many people may not have an opinion on token issuance schedules or monetary policy, and therefore a key capability would be that one can proxy one’s worldview to another. This is like saying, “I know Alice and know that I see the world in roughly the same way as Alice, so I will adopt whatever worldview she has”. Of course, one could change their worldview at any time or proxy to someone else, in which case they would see prices and token balances change accordingly.
With worldview proxies, one possible concern is that Alice could covertly change her worldview such that she becomes rich and all who proxy to her may not know and transact on that basis. For this reason, worldviews must have version numbers that auto-increment when any change occurs, and which must also be specified during the act of proxying. Therefore, any change to the worldview would require others to opt-in to update to the new worldview. Alternatively, worldviews could automatically update and those who maliciously update their worldview with the intent to deceive others could be held accountable by some dispute resolution system.
Computation/storage concerns
The biggest issue I see with this design is the computation required. Even though it is only for a single smart contract (the token service), that service is likely to be the most popular service on any blockchain. A client’s browser could almost be seen as a full node for as many chains as there are worldviews with whom the client must interact.
The following considerations are aimed at reducing browser requirements:
- Signature verification still happens on-chain (as in sovereign rollups), so clients are only required to calculate and verify state transitions.
- The latest state is cached so subsequent synchronization only needs to process the delta to continue calculating for a particular worldview.
But still, it could be fairly common to interact with someone with a different worldview. If that is the case, it is probably necessary for those who are calculating worldview state to periodically generate validity proofs (such as those used by ZK rollups [5]) to allow others to confirm the correctness of their calculated state transitions without having to separately re-execute transactions. Anyone interacting with that worldview could then simply download the latest validity proof, run a client-side verifier, and then process the remaining transactions since the block height at which the proof was generated.
Conclusion
Blockchains bring transparency to the process of codifying different monetary policies and incentive structures, but philosophical differences result in incompatible forks that operate on different sets of transactions. This divides the world and introduces unnecessary siloing.
The consequence of sovereign tokens is the elimination of canonical token quantities and the introduction of fully personalized “prices” for goods and services that are meaningful in an individual’s own worldview. I may find that one coffee shop has exorbitantly expensive prices when compared to a different coffee shop. This doesn’t reflect different prices so much as it reflects the divergence between the worldviews of the establishment owners. As people spend their tokens on goods that seem affordable, they automatically participate in the free-market discovery of the optimal incentive structures for meeting people’s needs. Over time, this could result in a particular kind of societal stratification wherein you and your neighbors never purchase from the same stores, since each of you may find your own to be significantly more affordable. It would result in somewhat distinct realities shared by those who agree on fundamental societal principles. These emergent networks of shared realities could potentially even serve as the basis of the formation of network states [6].
Communities or individuals who too readily change their worldview away from everything with which they disagree will soon find themselves unable to transact with the rest of society. This is effectively a selection pressure that enables the co-existence of some number of alternative worldviews and gives people the autonomy to decide to act on issues that they believe are core to their view of what is valuable to the world.
Sources
[1] Blockchain Reorgs: Historical Effect and Differing Perspectives, Crypto.news
[2] What are Steem and Hive?…, CryptoBriefing
[3] An introduction to sovereign rollups, Celestia
[4] psibase, GitHub
[5] Zero-knowledge rollups, Ethereum
[6] The Network State in One Sentence, The Network State