Community-Programm Die wichtigsten Punkte im Überblick
2019 hat die Post den Quellcode einer früheren Version ihres E-Voting-Systems mit vollständiger Verifizierbarkeit offengelegt. Seither entwickeln wir das System weiter und verbessern die Dokumentation und Auditierbarkeit. Die Rückmeldungen der Beteiligten waren für uns eine wichtige Basis für die Ausgestaltung des laufenden Programms, insbesondere was die Möglichkeiten zur Zusammenarbeit mit Interessierten betrifft. Die Offenlegung des Systems erfolgt fortwährend und nachvollziehbar. Der Austausch mit Fachleuten ist ein zentraler Bestandteil des E-Voting-Community-Programms. Auch nach der Erteilung der Grundbewilligung wird die Post das System weiterentwickeln und dabei auch künftig die Expertise von Fachleuten aus der ganzen Welt nutzen.
Die Post hat im Laufe von 2021 alle relevanten Komponenten und Dokumente ihres zukünftigen E-Voting-Systems veröffentlicht. Diese liegen dauerhaft für die öffentliche Überprüfung bereit. Nachstehend sind die Objekte aufgeführt und beschrieben. Auf GitLab sind sie ohne Anmeldung einsehbar.
Prüfbereiche E-Voting-System
E-Voting-System
Spezifikation System
Die Spezifikation entspricht einer detaillierten Beschreibung des kryptografischen Protokolls. Es beschreibt den Ablauf von der Konfiguration des elektronischen Urnengangs, über die Phase der Stimmabgabe bis zur Auszählung. Es enthält sogenannte Pseudo-Codes, die zur Veranschaulichung von Algorithmen dienen. Die Spezifikation beschreibt die allgemeineren Algorithmen und einige der ihnen zugrunden liegenden Bausteine.
Spezifikation auf GitLab einsehen
Architekturdokumentation
Die Architekturdokumentation beschreibt das Gesamtgefüge des E-Voting-Systems: angefangen mit den rechtlichen Rahmenbedingungen, über die eigentliche E-Voting-Lösung mit ihren verschiedenen Komponenten und Schnittstellen sowie Architektur-Grundsätze und -Entscheide bis hin zu den Qualitätsanforderungen, die an das System gestellt werden.
Architekturdokumentation auf GitLab einsehen
Quellcode System
Unter einem Quellcode versteht man einen Text, der in einer bestimmten Programmiersprache verfasst ist. Dieser nennt die genauen Regeln und Vorgaben, aus der eine Software entsteht. Der Quellcode des E-Voting-Systems enthält die Bausteine der gesamten Software, mit denen die Vorgaben des kryptografischen Protokolls umgesetzt werden.
Der veröffentlichte Quellcode des E-Voting-Systems ist so aufbereitet, dass er sich einfach kompilieren, testen und simulieren lässt.
Quellcode auf GitLab einsehen
Verifikationssoftware
Das neue E-Voting-System der Schweizerischen Post verfügt über vollständige Verifizierbarkeit. Eine kantonale Wahlbehörde kann mit diesem System nach der Schliessung der Urne alle elektronisch abgegebenen Stimmen überprüfen und sämtliche Unregelmässigkeiten feststellen. Für diese Überprüfung steht der Behörde eine Verifizierungssoftware zur Verfügung. Diese vom System unabhängige, mit keinem Netzwerk verbundene Software weist nach, ob die erzeugten kryptografischen Beweise korrekt registriert wurden. Sind alle Beweise korrekt, belegt dies die Unverfälschtheit aller elektronisch abgegebenen Stimmen und deren Auszählung. Die Software erkennt u.a., wenn der Server des Anbieters, auf denen das System läuft, unterwandert wurde.
Die Post veröffentlicht die Verifikationssoftware unter einer freizügigen Open-Source-Lizenz.
Auf dieser Basis können Dritte mit oder ohne kommerzielle Absichten die Software prüfen sowie neuentwickeln und als eigenständiges Produkt auf den Markt zu bringen. Die Absicht der Post ist damit, den Einsatz einer Verifikationssoftware von Dritten zu ermöglichen.
Die Verifikationssoftware auf GitLab einsehen
Kryptografische Grundlagen
Kryptografisches Protokoll
Dieses wissenschaftliche Dokument beschreibt in einer mathematischen Form das E-Voting-System der Post. Es zeigt auf, dass die kryptografischen Elemente die Wahrung des Stimmgeheimnisses sowie die individuelle und universelle Verifizierbarkeit gewährleisten.
Die Neuerungen am kryptografischen Protokoll seit 2019 sind in einer Begleitdokumentation beschrieben, die ebenfalls auf GitLab verfügbar ist.
Kryptografisches Protokoll auf GitLab einsehen
Symbolische Analyse
Die symbolische Analyse ist eine Ergänzung zu den kryptografischen Beweisen, um die Wahrung des Stimmgeheimnisses sowie die Einhaltung der individuellen und universellen Verifizierbarkeit des E-Voting-Systems der Post nachzuweisen. Die symbolische Analyse ist in der Programmiersprache Proverif verfasst und kann mithilfe einer geeigneten Software maschinell auf ihre Korrektheit überprüft werden.
Symbolische Analyse auf GitLab einsehen
Library der Crypto-Primitives
Die Spezifikationen zu den Crypto-Primitives sind ebenfalls verfügbar.
Library auf GitLab einsehen
Web-Applikation und Infrastruktur (Öffentlicher Intrusionstest)
Projektdokumentation
Systemdokumentation («Infrastructure Whitepaper»)
Das Infrastruktur-Whitepaper beschreibt die E-Voting-Infrastruktur mit allen umgesetzten Sicherheitsaspekten. Dazu gehören Informationen zu den Rechenzentren sowie der Aufbau und Einsatz der Infrastruktur und Datenbanken. Weiter sind die verschiedenen Sicherheitsmassnahmen beschrieben.
Systemdokumentation auf GitLab einsehen
Operation Whitepaper
Das Operation Whitepaper beschreibt die E-Voting-Betriebsabläufe mit allen implementierten Sicherheitsaspekten. Dazu gehören Informationen zur Betriebsorganisation, Support-Bestimmungen, Änderung und Wartung sowie Prozesse für Backup und Wiederherstellung.
Operations Whitepaper auf GitLab einsehen
Beschreibung Entwicklungsprozess
Die Post entwickelt das E-Voting-System in agiler Projektführung. Dieses Dokument beschreibt die Softwareentwicklung, gibt einen Überblick über die eingesetzten Tools und zeigt auf, wie die zahlreichen Qualitätsvorgaben bei der Entwicklung eingehalten und wie diese überprüft werden. Zudem ist das Vorgehen zur regelmässigen Offenlegung des Quellcodes beschrieben.
Beschreibung Entwicklungsprozess auf GitLab einsehen
Trusted Build
Der Trusted Build ist eine zuverlässige und überprüfbare Software-Kompilierung, um sicherzustellen, dass der ausführbare Release aus geprüften Komponenten erstellt wird. Es werden verfahrenstechnische und organisatorische Massnahmen zur Erfüllung der Anforderungen des VEleS durchgeführt.
Trusted Build auf GitLab einsehen
Testkonzept
Zur Entwicklung des E-Voting-Systems gehören Tests auf verschiedenen Ebenen. Die Software wird auf die Konformität mit den Anforderungen der Verordnung der Bundeskanzlei über die elektronische Stimmabgabe (VEleS) sowie auf internen Vorgaben der Post CH AG gemäss Standard ISO 25010 überprüft. Das Testkonzept beschreibt das gesamte Vorgehen mit den Testobjekten, der verwendeten Infrastruktur, dem Reporting und der Testorganisation.
Testkonzept auf GitLab einsehen
Möchten Sie News zum Community-Programm erhalten?
Melden Sie sich zu unserem Infomailing an und erhalten Sie wichtige Neuigkeiten direkt.
Was Sie erwartet
Was erwartet Sie, wenn Sie am E-Voting-Community-Programm teilnehmen? Nachstehend finden Sie die wichtigsten Punkte im Überblick:
Keine Registrierung nötig
Die Durchsicht der technischen Daten und Dokumente auf GitLab ist ohne Registrierung möglich.
Code of Conduct
Die kurz gehaltenen Verhaltensregeln – der Code of Conduct – ermöglichen, dass wir gemeinsam vorwärts kommen.
Bug-Bounty-Programm
Bestätigte Schwachstellen werden mit Belohnungen von bis zu EUR 230'000 belohnt. Es gibt auch weitere Kanäle, um beizutragen.
Kontaktieren Sie unsere Spezialisten
Haben Sie Fragen zu Dokumenten, Befunden oder zum Stand der Arbeiten? Kontaktieren Sie uns direkt, unser E-Voting-Team gibt gerne Auskunft.
Übersicht und Austausch über die Befunde
Möchten Sie einen Befund melden, sich mit anderen Usern austauschen oder der Community Fragen stellen?
Weiterentwicklung seit 2019: Überblick
Alle ReleaseNotes und Neuerungen seit 2019 sind in einer Übersicht verfügbar.
Tests durchführen
Sie können den Quellcode testen, kompilieren, teilen und verändern. Dafür stehen Testdateien bereit.
Urnengang durchspielen
Für die Durchführung eines Urnengangs auf Ihrem Computer stehen eine Anleitung sowie verschiedene Testdateien zur Verfügung.
Gute Auditierbarkeit
Die Post hat Struktur, Lesbarkeit und Verständlichkeit des Quellcodes überprüfen lassen und entscheidend verbessert.
Transparente Entwicklung
Änderungen am Quellcode sind publiziert, so dass Sie die einfache Weiterentwicklung mitverfolgen können.
Intrusionstest
Die Post führt den öffentlichen Intrusionstest wiederkehrend durch. Informationen zum nächsten Test folgen.
Das könnte Sie auch interessieren
E-Voting
Mit der E-Voting-Lösung der Post können Stimmberechtigte online abstimmen und wählen. Diverse Gemeinden und Kantone nutzen den sicheren Service.
