Architecture
Verity is a network of nodes, where each node plays one of four roles:
-
Provers:
Any entity aiming to prove their data sources are true is considered a Prover.
-
Notaries:
Assist in privacy-preserving authenticity and integrity proof generation for Provers of HTTP and API requests, without learning the actual data.
-
Verifier:
The Verifier role is assumed by the destination system, typically a blockchain where verification is trustless. However, this may also be a centralised Verifier aggregating proof of data flow for analytical purposes.
-
Coordinator:
This role is currently assumed by Usher Labs but can be decentralised in the future.
The Coordinator facilitates security oversight of engagements between Provers and Notaries. Its primary purpose is to use advanced analysis to prevent collusion between these two roles. When a Prover initiates a session, the Coordinator provides an authentication key to secure the session. Notary selection is based on randomness, reputation, latency/geography, blockchain transaction history, wallet associations, identity, etc.
Additionally, successful engagements by the Prover and Notary result in digital asset rewards. This is managed by zkProof of Work. A secure data pipeline that prevents the Coordinator from tampering with work rewards for network participants.
The Coordinator resembles a sequencer in a Layer 2 (L2) network, with its sole purpose being security.
View a walkthrough of this architecture learn more. To explore the various architectures, please visit Verity Architecture.
Processโ
-
Verity Prover technology operates in the background, similar to a VPN. When a request is made from the OS, the Prover begins its work.
-
The Prover initiates a session by requesting authentication from the Coordinator.
-
Upon receiving the carefully selected Notary for assistance in proof generation, the Prover authenticates and engages the Notary.
-
The Notary assists in proving network requests to various data sources. Under the hood, a cryptographic two-party MPC session is facilitated between the Prover and Notary.
Unlike other two-party MPC networks, Notaries are decentralised to operate at the edge, minimising latency in network communication.
-
Once an MPC session is complete, the Prover collates proofs of data sources locally and can forward these proofs over a socket connection to local processes for further management.
-
These adjacent local processes can include additional data processing, facilitated by the Verity Data Processor, or a local Oracle responsible for aggregating verifiable data and submitting it to the destination blockchain.