How Blockchain.com harms the cryptocurrency community

This post has been written to draw Blockchain.com's attention to the issues of its product.

Blockchain.com (formerly Blockchain.info) was founded in 2011 and with no doubt has helped the Bitcoin community to create a block explorer and has proven itself as a valuable service. Millions of people from all over the world use their wallet. However, time goes on, Bitcoin develops, but one of the main cryptocurrency companies not only slows down the process of its development, but also discredits the usability of cryptocurrencies. Why is that? We have tried to explain that in this post.

1. Lack of Segwit Address Support

This is the most painful problem for our service. To receive cryptocurrency we use segwit addresses by default. If a customer contacts our support, we can of course change an address in an order to P2SH (the one that begins with number "3"), but it reduces the usability of the service. Why don't we use P2SH by default? It is less beneficial both for us and for our client, as the cost of the consolidation of the transaction is taken into account when calculating the exchange rate. With a high network load and with orders for a small amount, the commission becomes significant. To compare — segwit addresses (or Bech32 that starts with "bc1") are 15% more advantageous than P2SH.

Segwit (Segregated Witness) was activated in 2017. At the end of the same year the CEO of Blockchain.info announced its support starting from (most likely) 2018. We can understand certain fears at the beginning of the way, as the company's security system is for sure not that bad. However more than 2 years have passed since then and that is a lot for the crypto world.

2. Using Legacy (P2PKH) Addresses Only

As of now only a P2PKH address (that starts with number "1") is used in the Blockchain.com wallet to receive cryptocurrency. Why is that bad? It is unfavorable for the users of this wallet. They spend 29% more than those using P2SH addresses.

3. Confusion with PAX and USD Digital

Changing the names of the currencies from one to another only in a Blockchain.com wallet is a rather strange decision. The key problem is that nowhere in the wallet are there any clues that this is an ERC-20 PAX token on the Ethereum blockchain. New wallet users will most likely be confused by this.

We sometimes get questions: "do we have USD Digital to buy or to sell?" and our technical support is forced to explain that it is PAX.

4. Incompetence of mobile application developers

In fact, this post was inspired by this particular problem. We will not focus on performance or shortcomings, we will just tell you about the main issue.

It is worth starting with questions. What problem does a mobile application solve when a person needs to pay for something? What is the best way to fill in the recipient address and the payment amount on the smartphone? Answer: QR code.

Scanning the QR code in this application is done not just badly, but also in such a way that creates maximum number of problems for a user.

The fact is that in the Android application when scanning code with the bitcoin:<address>?amount=<amount>, the value of the amount to be inserted in the corresponding field may differ from the encoded value by 1-100 Satoshi! Our team simply does not understand how this was implemented.

Do not believe? Try it yourself. Amount to insert — 0.00143452 BTC


bitcoin:3LAxDr5CxwBJT4tCejV8rpAXETz7bUH3tG?amount=0.00143452

After receiving information on such a problem from our users, we began to monitor updates to this application. After 2 updates had come out, the problem was not fixed.

And what about iOS? When scanning a QR code with a sum in iOS , the sum value is simply not inserted into the field! No comments. Bravo!

Blockchain.com wallet has different currencies, not just Bitcoin. Let's try Ethereum. You want to scan QR codes for Ethereum payment with the relevant sum? There is no such possibility. The application will respond with an "invalid address" to all such codes:

  • eth:<address>?amount=<amount>
  • ether:<address>?amount=<amount>
  • ethereum:<address>?amount=<amount>

For BitcoinCash, the task of identifying the amount in the line is also an impossible task. Line with wallet bitcoincash:qpk0689rt3xkzlw8ap4yy72amp2zpws6zujkcgavpt considered true, but with the amount bitcoincash:qpk0689rt3xkzlw8ap4yy72amp2zpws6zujkcgavpt?amount=0.1 — "Invalid address"

But there are applications that understand all such formats, or at least one of them. The string parsing function is pretty trivial and should not be a problem for the developer.

This article has been written based on the experience of using the application of the members of our team (who have used it for many years) and our users.

We encourage Blockchain.com to fix at least 3 of the 4 problems that we covered in this article. We still hope that the company will work on the bugs and will earn back trust of its users.

In the meantime — use other applications! ;)

Recent posts