O Segregated Witness (SegWit) é um protocolo de atualização desenvolvido em 2015 para resolver o problema de escalabilidade enfrentado pelas redes de blockchain. Neste guia completo, exploraremos o conceito do SegWit, seus principais benefícios e como ele impactou o ecossistema das criptomoedas.
O que é SegWit?
O Segregated Witness (SegWit) é uma atualização de protocolo desenvolvida em 2015 para enfrentar o problema de escalabilidade das redes de blockchain. Ele foi introduzido como uma solução para o limite de tamanho de bloco do Bitcoin e outras criptomoedas.
O Bitcoin, por exemplo, valida um novo bloco a cada 10 minutos em média, e cada bloco pode conter várias transações. No entanto, o tamanho do bloco afeta a quantidade de transações que podem ser confirmadas em cada bloco. Antes do SegWit, o tamanho do bloco do Bitcoin era limitado a 1 MB, o que limitava o número de transações que podiam ser processadas.
O principal conceito por trás do SegWit é reorganizar os dados do bloco para que as assinaturas digitais (testemunhas) não sejam mais incluídas junto com os dados da transação. Em outras palavras, o upgrade do SegWit consiste em separar as testemunhas (assinaturas) dos dados da transação. Isso permite que mais transações sejam armazenadas em um único bloco, aumentando a capacidade de transação da rede.
Quais são os principais benefícios do SegWit?
O SegWit trouxe vários benefícios significativos para as redes de blockchain, incluindo:
Aumento de capacidade
Uma das maiores vantagens do SegWit é o aumento na capacidade de bloco. Ao remover os dados de assinatura da entrada da transação, mais transações podem ser armazenadas em um único bloco.
As transações consistem em duas partes principais: entradas e saídas. A entrada contém o endereço público do remetente, enquanto a saída contém o endereço público do destinatário. No entanto, o remetente precisa provar que possui os fundos que estão sendo transferidos, e isso é feito por meio de uma assinatura digital.
Antes do SegWit, os dados de assinatura podiam ocupar até 65% de um bloco. Com o SegWit, esses dados são movidos para fora da entrada da transação. Isso faz com que o tamanho efetivo do bloco aumente de 1 MB para cerca de 4 MB.
É importante ressaltar que o SegWit não aumenta o tamanho real do bloco. Em vez disso, é uma solução de engenharia para aumentar o tamanho efetivo do bloco sem precisar aumentar o limite de tamanho do bloco (o que exigiria um fork duro). O tamanho real do bloco ainda é de 1 MB, mas o limite de tamanho efetivo do bloco é de 4 MB.
O SegWit também introduziu o conceito de peso do bloco. Podemos considerar o peso do bloco como um conceito que substitui o tamanho do bloco. Basicamente, o peso do bloco é uma medida que inclui todos os dados do bloco, incluindo os dados da transação (1 MB) e os dados de assinatura (até 3 MB), que não fazem mais parte do campo de entrada.
Aumento de velocidade de transação
Com um bloco capaz de armazenar mais transações, o SegWit também tem a capacidade de aumentar a velocidade de transação, uma vez que um maior número de transações pode ser processado pela rede. Embora um bloco possa levar o mesmo tempo para ser minerado, mais transações estão sendo processadas nele, resultando em uma taxa de transação por segundo (TPS) mais alta.
O aumento na velocidade de transação também ajudou a reduzir os custos de transação na rede Bitcoin. Antes do SegWit, não era incomum gastar mais de US$ 30 por transação. No entanto, o SegWit reduziu drasticamente esse custo para menos de US$ 1 por transação.
Solução para o problema de maleabilidade de transação
Um dos principais problemas do Bitcoin era a possibilidade de alteração das assinaturas digitais das transações. Se uma assinatura digital fosse alterada, isso poderia resultar na corrupção de uma transação entre duas partes. Como os dados armazenados nas blockchains são virtualmente imutáveis, transações inválidas poderiam ser permanentemente registradas na blockchain.
Com o SegWit, as assinaturas digitais não fazem mais parte dos dados da transação, o que elimina a possibilidade de alteração desses dados. Essa correção permitiu uma maior inovação dentro da comunidade blockchain, incluindo a implementação de protocolos de segunda camada e contratos inteligentes.
SegWit e a Lightning Network
O desenvolvimento de protocolos de segunda camada foi parcialmente viabilizado pela correção do problema de maleabilidade de transação. Em termos simples, os protocolos de segunda camada são novas plataformas ou produtos construídos em cima de uma blockchain, como o Bitcoin. Um dos protocolos de segunda camada mais populares é a Lightning Network, uma rede de micropagamentos fora da cadeia.
A Lightning Network é um protocolo de segunda camada que opera em cima da rede Bitcoin. Seu principal objetivo é permitir que mais transações sejam confirmadas em um curto período de tempo, resultando em transações mais rápidas para os usuários. As transações são coletadas fora da cadeia e armazenadas em buffer para serem posteriormente processadas pela rede Bitcoin.
A Lightning Network foi originalmente desenvolvida para o Bitcoin. No entanto, vários outros projetos de criptomoedas e blockchain estão trabalhando na implementação dessa tecnologia em suas redes. Isso não apenas reduzirá o tempo de confirmação das transações, mas também impulsionará o desenvolvimento de novas soluções para o problema de escalabilidade.
SegWit vs SegWit2x
O SegWit é uma atualização de soft fork, o que significa que é compatível com versões anteriores. Em outras palavras, os nós do Bitcoin que não foram atualizados para incluir o SegWit ainda são capazes de processar transações. No entanto, houve uma proposta de implementação do SegWit chamada SegWit2x (S2X), que exigiria uma atualização de hard fork.
A principal diferença entre o SegWit e o SegWit2x é que este último não só incluiria uma alteração no agrupamento das transações, mas também um aumento no tamanho do bloco (de 1MB para 2MB). No entanto, um bloco maior aumentaria a carga sobre os operadores de nós e mineradores, pois haveria mais dados para serem processados.
Outra diferença importante é que a proposta do SegWit foi apoiada e implementada pela comunidade do Bitcoin. Esse episódio deu origem ao conceito de UASF (User-Activated Soft Fork), em que os usuários podem ativar um fork de software por conta própria.
Por outro lado, o SegWit2x propôs uma mudança significativa em uma das regras fundamentais do Bitcoin. No entanto, como os desenvolvedores não conseguiram chegar a um consenso sobre sua adoção e implementação, o movimento do SegWit2x foi suspenso.
SegWit Aninhado vs SegWit Nativo (bech32)
Em resumo, o SegWit Nativo (também conhecido como bech32) é uma versão atualizada do SegWit Aninhado. O formato bech32 oferece maior velocidade de transação, melhores mecanismos de detecção de erros e taxas de transação ainda menores. Além disso, os endereços bech32 são escritos em letras minúsculas, facilitando a leitura.
Vale ressaltar que as transações entre endereços não-SegWit (Legacy), SegWit Aninhado e SegWit Nativo (bech32) são totalmente compatíveis. No entanto, nem todas as exchanges e carteiras de criptomoedas suportam o SegWit, o que pode impedir a transferência direta de fundos para um endereço SegWit.
A exchange Binance suporta depósitos e saques com SegWit para Bitcoin (BTC). Você pode encontrar mais informações na seção de perguntas frequentes sobre o SegWit no site da Binance.
Considerações Finais
A implementação do SegWit marcou a maior atualização de protocolo do Bitcoin, e o fato de ter sido apoiada e implementada pela comunidade descentralizada torna tudo ainda mais interessante.
A introdução do SegWit foi um grande avanço na solução de muitos problemas relacionados ao Bitcoin e outras redes de blockchain, especialmente em relação à escalabilidade. Por meio da combinação do SegWit e dos protocolos de segunda camada, as redes de blockchain podem lidar com um maior número de transações, com mais eficiência e custos mais baixos.
Apesar de ser uma solução poderosa e inovadora, o SegWit ainda não foi totalmente adotado. Atualmente, cerca de 53% dos endereços de Bitcoin utilizam o SegWit.
Agora que você entende o que é o SegWit e seus benefícios, fique atento às atualizações das suas carteiras e exchanges favoritas para aproveitar ao máximo essa tecnologia. O SegWit é um passo importante no caminho para uma adoção em massa das criptomoedas e para a melhoria contínua das redes de blockchain.
Perguntas Frequentes Sobre o SegWit
O SegWit é compatível com todas as criptomoedas?
Não, o SegWit foi implementado principalmente no Bitcoin e em algumas outras criptomoedas, mas não é universal.
O SegWit elimina completamente as taxas de transação?
Embora o SegWit ajude a reduzir as taxas, a eliminação completa não é garantida, pois outras variáveis também podem influenciar as taxas.
Qual é a relação entre SegWit e a maleabilidade de transações?
O SegWit resolve a maleabilidade de transações, garantindo que as assinaturas não possam ser alteradas após a transmissão.
Como o SegWit afeta a velocidade das confirmações de transação?
Ao permitir mais transações por bloco, o SegWit ajuda a reduzir os congestionamentos e a acelerar as confirmações.
O SegWit tem alguma desvantagem conhecida?
Alguns críticos argumentam que o SegWit pode tornar a rede mais complexa, o que pode dificultar a implementação.