# Proof systems of zkBridge

Libra, Virgo and deVirgo are powerful ZKP algorithms that have revolutionized cross-chain interoperability by enabling secure, private, and efficient communication between different blockchain networks. The deVirgo proof system combines Libra, Virgo with a unique distributed computing technique specifically designed for them, making zkBridge an innovative solution for seamless and secure cross-chain communication.

The Libra algorithm is an advanced zero-knowledge proof system that enables extremely fast proof generation and verifications. It allows a prover to demonstrate the validity of some statements without revealing private information. The algorithm proposed a linear time sumcheck protocol for general circuits, where it enables more than 10 times faster than prior works.

The Virgo algorithm is a follow-up algorithm built upon Libra and it removes the universal trusted setup from Libra with several optimizations to enable custom gates. Virgo is especially suited for scalable and efficient ZKP applications due to its rapid proving time, succinct proof size, and low verification complexity. Notable features of the Virgo algorithm include:

- 1.Transparent setup: Virgo does not need any trusted setup.
- 2.Fast prover time: Virgo is one of the fastest ZKP systems, especially for large-scale functions.

deVirgo is a groundbreaking distributed proof system derived from the Libra and Virgo algorithm, designed to significantly accelerate proof generation. By incorporating distributed sumcheck and distributed polynomial commitment, deVirgo achieves optimal parallelism. Leveraging a distributed computing network consisting of 𝑀 machines, deVirgo reduces proof generation time by a factor of 𝑀. To enable distributed polynomial commitment with on-chain verification, we used a modified version of Libra’s polynomial commitment.

Communication across the distributed computing network in deVirgo is minimized during the main computation phase, referred to as the GKR part in Virgo. Consequently, zkBridge utilizing deVirgo can be 100x faster than a single-thread Virgo prover, even though Virgo is already among the fastest ZKP protocols available. The exceptional performance of deVirgo makes it a crucial component for zkBridge's efficient cross-chain communication.

Some key features of the deVirgo algorithm include:

- 1.Optimal Parallelism: deVirgo employs a distributed computing network to significantly speed up proof generation by integrating distributed sumcheck and distributed polynomial commitment, deVirgo achieves the best possible parallelism.
- 2.Enhanced Performance: The deVirgo algorithm enables zkBridge to operate much faster compared to a single-thread Virgo prover, providing unparalleled performance.
- 3.Recursive Composition: deVirgo can be used in proof composition to reduce the proof size and verifier cost for on-chain verification