1
POWERCHAIN
Building Blocks to establish a Distributed
Grid with a light weight P2P energy market.
2
POWERCHAIN
Collection of Smart Contracts implemented
for Ethereum Blockchain…
3
Node
Termination
Meter
Metering
Power
Delivery
POWERCHAIN
… working together to build a common
consense based power grid and market.
4
POWERCHAIN
Content
1. Building Blocks
2. Use Cases
3. Best Practice
5
Node
Meter
Metering
Power
Delivery
POWERCHAIN
Termination
6
Node
Meter
Metering
Power
Delivery
POWERCHAIN
Standarized Representation of a power transmission from a Producer [Node]
to a Consumer [Node].
 Time Frame of Delivery (Start/End)
 Power (Total Wh, Min W, Peak W)
 Termination check
 Value (Money)
Termination
7
Node
Meter
Metering
Power
Delivery
POWERCHAIN
Contract for Grid-End-Point operation owned by
DSO
 Manages approved Meter Operators [Metering]
 Manages a list of Producer/Consumers [Node]
 Manages a list of peers to other Grids
[Termination]
Termination
8
Node
Termination
Meter
Metering
Power
Delivery
POWERCHAIN
Legal, Managed Entity connected to a grid
as End-Point
 Is able to sell or buy power [PowerDelivery]
 Has a connection to the grid [Termination]
 Has a approved Meter [Meter/Metreing]
9
POWERCHAIN
#USECASES (Basics)
10
POWERCHAIN
UC1: Setup Grid
The smallest possible grid is a Termination with an approved Metering …
metering = instanceByName('Metering');
termination = instanceByName('Termination');
termination.addMetering(metering.address);
11
POWERCHAIN
UC2: Adding a Producer and a Consumer Node
In order to exchange power two Nodes are required.
For the moment both connect to the same Termination which accepts only one Metering.
params =[metering.address];
nodes.A = instanceByName('Node',params);
nodes.B = instanceByName('Node',params);
Metering assigns two new Meters to those Nodes and adds to Termination.
meters.A= instanceByName('Meter', [0,true]); // Initial Reading 0 – Does Feed In to the grid (=true)
meters.B= instanceByName('Meter', [7,false]); // Initial Reading 7 – Does Feed Out of the grid (=false)
metering.addMeter(meters.A.address,nodes.A.address);
metering.addMeter(meters.B.address,nodes.B.address);
termination.addNode(nodes.A.address);
termination.addNode(nodes.B.address);
nodes.A.transferTermination(termination.address);
nodes.B.transferTermination(termination.address);
12
POWERCHAIN
UC3: Update Meter Readings
Metering provides an oracle by updating periodically readings of Meters.
As consequence of updateReading() all active PowerDelivery contracts of the affected Node
get balanced to the current reading.
metering.updateReading(meters.A.address,new Date().getTime(),123); // Sets Current reading of Meter A to 123
metering.updateReading(meters.B.address,new Date().getTime(),456); // Sets Current reading of Meter B to 456
updateReading() processPowerDelivery() updateReading()
balance
• Last Reading
• Power Debit
• Power Credit
13
POWERCHAIN
UC3: Update Meter Readings (cont…)
updateReading()
• Last Reading
• Power Debit
• Power Credit
Last Reading
Actual readig of Meter
Power Credit
Power units (Wh) measured and covered by power delivery contracts
Power Debit
Power units (Wh) measured but not covered by power delivery contracts
Condition:
(Last Reading – Initial Reading*) = Power Credit + Power Debit
*) Initial Reading is reading of Meter as given in new Meter tx: instanceByName('Meter', [7,true]); // Initial Reading=7
14
POWERCHAIN
UC4: Creating a Power Product
In order to trade on a market a product needs to be available having a common specification of the asset.
PowerDelivery contracts hold a common specification for a „power product“. As every Node needs to follow
this standard it could be traded/exchanged.
node.createOffer(
bool _is_feedin, // Perspective of Node (Is Feed-In or Feed-Out)
uint256 _time_start, // Start of Delivery
uint256 _time_end, // End of Delivery
uint256 _total_power, // Total Power in Watt-Hours
uint256 _peak_load, // Max-Load in Watt
uint256 _min_load, // Min-Load in Watt
uint256 _bid // Bid of creating Node (Monetary Value)
);
node.createOffer() New ProductDelivery()
15
POWERCHAIN
UC5: Signing a Power Delivery (Contract)
A power delivery contract could be signed by any other Node. During signature process
it is checked if Termination (physical connection) is possible.
node.signSellFeedIn(PowerDelivery.address,_bid); // _bid = counter offer needs to be better or equal
…
node.signBuyFeedOut(PowerDelivery.address,_bid); // _bid = counter offer needs to be better or equal
PowerDelivery contract accepts changes of counter bid until starting time of delivery.
16
POWERCHAIN
#BESTPRACTICE
17
POWERCHAIN
#Blockchain - Consense
In general a Blockchain holds an „universe of common truth“ = Consense
Node
Termination
Meter
Metering
Power
Delivery
Shared
Truth
18
POWERCHAIN
#Blockchain - Visibility
• All transactional data is public within its chain
• Mining provides confirmations of transactions
Meter
Power
Delivery
Meter
Producer Contract Consumer
If all transactions get confirmed, we do not need to identify „Producer“ or „Consumer“ to ensure consense.
“On the blockchain, nobody knows you're a fridge”
19
POWERCHAIN
#Blockchain - Transactionalization
• Storing data in a blockchain is expensive
• Each transaction costs a fee (or gas)
Meter
Power
Delivery
Contract Consumer
Provides sub-second readings
Might be one single transaction
Metering
Provided oracalized data as required
20
POWERCHAIN
#Blockchain - In/Off Chain
• Transactional Data is required in chain
• Operational Data is required off chain
Power
Delivery
Metering
Provided oracalized data as required (In Chain)
Termination Operational Data on Request (Off Chain)
21
POWERCHAIN
#Blockchain - Off Chain
• Offchain transactions like data exchange can still be part of a single shared truth
• EDIchain is a framework to exchange EDI messages via a Blockchain
MeteringTermination
EDI Message
CONTRL/APERAK
Metadata
Business
Content
(EDI Document)
HASH
On Chain (Frontend)
Off Chain (Backend)
POWERCHAIN
#Smart Contract
• Simple rule based transaction trigger.
• Or: Changing the state of a machine (blockchain) based on conditions.
Power
Delivery
If all prerequisites are met…
feed_in=Node(msg.sender);
… sending Node becomes
Producer
POWERCHAIN
#Smart Contract
• The code is the rule
• Once published the rules can not be changed.
Termination
The test() function is called as soon as a Node wants to sign a PowerDelivery.
For the owner of a Termination it might be good to keep record of all tests…
tests.push(_delivery);
… as this would change a value this function „call“ becomes a transaction (=requires Gas).
POWERCHAIN
#Smart Contract
• Use „Events“ for monitoring instead of transactions
tests.push(_delivery);
contract Termination {
…
event TestTermination(address _sender,address _target);
…
function test(Node _delivery,Termination callstack) returns (bool) {
TestTermination(msg.sender,_delivery);
…
}
POWERCHAIN
#Smart Contract
• The code is the rule
• Once published the rules can not be changed.
Termination v1
As v1 is available within the blockchain „forever“ there needs to be a sunset function right
from start
Termination v2
POWERCHAIN
#Node (Blockchain)
• Never trust a Node … trust transactions.
meters.A= instanceByName('Meter', [0,true]);
Everyone could create a Meter
But it requires a Metering to add it.
metering.addMeter(meters.A.address,nodes.A.address);
Contract Metering {
function addMeter(Meter meter,Node _node) {
if(msg.sender!=owner) throw;
…
}
}
Everyone could create a Metering
But it requires a Termination to accept it.
Everyone could create a PowerDelivery
But if there is no Termination (peering) between both parties it will not be possible to sign.
27
POWERCHAIN
Hackaton:
https://hack.ether.camp/#/idea/let-
ethereums-blockchain-become-the-
backbone-for-energy-markets
GitHub:
https://github.com/zoernert/powerchain
Community:
http://ossn.stromhaltig.de/

More Related Content

PDF
Small signal analysis based closed loop control of buck converter
PDF
Ee6501 psa-eee-vst-au-units-v (1)
PDF
Fw3410821085
PDF
Implementation of non-isolated three-port converter through augmented time re...
PDF
Bc03303410346
PDF
Comparison analysis of chattering in smooth sliding mode controlled DC-DC buc...
PDF
PPTX
Economic Dispatch Research paper solution slides
Small signal analysis based closed loop control of buck converter
Ee6501 psa-eee-vst-au-units-v (1)
Fw3410821085
Implementation of non-isolated three-port converter through augmented time re...
Bc03303410346
Comparison analysis of chattering in smooth sliding mode controlled DC-DC buc...
Economic Dispatch Research paper solution slides

Viewers also liked (20)

PDF
Blockchain in energy business
PDF
TransActive Grid
PDF
Transactive Energy: A Sustainable Business and Regulatory Model for Electricity
PDF
Devcon 1 - Build a Ðapp: Contract and Design
PPTX
The New Energy Consumer: What Promises Do Blockchain Technologies Offer Energ...
PDF
Tag innovations
PDF
EcoSummit 2016 in Berlin Presentation - ConsenSys / RWE
PPTX
PDF
[기조연설]인코어드테크놀로지스_최종웅대표님_2014SEL포럼
PDF
[전문가발표]에너지수요모델링_인코어드_2014SEL포럼
PDF
ConsenSys Ethereum Total Return Swap in Japanese
PPTX
Adaption einer Blockchain für den Stromhandel
PPTX
Blockchain_OS
PPTX
StromDAO - Die Idee
PPTX
The Digitally Enabled Grid: How can utilities survive the energy demand disru...
PDF
The Accenture Technology Vision 2016 for Utilities
PPTX
New Business Opportunities for Utility Distribution Companies in an Expanded ...
PDF
Uber-like Models for the Electrical Industry
PPTX
5.6 off main-grid systems for access to electricity
PPTX
Undergraduate Energy Management Certificate Program
Blockchain in energy business
TransActive Grid
Transactive Energy: A Sustainable Business and Regulatory Model for Electricity
Devcon 1 - Build a Ðapp: Contract and Design
The New Energy Consumer: What Promises Do Blockchain Technologies Offer Energ...
Tag innovations
EcoSummit 2016 in Berlin Presentation - ConsenSys / RWE
[기조연설]인코어드테크놀로지스_최종웅대표님_2014SEL포럼
[전문가발표]에너지수요모델링_인코어드_2014SEL포럼
ConsenSys Ethereum Total Return Swap in Japanese
Adaption einer Blockchain für den Stromhandel
Blockchain_OS
StromDAO - Die Idee
The Digitally Enabled Grid: How can utilities survive the energy demand disru...
The Accenture Technology Vision 2016 for Utilities
New Business Opportunities for Utility Distribution Companies in an Expanded ...
Uber-like Models for the Electrical Industry
5.6 off main-grid systems for access to electricity
Undergraduate Energy Management Certificate Program
Ad

Similar to PowerChain - Blockchain 4 Energy (20)

PPTX
Advanced smart contract
PDF
EE452_Flyback Convert
PDF
Horizon: A Gas-Efficient Trustless Bridge for Cross-Chain Transactions
PDF
Horizon: A Gas-Efficient Trustless Bridge for Cross-Chain Transactions
PDF
G010614450
PDF
Design & Implementation of Controller Based Buck-Boost Converter for Small Wi...
PPT
Remote Control of Nanogrids: a Cost-effective Solution in a Laboratory Setup
PDF
Proof of Computing Work Protocol by Pandora Boxchain
PPT
ATC for congestion management in deregulated power system
PDF
How to Build an Event-based Control Center for the Electrical Grid
PDF
Bt0064 logic design2
PDF
Hyperledger Fabric Application Development 20190618
PDF
Internship Report (VTOL) (2)
PPTX
Hello world contract
DOCX
Running Head CLIENT SERVER AUTHENTICATIONHANDLING CONCURRENT CL.docx
PDF
Security in the blockchain
DOC
Multi_Vdd_IEEE_Paper
PDF
Paper 33-FPGA Triggered Space Vector Modulated Voltage
PDF
On the Impact of Timer Resolution in the Efficiency Optimization of Synchrono...
PDF
2017 Atlanta Regional User Seminar - Real-Time Volt/Var Optimization Scheme f...
Advanced smart contract
EE452_Flyback Convert
Horizon: A Gas-Efficient Trustless Bridge for Cross-Chain Transactions
Horizon: A Gas-Efficient Trustless Bridge for Cross-Chain Transactions
G010614450
Design & Implementation of Controller Based Buck-Boost Converter for Small Wi...
Remote Control of Nanogrids: a Cost-effective Solution in a Laboratory Setup
Proof of Computing Work Protocol by Pandora Boxchain
ATC for congestion management in deregulated power system
How to Build an Event-based Control Center for the Electrical Grid
Bt0064 logic design2
Hyperledger Fabric Application Development 20190618
Internship Report (VTOL) (2)
Hello world contract
Running Head CLIENT SERVER AUTHENTICATIONHANDLING CONCURRENT CL.docx
Security in the blockchain
Multi_Vdd_IEEE_Paper
Paper 33-FPGA Triggered Space Vector Modulated Voltage
On the Impact of Timer Resolution in the Efficiency Optimization of Synchrono...
2017 Atlanta Regional User Seminar - Real-Time Volt/Var Optimization Scheme f...
Ad

More from Thorsten Zoerner (20)

PDF
Briefing - Energy Sharings nach § 42c Energiewirtschaftsgesetz (EnWG).pdf
PDF
CO2-Monitoring: Der GrünstromIndex – Transparente und maßgeschneiderte Vorher...
PDF
NetworkingFriday: Das STROMDAO Energy Application Framework (EAF)
PPTX
SESS Market Trends
PDF
STROMDAO GmbH
PDF
IDENTITY BASED CONSENSUS FRAMEWORK FOR ISO 14064-2 GHG REPORTING
PPTX
Strom-Quittung - Fair laden bei praktisch jeder Wallbox
PDF
Neues E-Auto? Keine Ladestation?!
PPTX
Unser Heilsbringer: Blockchain
PPTX
Key Investment Facts - STROMDAO GmbH
PDF
STROMDAO - Corrently Pitch Deck #CrowdInvest
PDF
Digitalisierung und Community kommt nach dem EEG
PDF
Zusammensetzung des Strompreises
PPTX
Correnty - Variable Stromtarife
PDF
STROMDAO - Corrently Pitch Deck
PPTX
Corrently Pitch - CloudMallBW (bwcon Afterwork Sommerfest)
PDF
STROMDAO - Corrently Equity Story
PDF
Corrently (English)
PDF
Corrently - Micro Pitch Deck
PPTX
Corrently
Briefing - Energy Sharings nach § 42c Energiewirtschaftsgesetz (EnWG).pdf
CO2-Monitoring: Der GrünstromIndex – Transparente und maßgeschneiderte Vorher...
NetworkingFriday: Das STROMDAO Energy Application Framework (EAF)
SESS Market Trends
STROMDAO GmbH
IDENTITY BASED CONSENSUS FRAMEWORK FOR ISO 14064-2 GHG REPORTING
Strom-Quittung - Fair laden bei praktisch jeder Wallbox
Neues E-Auto? Keine Ladestation?!
Unser Heilsbringer: Blockchain
Key Investment Facts - STROMDAO GmbH
STROMDAO - Corrently Pitch Deck #CrowdInvest
Digitalisierung und Community kommt nach dem EEG
Zusammensetzung des Strompreises
Correnty - Variable Stromtarife
STROMDAO - Corrently Pitch Deck
Corrently Pitch - CloudMallBW (bwcon Afterwork Sommerfest)
STROMDAO - Corrently Equity Story
Corrently (English)
Corrently - Micro Pitch Deck
Corrently

Recently uploaded (20)

PPTX
CONTRACTS IN CONSTRUCTION PROJECTS: TYPES
PDF
LOW POWER CLASS AB SI POWER AMPLIFIER FOR WIRELESS MEDICAL SENSOR NETWORK
PPTX
Measurement Uncertainty and Measurement System analysis
PDF
20250617 - IR - Global Guide for HR - 51 pages.pdf
PPTX
Amdahl’s law is explained in the above power point presentations
PDF
Prof. Dr. KAYIHURA A. SILAS MUNYANEZA, PhD..pdf
PPTX
Information Storage and Retrieval Techniques Unit III
PDF
August -2025_Top10 Read_Articles_ijait.pdf
PDF
Applications of Equal_Area_Criterion.pdf
PDF
Influence of Green Infrastructure on Residents’ Endorsement of the New Ecolog...
PPTX
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
PDF
UEFA_Embodied_Carbon_Emissions_Football_Infrastructure.pdf
PPT
Chapter 1 - Introduction to Manufacturing Technology_2.ppt
PPTX
ASME PCC-02 TRAINING -DESKTOP-NLE5HNP.pptx
PDF
Cryptography and Network Security-Module-I.pdf
PDF
Accra-Kumasi Expressway - Prefeasibility Report Volume 1 of 7.11.2018.pdf
PDF
Introduction to Power System StabilityPS
PPTX
A Brief Introduction to IoT- Smart Objects: The "Things" in IoT
PDF
MLpara ingenieira CIVIL, meca Y AMBIENTAL
PPTX
"Array and Linked List in Data Structures with Types, Operations, Implementat...
CONTRACTS IN CONSTRUCTION PROJECTS: TYPES
LOW POWER CLASS AB SI POWER AMPLIFIER FOR WIRELESS MEDICAL SENSOR NETWORK
Measurement Uncertainty and Measurement System analysis
20250617 - IR - Global Guide for HR - 51 pages.pdf
Amdahl’s law is explained in the above power point presentations
Prof. Dr. KAYIHURA A. SILAS MUNYANEZA, PhD..pdf
Information Storage and Retrieval Techniques Unit III
August -2025_Top10 Read_Articles_ijait.pdf
Applications of Equal_Area_Criterion.pdf
Influence of Green Infrastructure on Residents’ Endorsement of the New Ecolog...
Sorting and Hashing in Data Structures with Algorithms, Techniques, Implement...
UEFA_Embodied_Carbon_Emissions_Football_Infrastructure.pdf
Chapter 1 - Introduction to Manufacturing Technology_2.ppt
ASME PCC-02 TRAINING -DESKTOP-NLE5HNP.pptx
Cryptography and Network Security-Module-I.pdf
Accra-Kumasi Expressway - Prefeasibility Report Volume 1 of 7.11.2018.pdf
Introduction to Power System StabilityPS
A Brief Introduction to IoT- Smart Objects: The "Things" in IoT
MLpara ingenieira CIVIL, meca Y AMBIENTAL
"Array and Linked List in Data Structures with Types, Operations, Implementat...

PowerChain - Blockchain 4 Energy

  • 1. 1 POWERCHAIN Building Blocks to establish a Distributed Grid with a light weight P2P energy market.
  • 2. 2 POWERCHAIN Collection of Smart Contracts implemented for Ethereum Blockchain…
  • 3. 3 Node Termination Meter Metering Power Delivery POWERCHAIN … working together to build a common consense based power grid and market.
  • 4. 4 POWERCHAIN Content 1. Building Blocks 2. Use Cases 3. Best Practice
  • 6. 6 Node Meter Metering Power Delivery POWERCHAIN Standarized Representation of a power transmission from a Producer [Node] to a Consumer [Node].  Time Frame of Delivery (Start/End)  Power (Total Wh, Min W, Peak W)  Termination check  Value (Money) Termination
  • 7. 7 Node Meter Metering Power Delivery POWERCHAIN Contract for Grid-End-Point operation owned by DSO  Manages approved Meter Operators [Metering]  Manages a list of Producer/Consumers [Node]  Manages a list of peers to other Grids [Termination] Termination
  • 8. 8 Node Termination Meter Metering Power Delivery POWERCHAIN Legal, Managed Entity connected to a grid as End-Point  Is able to sell or buy power [PowerDelivery]  Has a connection to the grid [Termination]  Has a approved Meter [Meter/Metreing]
  • 10. 10 POWERCHAIN UC1: Setup Grid The smallest possible grid is a Termination with an approved Metering … metering = instanceByName('Metering'); termination = instanceByName('Termination'); termination.addMetering(metering.address);
  • 11. 11 POWERCHAIN UC2: Adding a Producer and a Consumer Node In order to exchange power two Nodes are required. For the moment both connect to the same Termination which accepts only one Metering. params =[metering.address]; nodes.A = instanceByName('Node',params); nodes.B = instanceByName('Node',params); Metering assigns two new Meters to those Nodes and adds to Termination. meters.A= instanceByName('Meter', [0,true]); // Initial Reading 0 – Does Feed In to the grid (=true) meters.B= instanceByName('Meter', [7,false]); // Initial Reading 7 – Does Feed Out of the grid (=false) metering.addMeter(meters.A.address,nodes.A.address); metering.addMeter(meters.B.address,nodes.B.address); termination.addNode(nodes.A.address); termination.addNode(nodes.B.address); nodes.A.transferTermination(termination.address); nodes.B.transferTermination(termination.address);
  • 12. 12 POWERCHAIN UC3: Update Meter Readings Metering provides an oracle by updating periodically readings of Meters. As consequence of updateReading() all active PowerDelivery contracts of the affected Node get balanced to the current reading. metering.updateReading(meters.A.address,new Date().getTime(),123); // Sets Current reading of Meter A to 123 metering.updateReading(meters.B.address,new Date().getTime(),456); // Sets Current reading of Meter B to 456 updateReading() processPowerDelivery() updateReading() balance • Last Reading • Power Debit • Power Credit
  • 13. 13 POWERCHAIN UC3: Update Meter Readings (cont…) updateReading() • Last Reading • Power Debit • Power Credit Last Reading Actual readig of Meter Power Credit Power units (Wh) measured and covered by power delivery contracts Power Debit Power units (Wh) measured but not covered by power delivery contracts Condition: (Last Reading – Initial Reading*) = Power Credit + Power Debit *) Initial Reading is reading of Meter as given in new Meter tx: instanceByName('Meter', [7,true]); // Initial Reading=7
  • 14. 14 POWERCHAIN UC4: Creating a Power Product In order to trade on a market a product needs to be available having a common specification of the asset. PowerDelivery contracts hold a common specification for a „power product“. As every Node needs to follow this standard it could be traded/exchanged. node.createOffer( bool _is_feedin, // Perspective of Node (Is Feed-In or Feed-Out) uint256 _time_start, // Start of Delivery uint256 _time_end, // End of Delivery uint256 _total_power, // Total Power in Watt-Hours uint256 _peak_load, // Max-Load in Watt uint256 _min_load, // Min-Load in Watt uint256 _bid // Bid of creating Node (Monetary Value) ); node.createOffer() New ProductDelivery()
  • 15. 15 POWERCHAIN UC5: Signing a Power Delivery (Contract) A power delivery contract could be signed by any other Node. During signature process it is checked if Termination (physical connection) is possible. node.signSellFeedIn(PowerDelivery.address,_bid); // _bid = counter offer needs to be better or equal … node.signBuyFeedOut(PowerDelivery.address,_bid); // _bid = counter offer needs to be better or equal PowerDelivery contract accepts changes of counter bid until starting time of delivery.
  • 17. 17 POWERCHAIN #Blockchain - Consense In general a Blockchain holds an „universe of common truth“ = Consense Node Termination Meter Metering Power Delivery Shared Truth
  • 18. 18 POWERCHAIN #Blockchain - Visibility • All transactional data is public within its chain • Mining provides confirmations of transactions Meter Power Delivery Meter Producer Contract Consumer If all transactions get confirmed, we do not need to identify „Producer“ or „Consumer“ to ensure consense. “On the blockchain, nobody knows you're a fridge”
  • 19. 19 POWERCHAIN #Blockchain - Transactionalization • Storing data in a blockchain is expensive • Each transaction costs a fee (or gas) Meter Power Delivery Contract Consumer Provides sub-second readings Might be one single transaction Metering Provided oracalized data as required
  • 20. 20 POWERCHAIN #Blockchain - In/Off Chain • Transactional Data is required in chain • Operational Data is required off chain Power Delivery Metering Provided oracalized data as required (In Chain) Termination Operational Data on Request (Off Chain)
  • 21. 21 POWERCHAIN #Blockchain - Off Chain • Offchain transactions like data exchange can still be part of a single shared truth • EDIchain is a framework to exchange EDI messages via a Blockchain MeteringTermination EDI Message CONTRL/APERAK Metadata Business Content (EDI Document) HASH On Chain (Frontend) Off Chain (Backend)
  • 22. POWERCHAIN #Smart Contract • Simple rule based transaction trigger. • Or: Changing the state of a machine (blockchain) based on conditions. Power Delivery If all prerequisites are met… feed_in=Node(msg.sender); … sending Node becomes Producer
  • 23. POWERCHAIN #Smart Contract • The code is the rule • Once published the rules can not be changed. Termination The test() function is called as soon as a Node wants to sign a PowerDelivery. For the owner of a Termination it might be good to keep record of all tests… tests.push(_delivery); … as this would change a value this function „call“ becomes a transaction (=requires Gas).
  • 24. POWERCHAIN #Smart Contract • Use „Events“ for monitoring instead of transactions tests.push(_delivery); contract Termination { … event TestTermination(address _sender,address _target); … function test(Node _delivery,Termination callstack) returns (bool) { TestTermination(msg.sender,_delivery); … }
  • 25. POWERCHAIN #Smart Contract • The code is the rule • Once published the rules can not be changed. Termination v1 As v1 is available within the blockchain „forever“ there needs to be a sunset function right from start Termination v2
  • 26. POWERCHAIN #Node (Blockchain) • Never trust a Node … trust transactions. meters.A= instanceByName('Meter', [0,true]); Everyone could create a Meter But it requires a Metering to add it. metering.addMeter(meters.A.address,nodes.A.address); Contract Metering { function addMeter(Meter meter,Node _node) { if(msg.sender!=owner) throw; … } } Everyone could create a Metering But it requires a Termination to accept it. Everyone could create a PowerDelivery But if there is no Termination (peering) between both parties it will not be possible to sign.

Editor's Notes

  • #2: Peer2Peer energy markets are not a new topic. Even with blockchain technologies like Ethereum there are some basic concepts. What is missing is are standards and a level of industrialization.