August 15 2010 bitcoin price
October 17, , The bitcoin-otc trading channel is registered on freenode IRC as a marketplace for over-the-counter trading of Bitcoins. October 28, , Facilitated by bitcoin-otc , the first recorded short sale of Bitcoins is initiated in the form of a BTC loan from nanotube to kiba. December 7, , Bitcoin Forum member doublec compiles Bitcoind, which was written for the Nokia N mobile computer.
December 8, , The first portable-to-portable transaction of Bitcoins occurs when ribuck sends doublec 0. December 9, , The first call option contract for Bitcoins is sold on the bitcoin-otc market. The transaction occurs between nanotube and sgomick.
Part 2- Year Let's go the series of events that occur during in the history of BitCoin. July 7, , Version 0. September 14, , Split allocation of the generation reward used to mine Block 79, December 9, , The generation difficulty exceeds 10, Basically the transaction used an input of 0. Within a few hours Gavin Anderson and Satoshi Nakamoto started working on the patch to fix this vulnerability and advised the network to stop generating blocks to prevent further wasted work.
The fix was to add appropriate checks in CheckTransaction function to both check the sum of all the outputs and also a sanity check to make sure no transaction can send more than 21 million bitcoins. The fixed was pushed to the SVN repository within 5 hours of the transaction and the official update was released the next day, versioned 0. However most of the nodes were still on the bad chain, which refers to the chain that had the malicious transaction. Bootstrap Blockchain file is basically a copy of the blockchain which one can download directly and verify locally, this leads to faster synchronization of the node, as peer to peer downloading of blockchain was really slow.
The other issue with having a mixed network of good and bad nodes was that new nodes might follow the bad chain and get stuck on the affected block. To resolve that they announced a few IP addresses of fixed updated nodes to be added as trusted nodes when syncing, this would lead to have more updated nodes, on the good chain, within the network and result in outnumbering the bad nodes.
This incident could had been prevented by having the checks in place in the first place. Tests such as unit testing on all the user input variables in protocol level or fuzzing all the variables could have revealed this vulnerability before the incident. Once there were Billion Bitcoins December 1,