O que é testemunha segregada?

Testemunha segregada, ou SegWit como é comumente chamada, acaba de ser implementada no Bitcoin Blockchain e foi implantada na rede LiteCoin em maio deste ano. Embora isso tenha se tornado parte do léxico público, você pode não ter ideia do que é Testemunha Segregada.

Essencialmente, o SegWit é uma iniciativa de economia de espaço para liberar armazenamento em Blocos de Bitcoin, entre outras coisas. Todos os dados relacionados ao assinatura da transação é removido. A esperança era que essa liberação de espaço nos blocos pudesse significar mais transações por bloco.

A ideia do SegWit foi lançada em outubro de 2016. Foi o resultado de um longo ano de discussão e trabalho que foi realizado na Conferência de Escalonamento de Bitcoin em Hong Kong. A ideia foi a proposta inicial de Pieter Wuille, que fazia parte da equipe principal do Bitcoin.

Explicação técnica da testemunha segregada

Já cobrimos os blocos de Bitcoin e a mineração com mais detalhes antes, portanto, para esta explicação, presumiremos que você tem um conhecimento básico. Em cada transação Bitcoin, há um scriptSig e um scriptPubKey. O primeiro é onde os dados da assinatura são salvos, enquanto o último é a informação sobre a chave pública.

O que se notou sobre a maneira como os dados de assinatura foram armazenados é que as assinaturas ocupam cerca de 60% do espaço, mas só são realmente necessárias no momento da validação do bloco. A ideia era, portanto, separar esses códigos de desbloqueio da transação em um testemunha segregada.

Esta parte segregada da transação não será misturada com os outros dados da transação. Esta nova estrutura de uma transação Bitcoin é compatível com versões anteriores e, portanto, pode ser implementada com um soft fork. Nem todos os mineiros precisam ser capazes de validar transações habilitadas para testemunhas segregadas. Para que funcione de forma eficaz, pelo menos 95% dos mineiros tem que sinalizar seu apoio para isso.

Quais são os benefícios

Como a maioria dos usuários de Bitcoin terá percebido recentemente, as transações de Bitcoin estão demorando muito mais do que o normal. Isso tem a ver com as restrições de capacidade usuais que têm impacto na velocidade da rede. O limite de tamanho do bloco também tem sido um ponto de contenção.

No entanto, separando os dados de assinatura como uma testemunha segregada, mais espaço é salvo e, portanto, mais transações podem ser processadas por bloco. No entanto, há uma série de outros benefícios para a proposta de testemunha segregada.

Correções de maleabilidade de transação

Maleabilidade de transação é quando um ID de transação pode ser alterado alterando as informações contidas no código de desbloqueio. Essencialmente, quando você envia uma transação na rede, qualquer outro nó tem a capacidade de alterar o ID da transação antes de enviá-la para o próximo nó. Isso pode ser um pouco irritante para os usuários que estão rastreando suas transações.

Com o Segwit, os dados de assinatura não são incluídos nos dados da transação, portanto, nenhum nó pode alterar o ID da transação. Isso tornará a transação confiável. Também beneficiará todos os indivíduos que estão gastando transações não confirmadas. No entanto, o mais importante, isso estabelece as bases para a implementação da Lightning Network.

Maior segurança para transações multisig

O protocolo de segurança atual para transações com várias assinaturas é o P2SH, que usa uma função hash de 160 bits. Usando recursos de computador incrivelmente poderosos, um invasor pode tentar encontrar uma “colisão” entre um endereço válido como parte de um script multisig e um script que transfere todos os fundos.

Com o SegWit, os pagamentos de script são hash com um algoritmo de hash SHA256 de 256 bits. Isso significa que as chances de uma colisão de um ataque de força bruta são drasticamente reduzidas para pagamentos multisig. Isso também é um grande benefício para quem paga por multisig ou contrato inteligente.

Escala Linear de Operações SigHash

Quando se trata da quantidade de dados que deve ser hash para uma transação, o protocolo atual tem uma função quadrática nas operações de assinatura. Dobrar o tamanho de uma transação geralmente dobra o número de operações de assinatura, bem como a quantidade de dados que deve ser hash para essas assinaturas.

O SegWit é capaz de resolver isso alterando o cálculo do hash da transação para a assinatura de forma que cada byte de dados tenha que ser hash apenas uma vez. Isso significa que o tempo de verificação é uma função linear. Isso tornará o dimensionamento do tamanho do bloco mais seguro e permitirá transações muito maiores, como aquelas sendo pagas a mineradores ou financiadores coletivos.

Daqui para frente

O requisito de consenso de 95% foi finalmente atendido e o SegWit foi oficialmente ativado na rede Bitcoin em 23 de agosto de 2017. Houve uma série de festas para comemorar este marco importante na jornada do Bitcoin. Na verdade, muitos daqueles que estavam esperando pelo momento estavam entusiasmados com as implicações de uma eventual implementação da Lightning Network.

Quanto tempo leva para que a maioria das transações sejam transações SegWit não é certo, mas você pode rastrear facilmente a adoção em sites como segwit.party.

Imagem em destaque via Fotolia

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me