RESUMO
Um UTXO é uma moeda digital que permanece após uma transação criptográfica.
Os UTXOs são processados continuamente e fazem parte do início e do fim de cada transação.
Quando uma transação é concluída, todas as saídas não gastas são salvas em um banco de dados como entradas para transações futuras.
Os UTXOs são essenciais para evitar gastos duplos no Blockchain e usuários de gastar moedas inexistentes.
Introdução
A saída de transação não gasta (UTXO) e os modelos de contas são métodos de manutenção de registros de criptomoeda usados para representar o número de tokens que um indivíduo deixou após concluir uma transação no Blockchain. Esses modelos são essenciais para como a arquitetura blockchain mantém um registro preciso enquanto mantém a privacidade.
O termo é basicamente utilizado para definir o resultado das transações recebidas e que poderão ser gastas no futuro.
A moeda fiduciária física é a melhor analogia para UTXOs. Um UTXO não pode ser dividido em denominações menores da mesma forma que moedas ou notas não podem. Um UTXO pode ser considerado um pedaço discreto de seu token correspondente controlado pela chave privada de seu proprietário. Bitcoin (BTC), Litecoin (LTC), Bitcoin Cash (BCH) e Zcash (ZEC), entre outros, usam o modelo UTXO.
O que é exatamente o modelo de saída de transação não gasta (UTXO)?
A quantidade de moeda digital deixada após uma transação de criptomoeda é descrita como uma saída de transação não gasta (UTXO). É semelhante ao troco que você recebe depois de comprar algo, mas não é uma moeda de menor valor. É a saída da transação no banco de dados gerada pela rede para permitir transações de alteração não exatas.
Como medida contábil, a parcela do total de criptomoedas não gasta em uma transação (saída) é utilizada na próxima transação (entrada). Cada transação, como a contabilidade de partidas dobradas, tem uma entrada e uma saída.
Considere 10 Bitcoins como um balde cheio de moedas. Cada moeda representa um UTXO. Se você pagar 5 BTC por algo de Stephanie, a rede dará a Stephanie todo o balde de moedas e devolverá os 5 BTC devidos em “troco”. Agora você tem um UTXO no valor de 5 BTC que não pode ser mais dividido.
Como funciona o UTXO?
Imagine que você deseja enviar 1,3 BTC de um saldo de 1,5 BTC em seu Bitcoin endereço de carteira . Este 1,5 BTC é provavelmente uma saída de suas transações anteriores.
Digamos, 0,9 BTC e 0,6 BTC, respectivamente.
Existem duas saídas para sua nova transação; o 1..3 BTC gasto (enviado ao destinatário) e a saída não gasta de 0,2 BTC, que é devolvida ao seu endereço (o remetente).
Os 0,2 BTC restantes são usados de uma das seguintes maneiras:
Enviado de volta para sua conta.
Use parte ou o valor restante como taxa de transação ou
Enviar o valor restante é enviado para outra pessoa.
Os nós Bitcoin acompanham essas saídas para manter um registro das transações. Cada UTXO usa scriptPubKeys codificados para registrar cada transação e não tem um usuário específico associado a ele. Isso permite que a rede valide a existência de todas as moedas relacionadas sem revelar as informações privadas do usuário.
Importance of UTXO
O conceito de UTXOs simplificou significativamente a contabilidade da blockchain. Os UTXOs permitem que cada nó rastreie informações sobre moedas não gastas, em vez de rastrear e armazenar todas as transações feitas e em ordem.
Funciona porque cada moeda só pode ser gasta uma vez na rede Bitcoin . Isso significa que cada BTC em uma carteira não foi gasto; ou foi recebido como recompensa de mineração ou cunhado como troco durante uma transação.
Os UTXOs são essenciais para evitar gastos duplos no BlockchainBlockchain e impedir que os usuários gastem moedas inexistentes. Cada nó de rede mantém um banco de dados de cada UTXO existente.
O que é um Modelo de Conta?
Um cartão de débito ou conta bancária é a analogia mais óbvia para o modelo de conta. Em contraste com a moeda fiduciária física, que não pode ser dividida em denominações menores, um modelo de conta permite o crédito (ou débito) de qualquer valor de token arbitrário. Uma carteira de modelo de conta representa o saldo agregado do usuário, enquanto as carteiras UTXO mantêm a soma total dos UTXOs de um usuário.
Entre os projetos que usam o modelo de conta estão Ethereum (ETH), Ethereum Classic (ETC) e Ripple (XRP). Ao contrário do modelo UTXO, as transações no modelo Account representam uma única transferência de fundos ou moeda digital entre contas sem necessidade de entradas ou saídas adicionais. Tudo o que é necessário é uma mudança de razão.
Diferenças entre UTXO e modelo de conta
Embora os modelos UTXO e de conta compartilhem o mesmo objetivo, cada um deles tem vantagens e desvantagens.
• Escalabilidade:
Como armazenar um único saldo ocupa significativamente menos memória do que armazenar todos os UTXOs pertencentes a esse usuário, o modelo de conta faz um melhor uso da memória. As transações do modelo de conta são menores porque exigem apenas o valor, o remetente, o destinatário e uma assinatura digital. Uma transação típica do Ethereum tem cerca de 100 bytes, enquanto uma transação do modelo UTXO é várias vezes maior. A paralelização das transações UTXO também facilita a divisão de blockchains baseados em UTXO em shards e sidechains. O modelo UTXO permite agregação e definição de saída no lado do cliente, reduzindo os requisitos de computação de rede. Os modelos de conta são mais desafiadores de implementar porque cada nó deve localizar contas de remetente e destinatário em vários fragmentos.
• Privacidade:
Como o modelo UTXO torna a alternância entre endereços trivial, torna-se mais desafiador rastrear a propriedade da moeda. Os endereços recém-gerados não têm um proprietário público. Portanto, a análise avançada da cadeia geralmente é necessária para vinculá-los a um usuário específico. O modelo de contas envolve a reutilização de um único endereço. Como resultado, tais blockchains tornam a identificação de um histórico de transações muito mais acessível. Em termos de fungibilidade, o modelo de conta, por outro lado, oferece maior privacidade.
• Funcionalidade de contrato inteligente:
O modelo se beneficia significativamente da funcionalidade de contrato inteligente devido à natureza simplificada e intuitiva das transações baseadas em contas. Verificar um saldo singular requer menos poder de computação do que calcular a lógica de entrada/saída UTXO, tornando mais fácil para os desenvolvedores de DApp programar contratos e transações com várias partes. Por exemplo, a Ethereum Virtual Machine (EVM) pode processar transações entre vários contratos inteligentes ajustando seus respectivos saldos. O modelo UTXO consome significativamente mais recursos porque envolve entradas e saídas UTXO explícitas em cada transação. Os contratos inteligentes escritos em um modelo UTXO devem levar em consideração o número de entradas a serem combinadas ou, se houver várias opções, quais entradas devem ser combinadas.
• Segurança:
Os nós validadores em blockchains UTXO, como o Bitcoin , acompanham o conjunto UTXO para verificar com precisão quais moedas estão em circulação e quem as possui. O sistema UTXO aborda o problema de gastos duplos de maneira eficiente e sem confiança, porque cada transação deve fazer referência aos UTXOs exatos que estão sendo gastos. Os blockchains de modelo de conta são muito mais vulneráveis, frequentemente afetados por outros problemas, como estornos e contratos inteligentes a descoberto.
Por exemplo, ao longo de 2020, o projeto Ethereum Classic perdeu milhões devido a uma série de ataques de gasto duplo.
Conclusão
O modelo UTXO é um método de registro de transações no Blockchain.
Como diferentes modelos têm suas vantagens e desvantagens, a aplicação do UTXO em qualquer blockchain depende dos objetivos do projeto.
O Ethereum emprega o modelo de conta porque está preocupado em implantar contratos inteligentes robustos, enquanto o Bitcoin emprega o modelo UTXO porque está mais preocupado em desenvolver dinheiro eletrônico seguro.
Novos projetos estão tentando melhorar esses modelos. Cardano (ADA), Tron (TRX) e Qtum (QTUM), por exemplo, tentaram combinar os benefícios de ambos em modelos híbridos avançados. Esses modelos simplificam o uso do UTXO pelos desenvolvedores, mantendo o poder dos contratos inteligentes.
Autor: M. Olatunji, pesquisador da Gate.io.
*Este artigo constitui apenas a opinião dos autores, pesquisadores e observadores, mas não é uma sugestão de investimento. Republicar o artigo será permitido, mas a Gate.io deverá ser referenciada. Em outras situações, tomaremos as medidas pela violação de direitos autorais.