Category: 01. Bitcoin Tutorial

https://cdn-icons-png.flaticon.com/512/1490/1490849.png

  • Blockchain Technology

    It is believed that Blockchain is a new age technology that is solution waiting for a host of problems. There is no doubt that it is a new wonder in the field of computing.

    What is a blockchain?

    blockchain is basically a perpetually growing list of records, called blocks. These blocks are linked and secured by using cryptography. Each block generally contains a cryptographic hash of the previous block along with timestamp and transaction data. By its design, a blockchain does not allow modification of the data.

    It is an open, distributed ledger that records transactions between different parties efficiently and in a verifiable and permanent way. A blockchain, as shown in figure below is typically managed by a p2p or peer-to-peer network collectively following a protocol for communication between nodes and for validating new blocks. Once recorded, the data in any given block cannot be altered without consensus of the network majority.

    Bitcoin Blockchain

    In case of bitcoins, the blockchain is a public ledger that records bitcoin transactions. It is implemented as a chain of blocks. Each block contains a hash of the previous block up to the genesis block which is the first block of the bitcoin blockchain. This is however achieved without any trusted central authority: the working of the blockchain is performed by a network of communicating nodes running bitcoin software. Transactions of the type payer A sends B bitcoins to payee C are broadcast to this network using existing software applications.

    Nodes in the network validate new transactions, add them to their copy of the ledger, and then convey these ledger additions to other nodes. Each network node stores its own copy of the blockchain. Roughly every 10 minutes, a new group of validated transactions, a block, is created, and added to the blockchain, and then quickly published to all network nodes. This makes it possible for bitcoin software to determine when a particular bitcoin amount has been spent, and this prevents double-spending in a decentralized environment. It is noted that the blockchain is the only place where bitcoins can be said to exist in the unspent form.

    Blockchain technology has led to the development of new, digital currencies like Bitcoin and Litecoin that are not issued or managed by government or any central bank of a country. This frees individuals from any kind of control and intermediaries like banking systems that are scam and subject to collapses. It has also led to distributed computing technologies like Ethereum, which has introduced smart contracts.

    Blockchain is a replicated, shared ledger technology that allows any participant in the network to see ledger and make changes. It is open source, bringing down costs, improving efficiencies, increasing accessibility, addressing exciting and topical business challenges across a broad spectrum. Linux Foundation’s Hyperledger is a project developing an open source, open standards shared ledger technology.

    Nowadays, consumers demand transparency regarding products and their making. Governments require more information about corporate supply chains, with penalties for non-compliance. In such scenario, blockchain technology promises to deliver such expectations. It enables secure digital transfer of value or property across supply chains.

    Ezoic

    Advantages of Blockchain Technology

    The following are the advantages of Blockchain Technology −

    • Transactions are now verifiable, disallowing any party from making changes
    • Greater efficiencies are being achieved through greater transparency
    • Consumers have been empowered to make informed purchases
    • Now governments are able to procure reliable information.

    Many experts believe that blockchain technology can be used in online voting, crowdfunding and other emerging technologies and novel ideas. Major financial institutions such as JP Morgan Chase are confident that cryptocurrencies can lower transaction costs and make payment processing more efficient.

    Bitcoin is one of the most popular and successful implementations of blockchain technology. It is an open source cryptocurrency that uses distributed peer-to-peer computing. There is no need of a central authority to manage bitcoin network. It was created by a person or group under the pseudonym of Satoshi Nakamoto. The transactions on this network are verified by proof-of-work algorithms on computers running a mining software.

  • Environmental Setup

    Satoshi Nakamoto released the first bitcoin software as open source code in January 2009. He later renamed it to “Bitcoin Core” to differentiate it from Bitcoin network.

    Bitcoin Core is a bitcoin implementation. It is a full Bitcoin client and is backbone of the network which provides high levels of security, stability, and privacy. It also assists network in relaying transactions. It requires at least 50 GB of hard disk space and is not recommended for new Bitcoin users who can opt for lightweight mobile or desktop wallets.

    What is a Bitcoin full node?

    full node is a software program that fully validates transactions and blocks. Most full nodes also assist the network by accepting and validating transactions and blocks from other full nodes, and then relaying them further to other full nodes.

    Bitcoin Core full nodes need to have certain requirements. If a node is run on weak hardware, it may work − but with a host of issues. It will be an easy-to-use node, if the following requirements are met −

    • Desktop or laptop hardware running latest versions of Windows, Mac OS X, or Linux
    • About 150 Gb of free disk space, accessible at a minimum speed of 100 MB/s
    • 2 GB of RAM memory
    • A broadband internet connection with upload speed of at least 50 kilobytes per second
    • Preferably, an unmetered connection, a connection with high upload limits. It is common for full nodes on high-speed connections to use 200 GB upload or more a month. Download usage is around 20 GB a month, plus an additional 150 GB the first time you start your node
    • 6 hours a day of full node running

    Bitcoin Core can be downloaded from the site https://bitcoin.org

    Apart from downloading bitcoin client, we have to set up several accounts. Going further in this tutorial, we will learn how to open accounts in bitcoin sites and to create accounts in bitcoin wallets, bitcoin exchanges, bitcoin mining sites, faucet sites, and sites that offer bitcoin tools and value added services.

    Ezoic

    Java Installation

    To run a mining software like BitMinter client, we need to have latest compatible version of Java installed. BitMinter client can be downloaded from https://bitminter.com

    To install Java, you can follow these steps −

    • Go to www.java.com/download.
    • Click on the button “Free Java Download“.
    • Click on “Agree and Start Free Download” button.
    • Select the version that is compatible with your operating system.
    • Follow the onscreen instructions to continue installing the software.
    • Once the installation is completed, click on Finish button.
    • Continue on to the next step to set up a miner.
  • Introduction

    Bitcoin emerged out of the 2008 global economic crisis when big banks were caught misusing borrowers’ money, manipulating the system, and charging exorbitant fees. To address such issues, Bitcoin creators wanted to put the owners of bitcoins in-charge of the transactions, eliminate the middleman, cut high interest rates and transaction fees, and make transactions transparent. They created a distributed network system, where people could control their funds in a transparent way.

    Bitcoin has grown rapidly and spread far in a relatively short period of time. Across the world, companies from a large jewelry chain in the US, to a private hospital in Poland, accept bitcoin currency. Multi-billion dollar corporations such as Dell, PayPal, Microsoft, Expedia, etc., are dealing in bitcoins. Websites promote bitcoins, magazines are publishing bitcoin news, and forums are discussing cryptocurrencies and trading in bitcoins. Bitcoin has its own Application Programming Interface (API), price index, trading exchanges and exchange rate.

    However, there are issues with bitcoins such as hackers breaking into accounts, high volatility of bitcoins, and long transaction delays. Elsewhere, particularly people in third world countries find Bitcoins as a reliable channel for transacting money bypassing pesky intermediaries.

    How to use Bitcoins?

    We can make bitcoin transactions as we do with our familiar fiat currencies. While we use Bitcoin, the purchaser is actually referenced to our digital signature, which is a security code encrypted with sixteen different symbols. The purchaser decrypts the code with his device to get the cryptocurrency. Therefore we can say that cryptocurrency is an exchange of digital information that permits us to buy or sell goods and services.

    The transaction is secured and made trustworthy by running it on a peer-to-peer network that is akin to a file-sharing system.

    Ezoic

    How does Bitcoin handle double spending problem?

    For digital cash system, a payment network necessarily should have valid accounts, balances and transaction records. The biggest bottleneck common to every payment network is the double spending problem which is the case when same money is used multiple times to do transactions.

    To prevent double spending, all transactions have to be recorded and validated every time in a central server where all the balance records are kept. However, in a decentralized network, every node on the network has to do the job of a server; it has to maintain list of transactions and balance records. Thus, it is compulsory for all nodes/entities in the network to keep a consensus about all these records. This was achieved by using the blockchain technology in bitcoins.

    So we can say that bitcoins like other cryptocurrencies are mere token entries stored in the decentralized databases that keep consensus of all balance and account records. It is to be noted that cryptography is used extensively to secure the consensus records. Bitcoins and other cryptocurrencies are secured by math and logic more than anything else.

    Bitcoins and cyptocurrencies have gained recognition and adoption based on their perceived value by their creators and users.

    Bitcoin works on the same concept, the more people participate; the more value is created.

    Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.

    History of Bitcoins

    The first Bitcoin protocol and proof of concept was published in a Whitepaper in 2009 by a shadowy individual or group under the pseudonym Satoshi Nakamoto. Eventually Nakamoto, who remained mysterious, left the project in late 2010. Other developers took over and the Bitcoin community has since grown exponentially.

    While Satoshi Nakamoto’s real identity remains shrouded in mystery, it is on record that he communicated extensively in Bitcoin’s early days. Let us speculate on questions like when he started working on Bitcoin, to what extent he was inspired by similar ideas and what was the motivation for bitcoin.

    Creation of the first bitcoin domain

    It is believed that Satoshi started coding Bitcoin around May 2007. He is said to have registered the domain bitcoin.org in August 2008. Around that time, he started sending emails to a few individuals he thought might be interested in the idea of bitcoins.

    In October 2008, he publicly published a white paper that dwelt on the Bitcoin protocol, and released the Bitcoin code as well. Then he stayed in contact for about two years, during which he interacted actively in forums, communicated with several developers and later he also submitted patches to the initial code. He maintained the source code along with other developers, tackling issues as they happened. By December 2010, as others had slowly taken over, he quietly left the scene.

    Entities

    The entities involved in the implementation and maintenance of Bitcoins are −

    • The Blockchain platform
    • Cryptographic algorithms
    • Bitcoin miners which are computers or specialized machines that mint the currency and make possible transactions
    • People who participate in the transactions and thus help to move the payment system

    The philosophy of Bitcoin, and in general, of all cryptocurrencies is that they are distributed systems where there is no central entity that manages the activities such as transactions, among others. It is a peer-to-peer (p2p) system that operates at the level of participants.

    Ezoic

    Bitcoin Transactions

    We shall now see how a new block of bitcoin transaction is created.

    A bitcoin miner creates a block by using the following steps −

    • Gathering pending transactions, preferentially those with transaction fees first, and then the free ones
    • Verifying the transactions for their validity
    • Solving a hashing problem

    According to the statistics, in October, 2015, blockchain.info site stated that, the average number of transactions per block was 411, and as of May 2018, the current number of pending unconfirmed transactions is around 2495.

    Reward and cost per bitcoin transaction

    Assuming that one bitcoin is worth $400, the reward of 25 bitcoins per block is worth around $10,000, ignoring negligible amount of transaction fees. Taking average number of transactions per second as 2, and the number of transactions per block as 1200, the reward per transaction works out to $8.33. It is found that the cost of electricity consumed in mining is close to the reward which makes mining bitcoins not so profitable. The basic problem of mining as of now, is the 1 MB limit on block size which makes it possible to have at most only 10 transactions per second.

    Confirmation of a bitcoin transaction

    A transaction is considered to have received n confirmations if it has been published in a block in the block chain, and n-1 more blocks have also been added. A transaction is normally considered “confirmed” once it has six confirmations. Newly created Bitcoins are considered confirmed after they have received about a hundred confirmations.

    How does Bitcoin have value?

    It is the common consensus, belief and the perception that gives value to the bitcoin. All the participants in this system have consensus on the following −

    • immutability and integrity of the blockchain
    • security and validity of the payments
    • rules of the system

    Bitcoin was the first practical implementation of blockchain technology and is currently the most significant triple entry bookkeeping system globally. In a bitcoin ecosystem, access to entire source code is available to everyone always and any one can review or modify the code. The authenticity of each transaction is secured by digital signatures of the sending parties thus ensuring that all users have complete control over sending bitcoins.

    Thus, leaving a little room for fraud, no chargebacks and no identifying information that could be hacked resulting in identity theft.

    Here is a list of some of the entities who accept Bitcoins −

    • WordPress
    • Namecheap
    • Microsoft
    • Dell Computers
    • Archive.org
    • Bitpay
    • Bitspend.net
  • Bitcoin Tutorial

    The tutorial begins by introducing what bitcoins are, then proceeds with the installation of the bitcoin client software and wallets to make bitcoins transactions possible. It also discusses bitcoin mining, exchanges, and trading. Finally, it moves on to applications and future of bitcoins. After reading this tutorial, you will have learned all the basics of bitcoins; enough to use bitcoins and make money by trading and investing in bitcoins.

    Audience

    This tutorial has been prepared for professionals aspiring to learn all the essentials of Bitcoins and develop a habit of buying products and services using bitcoins and lastly making money by trading in this brand new cryptocurrency.

    Prerequisites

    Before you start proceeding with this tutorial, we assume that you have basic computer skills, knowledge of downloading and installing software like Java and other applications. Prior exposure to the Linux operating system flavors would be an added advantage.