O que são Inputs e Outputs?

A gente sabe que no mundo das criptomoedas existem alguns termos não muito fáceis de entender. Por isso tentamos explicar aos poucos, pode-se até dizer que… bloco por bloco, os conceitos básicos que formam estas novas tecnologias.

Se você já enviou Bitcoins, pode ter percebido que algumas vezes são enviadas quantidades maiores do que as desejadas. Para acompanhar suas transações, existem alguns sites especializados, como este.

Já se perguntou porque isso acontece?

Antes de falar tecnicamente, vamos a um exemplo comum do dia a dia para em seguida explorar os termos usados na rede. Você foi a um restaurante e seu pedido deu um total de R$30,00. Quando você vai pagar a conta, percebe que só possui uma nota de R$50,00 na carteira.

No caixa, você não tem outra opção além de entregar para o atendente a nota de R$50,00 e receber uma nota de R$20,00 como troco.

Uma transação comum de bitcoins possui, no mínimo, uma origem e um destino das unidades de bitcoin que estão sendo transacionadas. Essa origem recebe o nome de “input” ou “entrada” da transação e o destino recebe o nome de “output” ou “saída” da transação. Tanto os inputs quanto os outputs são representados por um endereço e frações de bitcoins.

Se o pagamento do seu pedido no restaurante fosse realizado com bitcoins e tivesse custado, por exemplo, 0,003 BTC e você tivesse na carteira 0,005 BTC, nós poderíamos dizer que essa transação possui 1 input e 2 outputs, onde:

Por que existe troco?

O conceito de troco é inerente à forma como o blockchain do Bitcoin funciona para evitar que um gasto duplo seja realizado na rede. “Gasto” no Bitcoin significa usar o output de uma transação como o input de uma transação subsequente, ou seja, é o mesmo processo quando gastamos uma nota de R$50,00, que recebemos no passado, para pagar uma conta de R$30,00 no presente.

Uma mesma nota física não pode ser dividida e nem gasta mais de uma vez.

Um output que é gasto também não pode ser dividido, sendo necessário ser criado um novo output para o mesmo endereço de origem da transação com o restante dos bitcoins que não foram utilizados. Dessa forma se evita que uma mesma quantidade de bitcoins sejam usados mais de uma vez na rede.

Este é o motivo de algumas vezes mandarmos mais bitcoins do que o esperado em uma transação. Tudo depende da quantidade e do tamanho dos outputs que existem na sua carteira.