O que é SegWit?

O que é SegWit?

Em 2017, o Bitcoin enfrentava um problema que estava prestes a dividir a comunidade. A rede conseguia processar talvez 3 transações por segundo. As taxas estavam disparando. Os blocos estavam cheios. E todos tinham uma ideia diferente de como resolver o problema.

A solução vencedora foi o SegWit, abreviação de Segregated Witness (Testemunha Segregada). Proposta por Pieter Wuille, um dos principais desenvolvedores do Bitcoin Core, ela mudou a forma como cada transação de bitcoin é estruturada. Não se tratava de um pequeno ajuste, mas sim de uma reformulação fundamental de como os dados se encaixam dentro de um bloco. Oito anos depois, cerca de 96% de todas as transações de bitcoin utilizam endereços SegWit. Se você comprou ou enviou bitcoin nos últimos anos, é quase certo que o utilizou sem saber.

Qual era o problema de fato?

Deixe-me descrever como foi o ano de 2016 para você.

O Bitcoin tinha um limite de 1 MB por bloco. Satoshi implementou esse limite em 2010 para impedir ataques de spam, e ninguém o removeu. Os blocos são minerados a cada 10 minutos, aproximadamente. Com 1 MB cada, isso equivale a cerca de 1.650 transações por bloco. Fazendo as contas, chega-se a cerca de 2 a 3 transações por segundo em toda a rede Bitcoin. O planeta inteiro compartilhando uma conexão tão estreita.

A Visa, aliás, processa 65.000 transações por segundo. Pois é. Problema.

No final de 2016, todos os blocos atingiam o limite de 1 MB. Sem espaço disponível, os usuários de Bitcoin começaram a competir entre si nas taxas de transação, tentando subornar os mineradores para que processassem suas transações primeiro. As taxas ficaram exorbitantes. Enviar o equivalente a US$ 10 em Bitcoin podia custar US$ 15 em taxas. Não fazia o menor sentido.

E então havia o problema mais técnico: a maleabilidade das transações. Vou tentar simplificar. Quando você envia bitcoins, a rede cria um ID para essa transação. Antes do SegWit, esse ID era construído a partir da transação inteira, incluindo as assinaturas. O problema? Alguém poderia interceptar sua transação não confirmada, manipular a codificação da assinatura (mantendo-a tecnicamente válida) e acabar com um ID diferente para o mesmo pagamento. Mesmo remetente. Mesmo destinatário. Mesmo valor. Número de ID diferente.

Por que você deveria se importar? Porque a Mt. Gox, a corretora que perdeu 840.000 BTC em 2014, foi explorada exatamente por meio dessa falha. E, mais importante, qualquer sistema de segunda camada construído sobre o Bitcoin (como canais de pagamento) precisa referenciar as transações por seus IDs. Se esses IDs mudarem, todo o sistema entra em colapso.

O Bitcoin enfrentava dois problemas simultaneamente: blocos muito pequenos e IDs de transação não confiáveis. O SegWit resolveu ambos de uma só vez.

Como funciona o SegWit (sem precisar de um diploma em ciência da computação)

Pense em uma transação de Bitcoin como um cheque. Há a parte que indica quem está pagando a quem e quanto. Depois, há sua assinatura no final, comprovando sua legitimidade. Antes do SegWit, ambas as partes eram comprimidas em um único bloco, e tudo isso era contabilizado no limite de tamanho de bloco de 1 MB.

Eis o que incomodava Pieter Wuille: os dados de assinatura consumiam cerca de 65% de cada transação. A maior parte de cada bloco não registrava o que havia acontecido, mas sim a comprovação de que alguém havia autorizado a transação. Isso lhe parecia um desperdício.

A ideia dele: extrair as assinaturas. Colocá-las em uma seção própria chamada "testemunha". Os dados da transação permanecem no bloco principal. Os dados da testemunha são armazenados separadamente. Eles ainda são verificados por todos os nós da rede. Apenas não têm o mesmo peso no cálculo do quão cheio um bloco está.

O que aconteceu na prática? Os blocos passaram de armazenar cerca de 1.650 transações para aproximadamente 2.700. O Bitcoin saltou de 2 a 3 transações por segundo para cerca de 7 a 10. Ainda risível em comparação com a Visa. Mas para uma rede que estava sufocando com o próprio sucesso, foi um alívio.

segwit

Peso do bloco: a nova matemática

É aqui que a coisa fica interessante. A solução óbvia teria sido simplesmente mudar o limite de 1 MB para 2 MB. Mas isso teria sido um hard fork. Todos os nós da rede Bitcoin precisariam atualizar, ou seriam removidos da cadeia. Hard forks são problemáticos. Muita gente fica para trás.

Pieter Wuille teve uma ideia mais inteligente. Em vez de medir blocos em bytes brutos, o SegWit usa o "peso do bloco". Os dados de transação regulares contam como 4 unidades de peso por byte. Os dados de testemunha contam como apenas 1 unidade de peso por byte. O limite é de 4 milhões de unidades de peso no total.

O que isso significa na prática? Um bloco sem dados de testemunha ainda atinge um tamanho máximo de 1 MB, como sempre. Os nós antigos não detectam nada de anormal. Um bloco repleto de transações SegWit pode chegar perto de 4 MB em teoria. Na prática, a maioria dos blocos fica em torno de 1,5 a 2 MB.

A beleza disso tudo: o SegWit foi lançado como um soft fork. Os nós que nunca foram atualizados continuaram funcionando normalmente. Eles simplesmente não conseguiam ver os dados de testemunha na nova seção. O blockchain do Bitcoin não se dividiu. Não havia "Bitcoin antigo" e "Bitcoin novo". Uma única cadeia, uma única rede, retrocompatível. Só isso já foi uma conquista de engenharia que não recebe o reconhecimento que merece.

Antes do SegWit Após SegWit
Tamanho do bloco: máximo 1 MB Peso do bloco: máximo de 4 milhões de unidades de peso
Aproximadamente 1.650 transações por bloco Aproximadamente 2.700 transações por bloco
2-3 TPS 7-10 TPS
Dados de assinatura dentro do bloco Dados da assinatura em campo de testemunha separado
Os IDs de transação incluíam assinaturas. IDs de transação baseados apenas em dados principais

A correção da maleabilidade da transação

As pessoas falam constantemente sobre a questão do tamanho do bloco. Justo, era o problema mais comentado. Mas acho que a correção da maleabilidade das transações foi a parte mais importante, e a maioria das pessoas fora dos círculos de desenvolvedores mal sabe disso.

Então, é o seguinte. Antes do SegWit, quando sua carteira Bitcoin criava uma transação, o ID da transação (chamado TXID) era calculado a partir de tudo na transação, incluindo a assinatura. E aqui está a parte estranha: assinaturas digitais podem ser expressas em mais de um formato válido. Mesma assinatura, mesma prova de propriedade, mas uma sequência de bytes ligeiramente diferente.

Isso significava que alguém poderia interceptar sua transação não confirmada, recodificar a assinatura de uma maneira diferente, mas igualmente válida, e transmiti-la. A rede confirmaria a versão alterada. Mesmo remetente, mesmo destinatário, mesmo valor. Mas um TXID completamente diferente.

Eu sei. Parece obscuro. Mas era muito importante. Imagine construir um sistema onde a etapa B referencia o ID da etapa A. Se alguém puder alterar o ID da etapa A depois que ela for enviada, mas antes de ser confirmada, a etapa B falha. Toda a sua cadeia lógica entra em colapso.

O SegWit resolveu isso calculando o TXID apenas a partir das partes que não são testemunhas. A assinatura agora fica no campo de testemunha, separada do ID. Ninguém pode alterá-la. O ID da transação está bloqueado de uma vez por todas.

SegWit e a Lightning Network

É por isso que a correção da maleabilidade foi importante. A Lightning Network é a forma como o Bitcoin planeja processar milhões de pagamentos por segundo. Você e eu abrimos um canal de pagamento. Enviamos bitcoins de um lado para o outro, fora da blockchain principal. Quando terminamos, apenas o saldo líquido final é liquidado na blockchain. Uma única transação na blockchain do Bitcoin em vez de centenas.

O Lightning funciona criando cadeias de transações que se referenciam mutuamente por seus IDs. Se alguém puder alterar um ID durante a transação, a transação de reembolso que o protege se torna inválida. Você pode perder dinheiro. Todo o conceito de canal de pagamento depende da estabilidade dos IDs.

O SegWit tornou o sistema estável. Ponto final. Sem essa correção, a implementação do Lightning teria sido arriscada demais. E sem o Lightning, o Bitcoin ficaria estagnado em 7 a 10 transações por segundo para sempre. Isso não é uma rede de pagamentos. É uma camada de liquidação para grandes investidores.

Penso da seguinte forma: o SegWit não foi apenas uma atualização. Foi a base. O Taproot em 2021, a Lightning Network, até mesmo as inscrições Ordinals em 2023. Nada disso teria acontecido sem as mudanças estruturais feitas em agosto de 2017.

Os formatos de endereço: legado, encapsulado e SegWit nativo.

Já reparou que alguns endereços de Bitcoin começam com "1", outros com "3" e outros com "bc1"? Isso é a atualização SegWit aparecendo na sua carteira.

Endereços que começam com "1" são legados. Formato antigo. Sem SegWit. Você paga as taxas mais altas por eles. Se sua carteira ainda exibe esses endereços, atualize seu software.

Endereços que começam com "3" são encapsulados em SegWit. A transação de bitcoin usa SegWit internamente, mas é encapsulada para que carteiras antigas que não conhecem o SegWit ainda possam enviar bitcoins para ela. Mais barato que os métodos tradicionais, mas não a opção mais barata.

Endereços que começam com "bc1q" são SegWit nativos, também chamados de Bech32. Isso é o que há de melhor. Menores taxas. Melhor verificação de erros (o formato do endereço detecta erros de digitação com mais eficiência). E é o que 96% das transações usam hoje em dia.

Você também pode encontrar endereços "bc1p". Esses são do Taproot, uma atualização mais recente de 2021 que utiliza o SegWit. É um assunto diferente, mas vale a pena saber que eles existem.

Tipo de endereço Começa com Nível de taxa SegWit?
Legado (P2PKH) 1 Mais alto Não
SegWit Envolvido (P2SH) 3 Médio Sim (embrulhado)
SegWit nativo (Bech32) bc1q Mais baixo Sim (nativo)
Raiz pivotante (Bech32m) bc1p Mais baixo Sim + Raiz pivotante

Na realidade, quanto você economiza em taxas?

É isso que meus amigos leigos em tecnologia realmente querem saber. Quanto mais barato?

A Unchained fez os cálculos. Uma transação SegWit padrão com assinatura única economiza cerca de 53% em taxas em comparação com os sistemas legados. Se você usar uma configuração multisig 2 de 3 (comum em custódia), a economia é de aproximadamente 64%. Isso não é arredondamento. Em um dia movimentado, onde usuários de sistemas legados pagam US$ 30 por transação, você paga menos de US$ 15 com o SegWit nativo.

Por quê? Novamente, a matemática do peso do bloco. Os dados de testemunha contam como 0,25 bytes virtuais em vez de 1. Sua transação ocupa menos espaço no bloco. Os mineradores cobram menos por ela. Simples assim.

Se sua carteira Bitcoin ainda fornece endereços que começam com "1", você está desperdiçando dinheiro a cada envio. Mude para o SegWit nativo. Leva apenas cinco minutos. Coinbase, Ledger, Trezor, BlueWallet, Sparrow, todas são compatíveis. Não há nenhuma desvantagem.

segwit

A controvérsia: por que o SegWit quase não aconteceu?

Essa parte é sinceramente mais interessante do que a tecnologia em si. O SegWit quase morreu antes mesmo de ser lançado.

A disputa parecia simples à primeira vista. Um grupo, o dos "grandes bloqueadores", queria aumentar o limite de tamanho do bloco de 1 MB para 8 MB ou mais. Mais espaço, mais transações. Solução direta. A Bitmain, a maior mineradora de bitcoin do planeta, apoiou esse grupo com veemência. Alguns acusaram a Bitmain de se opor ao SegWit porque isso acabaria com o ASICBOOST, um recurso secreto embutido em seus chips de mineração que lhes dava vantagem de velocidade sobre os concorrentes. A Bitmain negou. O mundo das criptomoedas não acreditou neles.

O outro grupo era formado principalmente por desenvolvedores do Bitcoin Core e pessoas que executavam nós completos em casa. O argumento deles: blocos 8 vezes maiores exigem 8 vezes mais largura de banda, armazenamento e poder de processamento para executar um nó. Daqui a alguns anos, apenas data centers e fazendas de mineração terão recursos para validar a blockchain do Bitcoin. A descentralização morre silenciosamente.

Eu estava acompanhando tudo em tempo real e realmente senti que o Bitcoin poderia não sobreviver à discussão. As pessoas estavam gritando umas com as outras no Twitter, no Reddit e em conferências. Houve até uma reunião a portas fechadas em Nova York (o "Acordo de Nova York") onde várias empresas tentaram intermediar um acordo que combinasse o SegWit com um aumento posterior no tamanho do bloco. Esse acordo também fracassou.

O que realmente aconteceu: o SegWit foi ativado em 1º de agosto de 2017 como um soft fork ativado pelos usuários. Os mineradores de bitcoin que se opuseram a ele se separaram e criaram o Bitcoin Cash (BCH) naquele mesmo dia. O BCH passou a usar blocos de 8 MB (agora 32 MB) e não tinha SegWit. Ele ainda existe. É negociado a uma fração ínfima do preço do Bitcoin.

O dia 1º de agosto é chamado por alguns de "Dia da Independência do Bitcoin". A questão principal é que os operadores de nós, e não as empresas de mineração, têm a palavra final sobre as regras do Bitcoin. Esse precedente importa mais do que qualquer linha de código na atualização SegWit em si.

Adoção do SegWit hoje

O debate acabou. 96% das transações de Bitcoin usam SegWit em 2025. Todas as principais carteiras e corretoras o suportam. Se você ainda usa endereços antigos, a única explicação é que seu software não foi atualizado há anos.

A atualização do SegWit também abriu caminho para tudo o que veio depois. O Taproot chegou em novembro de 2021 e adicionou assinaturas Schnorr à estrutura do SegWit. O Ordinals surgiu em 2023 e começou a inserir JPEGs no espaço de dados de testemunha criado pelo SegWit. Há opiniões divergentes sobre este último, mas o fato é que o SegWit criou o espaço e os desenvolvedores o preencheram.

Então, o SegWit é importante para você? Se você usa Bitcoin, sim. Abra as configurações da sua carteira e verifique o formato do seu endereço. Se começar com "bc1q", está tudo certo. Se começar com "1", você deveria mudar hoje mesmo. Taxas mais baixas, confirmações mais rápidas durante congestionamentos e acesso total a pagamentos via Lightning.

Você nunca pensará no SegWit no dia a dia. É o encanamento sob o piso. Mas se alguém não o tivesse instalado em 2017, a casa inteira já teria sido inundada.

Ready to Get Started?

Create an account and start accepting payments – no contracts or KYC required. Or, contact us to design a custom package for your business.

Make first step

Always know what you pay

Integrated per-transaction pricing with no hidden fees

Start your integration

Set up Plisio swiftly in just 10 minutes.