Bitcoin Taproot

A percepção geral da privacidade do Bitcoin mudou para mais ênfase em melhorá-la conforme o mercado de criptomoedas voltadas para a privacidade cresce e mais vetores de ataque para desanonimização de usuários são revelados. De Dandelion ++ a Chaumian CoinJoins, inúmeras iniciativas estão em andamento para aumentar as garantias de privacidade do pseudônimo Bitcoin.

Em particular, um benefício de privacidade significativo para a criptomoeda legada, conhecido como Taproot, é esperado para inclusão no protocolo após a integração de assinaturas Schnorr – que são necessárias como base para sua implementação.

Originalmente proposto pelo desenvolvedor e criptógrafo de Bitcoin Gregory Maxwell em janeiro de 2018, Taproot expande os recursos de contrato inteligente do Bitcoin enquanto preserva a privacidade ao tornar as transações padrão e mais avançadas efetivamente indistinguíveis.

A atualização coincide com vários outros desenvolvimentos propostos, incluindo Schnorr, Graftroot e MAST – uma melhoria em relação ao P2SH. Alguns dos principais desenvolvedores de Bitcoin estão atualmente trabalhando em um plano para integrar Schnorr e Taproot como um aprimoramento de protocolo combinado.

Bitcoin Taproot

P2SH e MAST

Para entender o Taproot, é necessário primeiro avaliar alguns métodos que sustentam as transações na rede Bitcoin. Especificamente, P2SH (conhecido como pay to script hash) é onde as moedas são bloqueadas em um contrato de Bitcoin contendo scripts que definem condições específicas que precisam ser atendidas para que as moedas sejam gastas pelo proprietário.

Por exemplo, as transações padrão requerem que uma chave privada seja produzida para verificar se as moedas podem ser gastas. No entanto, transações mais avançadas, como multi-sig, requerem que um certo limite de um grupo assine uma transação antes que ela possa ser enviada. Portanto, se Alice, Bob e Charlie fizerem parte de um grupo multi-sig para gastar X quantias de bitcoins de um fundo de câmbio, um script P2SH multi-sig pode exigir que pelo menos 2 dos 3 participantes sejam obrigados a assinar a transação para que os resultados sejam gastos.

O direito de gastar saídas específicas pode corresponder a várias condições de script P2SH, mas apenas uma precisa ser atendida para autorizar um gasto.

As condições dessas transações mais avançadas são armazenadas no script P2SH como um hash no blockchain. No entanto, uma vez que as moedas são gastas, todo das condições são reveladas à rede, sejam ou não as condições que foram cumpridas e autorizam o gasto das moedas. Por exemplo, se a condição 2 de 3 multi-sig for atendida antes de outra condição de script P2SH, como um bloqueio de tempo que também existe, então os scripts de bloqueio de tempo e multi-sig são revelados após o gasto das moedas.

Isso apresenta problemas de privacidade, pois nem todas as carteiras Bitcoin contêm funcionalidades como multi-sig e contratos de bloqueio de tempo. Assim, os observadores podem deduzir o tipo de carteira de origem de uma transação, eliminando carteiras que não apresentam condições de script P2SH avançadas. Numerosas condições também podem levar a transações mais pesadas, reduzindo a escalabilidade.

O MAST foi projetado para melhorar o P2SH ofuscando as condições do script para uma transação. Representando “Merklelized Abstract Syntax Tree”, o MAST obscurece as condições do script de uma transação e apenas revela a primeira condição que foi cumprida – que foi responsável pelo gasto válido das moedas. O MAST habilmente emprega Merkle Trees para fazer o hash de cada condição de script individual, em vez de hash de todo o conjunto de condições. Ao fazer isso, um caminho Merkle pode autenticar que uma condição válida foi atendida sem revelando as outras condições de script.

De volta ao exemplo de Alice, Bob e Charlie. Se o P2SH contiver uma condição de multi-sig 2 de 3 e uma condição de bloqueio de tempo, apenas a condição que for atendida primeiro será revelada. Se Alice e Bob assinarem a transação, um observador pode verificar se a condição de multi-sig 2 de 3 foi atendida, mas eles não saberão que o P2SH também continha uma condição de bloqueio de tempo.

Schnorr e Taproot

A principal vantagem das assinaturas Schnorr é sua capacidade de agregar transações em uma única transação. Em vez de entradas que requerem assinaturas individuais, as assinaturas de várias transações podem ser integradas em uma transação com uma única assinatura comum.

O grande benefício da agregação de assinaturas é a economia de armazenamento em cada bloco e a subseqüente melhor escalabilidade da rede. No entanto, ao aplicar assinaturas Schnorr a transações multi-sig, você permite que o Taproot.

Aproveitando um truque chamado “assinaturas de limite” quando Schnorr é aplicado a transações multi-sig, os participantes da multi-sig podem agregar suas assinaturas e chaves públicas para gastar as moedas como qualquer transação padrão. Taproot é uma inovação que une o MAST com este conceito, onde os participantes podem “ajustar” a chave pública de limite ou assinatura de limite.

Assinaturas criptográficas

O que são assinaturas criptográficas?

Essencialmente, eles podem provar a validade de um gasto de uma condição de script de transação multi-sig sem revelar dentro da transação agregada Schnorr mais ampla que sua transação continha condições de script complexas. Como resultado, uma transação avançada (multi-sig) pode ser escondida dentro de uma assinatura Schnorr agregada como uma transação regular sem sacrificar o mapeamento de caminho Merkle do MAST.

Além disso, a transação não revela que contém uma estrutura MAST.

Schnorr, MAST e Taproot são vistos como inovações complementares que levam a alguns recursos fascinantes – e mais complexos – de transações Bitcoin.

Desenvolvedor Bitcoin Core Anthony Towns proposto uma ideia vários meses depois, em julho de 2018, para “raiz axial generalizada”, que reduziria a quantidade de dados necessários para a proposta inicial de raiz principal. No entanto, ele observa:

“No que diz respeito à implantação, acho que faz sentido obter uma implantação inicial de schnorr / taproot / mastro primeiro e adicionar raiz de enxerto / agregação depois. Meu sentimento é que não há grande urgência para a raiz principal generalizada, então faria sentido continuar fazendo schnorr / raiz principal / mastro por enquanto, levar um tempo analisando a raiz principal generalizada e, se parecer lógico e útil, tente ativá-la em uma fase posterior, por exemplo, ao mesmo tempo que graftroot / agregação ”

Taproot é basicamente pronto para ser implantado mas exige que Schnorr seja implementado primeiro ou pelo menos em conjunto com Taproot.

As propostas detalhadas para a inclusão de Schnorr no protocolo Bitcoin Core são Já disponível, no entanto, não parece haver um cronograma definitivo para sua implementação. A percepção geral é que Schnorr, MAST e Taproot serão implementados como um pacote de atualizações complementares ao protocolo.

Schnorr é uma atualização significativa para o Bitcoin, rivalizando com o do SegWit. As atualizações principais trazem contendas e atrasos entre a comunidade, mas o suporte por trás do Schnorr é forte. Os desenvolvedores estão trabalhando para testar e refinar a implementação técnica da atualização antes de anunciar sua preparação final.

Os desenvolvedores de Bitcoin e a comunidade em geral há muito estão entusiasmados com o potencial da integração da Schnorr Signature no protocolo e parece que uma data oficial para sua inclusão está no horizonte para 2019. Taproot apresenta algumas vantagens de privacidade intrigantes como um complemento ao Schnorr e MAST, e a eventual adição de Graftroot até mesmo busca aprimorar Taproot abordando algumas de suas deficiências de eficiência.  

A eficiência e a privacidade do Bitcoin têm sido o foco da comunidade há anos, e avanços significativos já foram feitos com inovações como SegWit, Stonewall e Chaumian CoinJoins. Muitas outras propostas passarão por um desenvolvimento adicional ao longo de 2019 e servirão como algumas melhorias atraentes para a rede Bitcoin em constante evolução.

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