Der Nebel lichtet sich...
Erste Entscheidungen und konkretere Ziele (20.03.2018)
Förderjahr 2017 / Project Call #12 / ProjektID: 2092 / Projekt: bürgerchain

C#, .net, Bower, Google App Engine Flexible, Firebase, Firestore, ein bisschen Python, viel Javascript und HTML, CSS, dazu noch Timestamping mit RFC3161, dazu IOTA, Ethereum oder Artis und fertig ist die Bürgerchain.

Entscheidungen

Die Anforderungen an die Backend-Infrastrutkur der Bürgerchain: Wartungsarm, skalierbar, überschaubare Kosten, sicher. Nach der Evaluierung einiger möglicher Lösungen steht jetzt fest: Die Bürgerchain wird in C#/.net implementiert (weil ich damit am meisten Erfahrung habe), es kommen gängige Technologien wie auf Serverseite ASP.NET Core, Razor Pages und NuGet sowie Clientseitig Javascript, HTML, CSS und Bower zum Einsatz. Die Bürgerchain wird in Googles Cloud-Service, der sogenannten App Engine gehostet sein, für die Benutzerverwaltung kommt Firebase Auth und für das Speichern der Daten Firestore zum Einsatz. Erste Funktionen sind bereits teilweise ausimplementiert (Einbindung der Benutzerverwaltung, Anlegen und Auslesen von E-Votings durch Administratoren, Signieren von Daten mit der Bürgerkarte/Handysignatur, Daten mit einem Zeitstempel gemäß RFC3161 Versehen, ...).

Im nächsten Schritt werden erste Use-Cases fertig implementiert (e-Voting anlegen, Stimme abgeben, Ergebnisse ansehen), um diese dann in Zusammenarbeit mit einem UI/UX-Designer für die User entsprechend aufzubereiten. Wenn das geschafft ist, wird auch die Kommunikation mit Schlüsselkunden einfacher sein, weil es dann endlich auch etwas "zum Angreifen" gibt.

Blockchain

Welche Blockchain eingesetzt wird, das ist noch ein offener Punkt. IOTA klingt interessant, insbesondere ob der leichtgewichtigen Implementierung, der recht weiten Verbreitung und der nicht vorhandenen Transaktionskosten. Ethereum klingt ebenso interessant, mit seinen Smart Contracts, der noch weiteren Verbreitung und der anscheinend "reiferen" Blockchain. Beide haben jedoch auch Nachteile, seien es die Transaktionskosten, die Zeit bis eine Transaktion bestätigt ist, die Art wie Metadatan verifizierbar sind usw.. Eine weitere Alternative könnte ARTIS sein, eine "österreichische", Ethereum-verwandte Blockchain, die von den netidee-Kollegen des Projeks vallet mitentwickelt wird.

Im ersten Schritt werden wir der Einfachheit halber aber wohl eine Blockchain-light-Variante setzen: Jedes Ereignis eines e-Votings (d.h. jede abgegebene Stimme, jede gestellte Frage, ...) wird mithilfe aktueller kryptographischer Methoden und unter Verwendung von Zeitstempeln nach RFC3161 gegen nachträgliche Manipulation abgesichert und mit dem Ereignis davor verknüpft. Im Gegensatz zu klassischen Blockchains werden die Daten dabei aber nicht verteilt, sondern zentral gespeichert.

Wie die Kommunikation mit künfitgen Usern läuft und inwiefern wir unsere Ziele konkretisieren konnten, darüber berichte ich im nächsten Blogbeitrag.

Tags:

blockchain bürgerchain Cloud Service

Michael Faschinger

Male avatar

Skills:

Softwareentwicklung
,
blockchain
,
Bürgerkarte
,
C#
,
Javascript
CAPTCHA
Diese Frage dient der Überprüfung, ob Sie ein menschlicher Besucher sind und um automatisierten SPAM zu verhindern.

    Weitere Blogbeiträge

    Datenschutzinformation
    Der datenschutzrechtliche Verantwortliche (Internet Privatstiftung Austria - Internet Foundation Austria, Österreich) würde gerne mit folgenden Diensten Ihre personenbezogenen Daten verarbeiten. Zur Personalisierung können Technologien wie Cookies, LocalStorage usw. verwendet werden. Dies ist für die Nutzung der Website nicht notwendig, ermöglicht aber eine noch engere Interaktion mit Ihnen. Falls gewünscht, treffen Sie bitte eine Auswahl: