Difference between revisions of "Bitcoin Core"

From Bitcoin Wiki
Jump to: navigation, search
(Criticism: Add criticism of the wallet handling)
m (Naming Controversy: Linking UASF)
(34 intermediate revisions by 13 users not shown)
Line 1: Line 1:
'''Bitcoin-Qt''' is the third [[Bitcoin]] 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 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).
 
  
Wallet management is also cumbersome. Unlike clients such as [[MultiBit]], only one wallet at a time is supported, and its location is hardcoded, making it [[Securing_your_wallet#Making_a_secure_workspace|difficult to place the wallet on an encrypted drive]].
+
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==
 +
 
 +
* [[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 ==
 
 
/>
 
  
==See also==
+
<references/>
 
 
* [[QBitcoin]]
 
* [[bitcoind]]
 
  
 
[[es:Bitcoin-Qt]]
 
[[es:Bitcoin-Qt]]
Line 45: Line 57:
 
[[Category:Free Software]]
 
[[Category:Free Software]]
 
[[Category:Open Source]]
 
[[Category:Open Source]]
 +
 +
{{Bitcoin Core documentation}}

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