Bitcoin core is a universal standard software client that was created and published by satoshi,the founder of bitcoin,that create the bitcoin network.The first version was released 2009 by satoshi with some bug in it and he left the project that time.Between 2011 and 2014 bitcoincore.org took up the project and fix the bug and release a new first which was followed by the intial client created by satoshi.Bitcoin Core consists of both “full-node” software for fully validating the blockchain as well as a bitcoin wallet.
Bitcoin Core is programmed to decide which block chain contains valid transactions. The users of Bitcoin Core only accept transactions for that block chain, making it the Bitcoin block chain that everyone else wants to use
It is these users who keep Bitcoin decentralized. They individually run their own Bitcoin Core full nodes, and each of those full nodes separately follows the exact same rules to decide which block chain is valid.
There’s no voting or other corruptible process involved: there’s just individual software following identical rules—”math”—to evaluate identical blocks and coming to identical conclusions about which block chain is valid.
This shared agreement (called consensus) allows people like you to only accept valid bitcoins, enforcing Bitcoin’s rules against even the most powerful miners.
In addition to improving Bitcoin’s decentralization, Bitcoin Core users getbetter security for their bitcoins, privacy features not available in other wallets, a choice of user interfaces and several other powerful features.
Bitcoin Core checks each block of transactions it receives to ensure that everything in that block is fully valid—allowing it to trust the block without trusting the miner who created it.
This prevents miners from tricking Bitcoin Core users into accepting blocks that violate the 21 million bitcoin limit or which break other important rules.
One address per transaction used in bitcoin makes it to be private as it will be very difficult to identify the owner of each address on blockchain.
Adoption of powerful script language
A powerful scripting language is used to define transactions. This Forth-like language is part of one of three distinct application programming interfaces. It can enable various transaction parameters. The script uses reverse Polish notation for validation. ScriptPubKey is used to “lock” transactions based on a set of future conditions. scriptSig is used to meet these conditions or “unlock” a transaction. Operations on the data are performed by various OP_Codes. Two stacks are used.Am sure we have script writer in the house who knows all those terms
Bitcoin 0.1 was released on 9 January 2009 by Satoshi Nakamoto with only Windows supported. This was followed by some minor bug fixing versions. On 16 December 2009 Bitcoin 0.2 was released. It included a Linux version for the first time and made use of multi-core processors for mining.In version 0.3.2 Nakamoto included checkpoints as a safeguard. After the release of version 0.3.9 Satoshi Nakamoto left the project and shortly after stopped communicating on online forums. By this time development of the software was being undertaken by a wide group of independent developers which is referred to as a community, many of whom had various ideas on how to improve bitcoin.
Between 2011 and 2013 new versions of the software were released at Bitcoin.org.Developers wanted to differentiate themselves as creators of software rather than advocates for bitcoin and so now maintain bitcoincore.org for just the software.
Bitcoin-Qt version 0.5.0 was released on 1 November 2011. It introduced a front end that uses the Qt user interface toolkit. The software previously used Berkeley DB for database management. Developers switched to LevelDB in release 0.8 in order to reduce blockchain synchronization time. The update to this release resulted in a minor blockchain fork on the 11 March 2013. The fork was resolved shortly afterwards. Seeding nodes through IRC was discontinued in version 0.8.2. In this release transaction fees, also known as relay fees, were reduced from 50,000 satoshis to 10,000 satoshis. From version 0.9.0 the software was renamed to Bitcoin Core. Transaction fees were reduced again by a factor of ten as a means to encourage microtransactions. Although Bitcoin Core does not use OpenSSL for the operation of the network, the software did use OpenSSL for remote procedure calls. Version 0.9.1 was released to remove the network’s vulnerability to the Heartbleed bug.
Release 0.10 was made public on 16 February 2015.It introduced a consensus library which gave programmers easy access to the rules governing consensus on the network. The developers have stated that for consensus on soft forks a super-majority of 95% of hash power is required for agreement. In version 0.11.2 developers added a new feature which allowed transactions to be made unspendable until a specific time in the future.Bitcoin Core 0.12.1 was released on April 15, 2016 and enabled multiple soft forks to occur concurrently.Around 100 contributors worked on Bitcoin Core 0.13.0 which was released on 23 August 2016. It introduced more than ten significant changes.
In July 2016, the CheckSequenceVerify soft fork activated.
In October 2016, Bitcoin Core’s 0.13.1 release featured a soft fork that included a scaling improvement aiming to optimize the bitcoin blocksize.35 developers were engaged to deploy the patch which was originally finalised in April.This release featured Segregated Witness (SegWit) which aimed to place downward pressure on transaction fees as well as increase the maximum transaction capacity of the network.Estimates place the total block size using SegWit at about 1.7 mb. The 0.13.1 release endured extensive testing and research leading to some delays in its release date. Segwit aims to prevent various forms of transaction malleability Segwit cannot be activated until ~95% of miners using Bitcoin Core concurrently agree to its use.