Bitcoin ABC v. BCHN bchd BU

30 597
Avatar for Cain
Written by
4 years ago

Thursday, October 22nd, 23 days before the fork

I was asked in a comment to my last article what the difference is between Bitcoin Cash and Bitcoin ABC.

Simply put, Bitcoin Cash is the name of the cryptocurrency we all love to use here on read.cash and the network it is transacted on. Meanwhile, Bitcoin ABC is the name of a specific full node implementation that runs the Bitcoin Cash protocol, aka the software that is used by computers on the Bitcoin Cash network to process and validate transactions to insure they are valid under the consensus rules of BCH.

Since the consensus rules are what dictate whether or not a specific transaction is valid, if another node implementation enables a new rule that isn't agreed to by the rest of the network, what happens is known as a hard fork. A hard fork may or may not lead to a split of the chain. If all nodes follow the new consensus rules, it can just be seen as an upgrade, but if only some nodes follow the new rules and others follow the old rules, a split in the network will occur with anyone who held coins prior to the split now owning the same number of coins on both branches of the split (one branch following the old rules and one branch following the new).

Now that I've gotten that out of the way, how many full node implementations are there on the Bitcoin Cash network?

The above image shows all the various nodes that are running the BCH protocol. In this article I'd like to compare and contrast the 4 clients that are most prevalently used: Bitcoin Unlimited, Bitcoin ABC, BCHN, and BCHD.

Since I'm not a software engineer, this article is from a layman's perspective comparing these four teams based on publicly available information. If you're more interested in an analysis comparing the actual code, I highly recommend watching this presentation by Joannes Vermorel (I've also transcribed it here in case you'd prefer to read it instead).

So looking at things from an average joe's perspective, here are my general impressions of these four teams.

Let me start with BCHD, which is an alternative BCH implementation written in Go, while the other three implementations are written in the C++ programming language. BCHD is maintained by Chris Pacia (creator) and Josh Ellithorpe. Chris Pacia is of Open Bazaar fame, and Josh Ellithorpe is a software engineer working at Coinbase. My understanding is that BCHD is a great implementation to use for application developers though at the moment it isn't recommended to be used in mining. Since BCHD is written in a different programming language from the other clients, it also offers node diversity in a way that the others do not. The utility offered by BCHD isn't surprising since the two maintainers are people who have held legitimate jobs in the cryptocurrency industry, have been asked to speak at multiple conferences, and are generally well known and respected throughout the BCH community.

Next up is Bitcoin Unlimited. This is a group that has been around for ~5 years. They previously attempted to activate big blocks on BTC but failed to achieve that goal due to multiple bugs that made it evident their code was unreliable. Fortunately for BU, they were given a large donation of BTC before all this and before the big bull run of 2017 and have been surviving off of those donations ever since. They are led by their lead developer Andrew Stone, and their chief scientist Peter Rizun. My cursory research hasn't led to much information on what benefits BU currently provides the BCH community. It's also widely known that instead of heeding the warnings of people like Amaury Sechet and Gavin Andresen that their code was unreliable, they chose not to heed those warnings about poor development practices, which ultimately led to their failure to activate big blocks on BTC due to a number of bugs that were catastrophic.

Which leads us to Bitcoin ABC. The team is led by Amaury Sechet, who is arguably the person most responsible for the creation of Bitcoin Cash on August 1st, 2017. Bitcoin ABC is a fork of Bitcoin Core, the original codebase started by Satoshi Nakamoto. Besides Amaury, you have longtime contributors Jason Cox and Antony Zegers, and a total of 8 full-time software engineers, 1 technical operations manager, and 1 content marketing manager. Amaury has given countless interviews and presentations and is well-respected not only in the BCH community but in the cryptocurrency industry at large. Prior to working on BCH, he was previously a software engineer at Facebook for four years. Bitcoin ABC members have included people who have worked for companies such as the already mentioned Facebook, LinkedIn, Cloudflare, and Bitcoin.com. Bitcoin ABC is also the author of the technical roadmap that BCH has been operating under for the past three years, and it would be fair to say that since the inception of BCH, Bitcoin ABC was the de facto reference implementation of Bitcoin Cash until recently when that moniker has come in doubt.

Which leads us to Bitcoin Cash Node. BCHN is a relatively new full node implementation that was originally forked off the Bitcoin ABC codebase earlier this year as a reaction to the initial announcement of the IFP. Despite raising 978 BCH through their flipstarter campaign while stating: "The primary goal of the Bitcoin Cash Node initiative is to provide a safe and professional node implementation that will neutrally follow the longest Bitcoin Cash chain without contributing to the risk of a chain split", that announcement has since been taken down from their website. Below is an image from the way-back machine that shows what their site used to look like:

Unlike BCHD, ABC, and Unlimited, one thing that stands out with BCHN is that their lead maintainer is anonymous. I'm not saying you have to be a public person to run a node implementation, but I think there are aspects to knowing who the developers are that gives you a level of comfort and trust you don't get from anonymous contributors. And yes, I know Satoshi was as anonymous as they come, but it's hard not to wonder where we might be if Satoshi had been a known entity and was still around. I understand the argument that his anonymity was a feature, not a bug, but outside of a government agency kidnapping the man and holding him hostage, I think his public presence would have been an overall benefit to the project rather than a detriment. I have no problem with people disagreeing with ABC. This is a permissionless system where anyone is free to act in accordance with their own desires, but the reason for this article is to ask the question of whether it is wise for BCH stakeholders to hand over Bitcoin Cash development to such a new team that has yet to establish itself with a proven track record, or presented the greater community with a solid roadmap for the future. Below are some charts that help compare the github activity between Bitcoin ABC and BCHN over the past 42 weeks. The BCHN data starts from the point when the two codebases truly started to diverge:

Below is a chart comparing the number of commits between the two repositories over the same period of time:

As you can see, after an initial burst of activity for BCHN, the number of lines added or removed, and the number of commits, have drastically gone down over the past 12 weeks. Here are the averages for lines of code added, removed, and the number of commits over that same 12 week period:

I can understand if people think this article is meant to be an attack on BCHN. But all I'm trying to do is point out some data. The purpose of this article isn't to denigrate those who are working on BCHN, but to tell the BCH community that we need to consider all the facts as we approach this November hard fork. Why not give ABC an opportunity to show what they can do with proper funding? Why not let BCHN continue to build their reputation and challenge ABC when they've proven themselves? I believe the best case scenario would be a combination of the IFP and the donation model. Together they can be a killer combo that allows Bitcoin Cash to thrive with greater competition between all nodes.

35
$ 15.94
$ 5.00 from @maff1989
$ 4.84 from @TheRandomRewarder
$ 1.00 from @SeanBallard
+ 8
Avatar for Cain
Written by
4 years ago

Comments

Why not give ABC an opportunity to show what they can do with proper funding?

Because more funding would exarcebate their already existing behaviours - they have shown very clearly that their words (we want multiple node implementations, for example) doesn't match their behaviour.

More money would mean further moving in the direction of their behaviour, not the direction of their stated goals.

Bitcoin Cash is the name of the cryptocurrency we all love to use here on read.cash and the network it is transacted on [...] Bitcoin ABC is the name of a specific full node implementation that runs the Bitcoin Cash protocol

As of november 15th, this will no longer be true, as ABC will implement the coinbase rule which does not have ecosystem consensus. As a result, they will split the network and will get to try out their experiement on their own chain, for better or worse.

Read.cash have already made it clear that they are following the non-IFP chain, so given the known circumstances I find the above quote inaccurate for the vast majority of the readers, although one could argue that it is technically correct at the time of writing.

$ 2.00
4 years ago

As of november 15th, this will no longer be true, as ABC will implement the coinbase rule which does not have ecosystem consensus. As a result, they will split the network and will get to try out their experiement on their own chain, for better or worse.

This is dishonest. Not implementing the coinbase rule also does not have ecosystem consensus. So the anti-IFP faction will also split the network, to do their own social experiment on their own chain.

$ 0.00
4 years ago

The anti-ABC team has begun to make dishonest arguments of late. It saddens me. In this false claim they say ABC will "not have ecosystem consensus". That's an interesting new term to apply to a fork because it is important, but not how the "winner" of a fork is decided. Miners (not the ecosystem) will determine which fork is splitting off and experimenting on their own chain. It appears BCHN will lead BCH after the fork, but we do not know that yet. Pretending they do know now is dishonest. Some have been making that dishonest claim since well before it was a likely outcome. That is the usual social engineering strategy for fooling the community. It may have worked so well this time it may turn out to be true in November.

$ 0.00
4 years ago

you will sit on november 15 playing with yourself, thinking you are the best. when the clock strikes 1200 pm utc the talking stops.

now just think what you will do if your side is wiped out. dont think all will go your way just be prepared for the worse outcome. be such a waste of time if all falls apart.

enough talking on the matter action is needed.

do you walk the walk? or just talk the talk?

peace, goodluck. you will need it after the wipeout.

ps we are pro ABC.

$ 0.00
4 years ago

We? That made me curious, so I looked at your profile, and you made the account and answered this, 6 hours ago. Since there is no articles, bio or backstory, let me just ask the question instead of making unnecessary assumptions:

Who are you?

For reference, I have been walking this walk for months now, so come nov15 there's no change to be done on my part.

$ 0.00
4 years ago

Consensus or not, it is not the code but rather the network decision. Everyone has their own move. So let's see on November 15th. If ABC does not get the consensus then they will lose the ticket and they will actually the one with most damage. I respect both teams and wish both will win. However, I do think IFP makes more sense and I will support it, indirectly support for developers, who will carry the network forward. I also respect anyone who stay with the existing one. Everyone has their own preference but that doesn't mean the other is wrong. Wish all good luck!

$ 0.00
4 years ago

Very well said. BCHN is a copy of ABC's work and their team is new and untested. After they prove they can do the work ABC has been doing for all the nodes to copy (which ABC mostly adapted from BTC's Core team), I would feel better about handing BCH over to them. Instead, most of the community appears to be ready to support the anti-BCH troll army's plan to remove ABC from BCH and go with the anonymous new leader and his/her untested team very soon. BCHN is supported by anti-BCH forces, but they do sound great and I hope they turn out to be great.

$ 0.00
4 years ago

Hello,

So no matter what happens Bitcoin Cash will remain Bitcoin Cash? https://read.cash/@SolarPhasing/after-the-bitcoin-cash-november-15-fork-what-28deac4f

I'm just not a specialist and I think that some people have questions.

$ 0.00
4 years ago

Based on past forks like this, there will be most likely be two branches both arguing that they are the real bitcoin cash for a period of time. It would be advisable to read opinions and advice from both sides in addition to paying attention to what markets are saying. In any case, it is most important to be sure you control your keys and understand what any action you take may be doing.

$ 0.00
4 years ago

Writing this kind of article need much knowledge about that. I don’t want to comment without understanding anything. People who commenting unnecessary, stop it. Don’t do it. Don't ruined the looks of this article. I also don’t have any knowledge about crypto. So I try to read after then leave.

$ 0.00
4 years ago

This is starting to get pathetic. On both sides. Number of github commits doesnt mean shit. If you do things right the first time you might have less anyways. Its a stat that is poorly sampled and easily faked.

$ 0.00
4 years ago

This is gold. You said you are not a software engineer however the level of details are top notch! I know ABC has not been transparent, however given they are open source, it is very easy to inspect their codebase and activities. If you don't mine, it would be beneficial to publish a monthly report like this one for the community awareness? They should come from an independent party. I know the tip is not worth it, but it is worth knowing how ABC is doing after having the IFP. They surely will do better, and the public should be well aware

$ 0.00
4 years ago

I'd be interested in a monthly report for the state of the ABC network after the nov 15 split.

$ 0.00
4 years ago

They do claim the spending of the IFP will be transparent. Their code work is also transparent. If they do those things, I think asking for a monthly report as well is mostly an effort to waste their precious coding time. I hope the do what they said they would do. When those opposed to a team's effort request extra reporting is is usually grasping for information to be used for attacking them.

$ 0.00
4 years ago

You might want to re-look at the context. We're talking about a report that

should come from an independent party

Specifically, I'm voicing my interest for a report by someone like @cain.

$ 0.00
4 years ago

My mistake. That would be nice. @Cain is probably not qualified to report on the work they do or don't do during a month. I am sure you will get biased opinions from people with various personal motivations. If there was a trustworthy independent party (both sides trusted) we might not even be in this mess. I would love to see that happen for both team's progress.

$ 0.00
4 years ago

Good article

$ 0.00
4 years ago

Wonderful article about this... Thanks for your article

$ 0.00
4 years ago

Amazing one

$ 0.00
4 years ago

Next up is Bitcoin Unlimited. <snip> They previously attempted to activate big blocks on BTC but failed to achieve that goal due to multiple bugs that made it evident their code was unreliable <snip> which ultimately led to their failure to activate big blocks on BTC due to a number of bugs that were catastrophic.

Could you cite a source for this? I mean, I was around when Bitcoin Unlimited came out, and unless I had stepped away by the time this happened, I simply don't understand how I could have missed it. To be clear, by the time I stepped away, Gavin was done with the drama and no longer involved with any active BTC project as far as I could tell (he was not only out of Core, but also out of XT).

$ 0.00
4 years ago

Cool, thank you. I think I vaguely remember that. I don't think it really has much to do with why big blocks didn't happen.

$ 0.00
4 years ago

?????????????

If you don't think the leading big block implementation giving the ammunition to the small block camp to say "see? these big blockers can't even walk with their own two legs without tripping!" had anything to do with big blocks not happening then you are simply not worth listening to.

$ 0.00
4 years ago

Bitcoin Unlimited was never intended to force big blocks, it required signaling that wasn't materializing even prior to that issue (much like the original IFP signaling didn't occur). BitcoinXT would have forced the support, but it clearly would have been orphaned to death without a hard fork. Personally, I think there wasn't a hard fork because miners didn't want to take the risk to challenge the status quo. However, the fact that miners still haven't followed ABC to provide ongoing majority hashrate support of big blocks even after it was proven arguably safe to do so indicates that they are following the money. To that end, I don't think the money would have said anything different a couple years earlier, so that particular failure and any ammunition it provided seem pretty moot.

$ 0.00
4 years ago

There was overwhelming signaling in favor of big blocks and BU fucked it up

You're terribly uninformed

$ 0.00
4 years ago

As I recall, there were an overwhelming number of nodes running BU (I was amongst those running it and experienced relevant DDoS attacks because of this), but the in-block signaling that would have triggered the fork was underwhelming (or perhaps the information on bitcointalk was already too censored and I was looking in the wrong places). Your most recent article is specifically about sybil attacks and even suggests that the "powered by BCHN" signal may be worthless, but you certainly understand that node count is even more worthless.

$ 0.00
4 years ago

Thanks for some explanation about BCH Nodes

$ 0.00
4 years ago

Nice one

$ 0.00
4 years ago

🤷‍♂️

$ 0.00
4 years ago

Educational post. I learned a lot from reading it.about what the difference is between Bitcoin Cash and Bitcoin ABC.

$ 0.00
4 years ago