What is Blockchain, and how can it be used for mapping?
Blockchain has been one of the hottest topics in tech for some time – you may have heard it’s (in)famous cryptocurrency, Bitcoin. It is one of the most innovative and ingenious ways of passing information from A to B in fully automated and safe manner; the information would have to be verified by thousands of distributed computers, and tampering with information would be virtually impossible. The underlying technology is extremely relevant, perhaps even disruptive for many applications outside of finance. We’ll explain how it all began, how it works, then discuss a few use cases of blockchain for mapping.
How blockchain started
The research behind blockchain goes back to 1991, when they were called digital time stamps.
The two researchers, Haber and Stornetta, were trying to come up with a solution for the danger of having files stored on personal computers and how easy it would be to tamper with them. Instead of having to trust a central authority, the system could have many dispersed but interconnected copies of a shared ledge with digital timestamps. This would make it impossible to backdate or tamper with the documents, as any changes to a single document would invalidate all of the other copies.
However, it was only in 2009 when the still anonymous Satoshi Nakamoto went on to create Bitcoin that blockchain came to be known around the world.
What is blockchain?
Simply put, blockchain is a chain of blocks that contains information. It’s a distributed ledger that is completely open to the public, and once something is recorded in a block, it becomes very difficult to change it.
It starts with a single block, called the genesis block. The data stored inside a block depends on the type of blockchain. For transactional purposes, it may store details such as the sender, receiver, and the value of the transaction.
All blocks will have a hash and previous hash. It is an alphanumeric value is uniquely calculated once the block and its contents have been created. It acts as the ‘digital fingerprint’. If any information inside the block is changed, then the value of the hash will also change.
Inside of each block is the hash of the previous block, and this is what effectively creates the chain and it’s also what makes blockchains secure.
As you can see in this quick illustration, we have a chain of the first three words of Lorem Ipsum, and each block has the hash of the previous hash. Notice how the genesis block has no previous hash. Once the 1st block’s hash has been changed, it no longer matches the 2nd block’s previous, and this will invalidate the entire blockchain. As more data gets added to the blockchain, the more secure it will be. In real-life scenarios, block hashes have to meet specific difficulty requirements, but even that isn’t enough to prevent tampering, as computers could easily go through thousands of permutations per second until it revalidates itself after tampering.
One mechanism that mitigates this is proof of work, and it essentially slows down the addition of new data. If one block is tampered with, all of the previous hashes will need to be re-calculated.
You may have also heard of blockchain being powerful and secure because of decentralization. Instead of using a central authority to manage the chain, blockchains use a peer-to-peer (P2P) network. Similar to torrenting, you download a file from multiple peers who may have it, instead of a central server. Everybody is allowed to join in, and when they do, they receive a full copy of the blockchain.
When a new block of data is created, it gets sent to everyone in the network, and each ‘copy’ or rather, node of the blockchain has to verify it. The nodes will then come to a consensus of whether the new block is valid or not. The blocks that have been tampered with will be rejected, and if the block is valid, all of the nodes will add the block to their own blockchain. Since everything is shared on an immutable ledger, the information is on a blockchain is open for everybody to see. Hence, blockchain is probably one of the most transparent processes to date.
How can we use blockchain for mapping?
Supply-Chain Management
Using blockchain, there is a potential to track where everything came from. For example, IBM has developed blockchain technology for some food use cases. Consumers will be able to see exactly where their food came from and how it got to their table, ultimately increasing transparency, ensuring safety, and perhaps even gaining an awareness of the carbon footprint of their diet.
IoT
IoT is a combination of software, electronic, and a network that facilitates an exchange of data and interaction between objects and mechanisms. In the case of sensors, the application of blockchain will make historical readings nearly impossible to tamper with. The use of smart contracts will mean faster interaction between devices, eg. smartphone to bikeshare
Property Rights
As property rights and titles tend to be susceptible to fraud and dispute, having publicly-accessible and distributed ledgers can make many processes more efficient. It would also be useful for documenting damage, repairs, or improvements to the home, with no way of backdating the data once it is entered.
Spatial Verification
In general, blockchain can be used for spatial verification, confirming that people are where they say they are, and when they are there. Furthermore, the proof-of-location (PoL) protocol can use smart contracts to automatically do some validation for geographic data of objects. Crowdsourced mapping, such as on OpenStreetMap is often problematic, especially with a lack of permanent IDs and is subject to vandalism.
You can also read more about how Streetcred uses blockchain to tackle open point of interest (POI) data.
Challenges for Mapping with Blockchain
One of the main challenges of blockchain is that it requires a high level of trust between the parties. In the case of some organizations, valid participation is awarded by getting paid a small amount of tokens, which become more valuable as time goes on.
Some mapping data by nature is fluid and even subjective, and cannot simply just be “verified” or “rejected”. It will definitely be interesting to see if blockchain can be used while still granting fluidity and still accounting for the mapping needs of everybody.
There also is ongoing discussion of how we can use blockchain but still satisfy the right to be forgotten, as many of the suggested solutions would sacrifice many of the fundamental benefits of blockchain.
What do you think of Blockchain and its applications?
Further Reading
Want to know more? Here are a few links to look through.
Try a blockchain demo and see the code in action:
https://blockchaindemo.io/
A long and interesting read about the FOAM Proof of Location protocol:
https://foam.space/publicAssets/FOAM_Whitepaper.pdf
Learn to code Ethereum DApps by building your own game:
https://cryptozombies.io/