Privacy enhancing technologies for distributed ledgers
Abstract
Die Möglichkeit, Computerberechnungen mit einem Beweis für deren korrekte Ausführung zu hinterlegen, scheint in Zeiten der oft genannten ‘Digitalisierung’ ein vielversprechendes Mittel zu sein, um es Parteien, die einander nicht trauen, zu ermöglichen sich auszutauschen. Diese Korrektheitsbeweise sind gerade im Themengebiet der Blockchain interessante und vielversprechende Kandidaten, um dortige Probleme zu adressieren. In dieser Arbeit untersuchen wir formal, was eine Blockchain im Sinne Nakamotos auszeichnet, und inwiefern sogenannte ‘Privacy Enhancing Technolgies’ in diesen dezentralen Systemen Anwendung finden. Das Hauptaugenmerk legen wir dabei auf ‘pairing-based preprocessed zero knowledge succinct non interactive arguments of knowledge’ (zkSNARKs). Wir untersuchen deren mathematische Grundlage und entwickeln unsere eigene zkSNARK Konstruktion. Diese basiert auf einer Erweiterung der gängigen F-arithmetischen Schaltung, die neben arithmetischen Operationen auch die der skalare Gruppenexponentiation auf elliptischen Kurven unterstützt. Die Implementierung ist in der Sprache Golang verfasst und unter einer GPL3.0 Lizenz auf Github zugänglich gemacht. Das Programm übersetzt eine eigens dafür entwickelte Programmiersprache in die Form eines ‘QuadraticArithmetic Programs’ und kann daher über unsere Arbeit hinaus in Beweissystemen basierend auf F-arithmetischen Schaltungen eingesetzt werden.
Community
0 commentsNo discussion yet
Be the first to share a question or observation.