Infrastructure: Difference between revisions
Jump to navigation
Jump to search
Line 42: | Line 42: | ||
| [[bitcoin-alt]] | | [[bitcoin-alt]] | ||
|- | |- | ||
| [[BitCoinJ]] | | [[BitCoinJ|bitcoinj]] | ||
|- | |- | ||
| [[Pycoin]] | | [[Pycoin]] |
Revision as of 12:35, 31 March 2013
Overview
Components
- Peer/Node -- Maintains connections with the BitCoin network, and relays BitCoin traffic based on policies.
- Wallet -- Maintains private key database, and controls balances for the user.
- UI -- End-user interface. Could be a wx/Qt/GTK GUI, CLI, Android app, iPhone app, etc...
- Miner -- Tries to solve blocks for the wallet.
Protocols
- p2p -- Used for communication between Peers/Nodes, and also between your personal Peer/Node and your Wallet(s)
- JSON-RPC -- Old wallet-control protocol; suitable for web integration
- wallet -- Used for communication between your Wallet(s) and your Miner(s) and User Interface(s)
Diagram
___________ | |--(p2p protocol)---ooooooooooooooo | Peer/Node |--(p2p protocol)--o Other Peers o |___________|--(p2p protocol)---ooooooooooooooo | (p2p protocol) _____|_____ _________ | | | | | Wallet |--(wallet protocol)--| Miner | |___________| |_________| | (wallet protocol) _____|__________ | | | User Interface | |________________|
Implementations
Peer/Node
Software |
---|
bitcoin.pl |
bitcoind |
bitcoin-alt |
bitcoinj |
Pycoin |
wxBitcoin |
QBitcoin CORE |
Wallet
Software | Old JSON-RPC | New Wallet protocol |
---|---|---|
bitcoind | Yes | No |
BitCoinJ | ?? | No |
wxBitcoin | Yes | No |
QBitcoin Wallet | ?? | No |
Miner
Software | Old JSON-RPC | New Wallet protocol |
---|---|---|
Cpu_Miner | Yes | No |
DiabloMiner | Yes | No |
Poclbm | Yes | No |
User Interface
Software | Old JSON-RPC | New Wallet protocol |
---|---|---|
Bitcoin-js-remote | ?? | No |
BitCoinJ | ?? | No |
BitDroid | ?? | No |
QBitcoin API Client | ?? | No |
QBitcoin CLI | ?? | No |
QBitcoin GUI | ?? | No |
Java Bitcoin Client | ?? | No |
Spesmilo | Yes | No |
wxBitcoin | No | No |