Blockchain and the desert of the real

in #blockchain7 years ago

Forget fake news, the looming issue threatening the long-term fabric of our society is fake reality ( also known by one of my favourite words verisimilitude ). In the future we could face the position of not knowing what we are seeing with our sensors is actually a true representation of what is happening remotely.

With the advent of technology such as deep fakes, where machine learning is used to transpose the face of one person onto another's body not for one picture but for the entire duration of a video clip.

(see the following video of President Obama

Also with Facebook producing technologies such as lyrebird.ai, voice impersonation will be a simple as training an ai with a few paragraphs of text to realistically simulate the speech of any person.

The evolution of this technology is so fast that in a few years that we face a looming crisis of fake data becoming very difficult to distinguish from real data.

And fake data given to the analytical engine will result in fake insights and (much worse) initiate an incorrect or destructive response to a phantom incident that could be catastrophic for public safety.

So how do we combat this? How can we trust what our sensors are detecting for us to keep our cities and countries safe?

Here is a sketch of the requirement here.

  1. We need a system which can accommodate the vast collection of sensor data. (High scale transactionality)
  2. This system must be tolerant of multiple nodes that we may not trust. (Decentralised)
  3. It must also allow new nodes of information to join the network instantly, without permission (think of a citizen phone being used a device to gain situation awareness of a nearby incident). (Permissionlessness)
  4. Whilst accessing that data, the system must respect citizen anonymity, with a full proof a that. (Anonymous)
  5. All the data collected needs to be verifiable (Provable)
  6. The system must be resistant to malicious actors who join the network to subvert data (resistant to bad nodes making up fake data )

Luckily a set of crypto-libertarian-paranoid-techno-geniuses have created that system. Its name is. ... (no drum roll here - it's in the title folks)... Blockchain.

The framework of blockchain is essentially a solution to the Byzantine general’s problem in distributed systems. The problem can be stated as, ‘How can I trust this system to reliably communicate with my friends when I don’t know who I am dealing with, I don’t trust that my messages will be relayed honestly and I know bad actors are working to subvert this system’?

As you can see above this very easily applied to the context of a city trying to bring in the sensor or other data from edge devices over wireless networks which can be prone to intermediation attacks.

Bitcoin (the famous digital cryptocurrency and first complete implementation of these ideas) solved this by having three parts:

  1. A Blockchain data structure which is a public ledge of all events.
  2. A distributed set of peer nodes who share information and each keeps a copy of the blockchain so that it is totally decentralised and there is no point of attack to fake the blockchain (i.e. fake the truth).
  3. A verification method to make new blocks which are reinforced by game theory to incentivizes all nodes to behave and verify correctly (maintain the true record)

Blockchain addresses this by a data structure that is a public record (or ledger) of all transactions (or recorded messages) in a system. The data structure is organised into a block with the previous block being referenced in the next one.

The reference is a hash of the previous block which is a checking mechanism to determine if the previous block has been tampered with. The longer the height of the block the longer the record of verified truth. However, this alone does not proof of data verification. This true ledger needs to be distributed to everyone so that it is a common source of truth of what has transpired is known to all. In a system where you may not necessarily trust everyone, as long as the majority agree on the truth (consensus) then that is regarded as the true chain.

In order to add more blocks (extend the ledger), you need a game theoretic algorithm (currently the most popular is Proof of Work). Each node invests in solving a puzzle (finding a hash under a certain number) and competes with all other blocks to find this, the winner received a reward as a side effect (though this is not done in other algorithms).

The reward is the incentive not to cheat. If someone wants to cheat they have to invest orders of magnitude in fake nodes and fake puzzle solving making is very, very expensive to do so.

The most famous use of this is Bitcoin (the first working digital cryptographic currency) but the underlying technology is proposed to verify all incoming sensor data to the data lake.

The way to do this would be to use an IoT friendly blockchain algorithm (directed acyclic graphs or hashgraphs, and much more) with the IoT sensor acting also as a blockchain node. This means each sensor is both sensing and verifying sensor data simultaneously. As we would be looking at 10,000 - 100,000 sensors as a minimum in this system, then intermediation attacks would require near impossible levels of fake competing nodes.

This is an active area of research with a number of initiatives, within 2 - 3 years standards will emerge which will a more mature implementation (though this scheme could be implemented today).

Quantum Coda

One more innovation that is important (or will be in 10 years or so) is resistance to attacks by future quantum computers.

New blockchain algorithms (directed acyclic graphs) have resistance to said quantum attacks (when quantum computation becomes available). Any long-term future IoT cloud will need to look at this property.

Obversly, quantum computation could also provide a new class of solutions to the Byzantine problem (quantum byzantine is really a thing, I promise you). So in future, a quantum-enabled blockchain data structure will allow for the perfect transmission of knowledge over an unreliable network. However,​ that is a discussion for another day.