Blockchain

Blockchain

Als Einstiegspunkt in das Thema "Blockchain" empfehle ich den Eintrag in der englischen Wikipedia zu diesem Thema. In wenigen Worten: Eine Blockchain ist eine Art Datenbank, in der eine wachsende Liste von Einträge (oder Blöcken) gespeichert ist. Jeder Eintrag (bzw. Block) ist mit dem Eintrag davor auf eine Art und Weise verknüpft, die eine nachträgliche Manipulation der Einträge durch kryptographische Methoden unmöglich macht. Durch diese Verknüpfung der Listeneinträge entsteht die namensgebende Kette an Blöcken, die Blockchain.

Das wohl bekannteste Beispiel für eine Blockchain ist jenes der Kryptowährung "Bitcoin". Dort ist in jedem Eintrag gespeichert, wer gerade erfolgreich Bitcoins "erzeugt" hat und wer wem welchen Betrag an Bitcoins überwiesen hat. Über die gesamte Blockchain betrachtet ist somit stets transparent, wer (anonym) wie viele Bitcoins hat.

Im Fall der Bürgerchain geht es nicht darum, Einheiten einer Kryptowährung zu erzeugen und zu verschieben, sondern Stimmen bzw. Unterschriften. Bei der Bürgerchain wird also in den Einträgen der Blockchain gespeichert:

  • Optional: Wer ist wahlberechtigt? (das kann anonym gespeichert werden oder auch nicht, je nach Bedarf)
  • Wer hat wann wofür gestimmt? (ebenfalls nach Bedarf anonym oder nicht)

Zusätzlich gibt es in der Blockchain der Bürgerchain einen Verweis darauf, worüber überhaupt abgestimmt wird. Auch dieser Verweis ist durch kryptographische Methoden gegen Manipulation gesichert. Für jede mit der Bürgerchain durchgeführte Wahl, Umfrage oder Petition wird eine eigene Blockchain (also eine eigene Datenbank) angelegt. Nur die für die jeweilige Wahl relevanten Daten werden in dieser Blockchain gespeichert.

Verteilte Speicherung

Die meisten heutigen Blockchains (wie Bitcoin oder Ethereum) sind nicht zentral auf einem Rechner gespeichert. Im Gegenteil, die jeweilige Blockchain ist auf zahlreichen Rechnern verteilt über die ganze Welt gespeichert ("distributed ledger"). Eine Synchronisation der gespeicherten Blockchains erfolgt über Konsens-Mechanismen. Es gibt genau definierte Regeln, wie ein neuer Eintrag in der Blockchain erstellt werden kann, wie sichergestellt wird, dass alle Blockchains den gleichen Inhalt haben und wie Konflikte gehandhabt werden.

Die Anforderungen an die Bürgerchain sind etwas anders als jene bei Kryptowährungen wie Bitcoin. Die Blockchains der Bürgerchain haben in der Regel einen "Besitzer" - die Person oder Organisation, die die Wahl durchführt. Nur dieser "Besitzer" kann entscheiden, wer an einer Wahl oder einer Abstimmung teilnehmen darf. Die Blockchain der Bürgerchain wird daher vorerst auf einem Rechner gespeichert und dort verwaltet. Dieses Konzept wird auch "private Blockchain" genannt. Sie wird zwar für jeden lesbar sein, Schreibrechte sind aber einer zentralen Instanz vorbehalten. Einen interessanten Artikel zu privaten Blockchains gibt es im Ethereum-Blog zu lesen.