Back to top

Master's Thesis Bernd Steinkopf

Last modified Feb 3, 2021

Abstract

With the invention of smart contracts, many industries look to incorporate the generous security guarantees of blockchains into their business processes. Especially the energy sector would benefit greatly from the increased reliability and transparency of a fully decentralized network. Unfortunately, many of its use cases rely on computationally expensive tasks that are fundamentally unsuitable for such a slow and highly redundant environment. In this thesis, we explore different strategies for making these use cases possible without compromising the advantages offered by using a blockchain.

In the first part, we examine three different technologies for outsourcing expensive work from computationally weak nodes in a secure manner. Collectively known under the name verifiable computing, they are (in order of appearance): trusted oracles, zero-knowledge proofs and secure multi-party computation. We provide theoretical background knowledge for all three approaches and discuss some of the most popular state-of-the-art implementations. Each individual technology is further analyzed for its strengths and weaknesses regarding multiple categories such as security, performance or usability.

In the second, practical part of this work, we implement a zkSNARK, one of the identified technologies that was found to be most promising during the aforementioned evaluation. We give an overview of the employed algorithms and technology-specific challenges encountered along the way. To summarize, our implementation is capable of solving many of the optimization problems that commonly occur in the energy industry.

The finished program is subsequently tested for performance under different conditions, showing good results for small-scale optimizations but quickly deteriorating in performance for bigger problems. We conclude from our findings, that verifiable computing is an important and necessary field but still requires a concerted effort from researchers and engineers alike to become a truly viable alternative to traditional untrusted computations.

Research Questions

  1. What are the requirements and challenges of common blockchain applications in the energy industry?
  2. How can the use of verifiable computing increase the security and reliability of energy-related blockchain applications?
  3. How do different blockchain-based verifiable computing techniques compare in terms of performance, security and usability?
  4. Which measures are required to prototypically implement a functioning infrastructure for solving blockchain-aided verifiable computations?

 

Files and Subpages