The Bitcoin has reached historical peaks that exceed $ 20,000 USD, late in 2017, no matter how much the market fluctuates; no one can deny the success of a cryptocurrency that began that year under $ 1000 USD. To participate in the market, you do not need to have technical knowledge about Bitcoin transactions. Basically you just have to have money to invest. However, it is never too easy to learn how things work, and that is why we have prepared this guide.
Bitcoin transactions are, at first glance, simple. But how does a transaction within the bitcoin blockchain system work?
Bitcoin does not exist
To understand how a transaction works, we must understand that it is bitcoin. The reality is that what we know as BTC are transaction records in your blockchain network. There is no physical unit, not even a digital unit, such as a file or document, which we can identify as bitcoin.
In fact, you will be surprised to know that a wallet is not even a wallet in every sense of the word. In fact it is more an address to which transactions are attributed; the reflected balance is not the bitcoins, but the blockchain network transactions that have been made towards that address. Based on this we can say that what exists is not bitcoin, but bitcoin transaction records.
Protocol of a bitcoin transaction
BTC transactions mostly aim to move money, so a simple protocol that has three parts is used; input, quantity and output. Each of these phases are necessary to guarantee the security of the system and to keep it immaculate and impassable.
The entry is defined as the sections of a bitcoin address that contains cryptocurrencies. Assuming we want to make a transaction of 0.2 BTC in an account that has 1 BTC stored. The entry is responsible for identifying each section of that total 1 BTC in the wallet to know which 0.2 BTC of the total amount should be sent. If there were no exit concept, there would be no way to know which part of the total 1 BTC represents those 0.2 BTC that we are going to send.
For its part, the quantity is a numerical unit that determines the volume of the transaction. That is, this is the amount we indicate that we want to send to another purse that would be the third part of the transaction fulfilling the exit role. Without the concept of quantity the system would not know when to send money, so that all transactions would be blind; without knowing how much money is being sent or how much is going to arrive.
In a transaction, the system analyzes the amount to determine how many entries it must take to complete it. In this case, if system takes two 0.12 BTC entries to complete those 0.2 BTC that you want to send, which would give a total of 0.24 BTC. The excess amount is sent to an own address and is taken by the system as output.
The miner is responsible for executing the transaction and registering it in the chain of blocks. For this you need to decipher the hash of the previous block, which in reality would be the last transaction made in the system. As a reward for their work test, the miner is credited with all the remaining BTCs that are not assigned to any address.
In a transaction there can be as many inputs and outputs as necessary. This is what allows different amounts of money to be sent to different people in the same transaction. This factor is especially exploited by some wallets to save on mining fees.
How are bitcoin stored?
As we said at the beginning, what we know as bitcoin are actually transaction records. A purse is an address to which such transactions are attributed. The balance that this reflects is in fact a summation of all the transactions that have been made towards that address.
If we have a client that sends us 1 BTC and another that sends us 2 BTC, even though the purse reflects a balance of 3 BTC, the transactions are still separate. The wallet does not create a single 3 BTC file, but keeps them as separate transactions.
When we make a shipment with an amount that is not equivalent to any of the registered transactions, something interesting happens. Taking the previous example, if we have two different transactions in our wallet, one for 1 BTC and another for 2 BTC, and we want to send a different amount to the one registered in those operations, the system will take the one that resembles the quantity we want. submit.
So if we want to send 1.5 BTC, the system will take the 2 BTC transaction registered in our wallet and create two exits; the first to the shipping address, which will have an amount of 1.5 BTC, and the second to a new address that the purse creates so that we can maintain those 0.5 BTC that we do not want to send in the transaction.
Two factors come into play in bitcoin transactions; the bitcoin address and the private keys. The first would be the public key of the second and both are necessary for the system to allow a transaction.
On the other hand are the seeds, which are special keys that the purses generate, or can be determined by ourselves, which allow us to generate new private keys. When a transaction is to be executed, it is necessary to place the private key of the incoming bitcoin address for the system to confirm. Because the public and private key is only compatible with each other, the system can easily verify it by comparing them. Once we indicate this information, we can proceed to determine the quantity and the exit address of the operation.
Why are bitcoin transactions not instantaneous?
All the process described in the protocol must be confirmed and disaggregated by the miners. So even though we make a transaction right now, we will have to wait for the miner to register it in the block chain.
To register a transaction in the chain, the miner must be able to decipher the nonce of the last transaction made and then encrypt the new block, a process that takes at least 10 minutes to complete.