Uma análise aprofundada inédita do sequenciador (sequencer) da Cartesi! Vamos explorar o que é, por que é importante e como funciona. 🧵↓
https://fxtwitter.com/cartesiproject/status/2109993133866119399
1/ As aplicações interativas precisam de velocidade, enquanto a finalização no Ethereum leva tempo. Ninguém quer esperar vários minutos após cada clique para obter a confirmação final na L1 (camada 1). É aí que entra o sequenciador.
2/ O sequenciador recebe as operações assinadas pelos utilizadores e confirma-as imediatamente (ou seja, dá uma «confirmação suave»).
Em segundo plano, agrupa essas operações e submete-as à L1. Os utilizadores recebem uma resposta quase instantânea, enquanto o Ethereum continua a ser a autoridade e a «fonte da verdade» (source of truth).
Todos os detalhes sobre o nosso sequenciador: https://github.com/cartesi/sequencer
3/ Como funciona, do ponto de vista técnico? Cada conjunto de operações dos utilizadores (chamado «quadro»/frame) aponta para um bloco seguro da L1. O agendador on-chain recebe todos os depósitos efetuados até esse bloco e, em seguida, executa as mesmas operações na mesma ordem.
O sequenciador e o Rollup seguem as mesmas regras e, por isso, acabam por chegar a um estado consensual.
4/ Embora o sistema utilize um único sequenciador, este não pode roubar fundos nem falsificar o estado. O Rollup verifica tudo e garante que o resultado é cumprido através de provas de fraude (fraud proofs).
O processo de depósito contorna completamente o sequenciador. Mesmo que este tente censurar, só pode atrasar os depósitos por algumas horas — nunca bloqueá-los por completo.
5/ O sequenciador da Cartesi ainda está em fase Alpha, mas o seu desenvolvimento está a avançar rapidamente.
Foi concebido para lidar com interrupções na L1, falhas, reinícios, períodos prolongados de inatividade e mempools maliciosas. Sempre que é iniciado, verifica a base de dados e o Ethereum para determinar o que precisa de ser corrigido.
Além disso, um programa independente de «vigilância» (watchdog) verifica o seu estado de forma autónoma.
6/ A versão mais recente, v0.1.0-alpha.10, inclui o sequenciador, imagens da máquina (machine images) e o programa de vigilância.
As novidades incluem: cotações públicas de taxas, histórico da aplicação compatível com reprodução, bindings para aplicações em C, um programa de vigilância reescrito e Cartesi Machine v0.21.0. Atenção: esta versão inclui alterações incompatíveis (breaking changes). Leia primeiro as notas da versão: https://github.com/cartesi/sequencer/releases/tag/v0.1.0-alpha.10
Republicação: https://x.com/cartesiproject/status/2109993133866119399
https://fxtwitter.com/cartesiproject/status/2109993133866119399
1/ As aplicações interativas precisam de velocidade, enquanto a finalização no Ethereum leva tempo. Ninguém quer esperar vários minutos após cada clique para obter a confirmação final na L1 (camada 1). É aí que entra o sequenciador.
2/ O sequenciador recebe as operações assinadas pelos utilizadores e confirma-as imediatamente (ou seja, dá uma «confirmação suave»).
Em segundo plano, agrupa essas operações e submete-as à L1. Os utilizadores recebem uma resposta quase instantânea, enquanto o Ethereum continua a ser a autoridade e a «fonte da verdade» (source of truth).
Todos os detalhes sobre o nosso sequenciador: https://github.com/cartesi/sequencer
3/ Como funciona, do ponto de vista técnico? Cada conjunto de operações dos utilizadores (chamado «quadro»/frame) aponta para um bloco seguro da L1. O agendador on-chain recebe todos os depósitos efetuados até esse bloco e, em seguida, executa as mesmas operações na mesma ordem.
O sequenciador e o Rollup seguem as mesmas regras e, por isso, acabam por chegar a um estado consensual.
4/ Embora o sistema utilize um único sequenciador, este não pode roubar fundos nem falsificar o estado. O Rollup verifica tudo e garante que o resultado é cumprido através de provas de fraude (fraud proofs).
O processo de depósito contorna completamente o sequenciador. Mesmo que este tente censurar, só pode atrasar os depósitos por algumas horas — nunca bloqueá-los por completo.
5/ O sequenciador da Cartesi ainda está em fase Alpha, mas o seu desenvolvimento está a avançar rapidamente.
Foi concebido para lidar com interrupções na L1, falhas, reinícios, períodos prolongados de inatividade e mempools maliciosas. Sempre que é iniciado, verifica a base de dados e o Ethereum para determinar o que precisa de ser corrigido.
Além disso, um programa independente de «vigilância» (watchdog) verifica o seu estado de forma autónoma.
6/ A versão mais recente, v0.1.0-alpha.10, inclui o sequenciador, imagens da máquina (machine images) e o programa de vigilância.
As novidades incluem: cotações públicas de taxas, histórico da aplicação compatível com reprodução, bindings para aplicações em C, um programa de vigilância reescrito e Cartesi Machine v0.21.0. Atenção: esta versão inclui alterações incompatíveis (breaking changes). Leia primeiro as notas da versão: https://github.com/cartesi/sequencer/releases/tag/v0.1.0-alpha.10
Republicação: https://x.com/cartesiproject/status/2109993133866119399
