Phonon Protocol Vision (part 2): Project Kafka
The Phonon protocol scales blockchains to enable billions of transactions per second. Phonon uses trusted hardware to allow off-chain exchanges or swaps of any blockchain based assets. The Phonon protocol itself has now been released and a community managed Phonon DAO has been established. As the inventor of the protocol I have been thinking about why Phonon is needed and how it can be used for the last several years. I am writing down my thoughts for the consideration of others in the community as development of the DAO and adoption of the protocol begins. Here I am going to provide introductory details about what I refer to as Project Kafka.
What is Project Kafka?
Project Kafka is the name given to developing new applications or integrating with existing ones to use Phonon to transfer/swap assets cross-chain or from L1s to L2s. This is an interesting use for Phonon because the protocol does not require explicit integrations with any asset, but rather only needs to support a blockchains signing curve to work (eg secp256k1, secp256r1, and ed25519). This means that cross-chain swaps can be done more simply because infrastructure doesn’t need to be built, such as smart contract interfaces or federated bridges, but rather assets can just be swapped using Phonon.
How can Kafka be used?
Kafka can be used to swap assets between any L1-L1 or L1-L2 using the Phonon protocol. Kafka can provide a mechanism for anyone to create their own cross-chain pair on a Kafka exchange similar to how an ERC20 pair is added to Uniswap.
Why do we need Kafka?
Kafka is needed to provide everyone access to all forms of assets without having to rely on centralized exchanges (CEXs). There has been much progress with decentralized exchanges (DEXs), which can be used to easily swap assets as long as they are only on a single blockchain. For example, Uniswap can be used to convert ETH to USDC quickly and easily. However, Uniswap cannot help if I want to gain exposure to say SOL. This is because Solana is its own L1 which some people may be interested in holding because they believe Solana has technical merits or because they simply think it may rise in price relative to ETH. Unfortunately, to do this I would need to go to a CEX. However, this can be especially cumbersome for people in some jurisdictions (especially the US) because of the inability to create an account with any of the exchanges that allows trading of the ETH-SOL pair. Currently, this isn’t a problem because both Coinbase and Kraken offer this pair now that SOL is a top 10 crypto. However, 6 months ago when SOL was trading at 1/50th of the price, no exchanges were accessible for US citizens to trade this pair. Sometimes there are alternatives through centralized or federated bridges. However, these are honestly just like CEXs that have skirted KYC/AML and money transmitter rules through the abstract concept of “decentralization” amongst some small handful of relayers or validators. This may be an acceptable risk when quickly transiting a bridge, however, I believe the gaze of Sauron will soon focus on these projects. In addition to these problems, there is still the problem of support or adoption of new chains or assets when those projects are new and offer the most attractive set of returns. The fact that there are gatekeeping entities in both the CEX and bridge context makes early swapping of these new pairs quite difficult. Phonon offers a solution to this. As long as Phonon supports the signing curve of a new asset any person can accomplish swaps simply by finding a willing counter party. Additionally, if we look at the technical requirements of a simple Kafka exchange it would just be a list of bids and asks. The trade engine itself is the Phonon cards. This means that a properly designed cross-chain crypto exchange could allow anyone to add a new cross-chain pair as simply as an ERC20 pair is added to Uniswap. There are many complexities and regulatory uncertainties associated with operating cross-chain bridges, as well as the difficulties and expenses of getting assets listed on respectable CEXs. A Phonon based Kafka exchange would provide the easiest way for nascent projects to immediately enable cross-chain swaps and liquidity. Additionally, even for more developed projects, Kafka will enable users in more heavily regulated jurisdictions access to a larger number of assets prior to them getting listed on one of the big CEXs which often times takes years.
What is needed to realize Kafka?
There are 4 things that need to be built to make Kafka a reality: a Phonon wallet, transaction invoices, smart contract adjudicator, and the exchange itself. Currently, the GridPlus team is working on completing the first two items.
With regards to the Phonon wallet, we plan on open sourcing our Github repo this week (January 17th, 2022). The purpose of the Phonon wallet is to provide a simple yet familiar interface that will allow people to create, view, and redeem phonons. Additionally, the phonon wallet will make use of web3.js interfaces to make seamless calls to compatible wallets (eg Metamask, Liquality, Phantom, et cetera) to allow easy creation and redemption of phonons. Here is a short preview of some of the progress we have made so far.
The second item, transaction invoices are needed to enable the proving of an agreement of two cards to swap two sets of Phonon assets. This is just having the card emit extra data which can be shown to a 3rd party adjudicator in case the Phonon swap fails to complete. This makes it so even in a high-value low-trust environment, aka Kafka, users will be able to have economically incentivized completion of all transactions. We are currently working on adding this to the Phonon implementation and should be available by the end of the month.
The third item, is a smart contract which provides 3rd party adjudication of failing, malicious, or interrupted swaps. This item has not yet been started but the technical half of the specification can be easily derived from the transaction invoice specification. Both the specification and implementation of this feature is an area which the Phonon DAO could help with.
The final item, is an exchange itself. This item has not yet been started internally, however, there is an independent group called Cohere that is working on building an exchange. I would propose that the Phonon DAO create a grants program which is meant to encourage building applications on top of Phonon.
How does the Phonon token work with Kafka?
The introduction of Kafka creates the need for a number of services above and beyond those provided by the protocol. This is a good place to use the token as a mechanism to provide these services as well as provide revenue for the DAO creating a virtuous cycle of token use. Generally, I think that the Phonon token should be used as a mechanism to give people access to the Phonon network. This can be done in the p2p use case by having a software license be purchased from the DAO for each card manufactured. The price of the license and the form of payment can be something determined by the DAO. This effectively will generate revenue for the DAO which can provide an annuity which perpetually increases as the number of network participants grows.
This naturally extends into what I call gilding. When performing swaps the Phonon protocol cannot guarantee completion of swaps. However, I propose that participants can “gild” their phonon cards (stake money in a contract) as an incentive mechanism to insure swap completion. When coupled with the transaction invoices this creates a system where participants can provide a proof to the smart contract that holds everyones gilds of an incomplete transfer. The smart contract could then give the opportunity for the counter-party to provide a completion proof and subsequently reward the complaining party from the gild if no proof is provided. The gild would effectively represent the insured economic bandwidth available to participants on the network. For example, participants could gild their cards to 1 ETH providing 1 ETH of insured economic bandwidth. These parties could still transact 100 ETH, however, they would do it in 1 ETH increments to guarantee they are always insured of completion. The smart contract could use the gilded deposits in the interim for yield farming and provide the proceeds back to the DAO. This would effectively create a mechanism for generating revenue for the DAO based on the TVL.
In addition to network access, there is a need to potentially use the phonon token to:
- prevent DDOS attacks on an exchange
- guarantee completion of listed offers
- incentivize sharing of bids if open protocol like kademlia routing is used for the book
Why is Kafka a good place to start?
I believe that Kafka is a good place to start because it provides a service to a group of super users looking to gain exposure to nascent assets while also providing a simple solution for new projects to get liquidity. Additionally, the number of participants needed to bootstrap the market and adequate liquidity is smaller than the current GridPlus Lattice1 user base. Simply deploying these tools to the user base and allowing them to generate revenue could be sufficient to bootstrap the project.
Final Thoughts
I hope this is helpful for people in the Phonon community as applications are developed and resources deployed. These are not meant to be overly prescriptive in the path that should taken, but can be used as a starting point for broader discussion and ideation. I will follow this up with several more blogs giving greater color to each one of the projects, Kafka, Mayhem, and Firefly, as well as diving into some of the potential economics surrounding the Phonon token and potential revenue generating uses.
Additional Resources
- Phonon Website
- Phonon Governance and Technical Discussion Forum
- Phonon DAO Twitter
- Phonon Token Contract
- Phonon Redeemer Contract (For Upgrading from GRID to PHONON)