Cross-chain Anonymity
Last updated
Last updated
Currently, there are more than a hundred Layer 2 blockchains and several hundred Layer 1 blockchains. Each of these chains would ideally have its own shielded pool to facilitate private transactions, but the process of bootstrapping these pools is highly challenging and resource-intensive.
Complexity of Bootstrapping Shielded Pools
1. Liquidity Issues: Shielded pools rely on having sufficient liquidity to provide effective anonymity. Without a large number of users and substantial assets in the pool, the anonymity set is too small, making it easier to trace transactions. Bootstrapping liquidity on each new chain is difficult because users are often hesitant to be early adopters in a low-liquidity environment.
2. Technical Challenges: Creating a shielded pool requires sophisticated cryptographic techniques, such as zero-knowledge proofs, to ensure transaction privacy. Implementing and maintaining these cryptographic systems on multiple chains involves a significant amount of specialized knowledge and expertise.
3. Maintenance and Upgrades: Shielded pools require ongoing maintenance and periodic upgrades to keep up with advances in cryptography and changes in blockchain protocols. Managing these updates across hundreds of chains is logistically complex and resource-demanding.
Hinkal is a set of cross-chain interconnected smart contracts which manage cross-chain shielded pools. Hinkal employs a system of shielded pools across multiple chains. Specifically, it maintains N+1 shielded pools on N+1 different chains, numbered from 0 to N . The shielded pool on the Ethereum Mainnet is denoted as Pool 0. Each of these pools offers a certain level of anonymity, which is defined as the probability that an outsider can detect that a shielded transaction with volume v originates from user j .
One of the key features of Hinkal is its ability to extend the anonymity level of one shielded pool to other shielded pools within the network. The pool that shares its anonymity properties is referred to as a Source Pool, while the pool that inherits these properties is known as a Mirrored Anonymity Pool.
It is important to note that there is a distinction between the anonymity levels of the source pool and the mirrored pool. While the Mirrored Anonymity Pool inherits anonymity properties from the Source Pool, the exact levels of anonymity will differ. This discrepancy arises because the destination pool (Mirrored Pool) holds other assets in addition to those inherited from the Source Pool.
This approach addresses the challenge of bootstrapping each shielded pool separately. A new chain does not need to build its own shielded pool from scratch. Instead, it can leverage the already established shielded pool on a chain where the main liquidity resides, such as the Ethereum Mainnet.
To achieve cross-chain extensibility of anonymity levels, several methods can be employed. One method is using native bridges. If a user holds assets in a Hinkal shielded pool on a Source Chain, they can privately bridge these assets to a destination shielded pool on another chain. This is accomplished using zero-knowledge proofs and relayers on both chains. The asset transferred from the source pool to the destination pool will carry the anonymity level of the source pool. From an outsider’s perspective, the asset could have originated from any user within the source pool who has sufficient liquidity to cover the transaction volume v .
The second way to achieve cross-chain extensibility is by using chain-abstraction solutions like OP Superchain, Polygon Agglayer, and others. These solutions involve creating a Chain Abstraction Layer, which is a network of Layer 2 (L2) chains that share common security protocols, a communication layer, and an open-source technology stack. This setup allows developers to build applications that are independent of the specific underlying blockchain networks on which they operate.
Currently, OP Superchain supports more than 20 chains built on the Optimism Stack. This support enables a more structured approach compared to the use of native bridges, which typically connect different blockchain networks directly. With chain-abstraction solutions, developers can create intermediate shielded pools on the abstraction layers, avoiding direct interaction with the Ethereum Mainnet.
The advantages of this approach include significant savings in gas costs, as transactions do not need to be processed on the often congested and expensive Ethereum Mainnet. Additionally, this method offers faster transaction finalization times, as block finalization on chain-abstraction layers tends to be quicker compared to the Mainnet.
The trade-off, however, involves the need to maintain shielded pools on the abstraction layers in addition to those on the Mainnet. By managing these pools on both the abstraction layers and the Mainnet, developers can achieve a balance between efficiency and security, leveraging the benefits of the chain-abstraction approach while still maintaining robust interaction with the broader blockchain ecosystem.