Warum Städte und Kommunen "Data Excellent" werden sollten
1. Blockchain-Pilot der Stadt Wien "OGD Notarization"
1. Blockchain im Digitalen Wien
Technologie einer innovativen Verwaltung
Dezember 2017
Magistratsdirektion der Stadt Wien
Geschäftsbereich Organisation und Sicherheit
Gruppe Prozessmanagement und IKT-Strategie
2. 2
1. Blockchain-Pilot der Stadt Wien
OGD Änderungsprotokoll und Notarisierung
Absicherung der Integrität von OGD (Open Government Data) durch
Prüfsummen (Hashwerte) in öffentlicher Blockchain
Änderungen können nachverfolgt werden
Go live: 14.12.2017
3. 3
Die Blockchain ermöglicht nachvollziehbare,
öffentliche Nachweise ohne zentrale Autorität
Öffentliche Blockchain
Dokument wird erstellt und online veröffentlicht
Eindeutiger Identifikator des Dokuments (SHA256 hash) wird auf
einer öffentlichen Blockchain gespeichert
1
2
Der Eintrag erhält durch die Blockchain einen
„Zeitstempel“
Interessierten ist es möglich, unabhängig und
selbstständig nachzuprüfen, ob ein Dokument zu
einem bestimmten Zeitpunkt existiert hat
3
4
4. 4
Stadt Wien Blockchain Pilot: Notarisierung
Darstellung des Use-Cases
DATEN BLOCKCHAIN NOTARISIERUNG
Automatisiertes
Programm, das nach
neuen/veränderten OGD-
Inhalten sucht
Der Hash-Wert (eindeutig
durch SHA256) des
Dokuments wird
berechnet und als Beleg
der Existenz auf
öffentlichen Blockchains
gespeichert
Open Government Data
(OGD) Katalog
Österreichs
Offizielle Daten und
Dokumente, verlinkt im
OGD Katalog
(xls, csv, zip Dateien
etc.)
Beleg der beurkundeten
Dokumente für
BenutzerInnen schafft
mehr Transparenz und
Vertrauen
BLOCKCHAIN
Dokument (Hash) Zeitstempel (Block) Block
9b67e15f271a91f875a2cad [….] 2017-11-02 12:28:36 492792
10e0e9a4c8c78eb4464878 [….] 2017-11-02 12:52:05 492790
Notarisierung von Dokumenten
Unveränderlicher Nachweis, dass
ein Dokument bei der Entstehung
des Blocks existiert hat (kurze
Intervalle z.B. 10 min für Bitcoin)
Beispielhafte Blockchain-Einträge
CRAWLER
DOKUMENTE IN
BLOCKCHAIN NOTARISIERT
NACHWEIS DER
NOTARISIERUNG
data.gv.at
STADT WIEN
Offizielle
Dokumente sind
mit Zeitstempel auf
öffentlichen
Blockchains
notarisiert
5. 5
Stadt Wien Blockchain Pilot: Notarisierung
Lösungsarchitektur
Zeigt User
Prüfzeitpunkt &
fälschungssicheren
Beleg der Existenz
eines Dokuments
Notarisierung Front End
OGD
Katalog
Österreichs
(Metadaten)
data.gv.at
Dokumenten Notarisierung auf der Blockchain: speichert
Hashwerte von Dokumenten als Beleg für die Existenz zur
Zeit der Blockbildung. Für den Pilot werden vier
Blockchains verwendet, um Redundanz zu garantieren.
Verschiedene Daten und
Dienste
(xls, csv, html files)
Stadt Wien
Kontrolliert OGD Bestand der Stadt Wien und bezieht
Inhalte; Python/Bash scripts
OGD Crawler
Externe
Validierung des
Belegs;
Ein Explorer pro
Blockchain
Blockchain Explorer
Öffentliche Blockchain für Notarisierung
Existierende Systeme
Entwickelte Lösung
Vorhandene Infrastruktur/Programme
Speichert Hashwerte von Dokumenten für die
Blockchain Notarisierung und erlaubt schnellen
Abruf vom Front End; MongoDB
Interface/API für Blockchain
Zugriff: Vorlage von
Transaktionen in die
Blockchain;
Für Piloten benutzt: Stampery
Lösung mit Docker
containerisiert
Blockchain Interface
Backend Database
Ethereum (ETH)
Ethereum Classic (ETC)
Bitcoin (BTC)
Litecoin (LTC)
1
2
4
3
5
Kontrolliert Hashwerte von Dokumenten sowie deren
Eintragung in Blockchain und Datenbank für
neue/geänderte Dokumente; Python/Bash scripts
Neue OGD Integration
OGD transaction scripts
6. 6
Geplante OGD-Integration
Option 2: Link zur Notarisierung Front-End WebApp
unter „Weiterführende Metadaten“
PRÜFE
OPTION 2
OPTION 1
Option 1: Wenn Notarisierung verfügbar (Link im
Datensatz vorhanden), wird neuer Button „Prüfe
Blockchain“ eingefügt
Interface
Vorschläge zur Integration der Notarisierung in das
OGD Webinterface (data.gv.at)
Daten
Vorschlag: Link zum Notarisierung Front-End in das
Feld „Weiterführende Metadaten“ speichern –
entsprechend OGD Metadaten 2.4
10. 10
Beispiel für externe Validierung in Blockchain
Explorer „Blockcypher“
Transaktions-ID
Timestamp des Blocks
Merkle-Root (und Prefix)
11. Diese Präsentation der Stadt Wien steht unter einer Creative Commons Namensnennung 3.0 Österreich Lizenz.
Die Namensnennung der Stadt Wien als Rechteinhaberin hat in folgender Weise zu erfolgen:
"Datenquelle: Stadt Wien"
Mag.a Ulrike Huemer Ing.in Brigitte Lutz, MSc Ing. Bernd Wünschek
ulrike.huemer@wien.gv.at brigitte.lutz@wien.gv.at bernd.wuenschek@wien.gv.at
Open Government - Kompetenzzentrum Wien
open@post.wien.gv.at open.wien.gv.at
Digitalisierung, Daten und Open Innovation
Wir schaffen Mehrwert
13. 13
Beschreibung der verwendeten Module
OGD Crawler-Script
kontrolliert data.gv.at auf
neue/veränderte Daten der
Stadt Wien
► Neue Daten Hashwert
wird generiert und in DB
geschrieben
► Existierende Daten
Hashwert wird generiert
und mit gespeichertem
verglichen
► Wenn Hashwerte
ident, keine Aktion
► Wenn neuer Hashwert
anders & stabil (3x
geprüft) in DB
geschrieben
Aktuell nur Stadt Wien-
Inhalte. GIS und
Echtzeitdaten derzeit nicht.
Script kontrolliert auf neue
oder aktualisierte Daten
► Neu oder aktualisiert:
sendet Transaktion
mit neuem Hashwert
an
► Option 1:
Drittanbieter z.B.
stampery
► Option 2: Eigene
API & Smart
Contract
► Neu: schickt URL zu
data.gv.at
(Metadaten)
Zugang zu
Notarisierung Front
End
► Schreibt Info in DB
(Transaktion j/n
Flagge, URL)
► Auf das Notarisierung
Front End kann via
URL in den
Metadaten auf
data.gv.at zugegriffen
werden
► Vom Front End kann
auf einen Blockchain
Explorer zugegriffen
werden
► Speichert Hashwerte
von Dokumenten für
den Vergleich
zwischen
verschiedenen Crawl
Runs
► Speichert Werte für
schnellen Abruf vom
Front End
► Jede Information kann
durch echte
Blockchain Einträge
nachgeprüft werden
Option 1: Service von
Drittanbieter z.B. Stampery:
• Vorteil: schnellere
Entwicklung,
• Nachteil: abhängig von
Drittanbieter, weniger
flexibel
Option 2: Entwicklung
eigener API:
• Vorteil: Flexibilität,
Unabhängigkeit
• Nachteil: Entwicklungs-
Aufwand
Smart Contract
Option 1: Bei Drittanbieter
nicht notwendig.
Option 2: Bei eigener API
ist Smart Contract
notwendig. Sollte so
einfach und kurz wie
möglich sein.
OGD Crawler OGD transaction scripts Notarisierung Front End Backend Database Blockchain Interface
21 3 4 5
14.
15. 15
Funktionsweise des Blockchain Interface
Öffentliche Blockchain
Merkle Path wird für Beweisfunktion
gespeichert.
Externes Service (Stampery) für Pilot
Dieses Service intern realisieren?
Merkle Tree