BCoin Lets Users Run A Bitcoin Node In Node.js

Running a Bitcoin node has become a topic of discussion these days, as there are so many different options readily available to achieve this goal. In most cases, users will need to run the Bitcoin Core or Bitcoin Classic client to achieve that goal, but an alternative solution is being developed as we speak. BCoin is a Bitcoin Node project which can run in Node.js, and perhaps even the browser in due time.

BCoin – Bitcoin Node In Node.js

It is important to keep in mind the BCoin code on GitHub is a work in progress, as the creator is constantly fine tuning things and updating the associated documentation. That being said, the GitHub version can be used to create a Bitcoin node within Node.js, although the browser version is not available yet.

What BCoin does under the hood is providing Bitcoin enthusiasts with a choice. Either they run the code as a fully validating node on the network, including downloading the entire blockchain. Or they can run BCoin as an SPV node, which does not store the entire blockchain but rather the latest block headers to validate transactions.

Regardless of what choice the end user decides to make, BCoin offers plenty of supported features. For example, there is the option to use Hierarchical Deterministic Wallets, based on BIP44 – or BIP45 if preferred. Bitcoin HD wallets bring additional security to the table, which is important to software on a machine that is always connected to the internet.

Other supported features include full block validation, a wallet database, and a full block database. Mempool is available as well, although the developer did mention this particular feature is still being worked on right now. There is a minor discrepancy between this implementation and the bitcoind mempool which needs to be sorted out.

As BCoin is based on Bitcoin Core, Segregated Witness will be supported as well. An experimental implementation can be found in the code already, which will help validate Segwit blocks and transactions on the dedicated testnet. However, transaction signing implementation is not available yet.

What makes BCoin even more appealing is how this solution could be made available to operate within a browser as well. It will take some time until that becomes a reality though, but now that the code is readily available on GitHub, developers can tinker around with this code.

About The Author

JP Buntinx is a FinTech and Bitcoin enthusiast living in Belgium. His passion for finance and technology made him one of the world's leading freelance Bitcoin writers, and he aims to achieve the same level of respect in the FinTech sector.