Índice:
Introduzir
Três problemas difíceis ao expandir o Blockchain
O que são soluções de escalonamento fora da cadeia?
Introdução às cadeias laterais
O que é Sidechain?
Como funciona uma cadeia lateral?
Por que as cadeias laterais são usadas?
Introdução aos canais de pagamento
O que é um canal de pagamento?
Como funcionam os canais de pagamento?
Roteamento de pagamento
Resumo
Introduzir
Escalabilidade é a capacidade do sistema de crescer para atender às crescentes necessidades de transação. Com computadores, você pode aumentar o desempenho atualizando o hardware para executar determinadas tarefas com mais rapidez. Quando falamos sobre escalabilidade em blockchains, falamos sobre aumentar a capacidade de processar múltiplas transações ao mesmo tempo.
Protocolos como o Bitcoin têm muitos pontos fortes, mas a escalabilidade não é um deles. Se o Bitcoin fosse um banco de dados gerenciado centralmente, seria fácil aumentar a velocidade e o rendimento da rede. Mas a proposta de valor do Bitcoin (resistência à censura) exige que vários participantes sincronizem uma cópia do blockchain.
Três problemas difíceis ao expandir o Blockchain
Operar um nó Bitcoin é relativamente barato e até mesmo dispositivos simples podem fazer isso. Mas como milhares de nós precisam atualizar uns aos outros, existem certas limitações em sua capacidade.
A cadeia tem uma capacidade limitada para lidar com volumes de transações, de modo a não permitir que o banco de dados cresça até um tamanho pesado. Se as transações forem muito grandes e rápidas, os nós não conseguirão acompanhar. Além disso, se os blocos forem muito grandes, eles não poderão ser retransmitidos rapidamente na rede.
Como resultado, nos deparamos com uma espécie de gargalo. Um blockchain pode ser pensado como um serviço de trem que parte em horários programados. Cada carruagem tem um número limitado de assentos e para obter a passagem os passageiros devem dar lance para garantir um assento. Se todos tentarem entrar no trem ao mesmo tempo, o preço da passagem será alto. Da mesma forma, uma rede congestionada com transações pendentes exigirá que os utilizadores paguem taxas mais elevadas para que as suas transações sejam processadas.
Uma solução é aumentar os vagões dos trens. Isto significa mais assentos, maior produtividade e tarifas mais baratas. Mas não há garantia de que as vagas não serão preenchidas como antes. Os carros não podem ser expandidos permanentemente, nem os bloqueios ou seus limites de combustível podem ser expandidos indefinidamente. A segunda coisa é que manter nós únicos na rede será mais caro, pois eles precisarão de hardware mais caro para permanecerem sincronizados.
O criador do Ethereum, Vitalik Buterin, cunhou o Trilema de Escalabilidade para descrever o desafio enfrentado pelos blockchains. Ele levanta a hipótese de que os protocolos sempre precisam fazer compromissos entre escalabilidade, segurança e descentralização. Eles estão sempre em conflito um com o outro – concentre-se demais em dois dos atributos e o terceiro será diminuído.
Por esse motivo, muitas pessoas veem a escalabilidade como algo que deve ser alcançado fora da cadeia, enquanto a segurança e a descentralização devem ser maximizadas na própria blockchain.
O que são soluções de escalonamento fora da cadeia?
O escalonamento fora da cadeia descreve abordagens que permitem que as transações sejam realizadas sem sobrecarregar o blockchain. Os protocolos on-chain permitem aos usuários enviar e receber fundos sem que as transações apareçam na cadeia principal. Analisamos as duas soluções mais notáveis nesta frente: sidechains e canais de pagamento.
Introdução às cadeias laterais
O que é Sidechain?
Cada sidechain é uma blockchain separada. No entanto, não é uma plataforma independente, pois está de alguma forma ligada à cadeia principal. A mainchain e a sidechain são interoperáveis, o que significa que o conteúdo pode fluir livremente de uma blockchain para outra.
Existem várias maneiras de garantir que os fundos possam ser transferidos de um lado para outro. Em alguns casos, os ativos são retirados da cadeia principal e depositados em um endereço especial. Na verdade, eles não são enviados – em vez disso, são bloqueados neste endereço e uma quantia adequada é liberada na cadeia lateral. Uma forma mais simples (embora seja uma opção centralizada) é depositar fundos com um custodiante, que trocará o depósito por fundos na sidechain.
Como funciona uma cadeia lateral?
Suponha que Alice tenha cinco bitcoins. Ela quer trocá-los por cinco unidades equivalentes em uma cadeia lateral de Bitcoin – vamos chamá-los de sidecoins. A sidechain em questão usa uma indexação bidirecional, o que significa que os usuários podem transferir seus ativos da mainchain para a sidechain e vice-versa.
Lembre-se de que a sidechain é uma blockchain separada. Portanto também terá blocos, nós e mecanismos de autenticação. Para obter suas sidecoins, Alice envia seus cinco bitcoins para outro endereço. A pessoa que os receber adicionará esses 5 sidecoins ao seu endereço assim que receber os bitcoins. Além disso, poderia ter algum tipo de configuração para aumentar a confiabilidade – o software adiciona automaticamente sidecoins assim que detecta uma transação de pagamento.

Alice agora converteu suas moedas em sidecoins, mas ela sempre pode reverter o processo para recuperar seus bitcoins. Agora que ela se juntou à cadeia lateral, ela pode realizar transações livremente nesta cadeia de blocos separada. Ela pode enviar sidecoins ou recebê-los de outras pessoas, assim como faz na cadeia principal.
Por exemplo, ela poderia pagar a Bob uma sidecoin por uma jaqueta Binance. Quando ela quiser seus Bitcoins de volta, ela poderá enviar seus quatro sidecoins restantes para um endereço especial. Assim que a transação for confirmada, os quatro bitcoins são desbloqueados e transferidos para um endereço que ela controla na cadeia principal.
Por que as cadeias laterais são usadas?
Você pode se perguntar qual é o propósito disso. Por que Alice não usa o blockchain Bitcoin por conveniência?
A resposta é que as sidechains podem fazer coisas que a blockchain do Bitcoin não consegue. Blockchain é um sistema de troca cuidadosamente projetado. Embora o Bitcoin seja a criptomoeda mais descentralizada e segura, não é o melhor blockchain em termos de rendimento. Embora as transações Bitcoin sejam mais rápidas que os métodos convencionais, ainda são relativamente lentas quando comparadas a outros sistemas blockchain. Os blocos são explorados a cada dez minutos, e as taxas podem aumentar significativamente quando a rede está congestionada.
É certo que pequenos pagamentos diários provavelmente não precisam desse nível de segurança. Se Alice precisar pagar por um café, ela não poderá esperar a confirmação da transação. Ela terá que esperar na fila e sua bebida estará fria quando chegar.
Sidechains não estão sujeitos às mesmas regras. Na verdade, eles nem precisam usar um mecanismo de consenso de Prova de Trabalho para funcionar. Você pode usar qualquer mecanismo de consenso, confiar em um único validador ou em qualquer número de validadores. Você pode adicionar atualizações que não existem na cadeia principal, criando blocos maiores e agilizando a execução.
O interessante é que mesmo que a cadeia lateral tenha bugs críticos, eles ainda não afetam a cadeia abaixo. Isso permite que sejam usados como plataforma para testar e implementar recursos que não exigem consenso da maioria da rede.
Desde que os usuários estejam satisfeitos com a compensação, as cadeias laterais são uma forma eficaz de dimensionar o blockchain. Os nós da cadeia principal não precisam armazenar todas as transações da cadeia lateral. Alice pode ingressar na sidechain com uma transação Bitcoin, fazer centenas de transações sidecoin e depois sair da sidechain. Nesse processo, para o blockchain Bitcoin, Alice só precisa fazer duas transações – uma para entrar e outra para sair.
O Plasma da Ethereum funciona de forma semelhante, mas com algumas diferenças importantes. Saiba mais: O que é Ethereum Plasma?
Introdução aos canais de pagamento
O que é um canal de pagamento?
Os canais de pagamento atuam como um canal secundário para ajudar o blockchain a aumentar a escalabilidade - semelhantes às cadeias laterais, mas são fundamentalmente muito diferentes. Assim como as cadeias laterais, os canais de pagamento empurram as transações para fora da cadeia principal para evitar o inchaço da blockchain. No entanto, ao contrário das cadeias laterais, elas não requerem uma blockchain separada para operar.
Um canal de pagamento que usa contratos inteligentes para permitir que os usuários façam transações sem publicar suas transações no blockchain. Isso é feito por meio de um acordo imposto por software entre os dois participantes.
Como funcionam os canais de pagamento?
Em modelos populares como a Lightning Network, duas partes primeiro depositam fundos em um endereço de propriedade conjunta. Este é um endereço multisig, que exige duas assinaturas para gastar fundos. Portanto, se Alice e Bob criarem tal endereço, os fundos só poderão ser transferidos com o consentimento de ambos.
Suponha que cada pessoa envie 10 BTC para um endereço, e esse endereço atualmente tenha 20 BTC. Seria fácil para eles manter um balanço que afirmasse claramente que Alice e Bob têm 10 BTC cada. Se Alice quisesse dar uma moeda a Bob, eles poderiam atualizá-la para registrar que Alice tinha 9 BTC e Bob tinha 11 BTC. Eles não terão que publicar no blockchain, mesmo que continuem a atualizar esses saldos.

Porém, em um momento adequado, digamos que Alice tenha 5 BTC e Bob tenha 15 BTC. Eles podem criar uma transação que envia esses saldos para endereços de propriedade das partes, assiná-los e gravá-los no blockchain.
Antes disso, Alice e Bob poderiam ter registrado dez, cem ou mil transações em seus balanços. Mas para o blockchain, eles realizam apenas duas operações na cadeia: uma para a transação de depósito inicial e outra para realocar o saldo quando todas as transações forem concluídas. Além dessas duas transações, todas as outras transações são gratuitas e quase instantâneas porque são realizadas fora da rede. Não há taxas pagas aos mineradores e nenhuma confirmação de bloco precisa ser feita.
É claro que o exemplo discutido acima exige que ambas as partes cooperem, o que não é uma situação ideal se forem estranhos. No entanto, mecanismos especiais podem ser usados para punir qualquer tentativa de trapaça, para que as partes possam interagir umas com as outras com segurança e sem confiança.
Roteamento de pagamento
Obviamente, os canais de pagamento são ferramentas convenientes quando ambas as partes têm grandes volumes de transações. Além disso, eles têm outras vantagens. Uma rede de canais pode ser dividida em partes, o que significa que Alice pode pagar a uma parte com a qual não tenha conexões diretas. Se Bob tiver um canal aberto com Carol, Alice poderá pagá-la, desde que haja fundos suficientes. Ela empurrará as moedas em direção ao canal de Bob e Bob, por sua vez, as empurrará para Carol. Se Carol estiver conectada a outro participante, Dan, a mesma coisa pode ser feita.
Essa rede evolui para uma topologia distribuída onde as pessoas se conectam a vários pares. Freqüentemente, haverá várias rotas para um destino e o usuário escolherá a rota mais eficiente.
Resumo
Discutimos duas abordagens que aumentam a escalabilidade do blockchain, permitindo transações sem sobrecarregar o blockchain principal. Tanto a tecnologia sidechain como os canais de pagamento ainda não estão completamente maduros, mas estão a ser cada vez mais adoptados por utilizadores que querem superar as desvantagens das transacções da camada base.
No futuro, à medida que mais utilizadores aderirem à rede, será importante manter a descentralização. Isto só pode ser alcançado através da criação de limites ao crescimento da blockchain, para que novos nós possam aderir facilmente. Os proponentes de soluções de escalonamento fora da cadeia acreditam que, com o tempo, a cadeia principal só será usada para liquidar transações de alto valor ou para bloquear/desativar cadeias laterais e abrir/fechar canais de pagamento.



