ZKP2P - zk-powered P2P on & off ramp
zkp2p is one of the first protocols building a zk-powered P2P on & off-ramping rails
Background
Ever since crypto emerged, one of the reasons why CEX’s has had such high market adoption is due to the price and ease to on-ramp and off-ramp. It ensures the cheapest path to/from web3 through either the platform’s multiple payment processors such as SEPA, FPS, Apple Pay or Google Pay or Binance P2P, with a strong presence in developing countries. Of course, it also makes sense to onboard in a CEX as you will find the largest liquidity pools for your trades, unless they aren’t listed, in which case one can onboard in a CEX and send on-chain.
The main problem to date with CEX’s are the fact that they are subject to regulatory pressures and are required to KYC every customer if they don’t want to get into trouble. For this reason, some countries are discriminated from even passing KYC. On the other hand, KYC processes are indeed getting better but they have always been painful, slow and complex. If you want to onboard into different assets, say ETH and BTC, you would have to do perform multiple on-ramping transactions which take time to process and need a waiting period between orders. In terms of pricing, on-ramping with card or apple/google pay takes a cut of around 1.8% (at least it is lower than the average 2.5-3.5% in mastercard/visa). The alternative is SEPA, for example which is cheaper but takes 3-5 days to on-ramp, very poor if you’re looking to trade immediately.
Protocol Overview
ZKP2P is a protocol built upon two grants conceded by the Ethereum Foundation and the Privacy & Scaling Explorations (PSE). It’s mission is clear, they want to bridge the gap between web2 and web3, and for that, they believe they need to smoothen out the interoperability between fiat and crypto. They have identified the key pain points and are developing a P2P on and off-ramp with Binance P2P as inspiration. The market has demonstrated this is the cheapest way to transact and they ensure the fees will be under that of MoonPay, the most prominent crypto on & off ramp. Through this P2P design, the protocol wants to make sure that the onboarding is fast and is censorship resistant, by not relying on a centralised entity, subject to regulation pressures. The long term goal of the protocol is to be interoperable with most of web2’s payment processors, starting with Venmo as the first partner, one of the largest payment services in the US. As the name implies, it uses ZK proofs as its key primitive to ensure trustlessness and privacy.
How it works
Its functionality is quite simple at this point. Participants are required to register with their venmo account. There are two main participants:
On-rampers: which are those wishing to get crypto on-chain by depositing fiat.
Off-rampers: which are those wishing to deposit their crypto and getting fiat off-chain.
Off-rampers will submit a limit order to give away their crypto and get fiat off-chain. Therefore, once the order is submitted, they will deposit the crypto they wish to off-ramp.
On-rampers post an intent order that says they want to get a specific amount of crypto with their current fiat. The drawback here, as with any P2P transaction, is that this user relies on the other peer, in this case, an off-ramper wishing to move off-chain.
They will then be paired up with each other where the amount to on-ramp will never exceed the liquidity deposited by the off-ramper. Note that by grouping different users, the orders can be easily fulfilled.
The crypto funds (i.e. USDC) are held in escrow in the meantime and will only be unlocked once the transaction proof is confirmed.
The on-ramper will send the fiat payment (i.e. USD) to the off-ramper. Currently this is only possible via venmo.
The off-ramper then generates a ZK proof that is generated once the email confirmation is received that the on-ramper did send the funds to the off-ramper. This proof is then submitted to the ZKP2P verifier smart contract. The off-ramper is now happy as he will receive the venmo shortly.
The escrowed crypto funds (i.e. USDC) are then released to the on-ramper which now has its crypto.
Product
Their product consists of three main products at this stage:
ZK Circuits - to verify the transactions via zk-SNARK proofs
Smart contracts - enabling transactions and management of the protocol’s logic
User interface - the front-end where users interact with the protocol
Roadmap
ZKP2P is currently in alpha mainnet launch, which is live in Base. It is currently limited to $250 every six hours.
As the protocol matures in its product development phase, we can expect more integrations of payment services, as well as a more comprehensive selection of assets and currencies to swap. The team is also working on producing a proof of venmo via an NFT.
It will be interesting to see how they expand as it has the potential to be the next generation off on and off-ramps as we move away from CEXs.
Business Model
The business model and the value accrual of the protocol is unclear at this point, given that it is in early stages of development. The likely approach seems to be taking a transaction fee on the p2p swaps, although p2p fees tend to be low, in the basis points.
That's all, thank you! Make sure to share and subscribe to the substack, and follow me on Twitter if you enjoyed the post: @ethgnacio.