Today March 11, 2021 marks the 10th anniversary of the launch of the first bitcoin wallet compatible with Android, when on that same date but in 2011 it was proposed by a developer in the BitcoinTalk forum.
The developer Andreas Schildbach published at that time the first version of a Bitcoin wallet for Android, which to this day is still one of the main operating systems of devices mobile phones, if not, the most used.
The developer continues to maintain the portfolio, which we can download in its most recent version from the Google Play store on our mobile device.
In the publication of this version, initially experimental, Hal Finney, recognized pioneer of Bitcoin and the first person to receive a transaction of this protocol, commented that By November 2010, several users created a fund of 1,760 BTC to reward whoever created a portfolio of Bitcoin compa tible with Android.
Although it is not clear if Schildbach or another developer received this reward, the truth is that their version was the first Bitcoin wallet to be implemented on Android. The 1,760 BTC would be worth almost USD 99 million as of today , according to the CriptoNoticias price calculator.
Does Bitcoin and its history fit on my cell phone?
The main challenge for a mobile wallet in 2011 was the inability to save the entire Bitcoin blockchain , the history of your transactions, on a device with such a small storage and processing memory.
“Do you know how to store the blockchain elsewhere?” Asked Hal Finney referring to which space would be used from this wallet to host the Bitcoin blockchain.
Likewise, the speed of synchronization of the portfolio with the chain was a point of concern among commentators, because if in that case a device could not synchronize, could reorganize the chain to your liking and conflict with the consensus of the network.
«Yes, the management of the blockchain in bitcoin merits work. It’s not just storage. It is to handle the forks or reorganizations of the chain. I’m working on this first because of the chances of the chain reorganizing if we keep a permanent record of the chain, “commented user Mike Hearn on BitcoinTalk.
One user asked if it was necessary to have all the blockchain at the time of spending the bitcoins, to which someone answered that not really, although they do need it to know how many bitcoins they have and can spend.
The same user who offers this answer raised the idea of a “remote blockchain”, that is, a server that could connect to the blockchain and transmit it to the Bitcoin client on Android, being available just by connecting to the internet.
The first bitcoin wallet It was developed by Satoshi Nakamoto and it worked only on desktop computers. The particularity of the Bitcoin Core wallet, which could be said to be the official Bitcoin wallet, is that it needs to completely download the history of the network, constituting a full node.
At that time, the blockchain weighed less than 5 gigs, although it still took a long time to sync. As well as now it also needs to sync every time it is initialized, which is why it is impractical to disconnect a node from Bitcoin if it will be used frequently.
The developer Mike Hearn proposed in the next version of the Bitcoin Wallet (bitcoin wallet for Android), to use a mechanism known as « Bloom Filters »(Bloom Filters) to handle synchronization with blockchain more efficiently.
Hearn argues that the thin client portfolio ( Simplified Payment Verification or Simple Payment Verification), download the blockchain and verify that the bitcoins in the wallet have not been spent . If they were not spent, they discard the data they just downloaded. This process is not efficient , he points out.
Bloom filters solve this. When they connect, the client creates a data structure (the filter) that represents the wallet keys and sends it to their remote peers (on the P2P network). These peers will then only be able to send transactions that match the filter over the network.
Mike Hearn, Bitcoin developer. Developer
For Hearn, the fact that bloom filters are probabilistic simplifies the handling of the Bitcoin data.
As explained by the educational site Bit2Me Academy, the filters of bloombring benefits to Bitcoin in the synchronization of wallets of thin clients (SPV).
The Bitcoin system uses bloom filters to speed up the synchronization of wallets or SPV purses; which allow them to specify only the transactions for which they want to receive system updates. Forming a set of transactions that can be transmitted to the complete nodes of the network. There you can check through these filters. Then receiving confirmation of whether or not this set of transactions has been added to the chain. No need to handle a complete copy of the blockchain.
Currently other types of data filters are used in Bitcoin. In 2019, a new data structure was integrated via BIP-158, which can be found on the Bitcoin Core GitHub. But the initial solution ended up giving impetus to the original Bitcoin mobile portfolio and with it, hundreds of portfolios and projects that were developed until reaching today’s innovations.
For example, as we reported in CriptoNoticias, there are already projects that allow you to run a full node from a mobile device. Likewise, other wallets also allow you to run Lightning nodes, expanding capabilities and bringing Bitcoin to users of worldwide, in the most popular mobile app stores.