Explicação Profundidade da expansão fora da cadeia
Autor: Cobo Ventures
1. A Necessidade de Expansão
A visão futura da blockchain é a descentralização, segurança e escalabilidade. Mas normalmente a blockchain só consegue realizar dois desses objetivos, e satisfazer os três requisitos é conhecido como o problema do triângulo impossível da blockchain. Ao longo dos anos, as pessoas têm explorado maneiras de resolver esse dilema, como aumentar a capacidade de processamento e a velocidade das transações da blockchain, garantindo ao mesmo tempo a descentralização e a segurança, ou seja, resolver o problema de escalabilidade, que é um dos tópicos mais discutidos no processo de desenvolvimento atual da blockchain.
Vamos primeiro definir de forma geral a descentralização, segurança e escalabilidade da blockchain:
Descentralização: qualquer pessoa pode se tornar um nó e participar da produção e verificação do sistema de blockchain. Quanto maior o número de nós, maior o nível de descentralização, garantindo assim que a rede não seja controlada por um pequeno grupo de grandes participantes centralizados.
Segurança: Quanto maior o custo para obter o controle do sistema de blockchain, maior será a segurança, e assim a cadeia pode resistir a uma maior proporção de ataques de participantes.
Escalabilidade: a capacidade da blockchain de processar um grande número de transações.
A primeira grande bifurcação dura da rede Bitcoin surgiu devido ao problema de escalabilidade. Com o aumento do número de usuários e do volume de transações do Bitcoin, a rede começou a enfrentar problemas de congestionamento, uma vez que o limite de cada bloco é de 1MB; a partir de 2015, a comunidade Bitcoin começou a ter divergências sobre a questão da escalabilidade. Um lado é representado pela Bitcoin ABC, que apoia a expansão do bloco, enquanto o outro é representado pelo Bitcoin Core, que defende que a solução Segwit de witness segregado deve ser utilizada para otimizar a estrutura da cadeia principal. Em 1 de agosto de 2017, o cliente desenvolvido pela Bitcoin ABC, com capacidade de 8MB, começou a operar, levando à primeira grande bifurcação dura da história do Bitcoin, e assim surgiu a nova criptomoeda BCH.
Da mesma forma, a rede Ethereum também optou por sacrificar uma parte da escalabilidade para garantir a segurança e a descentralização da rede; embora a rede Ethereum não tenha limitado o volume de transações como a rede Bitcoin através da limitação do tamanho dos blocos, ela mudou indiretamente para estabelecer um limite nas taxas de gás que um único bloco pode acomodar, mas o objetivo é o mesmo: alcançar um consenso sem confiança e garantir uma ampla distribuição de nós.
Desde o CryptoKitties de 2017, o verão DeFi, até o surgimento posterior de aplicações em cadeia como GameFi e NFT, a demanda do mercado por capacidade de processamento tem aumentado constantemente. No entanto, mesmo o Ethereum, que é Turing completo, consegue processar apenas 15 a 45 transações por segundo. O resultado disso é um aumento contínuo nos custos de transação e um tempo de liquidação mais longo, tornando a maioria das Dapps difíceis de suportar em termos de custos operacionais. A rede inteira tornou-se lenta e cara para os usuários, e o problema de escalabilidade da blockchain precisa ser resolvido urgentemente. A solução ideal de escalabilidade é: aumentar a velocidade das transações e a capacidade de processamento da rede blockchain, sem comprometer a descentralização e a segurança.
2. Tipos de soluções de escalabilidade
Nós classificamos as soluções de escalabilidade em duas grandes categorias, a saber, escalabilidade em cadeia e escalabilidade fora da cadeia, com base no critério "se muda uma camada da rede principal".
2.1 expansão na cadeia
Conceito central: solução que atinge o efeito de escalabilidade através da alteração de uma camada do protocolo da rede principal, sendo a principal solução atual a fragmentação.
A escalabilidade na cadeia tem várias soluções, este artigo não irá expandir, a seguir estão brevemente listadas duas soluções:
A opção um é expandir o espaço do bloco, ou seja, aumentar o número de transações empacotadas em cada bloco, mas isso aumentará os requisitos para dispositivos de nós de alto desempenho, elevará a barreira de entrada para nós e diminuirá o grau de "descentralização".
A solução dois é o sharding, que divide o livro razão da blockchain em várias partes, em vez de cada nó participar de todos os registros, diferentes shards ou nós diferentes são responsáveis por diferentes registros, o processamento em paralelo pode lidar com várias transações simultaneamente; isso pode reduzir a pressão de cálculo nos nós e o limiar de entrada, aumentando a velocidade de processamento de transações e o grau de descentralização; mas isso significa que a capacidade computacional da rede é dispersa, o que pode reduzir a "segurança" de toda a rede.
Alterar o código do protocolo principal da rede pode ter efeitos negativos imprevisíveis, uma vez que qualquer pequena falha de segurança subjacente pode ameaçar gravemente a segurança de toda a rede, que pode ser forçada a realizar um fork ou a interromper as atualizações de reparo. Por exemplo, o incidente da vulnerabilidade de inflação do Zcash em 2018: o código do Zcash foi modificado com base no código da versão 0.11.2 do Bitcoin, e em 2018 um engenheiro descobriu uma vulnerabilidade crítica em seu código subjacente, ou seja, os tokens podiam ser emitidos ilimitadamente, e a equipe levou 8 meses a reparar secretamente, e o incidente só foi tornado público após a correção da vulnerabilidade.
2.2 fora da cadeia expansão
Conceito central: solução de escalabilidade que não altera o protocolo da rede principal de camada 1 existente.
O plano de escalabilidade fora da cadeia pode ser subdividido em Layer2 e outras soluções:
Camada 2: Canais de Estado, Plasma, Rollups
Outras soluções: Sidechains, Validium
3. Plano de expansão fora da cadeia
3.1 Canais de Estado
3.1.1 Resumo
Os canais de estado estipulam que os usuários só precisam interagir com a rede principal quando o canal é aberto, fechado ou para resolver disputas, e que as interações entre usuários sejam feitas fora da cadeia, a fim de reduzir o tempo e os custos financeiros das transações dos usuários, além de permitir que o número de transações não tenha limitações.
Os canais de estado são protocolos P2P simples, adequados para "aplicações baseadas em turnos", como um jogo de xadrez entre duas pessoas. Cada canal é gerido por um contrato inteligente de múltiplas assinaturas que opera na mainnet, que controla os ativos depositados no canal, valida as atualizações de estado e arbitra disputas entre os participantes. Após o contrato ser implantado na rede blockchain, os participantes depositam uma quantia de fundos e a bloqueiam; o canal é oficialmente aberto após a confirmação da assinatura de ambas as partes. O canal permite transações gratuitas fora da cadeia entre os participantes, sem limites de número. Os participantes alternam o envio de atualizações de estado um ao outro, aguardando a confirmação da assinatura do outro. Uma vez que a assinatura do outro seja confirmada, a atualização de estado é considerada concluída. Normalmente, as atualizações de estado acordadas por ambas as partes não são carregadas na mainnet; apenas em caso de disputas ou ao fechar o canal é que se recorre à confirmação da mainnet. Quando é necessário fechar o canal, qualquer participante pode fazer um pedido de transação na mainnet, e se o pedido de saída receber a aprovação de todas as assinaturas, a execução é imediata na cadeia, ou seja, o contrato inteligente distribui os fundos bloqueados restantes com base nos saldos de cada participante no estado final do canal; se outros participantes não aprovarem a assinatura, todos devem aguardar o término do "período de contestação" para receber os fundos restantes.
Em suma, a solução de canais de estado pode reduzir significativamente a carga computacional na rede principal, aumentar a velocidade das transações e diminuir os custos das transações.
3.1.2 Linha do tempo
2015/02, Joseph Poon e Thaddeus Dryja publicaram o rascunho do white paper da Lightning Network.
2015/11, Jeff Coleman fez a primeira síntese sistemática do conceito de State Channel, propondo que o Payment Channel do Bitcoin é um subcaso do conceito de State Channel.
2016/01, Joseph Poon e Thaddeus Dryja publicaram oficialmente o white paper "The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments" que propõe a solução de escalabilidade do Bitcoin através do Payment Channel.
2017/11, a primeira especificação de design sobre State Channel baseada na estrutura Payment Channel, Sprites, foi proposta.
2018/06, Counterfactual apresentou um design muito detalhado de Canais de Estado Generalizados, que é o primeiro design completamente relacionado a canais de estado.
2018/10, o artigo Generalised State Channel Networks propôs os conceitos de State Channel Networks e Virtual Channels.
2019/02, o conceito de canais de estado foi expandido para Canais N-Partido, Nitro é o primeiro protocolo construído com base nessa ideia.
2019/10, Pisa para resolver o problema de que todos os participantes precisam estar continuamente online, expandiu o conceito de Watchtowers.
Os participantes bloqueiam ativos no contrato inteligente da rede principal e ativam o canal de estado.
Os participantes realizam interações de atualização de estado fora da cadeia, sendo que cada interação requer a confirmação da assinatura de ambas as partes.
Quando for necessário fechar o canal ou ocorrer uma disputa, submeta o estado final ao contrato da mainnet para validação e distribuição de ativos.
Se houver disputas, é possível apresentar evidências para contestar durante o período de contestação.
As vantagens dos canais de estado são que permitem transações rápidas e de baixo custo fora da cadeia, enquanto as desvantagens são que os participantes precisam estar continuamente online e há o problema de bloqueio de liquidez.
3.1.4 Vantagens e desvantagens
Vantagens:
Alta taxa de transferência e baixa latência
Baixos custos de transação
Proteger a privacidade
Desvantagens:
Os participantes devem estar continuamente online
Bloqueio de fundos
Não aplicável a aplicações de múltiplas partes
É necessário depositar fundos antecipadamente
3.1.5 Aplicação
As principais aplicações incluem:
Rede Lightning do Bitcoin
Usado para pagamentos em Bitcoin de baixo valor
Lançamento da primeira versão da mainnet em março de 2018
Atualmente existem cerca de 80.000 canais de pagamento, 5000BTC em fundos bloqueados
Rede Lightning do Ethereum
Usado para pagamento de tokens ERC20 do Ethereum
Fundado em 2017, lançou a rede principal em maio de 2020
Atualmente utilizado com pouca frequência
Celer Network
Aumentou a rede de canais de estado geral com camada de incentivo
Fundado em 2018, lançado a mainnet em 2019
Suporte a vários cenários de aplicação, como jogos e pagamentos
3.1.6 Comparação de Aplicações
A rede Lightning do Bitcoin, a rede Lightning do Ethereum e a Celer Network apresentam algumas diferenças em termos de implementação técnica, cenários de aplicação e estado de desenvolvimento. A rede Lightning está mais madura, a rede Lightning é utilizada com menos frequência, e a Celer Network expandiu os cenários de aplicação ao adicionar uma camada de incentivo.
3.2 Sidechains
3.2.1 Resumo
A cadeia lateral é uma forma de blockchain que surgiu para acelerar as transações da cadeia principal, podendo utilizar contratos mais complexos, ou melhorar o mecanismo de consenso, ou ajustar parâmetros de bloco para que a cadeia lateral atenda a funções específicas. Os resultados das transações da cadeia lateral são finalmente registrados no lado do validador quando são transmitidos de volta para a cadeia principal. Este modelo de blockchain não é uma nova forma de blockchain, mas sim uma infraestrutura que se anexa à cadeia principal e ajuda a resolver problemas da mesma.
3.2.2 Linha do Tempo
2012/01, o conceito de sidechain do Bitcoin foi proposto em um chat.
2014/10, o artigo sobre cadeias laterais de Bitcoin foi publicado pela primeira vez
2017/04, a POA Network lançou a rede de testes de uma sidechain baseada no consenso Proof of Authentication do Ethereum
2017/10, Matic Network lançou
2017/12, a mainnet da POA Network foi lançada
2018/01, Lançamento da rede de testes Skales
2018/10, lançamento da rede de testes xDai Chain
2020/06, Lançamento da mainnet Skale
2020/06, a mainnet da cadeia lateral Ethereum Matic PoS foi lançada
2021/02, a marca Matic Network foi renomeada para Polygon Network
2021/02, a mainnet da sidechain Ronin do jogo Axie Infinity começou a funcionar
2021/12, xDai Chain fundiu-se com Gnosis Dao para formar Gnosis Chain
2022/03, a POA Network foi incorporada à Gnosis Chain
3.2.3 Princípios Técnicos
O princípio fundamental das sidechains é:
Ativos da cadeia principal bloqueados, ativos correspondentes gerados na cadeia lateral.
A sidechain opera de forma independente, com seu próprio mecanismo de consenso.
As sidechains enviam periodicamente as mudanças de estado de volta para a cadeia principal.
Esta página pode conter conteúdos de terceiros, que são fornecidos apenas para fins informativos (sem representações/garantias) e não devem ser considerados como uma aprovação dos seus pontos de vista pela Gate, nem como aconselhamento financeiro ou profissional. Consulte a Declaração de exoneração de responsabilidade para obter mais informações.
8 gostos
Recompensa
8
3
Partilhar
Comentar
0/400
LightningLady
· 07-24 20:33
Novato investimento não use alta alavancagem~ bebés, leiam mais artigos técnicos
Ver originalResponder0
MentalWealthHarvester
· 07-24 20:25
Triângulo impossível fiável
Ver originalResponder0
GateUser-5854de8b
· 07-24 20:25
Blockchain ainda está a falar destas coisas irreais
Comparação aprofundada da tecnologia de escalonamento fora da cadeia: Canais de Estado, Sidechains e suas aplicações
Explicação Profundidade da expansão fora da cadeia
Autor: Cobo Ventures
1. A Necessidade de Expansão
A visão futura da blockchain é a descentralização, segurança e escalabilidade. Mas normalmente a blockchain só consegue realizar dois desses objetivos, e satisfazer os três requisitos é conhecido como o problema do triângulo impossível da blockchain. Ao longo dos anos, as pessoas têm explorado maneiras de resolver esse dilema, como aumentar a capacidade de processamento e a velocidade das transações da blockchain, garantindo ao mesmo tempo a descentralização e a segurança, ou seja, resolver o problema de escalabilidade, que é um dos tópicos mais discutidos no processo de desenvolvimento atual da blockchain.
Vamos primeiro definir de forma geral a descentralização, segurança e escalabilidade da blockchain:
Descentralização: qualquer pessoa pode se tornar um nó e participar da produção e verificação do sistema de blockchain. Quanto maior o número de nós, maior o nível de descentralização, garantindo assim que a rede não seja controlada por um pequeno grupo de grandes participantes centralizados.
Segurança: Quanto maior o custo para obter o controle do sistema de blockchain, maior será a segurança, e assim a cadeia pode resistir a uma maior proporção de ataques de participantes.
Escalabilidade: a capacidade da blockchain de processar um grande número de transações.
A primeira grande bifurcação dura da rede Bitcoin surgiu devido ao problema de escalabilidade. Com o aumento do número de usuários e do volume de transações do Bitcoin, a rede começou a enfrentar problemas de congestionamento, uma vez que o limite de cada bloco é de 1MB; a partir de 2015, a comunidade Bitcoin começou a ter divergências sobre a questão da escalabilidade. Um lado é representado pela Bitcoin ABC, que apoia a expansão do bloco, enquanto o outro é representado pelo Bitcoin Core, que defende que a solução Segwit de witness segregado deve ser utilizada para otimizar a estrutura da cadeia principal. Em 1 de agosto de 2017, o cliente desenvolvido pela Bitcoin ABC, com capacidade de 8MB, começou a operar, levando à primeira grande bifurcação dura da história do Bitcoin, e assim surgiu a nova criptomoeda BCH.
Da mesma forma, a rede Ethereum também optou por sacrificar uma parte da escalabilidade para garantir a segurança e a descentralização da rede; embora a rede Ethereum não tenha limitado o volume de transações como a rede Bitcoin através da limitação do tamanho dos blocos, ela mudou indiretamente para estabelecer um limite nas taxas de gás que um único bloco pode acomodar, mas o objetivo é o mesmo: alcançar um consenso sem confiança e garantir uma ampla distribuição de nós.
Desde o CryptoKitties de 2017, o verão DeFi, até o surgimento posterior de aplicações em cadeia como GameFi e NFT, a demanda do mercado por capacidade de processamento tem aumentado constantemente. No entanto, mesmo o Ethereum, que é Turing completo, consegue processar apenas 15 a 45 transações por segundo. O resultado disso é um aumento contínuo nos custos de transação e um tempo de liquidação mais longo, tornando a maioria das Dapps difíceis de suportar em termos de custos operacionais. A rede inteira tornou-se lenta e cara para os usuários, e o problema de escalabilidade da blockchain precisa ser resolvido urgentemente. A solução ideal de escalabilidade é: aumentar a velocidade das transações e a capacidade de processamento da rede blockchain, sem comprometer a descentralização e a segurança.
2. Tipos de soluções de escalabilidade
Nós classificamos as soluções de escalabilidade em duas grandes categorias, a saber, escalabilidade em cadeia e escalabilidade fora da cadeia, com base no critério "se muda uma camada da rede principal".
2.1 expansão na cadeia
Conceito central: solução que atinge o efeito de escalabilidade através da alteração de uma camada do protocolo da rede principal, sendo a principal solução atual a fragmentação.
A escalabilidade na cadeia tem várias soluções, este artigo não irá expandir, a seguir estão brevemente listadas duas soluções:
A opção um é expandir o espaço do bloco, ou seja, aumentar o número de transações empacotadas em cada bloco, mas isso aumentará os requisitos para dispositivos de nós de alto desempenho, elevará a barreira de entrada para nós e diminuirá o grau de "descentralização".
A solução dois é o sharding, que divide o livro razão da blockchain em várias partes, em vez de cada nó participar de todos os registros, diferentes shards ou nós diferentes são responsáveis por diferentes registros, o processamento em paralelo pode lidar com várias transações simultaneamente; isso pode reduzir a pressão de cálculo nos nós e o limiar de entrada, aumentando a velocidade de processamento de transações e o grau de descentralização; mas isso significa que a capacidade computacional da rede é dispersa, o que pode reduzir a "segurança" de toda a rede.
Alterar o código do protocolo principal da rede pode ter efeitos negativos imprevisíveis, uma vez que qualquer pequena falha de segurança subjacente pode ameaçar gravemente a segurança de toda a rede, que pode ser forçada a realizar um fork ou a interromper as atualizações de reparo. Por exemplo, o incidente da vulnerabilidade de inflação do Zcash em 2018: o código do Zcash foi modificado com base no código da versão 0.11.2 do Bitcoin, e em 2018 um engenheiro descobriu uma vulnerabilidade crítica em seu código subjacente, ou seja, os tokens podiam ser emitidos ilimitadamente, e a equipe levou 8 meses a reparar secretamente, e o incidente só foi tornado público após a correção da vulnerabilidade.
2.2 fora da cadeia expansão
Conceito central: solução de escalabilidade que não altera o protocolo da rede principal de camada 1 existente.
O plano de escalabilidade fora da cadeia pode ser subdividido em Layer2 e outras soluções:
3. Plano de expansão fora da cadeia
3.1 Canais de Estado
3.1.1 Resumo
Os canais de estado estipulam que os usuários só precisam interagir com a rede principal quando o canal é aberto, fechado ou para resolver disputas, e que as interações entre usuários sejam feitas fora da cadeia, a fim de reduzir o tempo e os custos financeiros das transações dos usuários, além de permitir que o número de transações não tenha limitações.
Os canais de estado são protocolos P2P simples, adequados para "aplicações baseadas em turnos", como um jogo de xadrez entre duas pessoas. Cada canal é gerido por um contrato inteligente de múltiplas assinaturas que opera na mainnet, que controla os ativos depositados no canal, valida as atualizações de estado e arbitra disputas entre os participantes. Após o contrato ser implantado na rede blockchain, os participantes depositam uma quantia de fundos e a bloqueiam; o canal é oficialmente aberto após a confirmação da assinatura de ambas as partes. O canal permite transações gratuitas fora da cadeia entre os participantes, sem limites de número. Os participantes alternam o envio de atualizações de estado um ao outro, aguardando a confirmação da assinatura do outro. Uma vez que a assinatura do outro seja confirmada, a atualização de estado é considerada concluída. Normalmente, as atualizações de estado acordadas por ambas as partes não são carregadas na mainnet; apenas em caso de disputas ou ao fechar o canal é que se recorre à confirmação da mainnet. Quando é necessário fechar o canal, qualquer participante pode fazer um pedido de transação na mainnet, e se o pedido de saída receber a aprovação de todas as assinaturas, a execução é imediata na cadeia, ou seja, o contrato inteligente distribui os fundos bloqueados restantes com base nos saldos de cada participante no estado final do canal; se outros participantes não aprovarem a assinatura, todos devem aguardar o término do "período de contestação" para receber os fundos restantes.
Em suma, a solução de canais de estado pode reduzir significativamente a carga computacional na rede principal, aumentar a velocidade das transações e diminuir os custos das transações.
3.1.2 Linha do tempo
3.1.3 Princípios Técnicos
O princípio central dos canais de estado é:
Os participantes bloqueiam ativos no contrato inteligente da rede principal e ativam o canal de estado.
Os participantes realizam interações de atualização de estado fora da cadeia, sendo que cada interação requer a confirmação da assinatura de ambas as partes.
Quando for necessário fechar o canal ou ocorrer uma disputa, submeta o estado final ao contrato da mainnet para validação e distribuição de ativos.
Se houver disputas, é possível apresentar evidências para contestar durante o período de contestação.
As vantagens dos canais de estado são que permitem transações rápidas e de baixo custo fora da cadeia, enquanto as desvantagens são que os participantes precisam estar continuamente online e há o problema de bloqueio de liquidez.
3.1.4 Vantagens e desvantagens
Vantagens:
Desvantagens:
3.1.5 Aplicação
As principais aplicações incluem:
3.1.6 Comparação de Aplicações
A rede Lightning do Bitcoin, a rede Lightning do Ethereum e a Celer Network apresentam algumas diferenças em termos de implementação técnica, cenários de aplicação e estado de desenvolvimento. A rede Lightning está mais madura, a rede Lightning é utilizada com menos frequência, e a Celer Network expandiu os cenários de aplicação ao adicionar uma camada de incentivo.
3.2 Sidechains
3.2.1 Resumo
A cadeia lateral é uma forma de blockchain que surgiu para acelerar as transações da cadeia principal, podendo utilizar contratos mais complexos, ou melhorar o mecanismo de consenso, ou ajustar parâmetros de bloco para que a cadeia lateral atenda a funções específicas. Os resultados das transações da cadeia lateral são finalmente registrados no lado do validador quando são transmitidos de volta para a cadeia principal. Este modelo de blockchain não é uma nova forma de blockchain, mas sim uma infraestrutura que se anexa à cadeia principal e ajuda a resolver problemas da mesma.
3.2.2 Linha do Tempo
3.2.3 Princípios Técnicos
O princípio fundamental das sidechains é:
Ativos da cadeia principal bloqueados, ativos correspondentes gerados na cadeia lateral.
A sidechain opera de forma independente, com seu próprio mecanismo de consenso.
As sidechains enviam periodicamente as mudanças de estado de volta para a cadeia principal.
4