This is a question that was asked in a public talk by one of the most widely known bitcoin proponents and popularizer, Andreas M. Antonopoulos. His books are bestsellers and true gems in this area. I very much like and recommend two of his most famous works: The Internet of Money and Mastering Bitcoin: Programming the Open Blockchain

Back to the subject of this post. The question was basically this:

“Right now we know that bitcoin has the largest network effect. So, in the event of a contagious hard fork, how likely is that the bitcoin becomes obsolete as the main currency and other currencies take over by far?”

You can watch his answer on youtube, or simply read what he said below (all the emphasis are ours).

Here’s the answer:

“That’s a very good question. How likely is it that bitcoin becomes obsolete? I don’t think it will become obsolete. I think if it faces a contagious hard fork, this is an example of things to come.

Bitcoin will be attacked. It will be attacked through its mining, it will be attacked through the network, it will be attacked legally, it will be attacked in every possible way. If you don’t think bitcoin is going to be attacked, you misunderstood what this is about.

You don’t go and poke 20 trillion dollar industry and go ‘Hey, we are gonna disrupt you.’ And then wait for it to roll over. This is offensive to a lot of governments and a lot of very very rich institutions, and there are a lot of people who don’t want to see bitcoin succeed because it is decentralized and they are going to attack every aspect of it. Every aspect of bitcoin will be attacked.

So, if a fork happens we get to learn what happens when a fork attack occurs and we learn how to defend against attacks. Make no mistake. Anybody who walks into this thinking that a fork will be unopposed is going to very quickly discover that this will be a battle on all fronts.

Day 1: ‘We’ve achieved 51 percent. We are now going to fork bitcoin.’ Kind of seems like ‘Hey, shipping date is here. Our works is done.’

Your problems are just about to begin my friend. You launch a 51 percent attack? That means you are seven blocks ahead every 24-hour period. If you can sustain it. But inevitably the two sides are going to attack each other. They are going to attack each other on the network, they are going to attack each other with denial of service attack (DDOS), they are going to attack each other with hashrate, are they going to attack each other publicly, privately, anonymously, in every possible way and immediately.

Every bug in the software will get poked and then poked again. And if you try to fix it, you’d better write that code well because if you put another bug in, that’s gonna get poked too. And then it becomes a battle about who has the best software development team and how quickly they can maintain that code and keep uptime because that race is only 7 block wide.

I don’t think some of the people who are threatening to do hard fork of 51% have thought clearly about the implications of what happens immediately afterwards. This is not going to be an easy game. It’s going to actually allow bitcoin to test all the possible attack scenarios, on nodes, on networks, on relay networks, on hashing, transaction malleability, replay transactions and everything else.

What would come out of that? Probably a bitcoin that’s worth a lot less. Or, in my view, a technology that’s worth a lot more because it’s battled hard, and when it has come out of that it will have survived its first fork attack and we will know a lot more about what happens in highly contagious fork environments.

Etherium taught us a lot. But it didn’t teach us much about  highly contagious forks. The fork was initiated by the main development team which had more than 80% of their hashrate on their side.

The other thing to remember, and I think this is important, there is a lot of people who say if bitcoin stumbles, it’s going to be overtaken by one of these other currencies. It’s very important to not mistake smooth sailing for good sailors. Right? In order to have scaling problems, you first need to have scale. In order to have governance problems, you need to have a controversy to govern over. Right? And everything is hunky-dory kumbaya until you have 20 billion dollars on the table and then the long knives start getting sharpened…

…And you can then say, ‘Oh, it’s not what it looked like. Don’t pay attention to the stubbing, pay attention to the fact that we all came together to stab together’…

…The point here is that what’s happening in bitcoin now, isn’t unique to bitcoin. If one of the other currencies gets to this scale and has to handle this many transactions, they have a scaling problem which they are going to have to resolve. There will be differences of opinion as to how to resolve that. Some approaches will lead to massive centralization and a takeover by miners.

Some approaches will lead to failures in architecture and software. These problems will repeat for every other currency. These are the rites of passage. You first have to grow up to face them, right?

And so, the big advantage that many of the other block-chain based currencies have is that they can look at bitcoin, watch what happens, and learn these mistakes cheaply, so that they don’t have to repeat them expensively. Now, how many of the block-chains are actually doing that?

Not many. Because for the most part they are too busy going: ‘We are the best. We are going to win next.’ Right? And not paying attention to the fact that these exact same problems are going to exist in their own blockchain. There are no easy answers.”

To my mind, his answer was very encouraging, in the sense that attacking bitcoin at the current phase of development is not an easy task. On the other hand, it is obvious that there will be some kind of confrontation in the future with more or less uncertain outcome. But from current perspective, bitcoin’s fundamentals are pretty strong to me. What are your thoughts and dilemmas? Please share them in the comment section below.

As a newcomer to bitcoin and blockchain technology, I was interested in learning a bit about the announced lightning network that is to be Incorporated in the future bitcoin network. You too may be wondering what’s the impact of lightning is, what’s segwit has to do with it, how will it affect transactions, etc. So let’s dive in.

The Lightning Network has been introduced as a key feature that will help scale the Bitcoin network. It would enable for many more new users in the years to come. The fundamental concept is to put a caching layer on top of the block-chain. This caching layer would allow users to send end receive transactions with each other, avoiding each and every transaction to be broadcast for miners to confirm and everyone to see.

This was a great news for the development community of bitcoin. This solution, which introduces another layer on top of bitcoin’s, is not so great for the miner community, as they view this idea as a threat in the long term. They may lose money for transaction fees, as the transactions are going to be processed within the Lightning Network and not within the blockchain.

Lightning Network in More Detail

The following is an excerpt from several talks given by one of the most famous bitcoin expert and promoter, Andreas M. Antonopoulos. You can watch the entire video on Youtube. (I’ve transcribed a part of it for your convenience, for example if you don’t have time to go through the video and you just want to skim and catch a glimpse of the meaning. I apologize up front if there are any typing or other mistakes!)

“Lightning network involves local validation of the same consensus rules as bitcoin. It has to be the same consensus rules.

But you get to earn fees by committing funds into a channel. That sounds very much like proof of stake to me.

I think it represents a tremendous opportunity for users who want to run a bitcoin full node. If you want to run a bitcoin full node it takes quite a lot of commitment and data storage and CPU and RAM and band-width.

Not many people do that, probably about 5-15,000 users….”

“It takes a big commitment in resources and you don’t get paid to do this…”

“Clearly incentive matters. Lightning is one way we can incentivize running full nodes, validating nodes, and also for archive nodes potentially. That’s going to be a really important development in bitcoin and I am very much in favor.

Now, you would think that a group of miners that run nodes that already collect all transactions, already have to be fully validating nodes, would look at lightning network and go:

Hey, we can earn more fee using the same infrastructure by running lightning nodes. We should be hubs for payments. We could extend into this space.

Why are they not doing that?

Because lightning network and running full nodes is software and it requires maintenance, system administrators, and security professionals, and configuration, and upgrades, and all of the kinds of things that you can’t simply get someone to rack and mount hardware to do. It’s an alien world. It’s not better, it’s not worse, it’s just on the other side of that culture divide.

That’s goes a long way to explain why miners aren’t jumping up and down and saying:

Hey, yeah, I want to run lightning. We are going to be best positioned to be running these hubs.

Because it’s not the same as racking mining hardware.”

Question: Is it actually possible for me right now to have my first experience with making a lightning network transaction?

“Without a segregated witness which is an architecture change in which the transactions are organized, lightning can work but it removes some very usable features.

When you are using bitcoin you don’t have to be online in order to receive bitcoin. With lightning you do have to be online in order to initiate, and then you also have to remain online and monitor the channel to prevent the other party from unilaterally closing the channel in a way that cheats you out of your balance.

And lightning has this fascinating market-based game theory where your software is watching the channel and if the other party tries to close it unilaterally to steal the balance, you have a certain time, about 8 hours to transmit a competing transaction that actually takes everything.

So the punishment for trying to cheat in lightning is you lose everything.

But in order to apply that punishment so that the other party doesn’t try to cheat you have be online. Now, if segwit is passed, there’s another way to do this which is really fascinating where you can outsource for a fee the monitoring of the payment channel to a third party who knows absolutely nothing about the channel.

They don’t know how much money you have in the channel, they don’t know who the channel is with and they can monitor for you. And you don’t have to be online anymore.

And if someone tries to steel from your channel, they get a cut of your penalty, make a bit of money on that and you don’t have to remain online anymore. But the only way do that is if segwit is running.

So lightning with segwit is much better for privacy and for security than lightning without segwit, even though we can do it. It’s much more usable, it’s much more straightforward, it’s much more easy for the users, because then than can be handled transparently.

But if you want to try it out, you can try it out on test net, on test net. I’ve already been running lightning for now 5 months. What happened in the 2 years since it was first discussed, was they built it and they built it with full entwined multi-hub onion routed encryption that will increase bitcoin’s privacy substantially and make bitcoin a much more anonymous network, much more difficult to analyze, which is fantastic.”

How to Run a Full Bitcoin Node?

Now, as indicated above running a full node is an interesting possibility. I haven’t considered it as of now, but maybe I will in the future. So what does it take to do so?

These are the requirements to run a full node, as stated on the bitcoin.org website:

First of all, you need to have certain hardware, a weak computer won’t do it. You can try but you would have to spend some time dealing with possible issues.

Here are the minimal requirements:

  • Desktop or laptop computer running a modern Windows, Linux, or Mac OS X operating system.
  • 125GB disk space (which is for the size of the blockchain itself and some room to grow)
  • 2GB of RAM
  • Your internet connection should have a minimum of at least 400 kilobits or 50 kilobytes per second of upload speeds.
  • The download is not that crucial, and you will download about 20 GB per month, and the first time you download the full node about 100GB.
  • 6 hours/day that your full node can be left running. (You can do other things with your computer while running a full node.) More hours would be better, and best of all would be if you can run your node continuously.
  • Full node would likely have the amount of 200 GB or more in uploads every month.

At the beginning of bitcoin’s existence, there were no transaction fees. In fact, donations to the miners in a form of transaction fees were optional. If the person sending bitcoins wanted to pay some transaction fees, they were able to do so. As a result of their payment, the transactions were processed faster.

When it comes to wallets, each wallet had its own fee for each transaction, the one that the developers believed was right.

For example, in the early phase of development, Bitcoin Core Wallet changed its default fee several times per year as the exchange value of bitcoin increased. From the initial 0.01 BTC, it soon went to 0.0001 BTC.

All good wallets use a dynamic fee system with algos designed to define a default fee considering that the transaction will get confirmed within a decent time window.

You may check the current time expressed in block given for various transaction fees on the following website.

The assumption, when it comes to fees, is that transactions with higher rates will be included within blocks prior to transactions with lower rates.

The wallet developers have to adjust the algorithm for fee estimation to be able to correctly predict the state of the fees, or otherwise transactions may be stuck. If your transaction has a reasonable fee, but other transactions from other users are broadcast with higher fees, you are pushed toward the bottom of priority queue of the miners.

One not so simple solution would be to update your fee as time passes, which is not easy to do. This is for example implemented in the Electrum wallet.

Or one could implement a method called Child Pays For Parent, where new transactions with larger fees are added that use the output of your low fee transactions. This essentially prioritizes the confirmation of the entire set of transactions.

The volatility of the fee market can be a problem that makes it difficult to set minimum and maximum fee levels.

If you have low priority sends, you should try to find a minimal viable fee. But this is not an easy task, especially for wallets that get a lot of low value transactions.

All providers of software for creation of transactions are competing with each other with their algorithms for fee estimates.

When considering the space on Bitcon’s blockchain, this will for sure be a scarce resource in the future.

The transaction fees are usually shown in satoshis per byte.

One satoshi is exactly 0.00000001 BTC

As an average transaction size is about 200 bytes, if one knows the current average fee in satoshis, it is not difficult to calculate your fee. Below is the current average fee as of writing this post calculated in dollars for easier comparison:

  • Next Block Fee: if you need to realize your transaction in the next block (which is 10 minutes by default). $2.58
  • 3 Blocks Fee: if you need to realize it in 3 blocks time (30 minutes). $2.37
  • 6 Blocks Fee: within 6 blocks (1 hour). $0.43

The fees in Electrum wallet can be further customized by going to “Tools — Preferences –Fees — Edit fees manually”.

You can choose what exactly you want to pay based on the urgency of your transaction. There is a helpful online resource you can use. Go to this page and choose an estimate of how many blocks your transaction may take to be confirmed versus different transaction fees.

At the moment, you would have to pay at least something like 21 satoshi per byte for a decent time.

References:

https://bitcoinfees.info/

http://bitcoinfees.21.co/

The original chain (Bitcoin) is created by Satoshi Nakamoto. Satoshi Nakamoto created Bitcoin in an attempt to help people get independent of the banking system and send and receive money without an intermediary. Bitcoin is fully decentralized in that respect.

Bitcoin cash is a hard fork of Bitcoin.

Yes, one can say bitcoin has a number of children, which in the lingo of cryptocurrencies are called forks. One of them is Bitcoin Cash. The others are for example, bitcoin gold, bitcoin diamond, super bitcoin, etc. Some Bitcoin hard forks use the term “Bitcoin” to their name (for marketing or ideological purposes), but there are other coins that don’t use the term “Bitcoin”, like litecoin (LTC).

So BitcoinCash(BCH) is just one of a number of breaks from the original bitcoin(BTC). Bitcoin cash was born on August 1, 2017. What BCH did is change only one parameter with respect to the original: the block size.

The creator of Bitcoin cash was Roger Ver. Since the inception, BCH has achieved a huge marketcap, right next to bitcoin. Had that not happen, it would likely have been left unnoticed.

The maximum block size limit in BTC is eight time larger than that of BTC. BTC uses 1 MB block size, while BCH uses 8 MB block size limit.

This type of irreversible change is what’s known as “Hard Fork” in contrast to a “Soft Fork”.

From that moment on, the original nodes of the bitcoin client don’t support the newly created BCH.

BCH is faster than BTC and some BCH lovers want to call it real Bitcoin. We believe this is not true, as hardly anything can replace the original BTC.

The increased maximum block size required people who wanted to run the so called “full node” on their computers to have specialized hardware. This would essentially mean that only miners and businesses with specialized hardware would be able to keep the full node locally.

The original bitcoin stuck with the original vision to enable all users who are willing to run a full node on their computers to do so.

This insisting on the full node capabilities is important because it is what validates all transactions and the whole chain. It is in line with the original idea of decentralization. As a consequence, most of BCH is in the hands of miners.

Eventually, you would have to judge for yourself. Learn the facts, investigate and don’t listen to people who would like you to believe in their stories. Some cryptocurrencies have strong marketing teams, which is great, but marketing alone is not enough for success.

Bitcoin Cash is being marketed as having fast transactions that cost much less than those of bitcoin. But then again, the number of transactions of BCH hasn’t reached the number of transactions of bitcoin.

What did bitcoin do to speed up their transactions? They introduced a soft fork called “Segwit”, and an off-chain solution called the “lighting network(LN)”.

You should also check the development side of the coins. It seems that the core developers of BCH would have problems keeping up with the huge base that bitcoin development team has.

All things considered, bcash is just another coin in the vast sea of altcoins. That said, I see nothing wrong keeping your bcash if you have some. As long as you know that bitcoin is the original.

At the end of the day, if I could choose, I would always go for bitcoin over bcash. Unless there is some chance to do a fast pump and dump scheme, in which case BCH is equally as valuable as any other altcoin. As a long term strategy I would always choose BTC.

Summary

As far as technology is concerned, BCH is equal to BTC minus Segwit minus LN.

As far as the speed of transactions is concerned, BCH is faster than BTC.

As far as the number of transactions are concerned BCH is better equipped than BTC. Bitcoin with its one megabyte chain size limit can allow only about 250,00 transactions in one day. Bitcoin cash with its eight megabyte chain size can manage as many as 2,000,000 transactions per day.

As far as community is concerned, BCH has smaller community than BTC.

If you own both BTC and BCH, be careful not to send bitcoin cash to bitcoin addresses and the other way around. They are now different systems with different wallets, and you may lose your money if you do so. Always double-check what wallet you are using, and to what address you are sending your cash!