Solving the Integration Puzzle: Bringing Zk to EVM Chains and Dapps

Solving the Integration Puzzle: Bringing Zk to EVM Chains and Dapps

Findora is unlocking Zk by making it easily accessible to Solidity developers.

Why Zk Matters to Web3

Perhaps no technology holds more potential for Web3 than zero-knowledge cryptography, which promises to transform every vertical in the industry. 

It’s more than a technical advancement; it also introduces a new philosophical approach that tends toward user ownership of data. If all your data is on an open ledger, it isn’t really yours because you don’t control it. But if you have some control over what data is public or encrypted, it becomes your data in a much more real way. Selective transparency, provided by zk, affects our relationship to on-chain and off-chain data.

Because it changes that relationship, zk has the potential to revolutionize DeFi, DAOs, wallets, blockchain ledgers, blockchain bridges, and Web3 gaming. It is already being used for scalability, and its application will only grow from there.

Stay up to date

See how Findora is building zk in the Web3 space by signing up for our newsletter

Challenges Presented by Zk

This doesn’t mean the zk revolution has an easy road ahead of it. For it to have a widespread impact, it must be able to be integrated with EVM environments, as that is the environment the majority of ecosystems use.

But Zk and EVM are two very different systems that grew up separately. They don’t always play well in the same house. As a result, integrating them is difficult, and many solutions are extremely labor-intensive. 

For example, some teams have tried to address this challenge by creating their own smart contract language that can more easily accommodate zero-knowledge functions, but this forces developers to learn a whole new language. Other projects have attempted to generate zk-circuits for each specific application or function on EVM, a very complex task that creates a system which may be difficult to update.

Findora aims to make it simple for Solidity developers to use Zk functions in their dApps. We want it to be no more complicated than calling a function from an SDK or smart contract. While Findora has led in zk research, our main goal is to make zk accessible to solidity developers in Web3 and, in doing so, unlock the potential of zk.

Why Integrating Zk and EVM is So Difficult

There are many reasons why these two systems are difficult to integrate. Here are three revolving around differing cryptography, contrasting philosophical paradigms, and standardization challenges. 

1. Diverging Curves: Unpacking EVM and Zk-Proofs Cryptographic Foundations

Elliptic curves are mathematical constructs that allow pairs of numbers to be associated through specific equations. They are fundamental to Web3, providing the cryptographic foundation for digital signatures and wallet address generation. Different curves possess different properties and various levels of security.

Ethereum primarily relies on the secp256k1 elliptic curve, a foundation it inherited from Bitcoin. Zk, which demands more advanced cryptographic operations, uses various different curves like the BLS12-381 elliptic curve. Each of these curves has its own characteristics, optimized for particular cryptographic functions that aren't necessarily compatible with secp256k1.

That’s why integrating EVM and zk systems is so difficult. It isn’t merely a matter of adding new methods. Researchers have to reconcile foundational differences. Integrating EVM and zk requires the accommodation of multiple cryptographic primitives, each with its nuances and potential security implications. The process not only multiplies the complexity of operations but also raises concerns about maintaining security and efficiency.

In essence, while both the EVM and zk systems represent major cryptographic achievements in their own right, their specialized designs and reliance on different elliptic curves means there’s no straightforward way to integrate them with each other.

2. Clashing Paradigms: Integrating Transparency with Selective Transparency

The Ethereum Virtual Machine (EVM) is founded on transparency. Every transaction and contract state change is traceable and auditable on the blockchain. Each transaction results in a state change that is implemented globally and publicly. This transparency plays a key role in Ethereum’s position as a high-trust platform with top-level security. 

Zk, meanwhile, introduces a paradigm shift. Its cryptography certifies the correctness of computations without revealing the exact data or logic behind them. This abstraction provides selective transparency, allowing specific details to remain obscured on-chain while still assuring their validity. Instead of clear, step-by-step state transitions as seen in the EVM, zk-proofs provide a summarized validation, ensuring that a transaction or computation is correct without revealing its entirety.

This brings in both technical and philosophical challenges. Philosophically, how can an EVM, designed for full transparency, accommodate the selective transparency of zk? Technically, how do we ensure that even if some transaction details remain obscured on-chain, the overall system's integrity and correctness remain uncompromised? It is no easy task to alter EVM’s explicit state transaction mechanics to accommodate zk’s abstracted attestations where not all transaction details are transparent.

3. The Standardization Challenge

Integrating distinct systems requires setting unified standards. Both EVM and zk have developed using their own conventions and practices.

Zk-Proofs themselves aren't monolithic. Variants like zkSNARKs and zkSTARKs have their own cryptographic assumptions and performance metrics and designing EVMs to accommodate multiple variants presents multiple technical challenges. Moreover, standardization isn't a one-time effort, and current standards will expand as research advances. 

Findora’s Solution to the EVM and Zk Integration Puzzle

Findora solves these issues by separating the chain into an EVM and zk layer. By giving each system its own environment, each system is able to be individually optimized. Findora then links the two ledgers atomically through Prism Transfer so that what happens on one ledger is reflected on the other. This unique architecture means developers can leverage either system based on their needs.

Though the zkLedger uses Rust, developers don’t need to learn Rust to call zk-functions. They will only need to use Solidity on the EVM side.

Findora Architecture

Put another way, Findora is composed of two layers or ledgers — one for EVM compatibility and one for zk functionality. Developers get to use both, thanks to Findora’s dual-ledger architecture. The EVM layer makes it easy to build on Findora or port over dApps, and the zkLedger means those dApps will have functions unavailable on other chains.

In that sense, Findora is like a modular blockchain, but instead of separating data availability, transaction execution, and settlements into different layers, we separated EVM and zk into two different ledgers. By keeping the layers separate, we can treat each individually, even as Prism lets them act as a single chain.

By working together, Findora’s two layers give Solidity developers an easy way to build zk into their dApps.

Unlock Zk

Zk has the potential to transform Web3. It can change how we relate to on-chain data, revolutionize Web3 gaming, and has already started to redefine scalability. But for it to continue being a transformative force, Solidity developers must be able to integrate it into their projects easily. 

That is the problem Findora solves. Through our unique dual-layer architecture, we bring zk to EVM and Web3. No doubt, the future will see many different solutions, but we believe one that accommodates today’s developers is essential. We are excited to work with other teams to advance zk and unlock its full potential for Web3.

About Findora

Findora is a Layer-1 protocol delivering zero-knowledge solutions to Web3.

Findora integrates two ledgers into a single chain: an EVM ledger for interoperability and a UXTO ledger optimized for zk operations. This dual-layer architecture lets Findora encrypt blockchain data for programmable transparency and public use. By providing new use cases, Findora’s zk tech prepares Web3 for real-world adoption.

We appreciate our developers and would love to onboard you to the Findora ecosystem. Please reach out, and join our social channels for more.

Discord | Twitter | Reddit | Telegram | YouTube | LinkedIn | Facebook | Newsletter