After my talk in Bonn at the FOSS4G conference Aug 2016, editor Wim van Wegen asked me to write about the topic for GIM International and it was published on 6th Oct 2016 here:
Below is a copy of the original post:
What is a blockchain and how is it applicable for geospatial applications?
A blockchain is an immutable trustless registry of entries, hosted on an open distributed network of computers (called nodes). It is potentially safer and cheaper than traditional centralised databases, is resilient to attacks, enhances transparency and accountability and puts people in control of their own data. (See the last section for a more thorough explanation of blockchain technology).
As an immutable registry for transactions of digital tokens blockchain is suitable for geospatial applications involving public good or sensitive data, autonomous devices and smart contracts.
Here are some geospatial use cases:
- Public good data such as street maps, parcels, terrain models, aerial footage, sea maps – publicly available without a central hub that can restrict access to the data; reward contributors to the map with tokens; keep a public history of changes and contributions.
- IoT – Autonomous devices & apps: Devices that negotiate and pay each other, such as drones that negotiate use of air space, self-driving cars that negotiate lane space or pay for road usage, mobile/wearable devices pay for public transportation. Apps similar to Uber and AirBnb that connect clients and providers without a middleman.
- Land ownership – register land / real estate ownership on a blockchain; render corruption nearly impossible; enable people in developing countries to register land ownership themselves with inexpensive mobile devices without the need for slow or expensive overhead.
Public good data
Open Data is still Centralized Data
Throughout the past nearly 20 years, I have seen how “public good” geospatial data was originally very inaccessible to most people – whereas now it is generally much easier to get hold of. Gradually, the software to display and process the data became cheaper or even free, but the data itself remained inaccessible – data that people had already paid for through their taxes. Some national mapping institutions and cadasters began distributing the data via the internet, however mostly with a price tag. Only in recent years, have a few countries in Europe given free access to public map data. In the meantime, projects like OpenStreetMap emerged in order to meet people’s need for open data. It is hardly a surprise, that a myriad of new apps, mockups and business cases emerge in a region shortly after data is made available to the public there.
Open Data that is Truly Public
One of the reasons that this data has remained inaccessible for so long, is that it is collected and distributed through a centralized organisation. A small group of people manage enormous repositories of geospatial data and can restrict or grant access to it. As I see it, here’s where blockchain and related technologies like IPFS can enable people to build systems where the data is inherently public, no-one controls it, anyone can access it – and anyone can review the full history of contributions to the data.
Would it be free of charge to use data from such a system? Who would pay for it? I guess time will show which business model is most sustainable in that respect. It is free to use OpenStreetMap, it is immensely popular and yet people gladly contribute to it – so who pays the cost for OSM? Keep in mind, there’s no such thing a free data – the “free” open data e.g. in Denmark today is paid for through taxes. So, even if it would cost a little to use the blockchain based data, that wouldn’t be so different from now. Except no-one would be able restrict access to the data – plus the open nature of competing nodes and contributors will keep the cost as low as possible.
Autonomous Devices & Apps
Uber and AirBnb are examples of consumer applications that rely on geospatial data and processing. They represent a centralized approach where the middleman owns and controls the data and takes a significant fee for connecting clients and providers with each other. If such apps were replaced by a distributed peer-to-peer systems, they could be cheaper and give their users full control of their data. There’s already such an alternative to Uber called Arcade.City. Also a peer-to-peer market app like OpenBazar may benefit from geospatial components with regards to e.g. search and logistics. Such autonomous apps may currently have to rely on 3rd parties for their geospatial components – e.g. Google Maps, Mapbox, OpenStreetMap etc. With access to truly public distributed data as described in the previous section, such apps would be even more reliable and cheaper to run.
An autonomous device such as a drone or a self-driving car inherently runs an autonomous application, so these two concepts are heavily intertwined. No doubt that self-navigating cars and drones will be a growing market in the near future. Uber and Tesla have big ambitions regarding cars, drones are being designed for delivery of consumer articles (Amazon), drone emergency response (drone defibrillator) and footage (automatic selfie drone ”Lily”). Again, distributed peer-to-peer apps could rule out the middleman and reliance on 3rd parties for their navigation and other geospatial components.
What is Property?
After some years in the GIS software industry, I realized that a very large part of my work evolved around cadasters / parcels and other administrative borders plus technical base maps featuring roads, buildings etc. With a background in physical geography, I thought that was pretty boring stuff and I dreamt about creating maps and applications that involved temperatures, wind, currents, salinity, terrain models etc because it felt more “real”. I gradually realized that something about administrative data was nagging me – it was as if it didn’t actually represent reality.
Lately, I have taken an interest in philosophy about human interaction, voluntary association and self-ownership. It turns out, that property is a moral, philosophical concept of assets acquired through voluntary transactions or homesteading. This perspective stretches at least as far back as John Locke in the 17th century. Such justly acquired property is reality – while law, governance services and computer code are systems that attempt to model reality. When such systems don’t fit reality, the system is wrong and should be dismissed, possibly adjusted or replaced.
For the vast majority of people in many developing countries, there is no mapping of parcels or proof of ownership available to the actual landowners. Expert on cadasters Christiaan Lemmen has experience from field work mapping parcels in developing countries such as Nigeria, Liberia etc where corruption can be a big challenge within land administration. In his experience however, people mostly agree on who owns what in their local communities.
These people often have a need for proof of identity and proof of ownership for their justly acquired land in order to generate wealth, invest in their future and prevent fraud – while they often face problems with inefficient, expensive or corrupt governance services. Ideally, we could build inexpensive, reliable and easy to use blockchain based systems that will enable people to map and register their land together with their neighbours – and without involving any government officials, lawyers or other middlemen.
It has been suggested to use geodesic grids of discrete cells to register land ownership on a blockchain. Such cells can be shaped e.g. as squares, triangles, pentagons, hexagons etc – and each cell has a unique identifier. In a traditional cadastral system, parcels are represented with flexible polygons which allows users to register any possible shape of a parcel. Although a grid of discrete cells doesn’t allow such flexible polygons, it has an advantage in this case: Each digital token on the blockchain (let’s call it a “Landcoin”) can represent one unique cell in the grid. Hence, whoever owns a particular Landcoin, owns the corresponding piece of land. Owning a such a Landcoin means possessing the private encryption key that controls it – which is how other cryptocurrencies work.
In order to represent complex and high resolution geometries, it is preferable to use a grid which is infinitely subdividable, so that ever smaller triangles, hexagons or squares etc can be tied together to represent any piece of land. A digital token can also be infinitely subdividable. For comparison, a 100-millionth of a Bitcoin is currently the smallest unit – aka a “Satoshi”. If needed, the core software could be upgraded to support even smaller units.
Examples of some geodesic grids:
- Octahedral Quaternary Triangular Mesh – triangles
- Geoshash – squares
- What3Words – squares, proprietary
- GEOHEX – hexagons
What is a Blockchain?
A blockchain is an immutable trustless registry of entries, hosted on an open distributed network of computers (called nodes). It is potentially safer and cheaper than traditional centralized databases, is resilient to attacks, enhances transparency and accountability and puts people in control of their own data.
Safer – because no-one controls all the data (known as root privilege in existing databases). Each entry has its own pair of public and private encryption keys and only the holder of the private key can unlock the entry and transfer it to someone else.
Immutable – because each block of entries (added every 1-10 min) carries a unique hash “fingerprint” of the previous block, hence older blocks cannot be tampered with.
Cheaper – because anyone can set up a node and get paid in digital tokens (e.g. Bitcoin or Ether) for hosting a blockchain – this ensures that competition between nodes will keep the cost of hosting it to the lowest possible level. It also saves the costs of massive security layers that otherwise apply to servers with sensitive data – this is because of the no-root-privilege security model and with old entries being immutable, there’s little need to protect them.
Resilient – because there is no single point of failure, there’s practically nothing to attack. In order to compromise a blockchain, you’d have to hack each individual user one by one in order to get hold of their private encryption keys that give access only to that user’s data. Another option is to run over 50% of the nodes, which is virtually impossible and economically impractical.
Transparency and accountability – the fact that existing entries cannot be tampered with, makes a blockchain a transparent source of truth and history for your application. The public nature of it makes it easy to hold people accountable for their activities.
Control – the immutable and no-root-privilege character puts each user in full control of his/her own data using the private encryption keys. This leads to real peer-to-peer interaction without any middleman and without an administrator that can deny users access to their data.
Trustless – because each user fully controls his/her own data, users can safely interact without knowing or trusting each other and without any trusted third parties.
Smart Contracts and DAPPs
A blockchain can be more than a passive registry of entries or transactions. The original Bitcoin blockchain supports limited scripting allowing for programmable transactions and smart contracts – e.g. where specified criteria must be fulfilled leading to transactions automatically taking place. Possibly the most popular alternative to Bitcoin is Ethereum, which is a multi-purpose blockchain with a so-called “turing complete” programming interface which allows developers to create virtually any imaginable application on this platform. Such applications are referred to as DAPPs (Decentralized Autonomous Applications) and are virtually impossible for 3rd parties to stop or sensor.