OP_CHECKTEMPLATEVERIFY tornou-se mais uma vez um ponto focal na conversa sobre melhorias para escalar o Bitcoin. Desta vez, há muitos outros projetos alternativos para convênios sendo propostos e projetos concretos reais que fazem uso de CTV como soluções de escalonamento (Timeout Trees e Ark). A conversa tem uma profundidade muito maior de conceitos a serem considerados, tanto em termos de alternativas que poderiam ser adotadas como de propostas concretas que o CTV poderia viabilizar.

Uma narrativa que circula no campo de pessoas contra a CTV é que “a CTV não escala o Bitcoin”. Vamos interpretar isso com caridade como significando que o CTV em si não escala o Bitcoin, mas sim coisas que você pode construir com ele. Bem, então esse não é um argumento coerente. A Segregated Witness não escalou o Bitcoin. CHECKLOCKTIMEVERIFY e CHECKSEQUENCEVERIFY não escalaram o Bitcoin. Mas a Lightning Network, que essas três propostas permitiram, escala o Bitcoin. Eles adicionam uma enorme quantidade de sobrecarga para que o rendimento transacional cresça além das restrições do próprio blockchain.

O relâmpago literalmente não poderia existir sem essas primitivas da camada base. O problema com o Lightning, porém, é que ele apenas dimensiona o número de transações que podem ser processadas. Isso não ajuda de forma alguma a melhorar a escalabilidade de propriedade sobre UTXOs ou a aumentar o número de usuários que podem controlar um. Atualmente, o Lightning não é capaz de fazer isso com seu design atual e o atual conjunto de primitivos de consenso disponíveis no script Bitcoin.

A TVC pode mudar isso.

UTXOs e UTXOs virtuais

Parte do problema da deficiência do Lightning em relação à escalabilidade da propriedade do Bitcoin é que, para abrir um canal ou controlar um UTXO, você realmente precisa fazer transações na camada base. Depois disso, o Lightning pode facilitar um grande número de transações fora da cadeia, mas o usuário ainda deve realizar transações na cadeia para se integrar ao Lightning. Aumenta enormemente o número de transações que o Bitcoin pode processar, mas não faz nada para aumentar o número de pessoas que podem possuir Bitcoin.

Este é outro grande problema com o qual a CTV pode ajudar. Burak cunhou o termo “UTXO virtual” para sua proposta de Ark, mas acho que esta terminologia é um termo geral perfeito, útil muito além do contexto de Ark. Um UTXO virtual é aquele comprometido em ser criado no futuro, através de mecanismos como um pré- transação assinada, mas que ainda não foi criada na cadeia. O Bitcoin não tem espaço de bloco para que todos possam criar um único UTXO na escala da população mundial, mas há definitivamente potencial para as pessoas terem seu próprio UTXO virtual independente se o processo de comprometimento com eles puder ser escalável.

Dimensionar a criação de compromissos para vUTXOs é o problema. Neste momento, não há forma de criá-los, exceto através do uso de transações pré-assinadas, e isto introduz um gargalo que deve ser resolvido. O número de vUTXOs com os quais qualquer UTXO real pode se comprometer é limitado pelo tamanho do conjunto multisig que assina essas transações. Para criar vUTXOs sem confiança, o proprietário de cada vUTXO deve fazer parte da chave multisig que está assinando as transações que se comprometem a criá-los, caso contrário, eles não têm garantia de que transações conflitantes não serão geradas, o que anula sua capacidade de reivindicar seu vUTXO, se necessário . O problema de coordenar a assinatura entre cada membro do conjunto introduz considerações práticas que acabarão por limitar severamente o tamanho que qualquer pool de vUTXOs pode atingir. A única outra alternativa é fazer com que alguma parte ou partes de confiança assinem as transações comprometendo-se com os vUTXOs de todos e simplesmente confiando que eles não roubarão esses fundos dos legítimos proprietários.

A CTV oferece uma solução para ambos os problemas. Ao ser capaz de se comprometer de forma não interativa com um conjunto de transações futuras da mesma forma que as transações pré-assinadas, mas sem exigir que todos os proprietários dos vUTXOs que essas transações criam coordenem a assinatura, isso resolve o problema de coordenação. Ao mesmo tempo, como ninguém precisa interagir, uma única pessoa pode assumir o papel de financiar a produção CTV que se compromete com o desenrolar dos vUTXOs de todos na cadeia, e é necessária confiança zero nessa pessoa após a confirmação da transação de financiamento. Uma vez confirmado o UTXO real em um bloco, a pessoa que o financiou não terá a capacidade de desfazer ou duplicar os gastos das transações futuras com as quais se comprometeu.

Tenha em mente que um vUTXO pode ser o que você quiser. Pode ser um canal Lightning, um script multisig para armazenamento a frio, etc. O CTV faz o que a forma atual do Lightning não faz: dimensiona a propriedade real do Bitcoin, não apenas o número de transações que pode processar.

Cortar o atalho

Uma das outras críticas ao CTV como “não escalar o Bitcoin” é que, ao se comprometer com transações futuras, você não escapa da necessidade de colocá-las na cadeia eventualmente e, portanto, o CTV não ajuda realmente a melhorar a escalabilidade. Gosto de chamar isso de “falácia OP_IF”. ou seja, quando as pessoas começam a falar sobre CTV, elas esquecem que o OP_IF existe e que os scripts podem, na verdade, ter várias condições de gasto para escolher.

As coisas mais poderosas sobre Taproot são a capacidade de construir multisigs apenas adicionando duas chaves públicas e assiná-las com uma única assinatura agregada, e revelar apenas seletivamente um único ramo “IF” de um script que tem várias maneiras de ser gasto . Combinado com CTV, isso oferece uma maneira muito poderosa de usar compromissos vUTXO. Em vez de fazer uma cadeia de transações usando puramente CTV, elas podem ser construídas com o caminho de gastos do CTV enterrado dentro de uma árvore principal. O final da cadeia de transações são todos os vUTXOs individuais que cada participante possui, bloqueados apenas pela chave pública daquele usuário. À medida que você retrocede em direção à raiz da árvore, cada conjunto de chaves que está abaixo de qualquer nó na árvore pode simplesmente ser adicionado e usado como a chave Schnorr multisig sob a qual o caminho de gasto do CTV está enterrado.

Isso significa que em qualquer ponto da cadeia de transações que se desenrolam na cadeia para realmente transformar os vUTXOs em UTXOs reais, onde você pode fazer com que todos os participantes de um UTXO intermediário se coordenem entre si, todos podem simplesmente assinar cooperativamente uma transação movendo suas moedas onde eles querem seguir um caminho mais eficiente do que simplesmente deixar o fluxo de transação predefinido se desenrolar até o fim para transformar seus vUTXOs em reais. Isso permite que pequenos subgrupos escapem da necessidade de realmente desenrolar todo o conjunto de transações pré-comprometidas na cadeia, sem introduzir quaisquer partes confiáveis ​​em quem confiar ou enfraquecer a segurança da reivindicação de cada usuário sobre seus próprios vUTXOs.

Essas duas realidades simples oferecem um enorme ganho em escalabilidade para o Bitcoin sem comprometer a soberania ou segurança individual ao fazê-lo, e tudo o que precisamos para realizá-las é CTV.

Reconhecimentos: Gostaria de agradecer a todos que participam do Chicago Bitdevs por me ajudarem a formular essas observações de forma concisa por meio de discussão.

Fonte: bitcoinmagazine.com

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *