Pular para o conteúdo
0%

Sidechains vs layer 2s do Ethereum: qual é a diferença?

Alchemy team headshot

Escrito por Alchemy

Publicado em 16 de maio de 20226 min de leitura

Com milhões de usuários entrando na rede Ethereum e desenvolvedores construindo aplicações Ethereum todos os dias, o Ethereum é limitado pelo número de suas transações. A capacidade do Ethereum de processar transações, seu throughput de transações, é limitada a 15 transações/segundo, o que a torna cada vez mais cara e frequentemente congestionada demais para que muitas pessoas a utilizem.

A rede Ethereum é a chain principal, e todas as transações que ocorrem diretamente nela são "on-chain", enquanto qualquer outra coisa é considerada "off-chain". São algumas dessas soluções off-chain, como sidechains e layer 2s, que podem ajudar o Ethereum a escalar, aumentando a velocidade das transações e a quantidade de dados de transação que a rede consegue processar. Neste artigo, mostraremos o que são sidechains e soluções de layer 2, e como elas podem ajudar com a escalabilidade.

Quais problemas as sidechains e layer 2s resolvem?

Sidechains e soluções de layer 2 do Ethereum lidam com o problema de ajudar o Ethereum a escalar. Tentativas de escalar o desempenho on-chain frequentemente levam a um trade-off entre a descentralização ou a escalabilidade do Ethereum - isso é conhecido como o Trilema da Escalabilidade.

Aumentar a sofisticação do Ethereum layer 1 não é ideal, pois isso elevaria o nível de overhead de governança para a plataforma debater, decidir e implementar continuamente novas melhorias. Sidechains e soluções de layer 2 permitem inovação constante e incremental que melhora o Ethereum para todos, mantendo a segurança e a descentralização.

Qual é a principal diferença entre sidechains e soluções de layer 2?

A principal diferença entre sidechains e soluções de layer 2 do Ethereum é que, enquanto layer 2 herda a segurança da rede Ethereum principal, sidechains dependem de sua própria segurança.

O que é uma sidechain do Ethereum?

Uma sidechain do Ethereum é uma rede blockchain separada que roda em paralelo à chain principal do Ethereum. Sidechains se conectam à chain principal através de um sistema de peg de mão dupla, permitindo que ativos sejam trocados entre as chains.

Existem dois tipos básicos de sidechains: um em que uma chain depende da outra, e outro em que são independentes.

Quando uma chain depende de outra, como o Ethereum, ela pode ser considerada a child chain dessa parent chain. Normalmente, a child chain não cria seus próprios ativos e deriva quaisquer ativos de transferências da parent chain.

Diagrama de uma sidechain do Ethereum conectada à cadeia principal por um two-way peg
Fonte: Documentação da EthHub

Sidechains têm seus próprios protocolos de consenso, que geralmente são projetados para tipos específicos de transações e as tornam mais rápidas e acessíveis. No entanto, isso também significa que elas normalmente não herdam as propriedades de segurança do Ethereum, e ao usar uma sidechain você perde a custódia de seus fundos e depende exclusivamente da segurança da sidechain, incluindo os nós que participam de seu próprio protocolo de consenso.

Sidechains reduzem o congestionamento na chain principal, reduzindo o custo para todos e aumentando a usabilidade e a escalabilidade do ecossistema Ethereum. Desenvolvedores também podem usar sidechains para explorar e testar novos recursos e casos de uso que não estão disponíveis na chain principal.

Sidechains populares incluem Polygon PoS, Skale e Rootstock. O Ethereum 2.0 tem sua própria variação de sidechains chamada shard chains, que estão conectadas à recém-lançada Beacon Chain, cujo objetivo final é se tornar a chain principal do Ethereum baseado em proof of stake (PoS).

Como funcionam as sidechains?

Sidechains funcionam conectando-se à chain principal através de um sistema de peg de mão dupla ou bridge. A partir da chain principal, você pode enviar seu Ethereum para um endereço de saída que atua como uma caixa de bloqueio, de forma que você não consiga gastá-lo em outro lugar.

Uma vez que essa transação é concluída e o "período de contestação", para segurança adicional, tenha passado, um recibo chamado "Simple Payment Verification" (SPV) é fornecido. Isso aciona a liberação do mesmo valor de uma caixa de bloqueio na sidechain via smart contract. Ao "transferir" da sidechain de volta para a chain principal, o mesmo processo exato acontece, mas de forma inversa.

Como desenvolver em sidechains?

Sidechains são baseadas na Ethereum Virtual Machine (EVM), que é o mecanismo de computação do Ethereum, e essa compatibilidade com a Ethereum Virtual Machine significa que desenvolvedores não precisam fazer nenhuma alteração quando quiserem usar sua aplicação em uma sidechain. É simplesmente uma questão de implantar o mesmo código, já que todas compartilham a mesma camada de software do Solidity e podem ser acessadas através da mesma Web3 API!

O que é um protocolo layer 2?

Protocolos layer 2 são chains que vivem dentro da chain Ethereum, mas conseguem alcançar maior escalabilidade através de um framework secundário. Isso reduz o congestionamento na camada principal, fazendo com que a maior parte da atividade seja processada através da segunda camada. Diferente de uma sidechain, layer 2 geralmente herda as propriedades de segurança da chain principal.

Layer 1 é a blockchain base. O Ethereum é uma blockchain layer 1 porque é o alicerce subjacente sobre o qual várias blockchains layer 2 são construídas. Em termos simples, layer 2 comprime lotes de transações e os envia para a rede Ethereum principal.

O que são soluções de escalabilidade layer 2?

Soluções de escalabilidade layer 2 incluem channels, rollups e plasma. Aqui está um detalhamento de cada uma dessas soluções individuais.

1. State channels

Com state channels, usuários transacionam diretamente entre si off-chain e reduzem as transações on-chain apenas às informações mais importantes. Especificamente, parte da blockchain é bloqueada via smart contract, de forma que os participantes envolvidos na transação precisem concordar completamente antes de atualizá-la.

Participantes atualizam o estado entre si criando e assinando transações que poderiam ser submetidas à blockchain. Quando você quiser parar de usar o channel, você sai e submete a última atualização de estado para a chain principal, o que desbloqueia o estado novamente.

Diagrama de state channels do Ethereum movendo transações fora da cadeia entre participantes
Fonte: Documentação da EthHub

2. Rollups

Um rollup executa a execução de transações fora da blockchain Ethereum principal e então agrupa múltiplas transações antes de enviá-las de volta para a rede Ethereum principal. Rollups dependem de provas para permitir que o Ethereum verifique sua correção sem processar as transações.

Quais são os dois tipos de rollups?

Em geral, existem dois tipos de rollups: Zero-knowledge (ZK) Rollups e Optimistic Rollups.

1. Zero-knowledge rollups (ZK rollups)

Zero-Knowledge Rollups (ZK rollups) usam provas de validade. Cada lote de transações inclui uma prova criptográfica chamada Succinct Non-Interactive Argument of Knowledge (SNARK), que é verificada por um contrato na camada principal do Ethereum.

Como apenas a prova de validade, e não os volumosos dados de transação, precisa ser armazenada na chain principal, essa computação off-chain economiza grandes quantidades de tempo e poder de processamento, tornando os zero-knowledge rollups mais rápidos e muito mais eficientes.

2. Optimistic rollups

Optimistic Rollups usam provas de fraude. Como o nome sugere, elas assumem otimisticamente que todas as transações são válidas e submetem lotes sem nenhuma prova inicial. Há um período de contestação no qual outros conseguem detectar e provar que os dados em um lote são fraudulentos.

Se o lote se revelar fraudulento, Optimistic rollups executam uma prova de fraude e realizam o cálculo correto da transação usando os dados disponíveis na chain principal do Ethereum. Exigir que os participantes façam stake de ETH, que é recompensado ou cortado (slashed) com base em suas ações, incentiva o bom comportamento.

Empresas como Optimism ajudam o Ethereum a escalar, oferecendo maior throughput, menor latência e taxas de gas mais baixas. No momento em que este texto foi escrito, as taxas de gas da Optimism eram até 10x mais baratas que as do Ethereum!

3. Plasma

Pense no Plasma como a sidechain nativa do Ethereum, usando uma combinação de smart contracts e Merkle trees para criar uma ramificação ilimitada de child chains. Essas child chains são cópias menores da chain principal do Ethereum com seu próprio mecanismo de consenso.

A largura de banda necessária para computação e os dados de transação são descarregados das parent chains, mas publicados na root chain em intervalos regulares. Cada child chain depende de um sistema de prova de fraude para segurança, similar aos rollups, com um período de tempo em que qualquer pessoa pode contestar sua validade.

A principal diferença em relação a outras sidechains é que a "raiz" de cada bloco da plasma chain é publicada no Ethereum, o que significa que ela de fato herda a segurança da chain principal.

Diagrama de child chains do Plasma derivando da cadeia principal do Ethereum
Fonte: Nirolution

Empresas como a Polygon possibilitam transações mais rápidas com taxas de gas muito mais baixas, tanto para desenvolvedores quanto para usuários finais. Esses benefícios claros tornam extremamente atraente construir sobre plasma, e é fácil entender por que elas apresentaram crescimento explosivo.

Quais sidechains e layer 2s a Alchemy suporta?

Obtenha uma conta de desenvolvedor Alchemy gratuita para começar a construir no Ethereum ou nessas sidechains e layer 2s do Ethereum:

  • Polygon (Sidechain)
  • Arbitrum (Layer 2)
  • Optimism (Layer 2)
  • Starknet (Layer 2)

A adoção em massa da implementação de soluções de escalabilidade como sidechains e layer 2 (channels, optimistic rollup, zk rollup e Plasma) tira a pressão da mainnet do Ethereum e, portanto, ajuda mais usuários a acelerar tempos de transação mais lentos e reduzir taxas de transação altas, mantendo ao mesmo tempo as mesmas garantias de segurança (no caso das soluções Layer 2) e as aplicações descentralizadas tão conhecidas do Ethereum.

Background gradient

Construa magia blockchain

A Alchemy combina os produtos e ferramentas de desenvolvimento Web3 mais poderosos com recursos, comunidade e suporte lendário.