Two New Bitcoin Cash Full Node Clients: Gocoin-cash and Bchd (gcash) in Programming Language Go
The creators of the counterparty.cash protocol launched a Bitcoin Cash full node called Gocoin-cash. Openbazaar developer Chris Pacia released another BCH full node called Bchd (gcash). Both are written in programming language Go (golang).
Some of the clients on the BCH network are written in the original C++ programming language Satoshi used when the Bitcoin network first launched. Other clients also run the entire BCH network but are written in a different codebase.
To take an example of Parity Cash which is written in the programming language rust, and Bcash is a full node compiled with the language node.js. These other languages allow developers to use the BCH network in a more interoperable fashion, as common programming languages allow them to create friendlier applications.
This week the creators of counterparty.cash (XCPC) have announced the launch of Gocoin-cash which is a Bitcoin (Cash) full node and wallet written in Go (golang). Gocoin-cash is a port of the BTC software originally written by Piotr Narewski. The fork announced by XCPC and BCH developer, Julian Smith, currently has its own Github repository for developers to review or participate. The Gocoin-cash full node project also has a website that explains the client launch will be in 47 days on iOS and Android operating systems.
“The software architecture is focused on the maximum performance of the node and cold storage security of the wallet,” says Gocoin-cash repository
In addition to the Gocoin-cash implementation, another full node client called ‘Bchd’ (gcash) is currently in the works that also uses the golang programming language. Openbazaar developer Chris Pacia has revealed he is working on a fork of the Btcd implementation that’s been around since 2013. Pacia ported the code to build a BCH full node written in Go and the developer believes it is “one of the best designed and well-written Bitcoin codebases.”
He explains that a BCH full node written in golang has many benefits like client-side block filtering, the ability to utilize QUIC, a new transport developed by Google to replace TCP, and much like Gocoin-cash the Bchd deploys extremely fast blockchain sync times.
“The design of the codebase coupled with the ease of use of Go makes it relatively easy for us to experiment with new features that would take a long time to get into the C++ implementations.”, says Pacia.
However, just like the earlier project, even this is incomplete. They have to create a UTXO cache, implement a pruned mode, Port the btcwallet/neutrino codebase, and switch to libsecp256k1.