Evaluation and improvement of ethereum light clients
Abstract
Seit der Einführung der Peer-to-Peer Währung Bitcoin sind viele ähnliche Projekte vorgestellt worden. Ein beliebtes Projekt heißt Ethereum, welches erlaubt, Smart Contracts in seinem Netzwerk einzusetzen. Diese Contracts können von NutzerInnen entwickelt werden, um die Fähigkeit von Ethereum zu erweitern. Um mit diesem System interagieren zu können, wird eine Client-Software benötigt, die Blockchain-Daten herunterlädt und anschließend validiert. Als Blockchain wird die Datenstruktur bezeichnet, welche alle getätigten Transaktionen im Netzwerk speichert. Da eine große Menge an Daten kontinuierlich generiert werden, ist Ethereum auf schwächeren Computern nicht mehr einsetzbar. Aus diesem Grund vertraut man sich einer Drittpartei an, dass die heruntergeladenen Daten valide sind, um den zeitaufwendigen Validierungschritt zu umgehen. Eine Alternative, die nicht die Validierung aller Daten benötigt, wird Simplified Payment Verification (SPV) genannt, welche nur ein Teil der Blockchain verarbeiten muss. Software dieser Art nennt man auch Light Clients. Allerdings ist auch dieses Verfahren zu rechenintensiv für Ethereum. Erst vor Kurzem wurde ein kryptografisches Verfahren namens FlyClient vorgestellt, welches eine schnellere Validierung verspricht. Jedoch existiert bislang noch keine praktische Implementierung. Es stellt sich also die Frage, wie man die Validierung der Ethereum Blockchain auf schwächeren Computern wieder ermöglichen kann. Eine Motivation liegt in der praktischen Anwendung, wie beispielsweise Zahlungen per Smartphone tätigen zu können. Bei sicherheitsrelevanten Anwendungen ist es von Vorteil, nicht von einer Drittpartei abhängig zu sein. Das Ziel dieser Arbeit ist daher die systematische Untersuchung von existierenden Verfahren, um Light Clients zu entwickeln. Der Fokus liegt besonders auf einer Schonung von Systemressourcen und die Vermeidung einer Drittpartei. Es werden existierende Ethereum Anwendungen und deren inbegriffenen Sicherheitsannahmen untersucht. Ein Ethereum Light Client Prototyp wird entwickelt, welcher den FlyClient-Ansatz verwendet. Es wird gezeigt, dass mit einer einfachen Modifikation der Ethereum Blockchain Light Clients entwickelt werden können, die: (1) Payment Channels unterstützen, (2) eine effiziente Verifikation der Blockchain ermöglichen, (3) in einer dezentralen Art und Weise arbeiten, (4) hohe Sicherheitsgarantien bieten, und (5) auf schwächeren Computern, wie Smartphones oder IoT-Geräten, eingesetzt werden können.
Community
0 commentsNo discussion yet
Be the first to share a question or observation.