As transações em blockchain sustentam as redes de criptomoedas. São elas que determinam como o valor é transferido entre usuários.
Se você trabalha com Bitcoin, Ethereum ou Cardano, entender os mecanismos por trás dessas transações é essencial para quem explora tecnologia blockchain.
Neste post, você vai entender dois modelos centrais de registro de transação, o UTxO e o baseado em contas: como cada um funciona, no que eles diferem e por que essa escolha é decisiva para a segurança e o funcionamento das redes blockchain.
Tipos de transação em blockchain
Existem dois modelos principais de registro para pagamentos em blockchain: o baseado em UTxO e o baseado em contas.
Transações baseadas em contas
O modelo baseado em contas é uma das principais abordagens usadas em redes blockchain para acompanhar os saldos e as transações dos usuários.
Nesse modelo, cada usuário tem uma conta única, identificada por um endereço, que guarda o saldo atual. As transações alteram esses saldos diretamente, do mesmo jeito que um banco atualiza uma conta depois de um depósito ou de um saque.
A força do modelo baseado em contas está na simplicidade e na forma direta de gerenciar saldos. O funcionamento lembra o de um banco atualizando uma conta depois de um depósito ou saque, o que torna o sistema familiar e eficiente para os usuários.
O Ethereum é um exemplo conhecido de blockchain que adota o modelo baseado em contas. Como o foco está no estado das contas, o processamento de transações e smart contracts fica mais rápido.
Unspent Transaction Output (UTxO)
No modelo UTxO, cada transação consome inputs (que são outputs não gastos de transações anteriores) e gera novos outputs.
Cada input precisa ser usado por inteiro e produz outputs de transação que ainda não foram gastos, chamados de UTxOs. Cada UTxO representa uma quantia de Bitcoin que pode servir de input em transações futuras. Assim que o UTxO original é usado como input, ele passa a ser considerado “gasto” e não pode mais ser usado.
O modelo UTxO, com o conceito de Unspent Transaction Output, foi introduzido pelo Bitcoin para organizar como as transações são registradas no seu blockchain.
Esse modelo garante mais segurança e privacidade. Ele reduz de forma significativa o risco de certos tipos de ataque e cria um ambiente protegido para as transações.
Leia mais: Escalando uma carteira cripto: 30% de crescimento com melhorias de backend e UX/UI
Exemplos de Unspent Transaction Output
Vamos ver como isso funciona na prática. O exemplo clássico de comprar uma pizza com Bitcoin costuma ser usado para explicar o modelo UTxO (Unspent Transaction Output). Nesse caso, assim como quem paga a pizza com dinheiro em espécie, você usa outputs de transações anteriores para pagar e recebe troco na forma de um novo output, se for necessário.
Suponha que o Gus tenha 10 tokens em um único UTxO e queira comprar uma pizza do John por 7 tokens. Veja como isso funcionaria.
Como o UTxO precisa ser gasto por inteiro, o UTxO de 10 tokens vira o input e dois UTxOs são gerados como outputs. Depois da transação, o John recebe um UTxO de 7 tokens como pagamento e o Gus recebe um de 3 tokens como troco.

A mesma lógica vale quando vários UTxOs entram como inputs. Se um UTxO sozinho não cobre o valor da transação, dá para usar vários, e eles produzem outputs da mesma forma.
Falta um último detalhe: as taxas de transação. Em resumo, a taxa é a diferença entre os inputs e os outputs da transação. Se uma transação tem 10 tokens como inputs e 9 tokens como outputs, o token restante é descontado como taxa. É preciso atenção para não pagar taxas altas por não aproveitar todo o valor dos inputs.
As taxas servem para incentivar os mineradores a processar transações e manter a rede segura. Elas também evitam que usuários sobrecarreguem a rede com transações sem valor. Dentro da transação, um endereço é indicado para criar o output. O direito de usar aquele UTxO em uma transação futura depende desse endereço.
Ele funciona como uma trava que só abre com a assinatura da chave privada do dono. O blockchain acompanha todos os UTxOs de um usuário e soma esses valores para chegar ao saldo.
Modelo de contas vs. UTxO
Comparar o modelo UTxO com o baseado em contas revela algumas diferenças importantes.
O modelo UTxO, usado pelo Bitcoin, trata cada transação como o gasto de outputs recebidos antes, o que gera novos outputs para transações futuras. É parecido com lidar com dinheiro em espécie, onde cada moeda ou cédula é uma unidade discreta que precisa ser contabilizada.
Já o modelo baseado em contas, usado em redes como o Ethereum, controla saldos em contas, como um ledger tradicional.
O modelo UTxO oferece mais rastreabilidade e mais paralelização na verificação das transações. Em compensação, o modelo baseado em contas tende a ser mais simples e mais eficiente em sistemas que mudam de estado com frequência, como os que envolvem smart contracts.
Os dois modelos têm vantagens, e a escolha depende do caso de uso e da arquitetura da rede.
Leia mais: Escalando interoperabilidade em mais de 140 blockchains
Extended Unspent Transaction Output (eUTxO)
Uma das vantagens do modelo baseado em contas introduzido pelo Ethereum é o uso de smart contracts. Um smart contract é um programa autoexecutável armazenado em um blockchain, que roda quando condições predeterminadas são atendidas.
Só que rodar smart contracts no Ethereum altera o ledger carregando apenas as modificações, sem referência ao estado anterior do blockchain. O problema é que o contrato pode nem ser mais aplicável quando chega ao produtor do bloco. Esse modelo não é determinístico, o que o torna imprevisível na prática.
O Cardano, uma plataforma de blockchain de terceira geração, criou o conceito de Extended Unspent Transaction Output (eUTxO) para resolver esse problema. O novo modelo parte da base do UTxO original e o aprimora para lidar com smart contracts sem abrir mão do determinismo.
Uma das diferenças centrais entre os smart contracts tradicionais e o modelo eUTxO é o momento da execução. Contratos no estilo Ethereum são executados quando uma transação é enviada para eles. Já os eUTxOs são executados quando alguém tenta gastar o UTxO que tem um smart contract anexado.
No Cardano, o script do smart contract é um validador: ele verifica a transação e autoriza ou rejeita o gasto. Por isso as aplicações precisam de uma infraestrutura off-chain para monitorar a atividade on-chain e disparar as ações certas.
A principal vantagem do novo modelo é que o sucesso da transação depende só dela mesma e dos seus inputs. Diferente dos smart contracts baseados em contas, ele não depende do estado global da rede. Na prática, dá para verificar a validade da transação off-chain e, se ela falhar, nem é transmitida para a rede.
Para isso, o eUTxO acrescenta dois elementos novos e decisivos: o datum e o redeemer. Esses componentes permitem uma lógica de transação mais avançada, principalmente na interação com smart contracts.
O papel do datam e do redeemer no eUTxO
O datum é o dado adicional anexado a um output, que dá contexto ou informação sobre a transação.
Esse dado pode ser qualquer coisa relevante para o smart contract: detalhes de propriedade, condições de gasto ou informações necessárias para executar a lógica do contrato.
Já o redeemer é um dado fornecido pelo input da transação que destrava ou “resgata” o UTxO, permitindo que ela siga adiante. O redeemer pode incluir parâmetros que o smart contract vai checar para garantir que a transação cumpre as condições exigidas.

Veja um exemplo de como o datum e o redeemer funcionam em transações eUTxO. Quando um participante compra um bilhete de loteria, o smart contract anexa um datum ao UTxO que representa o bilhete.
O datum pode conter o endereço do participante e o número do bilhete. Essa informação é decisiva para determinar o vencedor quando o sorteio termina.
Na hora do sorteio, uma transação separada é iniciada para escolher o bilhete premiado. O smart contract exige um redeemer como input para verificar se as condições corretas foram cumpridas (por exemplo, o prazo do sorteio já passou e existe uma inscrição válida).
O redeemer pode conter o resultado do gerador de números aleatórios da loteria, usado para identificar o bilhete premiado. Assim que o bilhete premiado é identificado, o UTxO com o valor do prêmio é liberado para o endereço do vencedor.
Nesse exemplo, o datum carrega a informação relevante do bilhete e o redeemer fornece a condição (o número sorteado) necessária para destravar os fundos da loteria. Essa interação entre datum e redeemer garante que a transação seja segura e só aconteça quando as condições predefinidas forem cumpridas.
Com datum e redeemer, o modelo eUTxO ganha flexibilidade e segurança em transações complexas, como loterias, leilões ou pagamentos condicionais.
Leia mais: Smart contracts: o que são e como construir os seus
Exemplos de eUTxO no mundo real
Veja alguns exemplos de eUTxO.
Imagine uma campanha de crowdfunding descentralizada. Cada contribuição seria um UTxO separado e, quando a meta fosse atingida, o smart contract distribuiria os fundos automaticamente, seguindo regras predefinidas.
Isso permite transações rastreáveis e condicionais, que só são executadas se determinados critérios forem cumpridos. Pense em um smart contract que administra um empréstimo. Quando o usuário deposita a garantia, o smart contract retém o UTxO, que representa o valor emprestado.
Se o empréstimo é pago no prazo, a garantia volta para o usuário. Se não é, o smart contract transfere automaticamente a propriedade da garantia para quem emprestou. Esse caráter condicional das transações mostra a flexibilidade do modelo eUTxO em cenários mais complexos, com mais confiabilidade e segurança.
Esses exemplos deixam claro que o eUTxO amplia o que o UTxO tradicional consegue fazer, ao permitir uma lógica de transação mais dinâmica e programável, principalmente em ambientes que dependem de smart contracts.
UTxO vs. eUTxO vs. modelos baseados em contas
Veja um comparativo entre UTxO, eUTxO e modelos baseados em contas:
| UTxO | eUTxO | Baseado em contas | |
|---|---|---|---|
| Uso principal | Bitcoin | Cardano | Ethereum |
| Modelo de transação | Baseado em outputs de transação não gastos | UTxO estendido com dados e lógica | Baseado em saldos |
| Unidade básica | UTxO (output de transação) | UTxO com datum e redeemer | Conta com saldo |
| Smart contracts | Limitado | Suporte nativo e avançado | Suporte nativo |
| Flexibilidade | Menos flexível para contratos | Alta flexibilidade, com lógica programável | Alta flexibilidade |
| Complexidade | Simples, cada transação gasta outputs específicos | Mais complexa por causa das informações adicionais | Simples, focada em saldos |
| Privacidade | Maior, por causa da fragmentação dos UTxOs | Alta, porque cada UTxO é tratado individualmente | Menor, já que as contas são atualizadas diretamente |
| Paralelização | Alta, já que transações independentes podem ser processadas em paralelo | Alta, pela independência entre UTxOs e contratos | Baixa, todas as contas compartilham o mesmo estado |
Em UTxOs comuns, o endereço do output aponta para chaves públicas. Em eUTxOs, o endereço também pode apontar para scripts.
Cada script define uma lógica arbitrária que precisa ser satisfeita para gastar o output. Na execução, cada script usa o próprio datum, o redeemer e os elementos da transação para decidir se os fundos podem ser liberados.
Dá para pensar no script como uma equação matemática. Os parâmetros representam o datum e os argumentos representam o redeemer. A equação devolve uma decisão “True” ou “False” sobre liberar ou não os fundos.

O eUTxO abre novas possibilidades e funcionalidades nas transações em blockchain
Ao adotar o eUTxO, o Cardano entrega smart contracts mais robustos e seguros do que blockchains que usam o modelo de conta e saldo. O modelo permite que o Cardano sustente aplicações financeiras complexas e apps descentralizados com mais segurança e previsibilidade, já que cada transação é processada de forma independente.
Essa abordagem também ajuda a manter um nível alto de escalabilidade, peça central da missão do Cardano de oferecer uma plataforma blockchain sustentável e eficiente.
Não existe um modelo de transação em blockchain que sirva para tudo. Modelos baseados em contas, como o do Ethereum, oferecem simplicidade e velocidade. O UTxO e sua versão estendida no Cardano, o eUTxO, entregam mais segurança e mais programabilidade, principalmente para smart contracts.
Cada modelo tem seus pontos fortes, ajustados a casos de uso diferentes, da transferência simples de valor até aplicações descentralizadas complexas. Conforme a tecnologia blockchain evolui, entender esses modelos ajuda você a acompanhar as inovações que estão moldando o futuro dos sistemas descentralizados.
Se você quer se aprofundar em transações em blockchain e em como elas funcionam, o blog da Cheesecake Labs tem bastante material.
Tem posts sobre o básico de blockchain e sobre pagamentos em blockchain, além de recortes mais detalhados do universo das transações, incluindo as taxas do Soroban e o nosso estimador de custos de Stellar Lumens (XLM).
E se a sua empresa quer entender melhor como usar transações em blockchain, entre em contato! Vamos adorar conversar sobre as suas ideias.