Difference between revisions of "Bitcoin Core"

From Bitcoin Wiki
Jump to: navigation, search
(Criticism: Improve wording)
m (Naming Controversy: Linking UASF)
 
(25 intermediate revisions by 10 users not shown)
Line 1: Line 1:
'''Bitcoin-Qt''' is the third [[Bitcoin]] [[Clients|client]], developed by [[Wladimir J. van der Laan]] based on the original reference code by [[Satoshi Nakamoto]].<ref name="Bitcoin Client Software">{{cite web|title=Bitcoin Client Software|url=http://bitcoin.org/clients.html|publisher=Bitcoin.org|accessdate=21 October 2012|quote=The original software written by Satoshi Nakamoto, the project's founder.}}</ref><ref>http://gavintech.blogspot.co.uk/2012/03/full-disclosure-bitcoin-qt-on-windows.html, Full disclosure: Bitcoin-Qt on Windows vulnerability, 21st October 2012</ref><ref>http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-4682, Vulnerability Summary for CVE-2012-4682, 21st October 2012</ref> It has been bundled with [[bitcoind]] since version 0.5.<ref name="Bitcoin-Qt/Bitcoind Releases">{{cite web|title=Bitcoin-Qt/Bitcoind Releases|url=http://bitcoin.org/news.html|publisher=Bitcoin.org|accessdate=21 October 2012}}</ref> Bitcoin-Qt has been rebranded to '''[[Bitcoin Core]]''' since version 0.9.0 <ref name="Rebranding to Bitcoin Core">{{cite web|title=Bitcoin Core version 0.9.0 released|url=https://bitcoin.org/en/release/v0.9.0|publisher=Bitcoin.org|accessdate=19 March 2014}}</ref>
+
'''Bitcoin Core''' (formerly '''Bitcoin-Qt''') is the third [[Bitcoin]] [[Clients|client]], developed by [[Wladimir van der Laan]] based on the original reference code by [[Satoshi Nakamoto]].<ref>https://gavintech.blogspot.co.uk/2012/03/full-disclosure-bitcoin-qt-on-windows.html, Full disclosure: Bitcoin-Qt on Windows vulnerability, 21st October 2012</ref><ref>https://nvd.nist.gov/vuln/detail/CVE-2012-4682, Vulnerability Summary for CVE-2012-4682, 21st October 2012</ref> It has been bundled with [[bitcoind]] since version 0.5. Bitcoin-Qt has been rebranded to '''[[Bitcoin Core]]''' since version 0.9.0 <ref name="Rebranding to Bitcoin Core">{{cite web|title=Bitcoin Core version 0.9.0 released|url=https://bitcoin.org/en/release/v0.9.0|publisher=Bitcoin.org|accessdate=19 March 2014}}</ref>.
  
==History==
+
Bitcoin Core can be used as a desktop client for regular payments or as a server utility for merchants and other payment services.  
 
 
Bitcoin-Qt can used as a desktop client for regular payments or as a server utility for merchants and other payment services.  
 
  
 
===Current version===
 
===Current version===
Source code (and build instructions for supported platforms) can be found at the [https://github.com/bitcoin/bitcoin Bitcoin GitHub page].
+
Source code (and build instructions for supported platforms) can be found on the [https://github.com/bitcoin/bitcoin Bitcoin GitHub page].
  
 
==Features==
 
==Features==
 +
* Most popular software implementation of a bitcoin [[full node]]. Provides trustless validation that all of bitcoin's consensus rules are being followed.
 +
* Has an RPC interface allowing developers to interface with Core and access the bitcoin currency trustlessly.
 +
* Has a GUI frontend, Bitcoin-Qt, allowing ordinary users to use bitcoin with full validation.
 
* Compatibility with Linux (both GNOME and KDE), Mac OS X and Windows
 
* Compatibility with Linux (both GNOME and KDE), Mac OS X and Windows
 
* All functionality of the original wxWidgets client
 
* All functionality of the original wxWidgets client
Line 15: Line 16:
 
* Clearer transaction list with status icons and real-time filtering
 
* Clearer transaction list with status icons and real-time filtering
 
* Progress bar on initial block download
 
* Progress bar on initial block download
* Languages: Dutch, English, German, many more
+
* Languages: Dutch, English, German, Chinese and many more. Translations are being done by volunteers on [https://www.transifex.com/projects/p/bitcoin/ Transifex].
 
* Sendmany support in UI (send to multiple recipients in one transaction)
 
* Sendmany support in UI (send to multiple recipients in one transaction)
 
* Multiple [[Units|unit]] support, can show subdivided bitcoins (mBTC, µBTC) for users that like large numbers (only decimal units)
 
* Multiple [[Units|unit]] support, can show subdivided bitcoins (mBTC, µBTC) for users that like large numbers (only decimal units)
 
* Splash screen that details progress
 
* Splash screen that details progress
 +
* Debug window
 +
* Payment requests (BIP 70)
 +
* Coin control
 +
 +
== Naming Controversy ==
 +
 +
Some people like Peter Todd, Luke-jr and Greg Maxwell warned against the renaming to Bitcoin Core because it implied a centralization.<ref>https://www.reddit.com/r/Bitcoin/comments/60jmq2/a_proposal_for_and_demo_of_a_new_bitcoin_address/df73k2h/</ref><ref>https://www.reddit.com/r/Bitcoin/comments/60owl3/did_you_know_that_bitcoin_core_opposed_its_own/</ref><ref>https://bitcoinfoundation.org/forum/index.php?/topic/95-new-name-for-bitcoin-qt-bitcoind/&</ref>.
  
==Criticism==
+
Bitcoin Core right now may be the most popular or "reference" [[full node]] implementation, but that status depends on the [[economic majority]] continuing to use it<ref>https://bitcoinmagazine.com/articles/a-primer-on-bitcoin-governance-or-why-developers-aren-t-in-charge-of-the-protocol-1473270427/</ref>. Should one day come where another implementation overtakes it economically, that implementation would become the reference implementation. In one situation in 2017 significant parts of the economy moved to the BIP148 [[UASF]] implementation<ref>https://bitcoinmagazine.com/articles/long-road-segwit-how-bitcoins-biggest-protocol-upgrade-became-reality/</ref> and then moved back to Core after BIP148 was successful. The point here is that Bitcoin Core does not control bitcoin and the naming "Core" is misleading in that respect.
Bitcoin-Qt is often criticized for being slow in downloading and verifying the Bitcoin transaction database (often called the Blockchain).
 
  
It has also been criticized for "hogging" upload bandwidth when peers connect to download the blockchain (possible only when run with port 8333 accessible to outside connections).
+
On the other hand, many people are happy with the name Bitcoin Core and continue to use it. As long as it's emphasized that Bitcoin Core is just one possible software implementation of bitcoin that people are free to use or not use.
This perceived "issue" has been [https://github.com/bitcoin/bitcoin/issues/273 discussed extensively on GitHub].
 
Most modern routers support quality-of-service that can be configured to properly share the internet connection across all services, and even deprioritise Bitcoin traffic.
 
Bitcoin Core includes a script for Linux to configure QoS on an individual host.
 
Windows users can also use third-party software such as [http://seriousbit.com/netbalancer/ Netbalancer] to throttle the application's upload bandwidth and ensure that one has enough upload bandwidth available for regular computer and internet use to be unaffected.
 
  
Wallet management is also cumbersome. Unlike clients such as [[Armory]], [[MultiBit]], [[Electrum]] and others only one wallet at a time is supported, and its location is required to be the same as the blockchain storage, making it [[Securing_your_wallet#Making_a_secure_workspace|difficult to place the wallet on an encrypted drive]].
+
==See also==
 +
 
 +
* [[bitcoind]]
 +
* [[Full node]]
 +
* [[Bitcoin Knots]]
 +
* [[QBitcoin]]
  
 
==External Links==
 
==External Links==
  
 +
* [https://bitcoin.org/en/download Download link at bitcoin.org]
 +
* [https://bitcoin.org/en/version-history Version history]
 +
* [https://bitcoincore.org/ Bitcoin Core website]
 
* [https://bitcointalk.org/index.php?topic=15276.0 Forum thread] (includes screenshots)
 
* [https://bitcointalk.org/index.php?topic=15276.0 Forum thread] (includes screenshots)
 
* [https://github.com/bitcoin/bitcoin Current GitHub repository shared with bitcoind]
 
* [https://github.com/bitcoin/bitcoin Current GitHub repository shared with bitcoind]
  
<references
+
== References ==
  
/>
+
<references/>
 
 
==See also==
 
 
 
* [[QBitcoin]]
 
* [[bitcoind]]
 
  
 
[[es:Bitcoin-Qt]]
 
[[es:Bitcoin-Qt]]
Line 51: Line 57:
 
[[Category:Free Software]]
 
[[Category:Free Software]]
 
[[Category:Open Source]]
 
[[Category:Open Source]]
 +
 +
{{Bitcoin Core documentation}}

Latest revision as of 21:32, 3 March 2019

Bitcoin Core (formerly Bitcoin-Qt) is the third Bitcoin client, developed by Wladimir van der Laan based on the original reference code by Satoshi Nakamoto.[1][2] It has been bundled with bitcoind since version 0.5. Bitcoin-Qt has been rebranded to Bitcoin Core since version 0.9.0 [3].

Bitcoin Core can be used as a desktop client for regular payments or as a server utility for merchants and other payment services.

Current version

Source code (and build instructions for supported platforms) can be found on the Bitcoin GitHub page.

Features

  • Most popular software implementation of a bitcoin full node. Provides trustless validation that all of bitcoin's consensus rules are being followed.
  • Has an RPC interface allowing developers to interface with Core and access the bitcoin currency trustlessly.
  • Has a GUI frontend, Bitcoin-Qt, allowing ordinary users to use bitcoin with full validation.
  • Compatibility with Linux (both GNOME and KDE), Mac OS X and Windows
  • All functionality of the original wxWidgets client
  • Asks for confirmation before sending coins
  • CSV export of transactions
  • Clearer transaction list with status icons and real-time filtering
  • Progress bar on initial block download
  • Languages: Dutch, English, German, Chinese and many more. Translations are being done by volunteers on Transifex.
  • Sendmany support in UI (send to multiple recipients in one transaction)
  • Multiple unit support, can show subdivided bitcoins (mBTC, µBTC) for users that like large numbers (only decimal units)
  • Splash screen that details progress
  • Debug window
  • Payment requests (BIP 70)
  • Coin control

Naming Controversy

Some people like Peter Todd, Luke-jr and Greg Maxwell warned against the renaming to Bitcoin Core because it implied a centralization.[4][5][6].

Bitcoin Core right now may be the most popular or "reference" full node implementation, but that status depends on the economic majority continuing to use it[7]. Should one day come where another implementation overtakes it economically, that implementation would become the reference implementation. In one situation in 2017 significant parts of the economy moved to the BIP148 UASF implementation[8] and then moved back to Core after BIP148 was successful. The point here is that Bitcoin Core does not control bitcoin and the naming "Core" is misleading in that respect.

On the other hand, many people are happy with the name Bitcoin Core and continue to use it. As long as it's emphasized that Bitcoin Core is just one possible software implementation of bitcoin that people are free to use or not use.

See also

External Links

References