Overview Of How Bitcoin Works

overview-of-how-bitcoin-works

Overview Of How Bitcoin Works.A new user can get started with Bitcoin without deeply understanding the technical details. Bitcoin, from a user perspective, is just an application called Bitcoin wallet, Bitcoin core, etc,that can be installed on either a mobile or a computer. By this application, users can get a personal wallet by which the first Bitcoin address can be generated in order to start trading with Bitcoin. Normally, there are several ways to obtain a bitcoin, such as buying them from a Bitcoin exchange or vending machines, or get them as a payment for a product or service.

As mentioned earlier, the role of a trusted third party is no longer needed in the Bitcoin system, whereas the availability of a trusted third party in digital currencies is deemed as an essential condition to launch payments. Consider a payment between Alice and Bob needs to be carried out through a normal digital payment system that requires a third party. When Alice sends 100$ to Bob, the role of the third party starts here. The third party, e.g PayPal, that maintains a record of available balances, checks whether Alice has a sufficient balance that covers 100$. The third party adds 100$ to Bob’s record if Alice has enough money in his account, otherwise the payment will be discarded by the third party. In Bitcoin, the third party is replaced by a publicly distributed record of all available balances. This record is approachable by everyone, so the responsibility of managing this ledger is shared over the entire network rather than relying on a central authority to manage this ledger. This brings the possibility of checking all accounts by any participant in Bitcoin. Specifically, Bitcoin uses a computational proof of work principle which is used by the decentralized network nodes to prevent any financial fraud through reaching a consensus on valid transactions which, on other hand, leads to build a distributed record of all available balances.

In the digital currency world, the double spending problem means that digital currencies can be spent twice. Clearly, consider a situation where digital money are represented by just a computer file, like a digital document. Alice can transfer 100$ to Bob by simply sending a money file by e-mail. Alice can send a copy of the money file without deleting the original one. Within the absence of a central authority, Alice is still able to send another copy of the same money file to someone else. In Bitcoin, the distributed record solves the double spending problem without requiring a central authority. As mentioned before, participants of the Bitcoin network share a public ledger that includes all valid transactions that have ever been processed. Therefore, every user’s computer can verify the validity of each transaction and check whether or not it has been spent before. Though, an attempt to double spend a transaction that has already been spent will be detected.

Bitcoin working system

The Bitcoin user can send and receive bitcoins by using an address which is similar to a bank account. Each address consists of a public key and private key. Users of Bitcoin are distinguishable by their public key which is deemed as in opposition to their name or other identifiable information. Therefore, the public key is published and anyone can send bitcoins to it. In contrast, the private key should be kept secret as bitcoins that have been sent to a public key can only be spent by a user who possesses an appropriate private key. Users in Bitcoin can hold multiple public addresses which are not linked to any personal information. Though, knowing a user from his public address is quite a hard task to achieve as this address is pseudonymous.

A bitcoin, that have been included in the blockchain, can be transferred between two wallets by a signed transaction. A transaction is signed by a private key that is kept in the Bitcoin wallet to provide a mathematical proof that the transaction has been sent by the wallet’s owner. In addition, the private key prevents the transaction being replaced by other users once it has been issued. Once the transaction is created, it can be sent to a destination by broadcasting it in a peer-to-peer network which validates it against the sender’s public key. In other words, the transaction is propagated to all of other nodes in the network if the balance of the sending address has sufficient amount of bitcoin. After incorporating the transaction into a block by a miner, the block will be propagated to all network nodes and then it will be incorporated in a public ledger, known as blockchain, by miners which usually takes 10 minutes. By including the transaction in the blockchain, a chronological order of the transaction will be enforced and all nodes of the network agree on the state of the system. However, updating a particular block is considered impossible as it requires modifying the entire previous blocks.

Bitcoin-working-system
Bitcoin-working-system

In order to give a better understanding of the overall methodology of payment in Bitcoin, consider the example in Fig.1.2 where Bob wants to send 1 bitcoin to Alice. Bob is required to achieve two mandatory requirements, a Bitcoin wallet software that runs the Bitcoin’s client installed in his phone/computer, and his private key as well as Alice’s public key. Then, Bob creates a transaction that implies 1 bitcoin and propagate it to the entire Bitcoin network. By doing this, all miners in Bitcoin will be alerted in order to inform them about the new transaction. After that, miners start verifying the transaction (checking that Bob has sufficient funds) in order to add this transaction to the blockchain. Upon successful verification of the transaction, miners start racing to bundle Bob’s transaction along with all the pending transactions in the Bitcoin network in order to confirm them in the blockchain. To do this, miners are required to solve a computational problem that need to spend some computational effort. Upon successful confirmation of transactions, both Bob and Alice will receive a confirmation about the successful transaction.