Table of Contents
Se você já ouviu falar em “SegWit” ou “SegWit aprovado” e ficou se perguntando o que é SegWit, está no lugar certo! Neste artigo, vamos responder a algumas perguntas comuns sobre esse protocolo de testemunha segregada, como o que é SegWit, como SegWit funciona e quais são os benefícios do SegWit. Além disso, explicaremos como ocorreu a transição, por que ela não se aplica a todos os blocos e o que acontece com as transações legadas ou não-SegWit.
Por que SegWit?
Antes de discutirmos o SegWit, é importante entender uma falha perniciosa no código do Bitcoin. Antes do SegWit, a coleta de dados de uma transação incluía uma assinatura digital, assinada pelo remetente, para confirmar sua intenção de fazer a transação. A assinatura digital também era parte da função de hash criptográfica usada pelo blockchain do Bitcoin, resultando em um ID de transação exclusivo.
O protocolo do Bitcoin apresentava uma falha que poderia permitir que atacantes maliciosos tivessem acesso à assinatura digital e manipulassem o ID de transação resultante para roubar fundos. Como veremos adiante neste artigo, o SegWit resolveu esse problema de maleabilidade de transação ao mesmo tempo em que aumentou a densidade de transação do bloco.
Como o SegWit funciona?
Para entender como o SegWit funciona no blockchain, você precisa entender um pouco mais sobre como as transações funcionam no blockchain. Os nós da rede verificam matematicamente as transações, usando dados sobre a própria transação na equação. As transações verificadas são colocadas em um bloco com capacidade de 1MB, que normalmente comporta uma média de 3500 transações por bloco. Quando o bloco está cheio, ele é adicionado ao blockchain.
Parte da beleza da tecnologia blockchain é o ledger distribuído de código aberto em tempo real que está disponível para qualquer pessoa. Um ledger é tradicionalmente um livro ou uma coleção de registros transacionais. O blockchain armazena automaticamente todas as informações e dados sobre cada transação em vários nós, o que significa que não há um único ponto de falha.
Os dados da transação são criptograficamente hashados no algoritmo e permanecem seguros, para que não possam ser reconhecidos ou recuperados pelos endereços originais. Dentro de cada bloco, há o endereço público do destinatário, a quantidade de BTC sendo enviada, o endereço público do remetente e a assinatura digital do remetente.
Assinaturas Digitais
A assinatura digital é usada para assinar e confirmar a transação, sendo também chamada de “testemunha”. As testemunhas são necessárias para a) confirmar a validade da transação e b) serem usadas na fórmula de hash criptográfico para o algoritmo de mineração Proof of Work (PoW).
Embora essencial para a transação, as assinaturas digitais ocupam a maior parte do tamanho do arquivo de uma transação, variando de até 60-70%. Nos primeiros dias, isso não era um problema, até que o crescimento da adoção congestionou a rede, resultando em transações extremamente lentas e caras.
Antes do SegWit ser introduzido, a assinatura digital costumava estar no meio da estrutura de dados da transação. Agora, o SegWit remove a testemunha do centro da estrutura de dados e a coloca no final da estrutura de dados. Isso significa que agora os IDs de transação únicos são criados usando todos os dados da transação, exceto a testemunha, que é validada por nós diferentes.
A segregação da testemunha remove a ameaça de maleabilidade, ao mesmo tempo em que reduz substancialmente o tamanho do arquivo das transações. A redução do tamanho do arquivo das transações permite mais transações por bloco, aumentando a densidade de transações por segundo sem a necessidade de ajustes no tamanho do bloco em si.
O futuro do SegWit
O SegWit solucionou uma falha potencialmente fatal e fundamental no protocolo do Bitcoin, eliminando a vulnerabilidade de manipulação da brecha de maleabilidade de transação por hackers. Além disso, o SegWit permitiu que o blockchain do Bitcoin escalasse e aumentasse a capacidade de transações por segundo à medida que a adoção continua a crescer.
No entanto, nem todos os nós atualizaram para o protocolo SegWit por dois motivos diferentes:
- O SegWit não é compatível com o firmware de mineração Asicboost, que promete acelerar o tempo de verificação das transações em quase 20%. Alguns mineradores preferem permanecer fiéis a uma marca de firmware conhecida e não comprar equipamentos de mineração caros se não for necessário.
- O SegWit não era uma atualização obrigatória, e a decisão de implementar o SegWit está nas mãos dos CEOs de negócios de criptomoedas (carteiras, exchanges etc.) que podem não querer mexer nas coisas e ajustar seu protocolo sempre que houver uma nova atualização. O CEO da Binance, Chanpeng Zhao, ou CZ, discutiu publicamente a adição de compatibilidade com o SegWit à exchange em uma entrevista com a Altcoin Daily, afirmando que a adição do SegWit está em andamento, mas requer muito trabalho e ele não pode fornecer um cronograma.
A adoção do SegWit vem crescendo exponencialmente desde o seu lançamento em 2017. Em 2018, 29% dos usuários de Bitcoin haviam implementado o SegWit, e em 2019 esse número aumentou para 60%.
As principais carteiras de hardware, como Ledger e Trezor, suportam o SegWit, e a exchange Gemini é a maior exchange centralizada que suporta transações SegWit, com esperanças de que muitas outras sigam o exemplo.
Esperamos ter respondido todas as suas perguntas sobre o que é SegWit. Se você quiser aprender mais sobre os fundamentos da tecnologia blockchain e criptomoedas, fique à vontade para explorar nosso blog, repleto de artigos esclarecedores sobre os casos de uso da blockchain, como se proteger contra golpes, viajar pelo mundo com criptomoedas e muito mais!