Don’t Trust Energy Data Oracles!

FlexiDAO
5 min readApr 8, 2020

--

Energy system runs on data, and to make transition towards a truly smart grids with blockchain, we need to find a way to connect the meter data with the blockchain. Usually, if you ask someone within the energy & blockchain space: “How do you provide energy data to the blockchain?”, the answer for most is simple…

“Oracle”

The ones more cautious will say “some sort of an Oracle”, adding even more confusion to the answer and effectively ending the topic by pointing to some mythical creature.

You might think….

What on earth is this “Oracle”?

Smart Contracts (“programs on blockchain”) are good at working with the data that is already on the blockchain. However, they lack the ability to just “know” by themselves the real-life data, like water polo match score. Such information needs to be fed into a smart contract in a reliable way.

Source: https://upload.wikimedia.org/wikipedia/commons/9/98/Mirko_Sandi%C4%87_3.jpg

In this sense, Oracle is (any) service that (reliably) provides the data to the blockchain.

Let’s follow the example of a water polo game. It usually works like this… Someone through smart contract places a bet on the outcome of a water polo match. Then one or more of the Oracles [1,2,3,4] would provide the score of that game to the smart contract, on top of that there could be various dispute mechanisms to ensure ultimate correctness of that data. All this works thanks to the simple fact that final score of that water polo game is publicly accessible. As a result, one side wins, someone loses (or it is a tie). Simple, right? Let’s try to make the energy data Oracle then.

Well… with energy data, things are not that “easy”…

Source of truth for the energy data

Among all utilities (electricity, gas, water, heat), electricity requires the most complex system to run. There are plenty of different roles needed just to keep your lights on during the night.

Unlike in the previously mentioned water polo game example, the energy data:

So what is the problem to make this Oracle?

Lack of needed data validation

“The smart meter is the source of truth right, so let’s just use that data!”

There is a catch… smart meters that are already in place have not been thought for such a shift in data management, and are not ready for new cooperative internet. Only the parties that are directly communicating with the meter can be sure that the data actually comes from there. There is no efficient way to ultimately prove to external parties that the data came from that specific meter. No proof, no deal, no cooperation. Unlike for water polo game score, there is no one to cross-check the validity of the data (except the grid operators /and utilities).

“But there is asymmetric cryptography to provide necessary proofs!”

Yes, but the roll-out of the smart meters in Europe already happened and unfortunately, the bet was placed on the symmetrical cryptography for efficiency, rather than asymmetrical, which would allow true co-operative smart grids. A small detail, massive difference. Good Job Europe! Next chance in just 15 years.

Not so trusted setup

“Let’s use additional IoT device to retrofit (already?!) the smart meters with asymmetric cryptography, top-notch cyber-security and let’s add to that a light blockchain node, oh yeah! Let’s pack it in a cool 3D printed case and call it “IoT Oracle” or better “Hardware Oracle”!”

All of this sounds great, unfortunately again there is a catch… The physical reality of the grid is that you have only one cable coming to your house, right?

Then, if you would look at the smart meter with which this cable ends, noticing all the security seals and service stickers, you can make sure that “your” smart meter is not actually yours…

Someone else (usually grid operator or utility) is responsible to check how much electricity you produce or consume, using their smart meter. Similarly in the supermarket, if the final check would be entirely up to you, you would charge yourself for bananas instead of new PlayStation 4, or simply walk out without paying.

An external party has to be responsible for the meter. Now, someone wants to put “hardware oracle”… This IoT device will require the data to be obtained directly from the meter itself (remember the validation problem?), meaning that will still have to physically interface with the meter somehow. This interconnection provides massive potential security bridge, that diminishes the whole concept.

As humans, as long as it is in our interest, we will do everything to cheat the system. In this case, the motive is clear, most of us want to pay less (electricity consumers) or earn more (electricity producers).

You have to bear in mind that the smart meters are usually located at the premises of the end users, in the buildings or even inside the apartments. In that case, you can ask yourself: “Can I trust the data that is originated in my neighbours’ house, ultimately coming from such meters (or IoT devices connected to it) enough, to keep it as an ultimate truth on a database, that no one can just simply update?

Meters most likely will always have a chance to be tampered, manipulated, broken, bypassed or totally hacked… There is even a website offering all kinds of meter hacking services and tools.

“So what is the meter Oracle?”

Read the answer here!

--

--

FlexiDAO
FlexiDAO

Written by FlexiDAO

FlexiDAO is a software provider in the energy sector aiming to accelerate the transition toward a decabornised world, leveraging on blockchain applications.

No responses yet