Em criptografia, o termo “witness” é usado para se referir à soluções de problemas criptográficos. Para realizar uma transação de bitcoins, é preciso criar uma assinatura digital com a private key, que irá autorizar a transação. SegWit é uma atualização no protocolo do Bitcoin que retira os dados de assinatura (witness) das transações. Dessa forma, Segregated Witness significa solução segregada, ou dito de outro modo, assinatura à parte.
Dessa maneira, nas transações que utilizam Segwit, os dados da assinatura não são registrados nos blocos. O objetivo dessa mudança foi reduzir o tamanho da transação, uma vez que os dados da assinatura digital ocupam cerca de 50% do espaço da transação, reduzindo assim as taxas.
Ao reduzir o espaço de cada transação, mais transações podem ser incluídas em cada bloco. Dessa maneira, ao reduzir o tamanho de cada transação, SegWit apresenta-se como uma solução para problemas de escalabilidade das transações.
Com a ativação do Segwit, em agosto de 2017, ao liberar o espaço ocupado pela assinatura, mais transações puderam ser incluídas nos blocos (sem mudar o tamanho dos mesmos). Dessa forma, como mais transações podem ser incluídas em cada bloco, as transações que utilizam Segwit ficam cerca de 50% mais baratas.
Com crescente adoção do Segregated Witness (SegWit), cada dia mais carteiras oferecem endereços SegWit para utilização. Hoje, cerca de 40% do total de transações na rede Bitcoin já utilizam SegWit.
Dessa forma, é cada vez mais comum nos depararmos com diferentes tipos de endereços para escolher em nossas carteiras. Mas afinal, qual endereço devo usar?
Para usufruir de taxas mais baixas é necessário que você não apenas tenha uma carteira que seja compatível com Segwit, mas também use os endereços compatíveis com esse protocolo.
Existem 3 tipos de endereços no Bitcoin.
bc1
.bc1qar0srrr7xfkvy998745ydnw9an59gtzzwf9mdq
3
.3K965KmP1Z73CNmQviecrnyiWrnqRhWXuA
1
.1QviecrnyiWrnqRhWXuAK965KmP1Z73CNm
Dessa maneira, quando você baixar sua carteira compatível com segwit, escolha um endereço bech32 ou P2SH para armazenar seus fundos. Todas as transações realizadas a partir desses endereços já são transações que aproveitam as baixas taxas do segwit.
Segwit oferece vantagens em termos de escalabilidade, permitindo que os dados de assinatura sejam registrados off-chain, não sendo, assim, transmitidos para todos os nodes da rede.
Contudo, os benefícios do Segwit não param por ai: Ao retirar a assinatura da transação, Segwit resolveu um antigo problema do bitcoin chamado maleabilidade.
Uma assinatura gerada com a private key pode gerar mais de um output válido para o mesmo input. É como um problema na qual existem duas soluções possíveis. Para ilustrar, a função x= √9 tem duas soluções possíveis, x=3 e x=-3.
Isso é chamado de maleabilidade da transação. Esse problema nunca afetou simples transações on-chain, porém é um grande problema para transações mais complexas como a Lightning Network.
Com a retirada da assinatura da transação, a mesma não mais é considerada maleável. Dessa forma, soluções mais avançadas de escalabilidade como a Lightning Network se tornam possíveis.
Comentários