Coinbase Wallet — Crypto Wallet & DApp Browser

Published:

Wallet Logo

This Android app was first launched on 20th September 2017 and currently has more than 500000 downloads, a 3.8 stars rating from 6436 users and the latest release is version 22.3.311.

Our last analysis was done on 20th November 2019 based on data found in their Google Play description and their website.

We found these ways of contacting the developers:

Help spread awareness for build reproducibility

Please help us spread the word, asking Coinbase Wallet — Crypto Wallet & DApp Browser to support reproducible builds via their Twitter!

Disclaimer

The following Analysis is not a full code review! We plan to make code reviews available in the future but even then it will never be a stamp of approval but rather a list of incidents and questionable coding practice. Nasa sends probes to space that crash due to software bugs despite a huge budget and stringent scrutiny.

Do your own research!

Try out searching for "lost bitcoins", "stole my money" or "scammers" together with the wallet's name, even if you think the wallet is generally trustworthy. For all the bigger wallets you will find accusations. Make sure you understand why they were made and if you are comfortable with the provider's reaction.

The Analysis

Coinbase Wallet — Crypto Wallet & DApp Browser certainly sounds a lot like this other Coinbase wallet we reviewed here but this is actually a second wallet endorsed by the same Coinbase.

From their FAQ:

Wallet is a user-custodied digital currency wallet and DApp browser.

so for us the next step would be to find the source and reproduce the app …

On the same page there is a link to GitHub but none to the actual repository. Neither is there on the Playstore description.

If we filter the list of repositories by those created by CoinbaseWallet, we get this list of repositories that most lack a description or a README.md.

Here is the list as we found it with the only three descriptions underlined in green, none of which sounds much like an Android wallet:

list of repositories

Tiny correction … some of the projects have empty READMEs.

So from the names, the only two repositories that might contain relevant code are CBCore and CBHTTP, both of which contain a folder called android.

An Android app has an ID and this ID has to be referenced in its source code, so at this point we search for this app’s ID org.toshi within the organization which yields zero results.

Searching all of GitHub we do find the string org.toshi here for example but as this is not linked by the company and two years old, we will not try to build it to verify a recently updated app.

This is the point where we come to the verdict not verifiable given there is no public source code to build the app from.

Verdict Explained

Not verifiable: No Source Code found

This verdict means that we could not find any source to compile the app from. Internally the company might do everything right but as we can't verify it, there is nothing protecting the user from an exit-scam where the provider releases an app that leaks the keys to the servers.

The app cannot be independently verified. If the provider puts your funds at risk on purpose or by accident, you will probably not know about the issue before people start losing money. If the provider is more criminally inclined he might have collected all the backups of all the wallets, ready to be emptied at the press of a button. The app might have a formidable track record but out of distress or change in management turns out to be evil from some point on, with nobody outside ever knowing before it is too late.