Bitcoin

Bitcoin
Bitcoin - Open source P2P money - http://bitcoin.org/

"Bitcoin uses peer-to-peer technology to operate with no central authority or banks; managing transactions and the issuing of bitcoins is carried out collectively by the network. Bitcoin is open-source; its design is public, nobody owns or controls Bitcoin and everyone can take part. Through many of its unique properties, Bitcoin allows exciting uses that could not be covered by any previous payment system." 

"crypto currency"

Block Explorer
Bitcoin Block Explorer - https://blockexplorer.com/

Values


References:
 * Bits

Getting Started
Getting started with Bitcoin - http://bitcoin.org/en/getting-started

Using Bitcoin to pay and get paid is easy and accessible to everyone.


 * 1) Inform yourself
 * 2) * Bitcoin is different than what you know and use every day. Before you start using Bitcoin, there are a few things that you need to know in order to use it securely and avoid common pitfalls.
 * 3) Choose your wallet
 * 4) * You can bring a Bitcoin wallet in your everyday life with your mobile or you can have a wallet only for online payments on your computer. In any case, choosing your wallet can be done in a minute.
 * 5) Get bitcoins - Find an exchange
 * 6) * You can get bitcoins by accepting them as a payment for goods and services or by buying them from a friend or someone near you. You can also buy them directly from an exchange with your bank account.
 * 7) Spend bitcoins - Find merchants
 * 8) * There is a growing number of services and merchants accepting Bitcoin all over the world. You can use Bitcoin to pay them and rate your experience to help honest businesses to gain more visibility.

How it Works
Satoshi Nakamoto 2008 Bitcoin spec paper - https://bitcoin.org/bitcoin.pdf

- How does Bitcoin work? - http://bitcoin.org/en/how-it-works

"As a new user, you only need to choose a wallet that you will install on your computer or on your mobile phone. Once you have your wallet installed, it will generate your first Bitcoin address and you can create more whenever you need one. You can disclose one of your Bitcoin addresses to your friends so that they can pay you or vice versa, you can pay your friends if they give you their addresses. In fact, this is pretty similar to how email works. So all that is left to do at this point is to get some bitcoins and to keep them safe. In order to start using Bitcoin, you are not required to understand the technical details."

-

How Bitcoin Works Under the Hood - YouTube - https://www.youtube.com/watch?v=Lx9zgZCMqXE

ImponderableThings (Scott Driscoll's Blog): How Bitcoin Works Under the Hood - http://www.imponderablethings.com/2013/07/how-bitcoin-works-under-hood.html

Bitcoin Soda Machine v0.3 Dispensing soda - YouTube - https://www.youtube.com/watch?v=7DR79AkgPZA
 * Referenced: [Bitcoin - Awesome! - https://www.facebook.com/blockchain.info/posts/251194948368816]

-

SATOSHI'S REVOLUTION: How The Creator Of Bitcoin May Have Stumbled Onto Something Much, Much Bigger - http://www.businessinsider.com/the-future-of-the-blockchain-2014-4

Bitcoin Market Value
Preev - Simple Bitcoin Converter - http://preev.com/

Bitcoin Market - http://bitcoinity.org/markets

Bitcoin Market Price (USD) - http://blockchain.info/charts/market-price
 * Bitcoin Charts - Blockchain.info - https://blockchain.info/charts

Bitcoin Charts / Markets - http://bitcoincharts.com/markets/

Buying and Selling Bitcoins
Selling bitcoins - Bitcoin - https://en.bitcoin.it/wiki/Selling_bitcoins

Transaction Fees
Transaction fees - Bitcoin - https://en.bitcoin.it/wiki/Transaction_fees

"Transaction fees may be included with any transfer of bitcoins from one address to another. At the moment, many transactions are typically processed in a way where no fee is expected at all, but for transactions which draw coins from many bitcoin addresses and therefore have a large data size, a small transaction fee is usually expected.

The transaction fee is processed by and received by the bitcoin miner. When a new bitcoin block is generated with a successful hash, the information for all of the transactions is included with the block and all transaction fees are collected by that user creating the block, who is free to assign those fees to himself.

Transaction fees are voluntary on the part of the person making the bitcoin transaction, as the person attempting to make a transaction can include any fee or none at all in the transaction. On the other hand, nobody mining new bitcoins necessarily needs to accept the transactions and include them in the new block being created. The transaction fee is therefore an incentive on the part of the bitcoin user to make sure that a particular transaction will get included into the next block which is generated.

It is envisioned that over time the cumulative effect of collecting transaction fees will allow somebody creating new blocks to "earn" more bitcoins than will be mined from new bitcoins created by the new block itself. This is also an incentive to keep trying to create new blocks even if the value of the newly created block from the mining activity is zero in the far future. "

---

Bitcoin Fees - http://bitcoinfees.com/

Discourage "dust" spam:
 * "If any of the outputs (including any change) of your transaction are less than 0.01 BTC, then a fee of 0.0001 BTC is required. The coin selection algorithm is careful to avoid selecting coins that result in a change amount of less than 0.01 BTC if at all possible."

Lookup
Home - Bitcoin Block Explorer - http://blockexplorer.com/

Bitcoin Block Explorer is an open source web tool that allows you to view information about the blocks, addresses, and transactions created by Bitcoin.

Example of an address lookup: http://blockexplorer.com/address/189GtcmuBLbno2LM3XMX5yYbixga3Rrerd

---

Bitcoin Block Explorer - Blockchain.info - http://blockchain.info/

Example of an address lookup: https://blockchain.info/address/189GtcmuBLbno2LM3XMX5yYbixga3Rrerd

Where to Use Bitcoins
Buy Bitcoins and much more in Australia - https://www.spendbitcoins.com/

What is Bitcoin? - We Use Coins - http://www.weusecoins.com/

CoinMap - http://coinmap.org/
 * Shut up and take my bitcoins! A map of Bitcoin-friendly businesses - http://www.washingtonpost.com/blogs/the-switch/wp/2013/11/20/shut-up-and-take-my-bitcoins-a-map-of-bitcoin-friendly-businesses/

What are Bitcoins
How Bitcoin Works Under the Hood - YouTube - http://www.youtube.com/watch?v=Lx9zgZCMqXE

- Bitcoin Wiki - https://en.bitcoin.it/

"Bitcoin is an experimental, decentralized digital currency that enables instant payments to anyone, anywhere in the world. Bitcoin uses peer-to-peer technology to operate with no central authority: managing transactions and issuing money are carried out collectively by the network.

The original Bitcoin software by Satoshi Nakamoto was released under the MIT license. Most client software, derived or "from scratch", also use open source licensing.

Bitcoin is one of the first implementations of a concept called crypto-currency which was first described in 1998 by Wei Dai on the cypherpunks mailing list. Building upon the notion that money is any object, or any sort of record, accepted as payment for goods and services and repayment of debts in a given country or socio-economic context, Bitcoin is designed around the idea of using cryptography to control the creation and transfer of money, rather than relying on central authorities."

-

Vocabulary - Bitcoin - http://bitcoin.org/en/vocabulary

-

Some things you need to know - Bitcoin - http://bitcoin.org/en/you-need-to-know
 * Securing your wallet
 * Bitcoin price is volatile
 * Bitcoin payments are irreversible
 * Bitcoin is not anonymous
 * Instant transactions are less secure
 * Bitcoin is still experimental
 * Don't forget government taxes

Options
Choose your wallet - Bitcoin - http://bitcoin.org/en/choose-your-wallet

Securing
Securing your wallet - Bitcoin - https://en.bitcoin.it/wiki/Securing_your_wallet

Securing your wallet - Bitcoin - http://bitcoin.org/en/secure-your-wallet
 * Small amounts for everyday uses
 * Be careful with online services
 * Backup your wallet
 * Backup your entire wallet
 * Encrypt online backups
 * Use many secure locations
 * Make regular backups
 * Encrypt your wallet
 * Never forget your password
 * Use a strong password
 * Offline wallet for savings
 * Offline transaction signing
 * Hardware wallets
 * Keep your software up to date
 * Multi-signature to protect against theft
 * Think about your testament

Privacy
Bitcoin is not anonymous
 * "Some effort is required in order to protect your privacy with Bitcoin. All Bitcoin transactions are stored publicly and permanently on the network, which means anyone can see the balance and transactions of any Bitcoin address. However, the identity of the user behind an address remains unknown until information is revealed during a purchase or in other circumstances. This is one reason why Bitcoin addresses should only be used once. Always remember that it is your responsability to adopt good practices in order to protect your privacy. Read more about protecting your privacy."

Protect your privacy - Bitcoin - http://bitcoin.org/en/protect-your-privacy
 * Understanding Bitcoin traceability
 * Use new addresses to receive payments
 * Use change addresses when you send payments
 * Be careful with public spaces
 * Your IP address can be logged
 * Limitations of mixing services
 * Future improvements

Clients

 * Full Bitcoin Client
 * MultiBit is an app you can download for Windows, Mac and Linux.
 * Armory

Choose your wallet - Bitcoin - http://bitcoin.org/en/choose-your-wallet

---

What is a Bitcoin Client?

Bitcoin clients are the base level of technology for conducting Bitcoin transactions, and they store the keys needed to conduct a Bitcoin transaction. They come in multiple flavours, and are customized to fit different niches.

The Bitcoin-QT Client (Downloadable at http://bitcoin.org/) is the original software written by Satoshi Nakamoto, the project's founder. If you aren't sure which program to pick, this is a good bet. It is suited for enthusiasts, merchants, miners, developers and people who want to help support the project.

The MultiBit Client (Downloadable at https://multibit.org/) is fast and easy to use, even for people with no technical knowledge. It is also able to import Blockchain.info's wallet backups, making it a versatile tool for all kinds of users.

The Electrum Client (Downloadable at http://electrum.org/) focuses at speed, with low resource usage and simplifying Bitcoin usage. Startup times are instant because it operates in conjuction with high-performance servers that handle the most complicated parts of the Bitcoin system.

Blockchain.info is also a form of Bitcoin client. We provide a web-based client with emphasis on speed, security, and ease of use.

Bitcoin Beginners FAQ- blockchain.info - https://blockchain.info/wallet/bitcoin-faq

Armory
Armory - http://bitcoinarmory.com/

Installation: sudo apt-get install git-core build-essential pyqt4-dev-tools swig libqtcore4 libqt4-dev python-qt4 python-dev python-twisted python-psutil git clone git://github.com/etotheipi/BitcoinArmory.git cd BitcoinArmory make python ArmoryQt.py
 * 1) yum install gcc make gcc-c++ swig python-devel

---

Error: /usr/lib/libpython2.6.a: could not read symbols: File in wrong format

Solution: Unknown

Full Bitcoin Client
See bitcoind

Known Addresses
Ezra Pedersen Bitminter Mining - 1HpVbkjoc7iDVg1FKu2KRqGuaP2SooWvVH
 * https://blockchain.info/address/1HpVbkjoc7iDVg1FKu2KRqGuaP2SooWvVH
 * http://blockexplorer.com/address/1HpVbkjoc7iDVg1FKu2KRqGuaP2SooWvVH

Mining
See Bitcoin Mining

cgminer
See cgminer

Mining Pools
See Bitcoin Mining Pools

Silk Road
See Silk Road

History
A Quick and Complete History of Bitcoin So You're Not Totally Lost - http://gizmodo.com/a-quick-and-complete-history-of-bitcoin-so-youre-not-t-1483740909?utm_campaign=socialflow_gizmodo_facebook&utm_source=gizmodo_facebook&utm_medium=socialflow

Balances
You can query the unspent outputs of an address with this: http://blockchain.info/unspent?active=$bitcoin_address

You can get the transaction history for an address with this: http://blockchain.info/address/$bitcoin_address?format=json

For more information see http://blockchain.info/api/blockchain_api

MtGox API
MtGox/API - Bitcoin - https://en.bitcoin.it/wiki/MtGox/API
 * https://mtgox.com/api/1/BTCUSD/ticker

Python: import urllib2, json x = float(json.loads(urllib2.urlopen('https://mtgox.com/api/1/BTCUSD/ticker').read)['return']['last']['value']) print x

Python GUI: import json import urllib2 from Tkinter import *

url='http://api.bitcoincharts.com/v1/markets.json' req=urllib2.Request(url) response=urllib2.urlopen(req).read output=json.loads(response)

mtusd_price = output[-10]['avg'] mteur_price = output[31]['avg'] mtgbp_price = output[44]['avg']

MTUSD= 'USD' + ' ' + str(mtusd_price) MTEUR= 'EUR' + ' ' + str(mteur_price) MTGBP = 'GBP' + ' ' + str(mtgbp_price)

root= Tk root.title("Bitcoin Price") root.geometry("250x100")

USD = Label(root, text=MTUSD) EUR = Label(root, text=MTEUR) GBP = Label(root, text=MTGBP) USD.pack EUR.pack GBP.pack mainloop

---

Post to Xively:
 * 1) !/opt/python27/bin/python

import sys import datetime import json import urllib2

sys.path.append('/opt') import xively

API_KEY = "RMlvh9dD9Zz5riRLPXLkRUqOuWdRz6hikRBX8US1GGQMiucS" FEED_ID = "160075044"


 * 1) mtgox_current = float(json.loads(urllib2.urlopen('https://mtgox.com/api/1/BTCUSD/ticker').read)['return']['last']['value'])

mtgox = json.loads(urllib2.urlopen('https://mtgox.com/api/1/BTCUSD/ticker').read)

mtgox_last = float(mtgox['return']['last']['value']) mtgox_high =float(mtgox['return']['high']['value']) mtgox_low = float(mtgox['return']['low']['value']) mtgox_buy =float(mtgox['return']['buy']['value']) mtgox_sell =float(mtgox['return']['sell']['value'])

print mtgox_last, mtgox_high, mtgox_low, mtgox_buy, mtgox_sell

api = xively.XivelyAPIClient(API_KEY) feed = api.feeds.get(FEED_ID) now = datetime.datetime.utcnow feed.datastreams = [ xively.Datastream(id='mtgox', current_value=mtgox_last, at=now), xively.Datastream(id='mtgox-high', current_value=mtgox_high, at=now), xively.Datastream(id='mtgox-low', current_value=mtgox_low, at=now), xively.Datastream(id='mtgox-buy', current_value=mtgox_buy, at=now), xively.Datastream(id='mtgox-sell', current_value=mtgox_sell, at=now), ] feed.update

References:
 * json rpc - Simplest way of obtaining MtGox exchange rate via an API? - Bitcoin Stack Exchange - http://bitcoin.stackexchange.com/questions/10594/simplest-way-of-obtaining-mtgox-exchange-rate-via-an-api

Bitstamp API
API - Bitstamp - https://www.bitstamp.net/api/
 * https://www.bitstamp.net/api/ticker/

Coinbase API

 * Bitcoin API - https://coinbase.com/docs/api/overview
 * API documentation - https://coinbase.com/api/doc

Buy price (JSON): https://coinbase.com/api/doc/1.0/prices/buy.html GET https://coinbase.com/api/v1/prices/buy

Sell price (JSON): https://coinbase.com/api/doc/1.0/prices/sell.html GET https://coinbase.com/api/v1/prices/sell