Jump to content

Bitcoin Core: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Development: This is true, other than the name being wrong, but is completely unsupported by the citation which contains no mention of MIT at all. It mentions the Bitcoin foundation (no relation to MIT), which is defunct and doesn't support developers, didn't support developers at the time of the article and isn't claimed to by the article (and except for a couple month period never did)
m Reverted edits by 2603:8000:5100:A53:7C94:5BD3:2A20:5257 (talk) (HG) (3.4.13)
 
(48 intermediate revisions by 26 users not shown)
Line 1: Line 1:
{{Short description|Bitcoin node and wallet software}}
<!-- Please do not remove or change this AfD message until the discussion has been closed. -->
{{Use dmy dates|date=November 2023}}
{{Article for deletion/dated|page=Bitcoin Core|timestamp=20200629002833|year=2020|month=June|day=29|substed=yes|help=off}}
<!-- Once discussion is closed, please place on talk page: {{Old AfD multi|page=Bitcoin Core|date=29 June 2020|result='''keep'''}} -->
<!-- End of AfD message, feel free to edit beyond this point -->
{{Infobox software
{{Infobox software
| name = Bitcoin Core
| name = Bitcoin Core
| logo =
| logo =
| screenshot = Bitcoin-core-v0.10.0.png
| screenshot = Bitcoin-core-v0.10.0.png
| caption = The start screen under [[Fedora (operating system)|Fedora]]
| caption = The start screen under [[Fedora Linux]]
| author = [[Satoshi Nakamoto]]
| author = [[Satoshi Nakamoto]]
| released = 2009
| released = 2009
Line 14: Line 12:
| genre = [[Cryptocurrency]]
| genre = [[Cryptocurrency]]
| license = [[MIT License]]
| license = [[MIT License]]
| repo = {{url|https://github.com/bitcoin/bitcoin}}
| repo = {{URL|https://github.com/bitcoin/bitcoin}}
| website = {{URL|https://bitcoincore.org}}
| website = {{URL|https://bitcoincore.org}}
}}
}}


'''Bitcoin Core''' is [[free and open-source software]] that serves as a [[bitcoin]] [[Node (networking)|node]] (the set of which form the [[bitcoin network]]) and provides a [[Bitcoin#Wallets|bitcoin wallet]] which fully verifies payments. It is considered to be bitcoin's [[reference implementation]].<ref name="Antonopoulos" >{{cite book |last1=Antonopoulos |first1=Andreas |title=Mastering Bitcoin: Programming the Open Blockchain |publisher=O'Reilly Media |isbn=978-1491954386 |edition=2nd |chapter=3 |quote=Bitcoin Core is the reference implementation of the bitcoin system, meaning that it is the authoritative reference on how each part of the technology should be implemented. Bitcoin Core implements all aspects of bitcoin, including wallets, a transaction and block validation engine, and a full network node in the peer-to-peer bitcoin network.|year=2017 }}</ref> Initially, the software was published by [[Satoshi Nakamoto]] under the name "Bitcoin", and later renamed to "Bitcoin Core" to distinguish it from the [[bitcoin network|network]].<ref>{{cite web |title=Bitcoin Core version 0.9.0 released |url=https://bitcoin.org/en/release/v0.9.0#rebranding-to-bitcoin-core |website=Bitcoin Core |accessdate=21 October 2018 |date=19 Mar 2014}}</ref> For this reason, it is also known as the '''Satoshi client'''.<ref name="mastbit">{{cite book |title=Mastering Bitcoin: Unlocking Digital Cryptocurrencies |last=Antonopoulos |first=Andreas M. |year=2014 |publisher=O'Reilly Media, Inc. |isbn=978-1491902646 |pages=31–32 |url=https://books.google.com.au/books?id=IXmrBQAAQBAJ |accessdate=6 November 2016}}</ref>
'''Bitcoin Core''' is [[free and open-source software]] that serves as a [[bitcoin]] [[Node (networking)|node]] (the set of which form the [[Bitcoin network]]) and provides a [[Bitcoin#Wallets|bitcoin wallet]] which fully verifies payments. It is considered to be bitcoin's [[reference implementation]].<ref name="Antonopoulos">{{Cite book |last=Antonopoulos |first=Andreas |title=Mastering Bitcoin: Programming the Open Blockchain |publisher=O'Reilly Media |year=2017 |isbn=978-1491954386 |edition=2nd |chapter=3 |quote=Bitcoin Core is the reference implementation of the bitcoin system, meaning that it is the authoritative reference on how each part of the technology should be implemented. Bitcoin Core implements all aspects of bitcoin, including wallets, a transaction and block validation engine, and a full network node in the peer-to-peer bitcoin network.}}</ref> Initially, the software was published by [[Satoshi Nakamoto]] under the name "Bitcoin", and later renamed to "Bitcoin Core" to distinguish it from the [[Bitcoin network|network]].<ref>{{cite web |date=19 March 2014 |title=Bitcoin Core version 0.9.0 released |url=https://bitcoin.org/en/release/v0.9.0#rebranding-to-bitcoin-core |access-date=21 October 2018 |website=Bitcoin Core}}</ref> It is also known as the ''Satoshi client''.<ref name="mastbit">{{Cite book |last=Antonopoulos |first=Andreas M. |url=https://books.google.com/books?id=IXmrBQAAQBAJ |title=Mastering Bitcoin: Unlocking Digital Cryptocurrencies |publisher=O'Reilly Media, Inc. |year=2014 |isbn=978-1491902646 |pages=31–32 |access-date=6 November 2016}}</ref> Bitcoin Core includes a transaction verification engine and connects to the bitcoin network as a full [[node (networking)|node]].<ref name="mastbit" />


The software validates the entire [[Blockchain (database)|blockchain]], which includes all bitcoin transactions ever. This [[distributed ledger]], which has reached more than 608.9 gigabytes (not including database indexes) in size as of October 2024,<ref>“Bitcoin Blockchain Size.” n.d. Ycharts.com. https://ycharts.com/indicators/bitcoin_blockchain_size.
The [[Massachusetts Institute of Technology|MIT]] Digital Currency Initiative funds some of the development of Bitcoin Core.<ref name="blad">{{cite web |title=MIT Announces $900,000 Bitcoin Developer Fund |url=https://www.inc.com/ilan-mochari/mit-media-lab-bitcoin-developer-fund.html |website=Inc |accessdate=21 October 2018 |date=29 Mar 2016}}</ref> The project also maintains the cryptography library libsecp256k1.<ref name="about"/>


‌</ref> must be downloaded or synchronized before full participation of the client may occur.<ref name="mastbit" /> Bitcoin Core includes a scripting language inspired by [[Forth (programming language)|Forth]] that can define transactions and specify parameters.<ref name="mpapi">{{cite web |last=Antonopoulos |first=Andreas |date=29 May 2013 |title=Bitcoin is a money platform with many APIs |url=http://radar.oreilly.com/2013/05/bitcoin-is-a-money-platform-with-many-apis.html#more-57340 |access-date=19 November 2016 |website=Radar |publisher=O'Reilly}}</ref>
==Features==
Bitcoin Core includes a transaction verification engine and connects to the bitcoin network as a full [[node (networking)|node]].<ref name="mastbit" /> Moreover, a [[cryptocurrency wallet]], which can be used to transfer funds, is included by default.<ref name="about">{{cite web |title=About |url=https://bitcoincore.org/en/about/ |website=Bitcoin Core |accessdate=21 October 2018}}</ref> The wallet allows for the sending and receiving of bitcoins. It does not facilitate the buying or selling of bitcoin. It allows users to generate [[QR codes]] to receive payment.


The original creator of the bitcoin client has described their approach to the software's authorship as it being written first to prove to themselves that the concept of purely peer-to-peer electronic cash was valid and that a paper with solutions could be written. The lead developer is Wladimir J. van der Laan, who took over the role on 8 April 2014.<ref name="hunt" /> [[Gavin Andresen]] was the former lead maintainer for the software client. Andresen left the role of lead developer for bitcoin to work on the strategic development of its technology.<ref name="hunt">{{cite book |last1=Preukschat |first1=Alex |url=https://play.google.com/store/books/details?id=438FCwAAQBAJ |title=Bitcoin: The Hunt of Satoshi Nakamoto |last2=Josep Busquet |publisher=Europe Comics |year=2015 |isbn=9791032800201 |page=87 |access-date=16 November 2016}}</ref> Bitcoin Core in 2015 was central to a dispute with [[Bitcoin XT]], a competing client that sought to increase the blocksize.<ref name="NewYorker">{{cite news |last=Maria Bustillos |date=25 August 2015 |title=Inside the Fight Over Bitcoin's Future |work=New Yorker |url=https://www.newyorker.com/business/currency/inside-the-fight-over-bitcoins-future |access-date=29 June 2020}}</ref>
The software validates the entire [[Blockchain (database)|blockchain]], which includes all bitcoin transactions ever. This [[distributed ledger]] which has reached more than 235 gigabytes in size as of Jan 2019, must be downloaded or synchronized before full participation of the client may occur.<ref name="mastbit"/> Although the complete blockchain is not needed all at once since it is possible to run in pruning mode. A [[Command-line interface|command line]]-based [[Daemon (computing)|daemon]] with a [[JSON-RPC]] interface, bitcoind, is bundled with Bitcoin Core. It also provides access to testnet, a global testing environment that imitates the bitcoin main network using an alternative blockchain where valueless "test bitcoins" are used. Regtest or Regression Test Mode creates a private blockchain which is used as a local testing environment.<ref name="bde">{{cite web |url=https://bitcoin.org/en/developer-examples#testing-applications |title=Bitcoin Developer Examples |publisher=Bitcoin |accessdate=21 Oct 2018 }}</ref> Finally, bitcoin-cli, a simple program which allows users to send [[Remote procedure call|RPC]] commands to bitcoind, is also included.


Over a dozen different companies and industry groups fund the development of Bitcoin Core.{{cn|date=November 2023}} In 2019, [[Massachusetts Institute of Technology|MIT]] announced donations of $900,000 would be used to fund the Digital Currency Initiative, which would mainly go to developers of Bitcoin Core.<ref name="blad">{{cite web |date=29 March 2016 |title=MIT Announces $900,000 Bitcoin Developer Fund |url=https://www.inc.com/ilan-mochari/mit-media-lab-bitcoin-developer-fund.html |access-date=21 October 2018 |website=Inc}}</ref>
Checkpoints which have been hard coded into the client are used only to prevent Denial of Service attacks against nodes which are initially syncing the chain. For this reason the checkpoints included are only as of several years ago.<ref name="check">{{cite web |url=https://github.com/bitcoin/bitcoin/blob/master/src/checkpoints.cpp |title=checkpoints.cpp |work=Repository source code |publisher=GitHub, Inc. |accessdate=13 November 2016 }}</ref><ref>{{cite web |title=bitcoin/chainparams.cpp |url=https://github.com/bitcoin/bitcoin/blob/master/src/chainparams.cpp |website=GitHub |accessdate=21 October 2018}}</ref>{{failed verification|date=December 2019}} A one megabyte block size limit was added in 2010 by Satoshi Nakamoto. This limited the maximum network capacity to about three transactions per second.<ref name="leadbit">{{Cite news |url=https://www.technologyreview.com/s/537486/leaderless-bitcoin-struggles-to-make-its-most-crucial-decision/ |title=Leaderless Bitcoin Struggles to Make Its Most Crucial Decision |author=Mike Orcutt |accessdate=15 November 2016 |date=19 May 2015 |work=MIT Technology Review }}</ref> Since then, network capacity has been improved incrementally both through block size increases and improved wallet behavior. A network alert system was included by Satoshi Nakamoto as a way of informing users of important news regarding bitcoin.<ref name="asr">{{cite web |url=https://bitcoin.org/en/alert/2016-11-01-alert-retirement |title=Alert System Retirement |date=1 November 2016 |publisher=Bitcoin Project |accessdate=16 November 2016 }}</ref> In November 2016 it was retired. It had become obsolete as news on bitcoin is now widely disseminated.

Bitcoin Core includes a scripting language inspired by [[Forth (programming language)|Forth]] that can define transactions and specify parameters.<ref name="mpapi">{{cite web |first1=Andreas|last1=Antonopoulos|url=http://radar.oreilly.com/2013/05/bitcoin-is-a-money-platform-with-many-apis.html#more-57340 |title=Bitcoin is a money platform with many APIs |date=29 May 2013 |work=Radar |publisher=O'Reilly |accessdate=19 November 2016 }}</ref> ScriptPubKey is used to "lock" transactions based on a set of future conditions. scriptSig is used to meet these conditions or "unlock" a transaction. [[Instruction set|Operations]] on the data are performed by various OP_Codes. Two [[stack (abstract data type)|stacks]] are used - main and alt. [[Control flow#Loops|Looping]] is forbidden.

Bitcoin Core uses [[OpenTimestamps]] to timestamp merge commits.<ref>{{cite web|url=https://github.com/bitcoin/bitcoin/blob/ebd786b72a2a15143d7ef4ea2229fef121bd8f12/contrib/devtools/README.md#create-and-verify-timestamps-of-merge-commits|title=Bitcoin Core devtools README - Create and verify timestamps of merge commits|date=|website=GitHub|archive-url=|archive-date=|accessdate=May 5, 2018}}</ref>

==Development==
The original creator of the bitcoin client has described their approach to the software's authorship as it being written first to prove to themselves that the concept of purely peer-to-peer electronic cash was valid and that a paper with solutions could be written. The lead developer is Wladimir J. van der Laan, who took over the role on 8 April 2014.<ref name="hunt"/> [[Gavin Andresen]] was the former lead maintainer for the software client. Andresen left the role of lead developer for bitcoin to work on the strategic development of its technology.<ref name="hunt">{{cite book |title=Bitcoin: The Hunt of Satoshi Nakamoto |last=Preukschat |first=Alex |author2=Josep Busquet |year=2015 |publisher=Europe Comics |isbn=9791032800201 |page=87 |url=https://play.google.com/store/books/details?id=438FCwAAQBAJ |accessdate=16 November 2016}}</ref> Bitcoin Core developers have been in charge of bitcoin's development since [[Satoshi Nakamoto]] left the project.<ref name="wtbf">{{Cite news |url=https://www.forbes.com/sites/laurashin/2017/10/23/will-this-battle-for-the-soul-of-bitcoin-destroy-it/#62d19db23d3c |title=Will This Battle For The Soul Of Bitcoin Destroy It? |author=Laura Shin |accessdate=14 April 2018 |date=23 October 2017 |work=Forbes }}</ref> Bitcoin Core in 2015 was central to a dispute with [[Bitcoin XT]], a competing client that sought to increase the blocksize.<ref name="NewYorker">{{Cite news |url=https://www.newyorker.com/business/currency/inside-the-fight-over-bitcoins-future
|title=Inside the Fight Over Bitcoin’s Future |author=Maria Bustillos |accessdate=29 June 2020 |date=25 August 2015 |work=New Yorker}}</ref> Blockstream has funded bitcoin core development.<ref name="FT05152018">{{cite news |last1=Kelly |first1=Jemima |title=Bitcoin cash is expanding into the void |url=https://ftalphaville.ft.com/2018/05/15/1526356800000/Bitcoin-cash-is-expanding-into-the-void/ |accessdate=3 June 2018 |newspaper=[[Financial Times]] |date=15 May 2018}}</ref> The MIT Digital Currency Initiative supported bitcoin core developers and paid them in Bitcoin.

{{external media| float =| width = | video1 = [https://www.youtube.com/watch?v=FIt7GLxxIpY Visualization of code changes during 2015]}}

==Version history==
Bitcoin 0.1 was released on 9 January 2009 by Satoshi Nakamoto with only [[Windows]] supported.{{citation needed|date=May 2019}} This was followed by some minor bug fixing versions. On 16 December 2009 Bitcoin 0.2 was released. It included a Linux version for the first time and made use of [[multi-core processor]]s for mining. In version 0.3.2 Nakamoto included checkpoints as a safeguard. After the release of version 0.3.9, Satoshi Nakamoto left the project and shortly after stopped communicating on online forums.{{citation needed|date=May 2019}}

Between 2011 and 2013 new versions of the software were released at Bitcoin.org.<ref name="abo">{{cite web |url=https://bitcoin.org/en/about-us#sponsorship |title=About bitcoin.org |publisher=Bitcoin Project |accessdate=14 November 2016 }}</ref> Developers wanted to differentiate themselves as creators of software rather than advocates for bitcoin and so now maintain bitcoincore.org for just the software.

Bitcoin-Qt version 0.5.0 was released on 1 November 2011. It introduced a [[Front and back ends|front end]] that uses the [[Qt (software)|Qt user interface toolkit]].<ref name="bqt">{{cite web |url=https://bitcoin.org/en/release/v0.5.0 |title=Bitcoin-Qt version 0.5.0 released |date=1 November 2011 |publisher=Bitcoin Project |accessdate=13 November 2016 }}</ref> The software previously used [[Berkeley DB]] for database management. Developers switched to [[LevelDB]] in release 0.8 in order to reduce blockchain [[synchronization]] time.{{citation needed|date=May 2019}} The update to this release resulted in a minor blockchain fork on the 11 March 2013. The fork was resolved shortly afterwards.{{citation needed|date=May 2019}} Seeding nodes through [[Internet Relay Chat|IRC]] was discontinued in version 0.8.2. From version 0.9.0 the software was renamed to Bitcoin Core. Transaction fees were reduced again by a factor of ten as a means to encourage [[micropayment|microtransactions]].{{citation needed|date=May 2019}} Although Bitcoin Core does not use [[OpenSSL]] for the operation of the network, the software did use OpenSSL for remote procedure calls. Version 0.9.1 was released to remove the network's vulnerability to the [[Heartbleed bug]].{{citation needed|date=May 2019}}

Release 0.10 was made public on 16 February 2015. It introduced a consensus library which gave programmers easy access to the rules governing [[Consensus decision-making|consensus]] on the network. In version 0.11.2 developers added a new feature which allowed transactions to be made unspendable until a specific time in the future.<ref name="v0.11.2">{{cite web |url=https://bitcoin.org/en/release/v0.11.2 |title=Bitcoin Core version 0.11.2 released |date=13 November 2015 |publisher=Bitcoin Project |accessdate=14 November 2016 }}</ref> Bitcoin Core 0.12.1 was released on April 15, 2016 and enabled multiple soft forks to occur concurrently.<ref name="0.12.1rel">{{Cite news |url=http://www.nasdaq.com/article/bitcoin-core-0121-released-major-step-forward-for-scalability-cm607209 |title=Bitcoin Core 0.12.1 Released, Major Step Forward for Scalability |author=Kyle Torpey |accessdate=7 November 2016 |date=15 April 2016 |work=Bitcoin Magazine |publisher=NASDAQ.com }}</ref> Around 100 contributors worked on Bitcoin Core 0.13.0 which was released on 23 August 2016.

In July 2016, the CheckSequenceVerify soft fork activated.<ref>{{cite book |last1=Antonopoulos |first1=Andreas |title=Mastering Bitcoin: Programming the Open Blockchain |publisher=O'Reilly Media |isbn=978-1491954386 |edition=2nd |quote=BIP-68 and BIP-112 were activated in May 2016 as a soft fork upgrade to the consensus rules.|year=2017 }}</ref>

In October 2016, Bitcoin Core’s 0.13.1 release featured the "[[Segwit]]" soft fork that included a scaling improvement aiming to optimize the bitcoin blocksize.{{citation needed|date=May 2019}} The patch which was originally finalised in April, and 35 developers were engaged to deploy it.{{citation needed|date=May 2019}} This release featured Segregated Witness ([[SegWit]]) which aimed to place downward pressure on transaction fees as well as increase the maximum transaction capacity of the network.<ref name="rel13.1">{{cite web |url=https://bitcoincore.org/en/releases/0.13.1/ |title=Bitcoin Core 0.13.1 |publisher=Bitcoin Core |accessdate=25 October 2016 }}</ref>{{primary source inline|date=May 2019}} The 0.13.1 release endured extensive testing and research leading to some delays in its release date.{{citation needed|date=May 2019}} SegWit prevents various forms of transaction [[malleability (cryptography)|malleability]].<ref name="swb">{{cite web|url=https://bitcoincore.org/en/2016/01/26/segwit-benefits/|title=Segregated Witness Benefits|last=|first=|date=January 26, 2016|work=Bitcoin Core|archive-url=|archive-date=|accessdate=October 20, 2018}}</ref>{{primary source inline|date=May 2019}}

In September 2018, a [[Bitcoin Cash]] developer discovered the vulnerability {{CVE|2018-17144}} in the Bitcoin Core software that could allow an attacker to crash vulnerable Bitcoin Core nodes and exceed the 21 million coin limit.<ref>{{Cite news|url=https://bitcoincore.org/en/2018/09/20/notice/|title=CVE-2018-17144 Full Disclosure|work=Bitcoin Core|access-date=2018-09-23|language=en}}</ref>{{primary source inline|date=May 2019}}

==Bitcoin Improvement Proposals==
A [[Bitcoin Improvement Proposal]] (BIP) is a design document, typically describing a new feature for Bitcoin with a concise technical specification of the feature and the rationale for it. Bitcoin Core implements some of these design documents.

==See also==
* [[Bitcoin]] for more information on the network itself.
{{-}}


== References ==
== References ==
{{reflist|30em}}
{{reflist}}

==External links==
* {{official website|https://bitcoincore.org}}
* [https://en.bitcoin.it/wiki/Bitcoin_Core Bitcoin Core] at Bitcoin Wiki
* [https://bitnodes.earn.com Node count and statistics]


== Further reading ==
{{Bitcoin|state=expanded}}
* {{Cite conference |last1=Kaushal |first1=Puneet Kumar |last2=Bagga |first2=Amandeep |last3=Sobti |first3=Rajeev |date=July 2017 |title=Evolution of bitcoin and security risk in bitcoin wallets |url=https://ieeexplore.ieee.org/document/8003959 |publisher=IEEE |pages=172–177 |doi=10.1109/COMPTELIX.2017.8003959 |isbn=978-1-5090-4708-6|conference=2017 International Conference on Computer, Communications and Electronics (Comptelix)}}
{{FOSS}}
* {{Cite journal |last1=Van Der Horst |first1=Luuc |last2=Choo |first2=Kim-Kwang Raymond |last3=Le-Khac |first3=Nhien-An |date=2017 |title=Process Memory Investigation of the Bitcoin Clients Electrum and Bitcoin Core |journal=IEEE Access |volume=5 |pages=22385–22398 |doi=10.1109/ACCESS.2017.2759766 |bibcode=2017IEEEA...522385V |issn=2169-3536|doi-access=free }}
* {{cite conference |title=Looking for lacunae in Bitcoin core's fuzzing efforts |last1=Groce |first1=Alex |last2=Jain |first2=Kush |last3=van Tonder |first3=Rijnard |last4=Kalburgi |first4=Goutamkumar Tulajappa |last5=Goues |first5=Claire Le |date=2022-05-21 |conference= 44th International Conference on Software Engineering |book-title=Proceedings of the 44th International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP '22) |publisher=Association for Computing Machinery |location=New York |pages=185–186 |doi=10.1145/3510457.3513072 |isbn=978-1-4503-9226-6 |language=en |doi-access=free }}
* {{cite book |last=Brakmić |first=Harris |chapter=Bitcoin Core Wallet |date=2019 |chapter-url=http://link.springer.com/10.1007/978-1-4842-5522-3_5 |title=Bitcoin and Lightning Network on Raspberry Pi |pages=141–164 |place=Berkeley, CA |publisher=Apress |language=en |doi=10.1007/978-1-4842-5522-3_5 |isbn=978-1-4842-5521-6|s2cid=213657549 }}


[[Category:2009 software]]
[[Category:2009 software]]
Line 78: Line 41:
[[Category:Free software programmed in C++]]
[[Category:Free software programmed in C++]]
[[Category:Software using the MIT license]]
[[Category:Software using the MIT license]]
[[Category:Beta software]]

Latest revision as of 00:34, 18 December 2024

Bitcoin Core
Original author(s)Satoshi Nakamoto
Initial release2009
Stable release28.0 (5 October 2024; 3 months ago (2024-10-05)) [±]
Repositorygithub.com/bitcoin/bitcoin
Written inC++
Operating systemLinux, Windows, macOS
TypeCryptocurrency
LicenseMIT License
Websitebitcoincore.org

Bitcoin Core is free and open-source software that serves as a bitcoin node (the set of which form the Bitcoin network) and provides a bitcoin wallet which fully verifies payments. It is considered to be bitcoin's reference implementation.[1] Initially, the software was published by Satoshi Nakamoto under the name "Bitcoin", and later renamed to "Bitcoin Core" to distinguish it from the network.[2] It is also known as the Satoshi client.[3] Bitcoin Core includes a transaction verification engine and connects to the bitcoin network as a full node.[3]

The software validates the entire blockchain, which includes all bitcoin transactions ever. This distributed ledger, which has reached more than 608.9 gigabytes (not including database indexes) in size as of October 2024,[4] must be downloaded or synchronized before full participation of the client may occur.[3] Bitcoin Core includes a scripting language inspired by Forth that can define transactions and specify parameters.[5]

The original creator of the bitcoin client has described their approach to the software's authorship as it being written first to prove to themselves that the concept of purely peer-to-peer electronic cash was valid and that a paper with solutions could be written. The lead developer is Wladimir J. van der Laan, who took over the role on 8 April 2014.[6] Gavin Andresen was the former lead maintainer for the software client. Andresen left the role of lead developer for bitcoin to work on the strategic development of its technology.[6] Bitcoin Core in 2015 was central to a dispute with Bitcoin XT, a competing client that sought to increase the blocksize.[7]

Over a dozen different companies and industry groups fund the development of Bitcoin Core.[citation needed] In 2019, MIT announced donations of $900,000 would be used to fund the Digital Currency Initiative, which would mainly go to developers of Bitcoin Core.[8]

References

[edit]
  1. ^ Antonopoulos, Andreas (2017). "3". Mastering Bitcoin: Programming the Open Blockchain (2nd ed.). O'Reilly Media. ISBN 978-1491954386. Bitcoin Core is the reference implementation of the bitcoin system, meaning that it is the authoritative reference on how each part of the technology should be implemented. Bitcoin Core implements all aspects of bitcoin, including wallets, a transaction and block validation engine, and a full network node in the peer-to-peer bitcoin network.
  2. ^ "Bitcoin Core version 0.9.0 released". Bitcoin Core. 19 March 2014. Retrieved 21 October 2018.
  3. ^ a b c Antonopoulos, Andreas M. (2014). Mastering Bitcoin: Unlocking Digital Cryptocurrencies. O'Reilly Media, Inc. pp. 31–32. ISBN 978-1491902646. Retrieved 6 November 2016.
  4. ^ “Bitcoin Blockchain Size.” n.d. Ycharts.com. https://ycharts.com/indicators/bitcoin_blockchain_size. ‌
  5. ^ Antonopoulos, Andreas (29 May 2013). "Bitcoin is a money platform with many APIs". Radar. O'Reilly. Retrieved 19 November 2016.
  6. ^ a b Preukschat, Alex; Josep Busquet (2015). Bitcoin: The Hunt of Satoshi Nakamoto. Europe Comics. p. 87. ISBN 9791032800201. Retrieved 16 November 2016.
  7. ^ Maria Bustillos (25 August 2015). "Inside the Fight Over Bitcoin's Future". New Yorker. Retrieved 29 June 2020.
  8. ^ "MIT Announces $900,000 Bitcoin Developer Fund". Inc. 29 March 2016. Retrieved 21 October 2018.

Further reading

[edit]