BitCoin Algorithm
Invented by a mystery person/group with the alias “Satoshi Nakamoto”. [You can read a consolidation of the paper here]. The essential elements are:
· Peer to Peer Network with self-validation
· Exponentially increasing compute cost
· Finite supply with exponential conversion
· Hidden in plain view anonymity
Peer-to-peer electronic cash eliminates the cost burden of mediation – i.e. the 3rd party escrow or handling fee. The compute task and self-validation are embodied in an open-source chain of digital cryptographic signatures on a time-stamp server. A timestamp server works by taking a hash of a block of items to be timestamped and widely publishing the hash.
Sell the House and Join the Gold Rush
Not so fast. First key point: The reward for mining a block is currently 25 BTC and it halves every 210K blocks. Second key point: Block generation is self-regulated to average 6 blocks per hour by imposing a scaling factor [termed DIFFICULTY] on the nounce calculation.
In other words the faster the network hash rate, the harder it becomes to generate a generate a valid block. In simple terms there is only so much Gold in the hills and every minute another miner shows up with picks and pans.
The time to mine a block can be estimated by
time = difficulty * 2**32 / hashrate
The current DIFFICULTY is ~2.6E9. If you powered up a ButterFly Labs Monarch with 600GH/sec at 350W you could earn ~3 BTC in the next month, which would almost recover the $2100 cost at today’s exchange rate. But everyday you wait the income rate drops as the network hashrate increases. At some point, payback becomes infinite. And there is a waiting list on the hardware. You can track mining operations in real time here. https://blockchain.info
Bit Mining Algorithm
The Bitcoin miner code downloads are available on GitHub. The basical computation is
While ()
HDR [kNouncePos]++
IF (SHR256 (SHR256(HDR)) < (65535 << 208)/DIFFICULTY
Return;
The calculations follow known cryptographic routines involving chained 32bit add / rotate, xor, etc., that FPGAs are well suited for. ASICs provide significant gains in cost and power.
The timestamp network implements a proof-of-work by incrementing a nonce in the block until a value is found that gives the block’s hash the required zero bits. Once the CPU effort has been expended to make it satisfy the proof-of-work, the block cannot be changed without redoing the work. As later blocks are chained after it, the work to change the block would include redoing all the blocks after it.
The mining process is a series of autonomous yet network dependent steps:
[LIST=1]
The Future of Money is Digital – BitCoin Introduction
Table Reference: “Bitcoin and The Age of Bespoke Silicon” Michael Taylor, UCSD, 2013
lang: en_US
Share this post via:
Next Generation of Systems Design at Siemens