Skip to content

Commit 42be6ed

Browse files
JuArceentropidelicglpecile
authored
docs: add suggestions from notion (#574)
Co-authored-by: Mariano A. Nicolini <mariano.nicolini.91@gmail.com> Co-authored-by: Gian <58370608+glpecile@users.noreply.github.com>
1 parent 68634f4 commit 42be6ed

5 files changed

Lines changed: 57 additions & 16 deletions

File tree

docs/SUMMARY.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
* [About Aligned](introduction/0_about_aligned.md)
66
* [Getting started](introduction/1_getting_started.md)
7-
* [Core concepts](introduction/2_core_concepts.md)
7+
* [Key Terms](introduction/2_key_terms)
88
* [Use cases](introduction/3_use_cases.md)
99
* [FAQ](introduction/4_faq.md)
1010

docs/architecture/0_supported_verifiers.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Supported verifiers
22

3+
Aligned Layer's support for multiple proof systems is a significant advantage, as it allows users to choose the most suitable system based on their specific requirements.
4+
35
The following is the list of the verifiers currently supported by Aligned:
46

57
- :white_check_mark: gnark - Groth16 (with BN254)

docs/introduction/0_about_aligned.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,11 @@ Currently, proof verification in Ethereum is expensive and throughput is limited
1414

1515
Proof technology has been evolving over the last decade, with new arguments, fields, commitments and other tools appearing every day. It is hard to try new ideas if verification costs are high and there is a considerable go-to-market time, as a consequence of development time of new, gas-optimized smart contracts, or the inclusion of new precompiles to make them affordable.
1616

17-
Aligned provides an alternative to reduce costs and increase throughput significantly. This is achieved by two different modes: the fast mode and the aggregation/slow mode. The fast mode works with a subset of Ethereum’s validators via restaking. Validators (also called Operators) receive proofs, verify them using the verification code written in Rust or another higher-level language, and sign messages with BLS signatures. If a two-thirds majority agrees, the results are posted in Ethereum. Since Aligned’s operators only need to run the verification code on bare metal, we have several advantages compared to running it on top of the EVM:
17+
Aligned provides an alternative to reduce costs and increase throughput significantly. This is achieved by two different modes: **fast mode** and **aggregation mode**.
18+
19+
The fast mode works with a subset of Ethereum’s validators via restaking. Validators (also known as Operators) receive proofs, verify them using the verification code written in Rust or any other higher-level language, and then sign messages with BLS signatures. If a two-thirds (2/3) majority agrees, the results are posted in Ethereum.
20+
21+
Since Aligned’s operators only need to run the verification code on bare metal, we have several advantages compared to running it on top of the EVM:
1822

1923
- The code can be optimized for speed, not gas consumption.
2024
- We can leverage parallelization to increase throughput.

docs/introduction/2_core_concepts.md

Lines changed: 0 additions & 14 deletions
This file was deleted.

docs/introduction/2_key_terms.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
## Key Terms
2+
3+
### Proof
4+
5+
A **Proof** is cryptographic data that can attest to the validity of a given computation. The concrete data and size depend on the proof system and program used.
6+
7+
### Verification
8+
9+
The **Verification** is an algorithm that takes the proof, and associated public data and verification key/program and outputs whether the proof is valid or not.
10+
11+
### Proof Batch
12+
13+
A **Proof batch** is a collection of verification tasks to be carried out by the Operators.
14+
15+
### User CLI
16+
17+
The **User CLI** is used to interact with the Verifier Task Batcher. It sends proof and public input data and receives the verification data in Aligned.
18+
19+
### Verifier Task Batcher
20+
21+
The **Verifier Task Batcher** receives tasks from users, creates batches of tasks, publishes the proof and public data in the Data service, and sends the batches’ data to Ethereum. This service is permissionless, meaning users have the option to run their own batcher.
22+
23+
### Service Manager
24+
25+
The **Service Manager (Ethereum smart contract)** receives the batches’ data and signatures from the BLS signature aggregator. This contract provides information to validators and Light Clients on the batches/tasks.
26+
27+
### Data Service
28+
29+
The **Data Service** temporarily stores the data for the proof and public input.
30+
31+
### Operators
32+
33+
The **Operators** are responsible for performing the verification of the proofs in each batch and signing messages with the results.
34+
35+
### BLS Signature Aggregator
36+
37+
The **BLS Signature Aggregator** receives the signatures from the Operators, checks if a quorum is reached, if so, it performs the aggregation of the signatures.
38+
39+
### Light Clients
40+
41+
The **Light Client** samples random tasks from the Service Manager, checks the proofs, and compares against the results posted to Ethereum by Aligned. If there are differences, it can trigger an L1 verification via the proof service. In case of malicious behavior by Aligned’s Operators, this would lead to slashing.
42+
43+
### Proof Service
44+
45+
The **Proof Service** receives results from the Light Clients; in case there are differences with the results posted by Aligned, it triggers a re-verification on Ethereum. Note that this re-verification can also be triggered by any user.
46+
47+
### Proof Aggregator
48+
49+
The **Proof aggregator**, once tasks have been verified by Aligned’s Operators, performs recursive proof verification to create one proof that will attest to the validity of all proofs contained in the batch. This proof is verified on-chain.

0 commit comments

Comments
 (0)