Bitcoin Extravaganza, recorded July 12, 2011:
For starters, all knowledge comes from the original Bitcoin Whitepaper:
- What is currency vs fiat currency. Why does it matter if currency is rare? Brief history of bartering, banking, fractional reserve banking
- What is Bitcoin? Creator: Satoshi Nakamoto
- Why do Bitcoins have value?
- Describe btc client, what are transactions?
- All transactions are somewhat anonymous, all you give out is your public key
- https://mtgox.com/ last was $14.03
- Describe a block. Hard work done to get hash with leading 0’s. No known shortcut for this work
- Block chain, hashing
- 6 steps of network transactions
- All transactions are public. The block chain provides a Balance Sheet for all nodes in the network
- Chain theoretically grows at 4.2 megs a year but…blk001.dat 327megs, blkindex.dat 166megs
- Currency generated via blocks. Right you pay 50 btc to yourself if you ‘win’ a block by solving the hash. Chance of win = your-cpu / total-network-cpu
- Difficulty is adjusted every 2016 blocks or 2 weeks
- Right now difficulty is 52 bits: (number of 0’s in hex * 4) + top bits on first 0xHEX number) (http://blockexplorer.com/q/hextarget)
- Target money supply such that no more than 21 million coins ever exist. Exponentially decreasing. First 4 years half of the coins ever are minted, next 4 years half of remaining minted. This is done by blocks winning 25, then 12.5 then 6.25 etc. Bitcoin supports fractions of coins up to 6 digits.
- Question: BTCs will invariably become “lost” due to people’s computers crashing, wallet.dat corruption, etc. Over the looong term won’t hundreds of thousands of BTCs be missing? How can they be “replaced” or “replenished?” What about hoarding?
- Bitcoin client no longer can do CPU generation http://forum.bitcoin.org/?topic=4828.0
- Mining pools
- SIDETRACK to CPU vs CPU pipelines
- What is a pipeline?
- Bitcoin Watch (Market Data) http://www.bitcoinwatch.com/
- Bitcoin mining hardware comparison https://en.bitcoin.it/wiki/Mining_hardware_comparison
- MaxPC Dream Machine http://tinyurl.com/6g7539r
Attack Vectors on Bitcoin
- There is an infeasible kind of attack. Redo the block chain from the start
- Only kind of attack is spending coins twice, requires forking blockchain from the now. Only possible to work if your-attacking-cpus > total-network-cpu (aka 51%)
- System designed so that the most lucrative way to attack is it to mine
- CANNOT GIVE AWAY OTHER PEOPLES BITCOINS due to public private key signing
Elliptic curve DSA signatures:
U.S. Department of Commerce, National Institute of Standards and Technology
See Section (4.7)
SHORT SUMMARY of public private key pairs
x private key
y public key
q and p are primes associated with the pair, g also related
Such math as y = g ^ x mod p
- Intellicache, (listener: Mike Shaw) points out that running a VM totally from RAM is EPIC. Problem is that the poster on reddit is moving VMs into and out of his RAM disk. He relies on dropbox to sync any changes he makes inside these RAM only VMs.
- If you use IntelliCache the RAM drive here could be used to dynamically cache any part of any running virtual machine it will keeping changes persistant to disk. If you shutdown all vm’s, the write caches flush before the VM’s shutdown. All that is left on the RAMdisk is read caches. These can safely be deleted once the machine is off. Rebooting host has same effect.
- Also I wasn’t clear, but my best suggestions for IntelliCache with SSD is to use SSDs for IntelliCache drive and slower spinning disks (aka thumpers) for your backend storage