Blockchain do bitcoin – Transações e Saldos

Browse By

Conforme comentado anteriormente, a publicação que propõe o Bitcoin declara:

”We define an electronic coin as a chain of digital signatures”
(Em livre tradução, definimos uma moeda eletrônica como uma cadeia de assinaturas digitais)

Por exemplo, a transação de 1 bitcoin da Alice para o Charlie ilustrada abaixo, depende da formação de uma cadeia com uma transação anterior, que confira saldo para a execução desta transferência. Nesse caso, é dado como entrada os 1.5 bitcoins recebidos anteriormente pela Alice do Bob. De igual forma, a transação precisa informar o que fazer com o “troco” (diferença entre a entrada de 1.5 bitcoins menos o 1 bitcoin transferido). Nesse caso, transferir de volta para Alice. Vale citar que eventual saldo da transação é considerado uma taxa de transação oferecida a quem processou o bloco que continha essa transação.

Além disso, a transação precisa ser assinada (sign) pela usando a chave privada (sk) da carteira (pk) que recebeu os bitcoins dados como entrada e que vai transferir os bitcoins para outra carteira.

A imagem abaixo ilustra os dados da transação dada como exemplo, onde estão as entradas de bitcoins (input), as saídas (output) e a assinatura desta transação (saída da função sign).

Entenda o nome dos personagens na transação acima como o endereço da carteira de cada um destes. Lembrando que não existe obrigatoriamente relação entre um endereço de carteira (pk) e uma pessoa física ou jurídica do mundo real (pseudo-anônimo).

Percorrendo o histórico de transações é possível identificar as que ainda não foram utilizadas como entrada (input), esse é o saldo das respectivas carteiras, que pode ser assim confirmado diretamente no histórico ou armazenado em outras estruturas para maior eficiência de consulta (conhecido como UTXO, acrônimo em inglês para Unspent Transaction Output).