Notes on Transactions

An electronic coin is a series of digital signatures.

The coin is transferred from one owner to the next by signing a hash of the previous transaction and the public key of the next owner at the end of the coin.

Payees can verify signatures to confirm the chain of ownership.

In the typical digital coin, the first owner signs the digital signature with the private key, hashes it, then appends the next owner's public key, adding to the chain.

The problem is that there is no way for a payee to confirm that one of the owners did not double-spend the coin.

The most common solution would be to introduce a trusted third party, a mint (as proposed in Chaumian e-cash) to check for double-spending.

Usually, after each transaction, each coin must be returned to the mint and a new coin issued.

Only coins issued from the mint are trusted not to be double-spent.

The problem with this solution is that EVERY transaction has to trust and go through this "mint" to be considered valid, kind of like a bank!

A better way for the payee to know that the previous owners did not sign earlier transactions i.e double-spend the coin, with a central authority was needed.

For this use case, the earliest transaction is the only one that counts and later attempts to double-spend are unimportant.

But, to confirm the absence of a transaction you have to be aware of all transactions.

The only way to achieve this without a trusted third party is for all transactions to be publicly announced.

But, we also need a system for participants to agree on a single history of the order the transactions were received in.

To sum it up, the payee needs proof that the majority of nodes agreed that a transaction was the first received at the time of the transaction.

Confused about something? Visit the glossary.

Last updated