Libbitcoin
Libbitcoin is a set of cross platform, open source C++ libraries for building bitcoin applications. The toolkit consists of libraries, examples, tests and applications. The project was established on three principles[1]:
- Privacy: Bitcoin should always remain as private as possible for its users.
- Scalability: Bitcoin built today with the future in mind.
- Integrity: No individual or group should have enough power over the network to compromise its original aims.
Status
Libbitcoin is actively maintained. Since version 2.0 the original projects of Libbitcoin, Obelisk and SubvertX (sx) have been rationalized under a common repository, taxonomy and build system[2].
Libbitcoin includes the dedicated consensus library libbitcoin-consensus. This library provides a clean interface to the 34 source and header files from Bitcoin Core considered consensus critical. It also includes Python and Java SWIG[3] bindings. The use of this library is optional when building libbitcoin-blockchain.
Signed single file application binaries are available for Bitcoin Explorer[4] and Bitcoin Server[5] for Linux, OSX and Windows platforms. Extensive end-user and developer documentation is provided for Bitcoin Explorer[6].
Libbitcoin repositories include standard Autotools builds supporting GCC and Clang as well as robust Visual Studio solutions. Single file install scripts for Linux/OSX can download and build all dependencies and repositories[7]. Linux and OSX builds are regularly tested on Travis-CI[8]. Tests are executed following each automated build and subsequent reports are published through Coveralls[9].
Libbitcoin has been deployed on ARM devices, such as Airbitz iOS and Android applications which are built using libbitcoin and libbitcoin-client[10]. There are a number of community Bitcoin Server deployments, including those maintained by Airbitz and Coinkite[11].
Libbitcoin Libraries
- libbitcoin (common)
- libbitcoin-blockchain
- libbitcoin-build
- libbitcoin-client
- libbitcoin-consensus
- libbitcoin-database
- libbitcoin-explorer
- libbitcoin-network
- libbitcoin-node
- libbitcoin-protocol
- libbitcoin-server
Libbitcoin Applications
- Bitcoin Explorer (bx) - Bitcoin command line tool
- Bitcoin Node (bn) - Bitcoin full node (only)
- Bitcoin Server (bs) - Blockchain query service (and full node)
History
- Libbitcoin was the second full implementation of Bitcoin, after the original client. It was created by a community of open source developers led by Amir Taaki (genjix).[12]
- The first commits were by Patrick Strateman (phantomcircuit) on May 18, 2011[13] and Libbitcoin was announced on July 21, 2011.[14]
- The related command line application SubvertX (sx) was announced on November 2, 2011.[15]
- The related server Obelisk was first released on January 6, 2014, with an update to SubvertX (sx) and the second major release of Libbitcoin.[16]
- SubvertX was redesigned by Eric Voskuil (evoskuil) and released as Bitcoin Explorer (bx 2.0) on December 13, 2014.[17]
- The libbitcoin-protocol design was the work product of a Libbitcoin team meeting in San Diego in August, 2014.[18]
- Bitcoin Server (bs 2.0) was released on On May 9th, 2015, replacing Obelisk. A blockchain redesign by genjix substantially improved query performance[19].
- Bitcoin Node (bn 2.2) achieved parity with Bitcoin Server on December 21st, 2015, as a release quality full node.
Active Maintainers
- Eric Voskuil (development)
- Phillip Mienk (development)
- Neill Miller (development)
- William Swanson (development, hosting)
- Pablo Castellano (debian packaging)
- Patrick McFarland (libbitcoin.org website)
- Noel Maersk (operational test)
- Skaht (operational test)
Early Contributors
- Amir Taaki (gengix)
- Robert Williamson (bobalot)
- Patrick Strateman (phantomcircuit)
- Denis Roio (jaromil)
- Luke Dashjr (luke-jr)
Projects Using Libbitcoin
See Also
- Bitcointalk Topic
- libbitcoin.org (under construction)
- IRC Web #libbitcoin
- IRC Web #darkwallet
- Libbitcoin Mailing List
- Libbitcoin Web Forum
- https://bitcoinmagazine.com/6234/what-libbitcoin-and-sx-are-and-why-they-matter
- http://blog.coinkite.com/post/97397052686/public-obelisk-server-for-the-community
- https://wiki.unsystem.net/en/index.php/Libbitcoin
- http://www.slideshare.net/swansontec/libbitcoin-slides
- https://github.com/aantonop/bitcoinbook/blob/develop/appdx-bx.asciidoc
References
- ↑ Libbitcoin Values - Amir Taaki
- ↑ Libbitcoin Repository
- ↑ SWIG Website
- ↑ Download Bitcoin Explorer (bx)
- ↑ Download Bitcoin Server (bs)
- ↑ Bitcoin Explorer Documentation
- ↑ Libbitcoin Repository Build Instructions
- ↑ Libbitcoin Build Status Reports
- ↑ Libbitcoin Test Coverage Reports
- ↑ Airbitz Libbitcoin GitHub Forks
- ↑ Community Obelisk/Libbitcoin Servers
- ↑ GitHub Libbitcoin Contributors
- ↑ First Libbitcoin Commit by Patrick Strateman
- ↑ Bitcoin Talk Libbitcoin Announcement
- ↑ Bitcoin Talk SubvertX Announcement
- ↑ Bitcoin Talk Libbitcoin, Obelisk and SubvertX Release Announcement
- ↑ Bitcoin Explorer Release
- ↑ Libbitcoin Update 2014-09-06
- ↑ Reddit Post on Obelisk Performance