Post
Topic
Board Bitcoin Discussion
Re: What is a Bitcoin in my computer? An archive, an abstract value?
by
DannyHamilton
on 02/03/2015, 21:40:18 UTC
Hello folks.

Sorry, this must be a very silly question, but it's a doubt i have for quite some time.

What is a Bitcoin when it's stored in my wallet? Is it a findable archive in my computer? or it is something more abstract?

Thank you.

You are asking a very technical question.

The surprising answer is that bitcoins don't exist at all.

There is nothing that you can point at and say "that's a bitcoin".  There is no file, or sequence of letters or numbers that represents a singe bitcoin.  The concept of "a bitcoin" is an abstraction that we humans use to make it easier to talk about the transfer of control of value.  For that matter, there are no "addresses" at the protocol level either.

There is a blockchain, which is an ordered list of every transaction that has ever occurred.

With the exception of one "generation transaction" in each block, transactions typically include a list of previously unspent outputs that are being used to supply value to the transaction, and a list of new unspent outputs, each assigned some portion of the total transaction value supplied by the inputs, that are encumbered with requirements that must be met in order to use the new unspent outputs as inputs to a transaction.

Typical outputs are encumbered with a requirement to supply an ECDSA digital signature generated with a private key that is associated with a specific hash of a public key.  This public key hash is a numeric value between 1 and 1.46X1048.  In order to tell someone how to properly encumber their outputs so that you are able to provide the necessary signature, you need a reliable way to give them this public key hash.  A version number is pre-pended to the hash value, and a checksum is appended to the the hash value to prevent typos from causing a problem.  Then the entire value is represented in base58 using letters and numbers.  This versioned, check-summed, base58 encoded hash value is what we call a "bitcoin address".  By giving this value to someone, their wallet can extract the hash value from the address, verify the check sum, and then add the proper encumbering onto the output of the transaction that the wallet creates.