
Segregated Witness (SegWit) é uma atualização técnica de grande relevância para a blockchain do Bitcoin, ativada oficialmente em agosto de 2017. O SegWit reorganiza os blocos ao separar as assinaturas das transações (dados de testemunha) dos próprios dados das transações, armazenando-os numa estrutura específica. Esse modelo inovador resolve de forma eficiente o problema de maleabilidade das transações na rede Bitcoin, aumenta a capacidade dos blocos, aprimora o desempenho da rede e prepara o terreno para soluções de escalabilidade de segunda camada, como a Lightning Network.
O conceito de Segregated Witness foi apresentado pela primeira vez pelo desenvolvedor do Bitcoin Core Pieter Wuille, em dezembro de 2015, no workshop Scaling Bitcoin em Hong Kong. Na época, a rede Bitcoin enfrentava sérios desafios de escalabilidade, com o limite de tamanho de bloco de 1 MB que provocava congestionamento de transações e aumento das taxas. Além disso, a vulnerabilidade de maleabilidade permitia modificar os IDs das transações antes da confirmação, dificultando o avanço de canais de pagamento mais sofisticados.
Durante debates intensos na comunidade Bitcoin sobre como resolver a questão da escalabilidade, SegWit foi proposto como uma atualização via soft fork capaz de aumentar a capacidade efetiva dos blocos sem afetar o consenso, ao mesmo tempo que corrigia a maleabilidade das transações. Após cerca de um ano e meio de desenvolvimento e testes, SegWit foi implementado através do BIP (Bitcoin Improvement Proposal) 141, sendo ativado com sucesso em agosto de 2017 após atingir o limiar necessário.
O mecanismo central do SegWit consiste na reestruturação das transações, nomeadamente:
Separação dos Dados – Os dados de “testemunha” (assinaturas e scripts) são segregados dos dados principais da transação e alocados numa estrutura própria.
Ajuste do Cálculo de Peso – Para calcular o tamanho dos blocos, os dados de testemunha têm peso reduzido de 0,25 “unidades de peso” por byte, enquanto os dados não testemunha mantêm o peso de 1 unidade. Isso permite incluir mais transações por bloco, aumentando o limite efetivo para cerca de 4 MB.
Novo Formato de Endereço – Foi introduzido um novo formato de endereço (Bech32, começando por “bc1”) especificamente para transações SegWit, oferecendo maior eficiência na detecção de erros e códigos QR mais curtos.
Mudança no Cálculo do ID de Transação – Os dados de assinatura deixam de ser considerados no cálculo dos IDs de transação (txid), eliminando o problema de maleabilidade e garantindo que os IDs permaneçam inalterados após a transmissão.
Tecnicamente, o SegWit introduz novas regras de versão para o sistema de script do Bitcoin, marcando as transações no formato antigo com a versão 0 e as transações SegWit com a versão 1, assegurando retrocompatibilidade para que os nós não atualizados continuem a validar a blockchain.
Apesar dos benefícios evidentes, a implementação do SegWit enfrentou diversos riscos e desafios:
Taxa de Adoção – Por ser opcional, o SegWit exigiu suporte ativo de wallets e exchanges para maximizar suas vantagens, o que resultou numa adoção inicial lenta.
Complexidade Técnica – A adoção do SegWit implicou alterações profundas nos softwares de wallet, o que aumentou o esforço dos desenvolvedores e o risco de erros.
Divisão na Comunidade – A ativação do SegWit gerou divisões importantes na comunidade Bitcoin, levando à criação do Bitcoin Cash por meio de um fork da blockchain.
Considerações de Segurança – As novas regras de verificação de script e o formato de endereço exigiram testes rigorosos para evitar vulnerabilidades e problemas de segurança.
Período de Transição da Rede – Antes da adoção total do SegWit, foi necessário garantir compatibilidade entre os dois tipos de transação, aumentando a complexidade da rede.
Ainda assim, a ativação do SegWit é considerada um marco importante na evolução técnica do Bitcoin, demonstrando que grandes atualizações podem ser implementadas por meio de soft fork numa blockchain.
O SegWit representa um ponto central na evolução tecnológica do Bitcoin, ao resolver desafios técnicos críticos e ao abrir caminho para futuras inovações. Ao eliminar a maleabilidade das transações, o SegWit permitiu o desenvolvimento de soluções de escalabilidade de segunda camada, como a Lightning Network, promovendo a escalabilidade a longo prazo do Bitcoin. Paralelamente, a implementação por soft fork revelou as complexidades da governança e das atualizações técnicas em blockchain, bem como os desafios de alcançar consenso em sistemas descentralizados. Com o tempo, o SegWit foi amplamente aceito e padronizado na rede Bitcoin, comprovando o seu valor técnico e a racionalidade do design.
Compartilhar


