ZK-Rollup
Les ZK-Rollups sont des solutions de mise à l'échelle de couche 2 qui regroupent plusieurs transactions en une seule transaction, en utilisant des preuves de connaissance zéro pour valider leur exactitude sur la chaîne principale.
Les ZK-Rollups améliorent l'évolutivité de la blockchain en traitant les transactions hors chaîne, puis en soumettant une preuve de validité au mainnet. Cette preuve confirme l'intégrité des transactions hors chaîne sans révéler les données sous-jacentes. Cette approche réduit considérablement la charge de calcul sur la chaîne principale, ce qui conduit à un débit plus élevé et à des frais de transaction plus faibles pour les utilisateurs. L'utilisation de preuves de connaissance zéro garantit que les transitions d'état sont valides, maintenant la sécurité de la blockchain sous-jacente.
Les ZK-Rollups offrent un avantage significatif en termes d'évolutivité et d'efficacité par rapport aux autres solutions de couche 2. Ils utilisent des preuves cryptographiques pour vérifier la validité des transactions, ce qui permet des temps de transaction plus rapides et des coûts réduits. Le principe de base consiste à regrouper plusieurs transactions en un seul lot, à générer une preuve succincte, puis à soumettre cette preuve au mainnet. Cette méthode permet au mainnet de vérifier rapidement la validité du lot sans réexécuter toutes les transactions.
graph LR
Center["ZK-Rollup"]:::main
Pre_zero_knowledge_proof["zero-knowledge-proof"]:::pre --> Center
click Pre_zero_knowledge_proof "/terms/zero-knowledge-proof"
Rel_optimistic_rollup["optimistic-rollup"]:::related -.-> Center
click Rel_optimistic_rollup "/terms/optimistic-rollup"
Rel_validium["validium"]:::related -.-> Center
click Rel_validium "/terms/validium"
Rel_data_availability["data-availability"]:::related -.-> Center
click Rel_data_availability "/terms/data-availability"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧒 Explique-moi comme si j'avais 5 ans
Un certificat magique.
🤓 Expert Deep Dive
ZK-Rollups leverage succinct non-interactive arguments of knowledge (SNARKs or STARKs) to compress transaction data and provide cryptographic validity. The process typically involves an operator (sequencer) collecting transactions, executing them off-chain, generating state transitions, and constructing a validity proof. This proof attests to the correctness of the state transition function applied to the batch of transactions. The Layer-1 contract verifies this proof, which is computationally cheaper than re-executing all transactions. State updates are managed via state roots stored on-chain. Data availability is a critical component; ensuring that the transaction data (or at least its compressed representation) is available off-chain (e.g., via data availability committees or posting compressed data to Layer-1 calldata) is crucial for users to reconstruct the state and exit the rollup if the operator misbehaves. Different ZK-Rollup designs vary in their proof systems (SNARK vs. STARK), data availability strategies, and mechanisms for handling withdrawals and potential operator failures.