paint-brush
Wie Verschlüsselung Online-Abstimmungen sichern kannvon@nerv
621 Lesungen
621 Lesungen

Wie Verschlüsselung Online-Abstimmungen sichern kann

Zu lang; Lesen

Die größte Herausforderung beim Fern-E-Voting besteht darin, in einer unkontrollierten Umgebung und auf einer unsicheren Plattform ein hohes Maß an Sicherheit zu erreichen. E-Voting-Eigenschaften und viele verschiedene Klassifizierungen, die die Mindestanforderungen festlegen, sind bereits etabliert. Das Ziel besteht immer darin, zwei scheinbar sich gegenseitig ausschließende Eigenschaften in Einklang zu bringen: Überprüfbarkeit und Privatsphäre.
featured image - Wie Verschlüsselung Online-Abstimmungen sichern kann
Network Emergency Response Volunteers HackerNoon profile picture


Hinweis: Einige der hier dargestellten Informationen sind absichtlich zu stark vereinfacht. Einzelne Details hängen von der tatsächlichen Implementierung ab, da es zahlreiche Möglichkeiten und alternative kryptografische Techniken gibt, die die gleichen Ziele erreichen.


„Die größte Herausforderung beim Fern-E-Voting besteht darin, in einer unkontrollierten Umgebung und auf einer unsicheren Plattform ein hohes Maß an Sicherheit zu erreichen. E-Voting-Eigenschaften und viele verschiedene Klassifizierungen, die die Mindestanforderungen festlegen, sind bereits etabliert. Einige dieser Klassifizierungen sind genau gleich.“ Die größte Herausforderung beim Fern-E-Voting besteht darin, in einer unkontrollierten Umgebung und auf einer unsicheren Plattform ein hohes Maß an Sicherheit zu erreichen. E-Voting-Eigenschaften und viele verschiedene Klassifizierungen, die die Mindestanforderungen festlegen, sind bereits etabliert. Das Ziel besteht immer darin, zwei scheinbar sich gegenseitig ausschließende Eigenschaften in Einklang zu bringen : Überprüfbarkeit und Privatsphäre. Eigenschaften unter verschiedenen Namen wie: Vertraulichkeit, Integrität, Privatsphäre, Demokratie, Universalität, Überprüfbarkeit usw. Unabhängig davon besteht das Ziel immer darin, zwei scheinbar sich gegenseitig ausschließende Eigenschaften in Einklang zu bringen: Überprüfbarkeit und Privatsphäre.


Der Grundgedanke der Online-Abstimmung ist die Überprüfbarkeit in dem Sinne, dass die Abstimmungen verschlüsselt und öffentlich gemacht werden sollen, um den Wählern zweifelsfrei die Gewissheit zu geben, dass das gesamte Verfahren ordnungsgemäß durchgeführt wurde. Lassen Sie uns genauer untersuchen, wie dies erreicht werden kann, aber bevor Sie den Rest des Artikels lesen, empfehlen wir Ihnen, sich Ron Rivests Präsentation dieser Idee[ 1 ] bis 5:07 anzusehen.


Dann betrachten wir Folgendes:


Öffentliche Tabelle der Stimmen, die nur angehängt werden kann, nachdem eine cybersichere Abstimmung stattgefunden hat, wie sie auf einer Blockchain veröffentlicht wird


Der Wähler kennt eindeutig den Eintrag, der seiner Stimme entspricht


Wählerausweise werden verschlüsselt

Dabei ist v die Stimme, die nur mit einem privaten Schlüssel vollständig entschlüsselt werden kann, und E(v) die hinzugefügte Kryptographie


Und jetzt kommt die Mathematikmagie...


Durch die Verwendung homomorpher Verschlüsselung in E(v1), E(v2), E(v3) und E(v4) können wir zeigen, dass E(v1)+ E(v2) + E(v3) + E(v4) = E( v1+v2+v3+v4) !


Die endgültige Bilanz ist somit D( E(v1+v2+v3+v4) ), wobei D die Entschlüsselungsfunktion ist, die von jedem berechnet werden kann, sobald die Umfrage endet, ohne dass auf v einzeln zugegriffen werden muss: D(E(v1) ), D(E(v2) ) usw., die nur unter Verwendung der privaten Schlüssel entschlüsselt werden können ...


Besitz eines privaten Schlüssels


Nur der Wähler selbst kann v individuell entschlüsseln und tatsächlich überprüfen , ob die eigene Stimme korrekt registriert ist! Zusammenfassend lässt sich sagen, dass Wähler sowohl ihre Stimmen als auch die Endauszählung vertraulich und genau überprüfen können!


Homomorphe Verschlüsselung


Wow! Ich kann überprüfen, ob meine Stimme richtig ist! Aber wie kann ich sicher sein, dass die von anderen abgegebenen Stimmen auch ohne Verwendung ihrer privaten Schlüssel legal sind?


Nehmen wir an, wir schreiben den Wert 0 zu, um eine Ablehnung für einen bestimmten Richtlinienvorschlag zu bedeuten, der abgefragt wird, und 1, um Übereinstimmung zu gewährleisten, wodurch eine Menge möglicher Antworten {0,1} entsteht. Ein Prüfer, der jeder sein kann, möchte möglicherweise sicherstellen, dass alle in der Nur-Anhänge-Tabelle veröffentlichten Einträge einem gültigen Element in der Menge möglicher Antworten entsprechen und nicht irgendetwas anderem, wie etwa einem Eintrag mit dem Wert 100 . Zero-Knowledge-Proofs ermöglichen genau dies. Um zu verstehen, wie das geht, kann es hilfreich sein, zunächst zu verstehen, was ZKPs wirklich sind. „In der Kryptographie ist ein wissensfreier Beweis oder ein wissensfreies Protokoll eine Methode, mit der eine Partei (der Beweiser) einer anderen Partei (dem Prüfer) beweisen kann, dass eine bestimmte Aussage wahr ist, während der Beweiser es vermeidet, darüber hinaus weitere Informationen zu übermitteln die Tatsache, dass die Aussage tatsächlich wahr ist.“[ 2 ]


Zero-Knowledge-Beweise


Es mag widersprüchlich erscheinen, aber mit ZKPs kann jeder Wähler die Gültigkeit seiner Stimme eindeutig beweisen! Auch hier ist eine Abstimmung lediglich eine Darstellung eines Elements aus einer Reihe möglicher Entscheidungen. Um zu verstehen, wie ZKPs auf Abstimmungen angewendet werden sollten, empfehlen wir einen Blick auf die folgenden Artikel[ 3 ], [ 4 ], in denen diese Frage detaillierter behandelt wird.


ZKP-Überprüfung


Diese Technik kann dann auf Mengen größer als {0,1} erweitert werden, wobei die mathematischen Eigenschaften sowohl der homomorphen Verschlüsselung als auch der ZKPs erhalten bleiben, was komplexere Umfragen als die einfachen Antworten „Ja“, „Nein“, „Stimme zu“, „Nicht einverstanden“ ermöglicht. Dies führt zu interessanten Anwendungsfällen wie Wahlen mit mehreren Kandidaten, Volksabstimmungen, die unterschiedliche Lösungsvorschläge für ein bestimmtes Problem haben könnten, Fragebögen in der Marktforschung ...


Wir haben gerade besprochen, wie jeder die Endauszählung überprüfen kann, ob seine Stimme die beabsichtigte ist und wie alle anderen Stimmen legal waren! Dabei bleibt die Privatsphäre der Wähler gewahrt! Die Art und Weise, wie diese Algorithmen zusammengestellt werden, um die Eigenschaften sowohl der homomorphen Verschlüsselung als auch der ZKP zu wahren, ist komplex und erfordert tiefe Kenntnisse der Kryptographie, deren Richtigkeit mathematisch bewiesen werden kann.[ 5 ]


Jeder Wähler kann diese Überprüfungen selbst durchführen, ohne auf Dritte angewiesen zu sein! Bei echten E-Voting-Anwendungen aus der Ferne sind die Wähler die Prüfer der Wahlen!


Es gibt noch andere Details und kryptografische Techniken zur cybersicheren Online-Abstimmung, wie zum Beispiel die Verwendung von Stealth-Adressen[ 6 ], zumindest in Blockchains, die alle Transaktionen öffentlich halten, wie etwa Ethereum. Diese werden verwendet, um eine Verknüpfung von Wählern und ihren Geldbörsen zu vermeiden. Wir halten dies jedoch für ein technisches Detail, das nur die Softwareentwickler betrifft und nicht allen Nutzern von Online-Abstimmungen bekannt sein sollte, im Gegensatz zur homomorphen Verschlüsselung und ZKPs, deren Wissen dazu beiträgt, Vertrauen in das System aufzubauen.


Wie werden diese privaten Schlüssel generiert und an den Wähler weitergegeben, ohne die Sicherheit zu gefährden?


Letztendlich müssen die privaten Schlüssel an die wahre Identität des Benutzers gebunden sein, um Doppelausgaben zu verhindern. Ein Ansatz besteht darin, PKIs zu verwenden, die von vertrauenswürdigen Behörden bereitgestellt werden, wie z. B. staatlich ausgestellte eIDs, die in nationale Identitäts-Smartcards eingebettet sind ... Denn die öffentlichen Institutionen haben sich doch sicherlich ihre eigenen Mechanismen ausgedacht, um diese Schlüssel sicher aufzubewahren, oder?


Auf jeden Fall handelt es sich hierbei um ein Problem, das eher mit der digitalen Identität selbst zusammenhängt und das wir in einem zukünftigen Artikel analysieren werden, um dem Leser zu viele Details zu ersparen und die Informationen besser organisiert zu halten. Es genügt zu sagen, dass die digitale Identität selbst zwar ein komplexes Thema ist, es aber Möglichkeiten gibt, mit relativer Sicherheit sicherzustellen, dass jede digitale Person einzigartig ist, indem mehrere vertrauenswürdige Instanzen mit der Aufgabe betraut werden, die Identität einer Person zu bestätigen. Ein Zitat von Bob Marley beschreibt genau, was wir argumentieren werden:


„Einige Leute kann man manchmal täuschen, aber man kann nicht alle Leute immer täuschen“


Was passiert, wenn ein Wähler einen Betrug aufdeckt oder körperlich dazu gezwungen wird, auf eine bestimmte Art und Weise zu wählen?


Die erste zu ergreifende Maßnahme besteht darin, einen Kanal bereitzustellen, über den Menschen diese Situationen melden können, damit diese Vorkommnisse berücksichtigt werden. Wenn sie marginal sind und beispielsweise 0,01 % der Gesamtstimmen ausmachen, wäre dies keine wirklich problematische Situation, es sei denn, es handelt sich um ein sehr sensibles Referendum, bei dem demokratische Werte gewahrt werden müssen und bei dem die endgültige Bilanz nahe an der Abstimmung liegt Äquivalent einer 50/50-Situation. Dies kann dadurch abgemildert werden, dass der Mehrheitskonsens höher sein muss, beispielsweise 55/45, damit eine Umfrage als gültig angesehen wird.


In dem Szenario, in dem jemand feststellt, dass seine Stimme falsch registriert wurde, und wenn man bedenkt, dass der gesamte Apparat von der Blockchain unterstützt wird und somit nicht unter der Kontrolle eines bestimmten Systemadministrators steht, der den Dienst bereitstellt, ist der vernünftigere Ansatz anzunehmen, dass der Wahlautomat selbst kompromittiert ist und nicht die gesamte Blockchain selbst. Die direkteste Schutzmaßnahme wäre dann, dass der Wähler das Gerät und/oder das Betriebssystem wechselt. Dieses Problem hängt eher mit Cybersicherheitsbedrohungen wie Social Engineering und Malware zusammen. Es wird empfohlen, Open-Source-Hardware und -Software sowie amnesisches Betriebssystem zu verwenden[ 7 ]. Amnesic-Software kehrt immer in den ursprünglichen Konfigurationszustand zurück. Selbst wenn Wähler also Malware installieren, indem sie unbeabsichtigt auf einen Virus klicken und ihn ausführen, wird die Software durch einen Neustart des Computers auf eine unveränderte Konfiguration zurückgesetzt, wodurch diese Vorkommnisse effektiv gemindert werden.


Eine andere Situation, die man möglicherweise berücksichtigen möchte, ist eine Situation, in der der Wähler auf eine bestimmte Weise gezwungen wird, zu wählen, sei es physisch oder durch Erpressung. Der einzige Ansatz, sich gegen Zwang zu verteidigen, abgesehen vom Leben in einer anständigen Gesellschaft, besteht darin, eine erneute Stimmabgabe bei derselben Wahl zuzulassen. In diesem Bereich gibt es bereits Forschungsarbeiten[ 8 ], obwohl unseres Wissens noch Möglichkeiten zur Kombination dieser Technik mit allen anderen oben genannten Techniken umgesetzt werden müssen. Sicherlich gibt es einen Weg. In jedem Fall ist eine Wiedereröffnung der Wahlphase jederzeit möglich. Es sollte auch beachtet werden, dass die Verhinderung von Zwang aus offensichtlichen Gründen auch den Verkauf von Stimmen verhindern würde.


Wir plädieren nicht für einen völligen Verzicht auf die Stimmabgabe auf Papier, da die Stimmabgabe auf Papier zumindest in Präsenz eine ausgezeichnete Möglichkeit darstellt, die Identität (real oder digital) auf die Probe zu stellen, sind aber dennoch stark für deren Einführung Politik als ergänzendes Instrument, das schneller einen Konsens herbeiführen kann und gleichzeitig eine sekundäre Quelle zur Bestätigung der Ergebnisse der Papierabstimmung darstellt.

Sind wir schon da?

Wie der Informatiker Jeffrey Dean es eloquent ausdrückte:


„Die treibende Kraft hinter modernen Computerchiffren ist nicht Sicherheit, sondern Effizienz. Die Frage ist nicht, ob Sie eine sichere Verschlüsselung erstellen können. Du kannst. Die Frage ist, ob Sie eine Lösung erstellen können, die mit großen Datenmengen oder mit sehr begrenzter Hardware effizient funktioniert.“


Die Herausforderung der Blockchain-Technologie besteht genau in ihrer Fähigkeit, mit der wachsenden Benutzerbasis und dem wachsenden Rechenbedarf zu skalieren. Aktuelle Implementierungen kryptografischer Algorithmen bei Online-Abstimmungen, die durch Blockchain unterstützt werden, schätzen die Kosten auf etwa 10 US-Dollar pro Stimme, wie sie in Ethereum implementiert sind.[ 14 ] Wir bei Brightgov glauben, dass Verbesserungen vorgenommen werden können, um diesen Wert durch die Nutzung auf unter 1 US-Dollar zu senken eine schnellere Blockchain sowie die Optimierung der zugrunde liegenden mathematischen Algorithmen.


Im Laufe der Geschichte hat die Kryptographie eine wichtige Rolle bei der Veränderung des Laufs der Dinge gespielt. Die Caesar-Chiffre, eine der einfachsten Kryptografien, ist dafür bekannt, dass sie vor zwei Jahrtausenden vom römischen Kaiser verwendet wurde. Die Fähigkeit der Alliierten, mit der japanischen Verschlüsselungsmaschine Purple und der deutschen Enigma verschlüsselte Nachrichten abzufangen und zu entschlüsseln, war entscheidend für den entscheidenden Vorteil, der zur Beendigung des Zweiten Weltkriegs erforderlich war.


Für diejenigen, die sich mit Programmieren auskennen und daran interessiert sind, mehr zu erfahren, empfehlen wir die Lektüre unserer Forschungsarbeit.[ 15 ] Sie können auch mit CryptoBallot spielen, um sich mit dieser Art von Software vertraut zu machen.[ 16 ]


Zusammenfassend lässt sich sagen, dass cybersichere Online-Umfragen nicht nur möglich, sondern auch dringend erforderlich sind. Seine Einführung im politischen Raum könnte zu einem der verstörendsten Ereignisse in unserem Leben werden ... Alles, was Sie tun müssen, ist, den Algorithmen zu vertrauen, die auf Ihrem Computer und der Blockchain laufen, und wenn nicht, können Sie es jederzeit tun Rechnen Sie selbst mit Stift und Papier.


Verweise:


[1] „ Wurde IHRE Stimme gezählt? (feat. homomorphe Verschlüsselung) “ von Professor Ron Rivest, Numberphile, auf YouTube, 2016. https://www.youtube.com/watch?v=BYRTvoZ3Rho


[2] Zero-Knowledge-Proof- Eintrag auf Wikipedia, https://en.wikipedia.org/wiki/Zero-knowledge_proof


[3] „ Wie man ZKP verwendet, um die Set-Mitgliedschaft zu beweisen, ohne das Set oder das Mitglied offenzulegen“ von Anders Borch, Blog des Autors, 2019. https://blog.cyborch.com/how-to-use-cryptographic-accumulators-to -Set-Mitgliedschaft-beweisen-ohne-den-Set-oder-das-Mitglied preiszugeben/


[4] „ Zero-Knowledge Proofs for Set Membership “ von Dario Fiore, zu ZKProof Standards, 2020. https://zkproof.org/2020/02/27/zkp-set-membership/


[5] „ Non-interactive Zero-Knowledge from Homomorphic Encryption “ von Ivan Damgard et al., Theory of Cryptography Conference, 2006. https://cs.nyu.edu/\~nicolosi/papers/NonIntSi.pdf


[6] „ Stealth Address (Cryptocurrency) “ von Jake Frankenfield, Investopedia, 2022. https://www.investopedia.com/terms/s/stealth-address-cryptocurrency.asp


[7] Tails-Eintrag (Betriebssystem) auf Wikipedia, https://en.wikipedia.org/wiki/Tails_(operating_system)


[8] „ VoteAgain: Ein skalierbares, zwangsresistentes Wahlsystem “ von Wouter Lueks et al., Spring Labs, Universidad Carlos III de Madrid, 2020. https://arxiv.org/pdf/2005.11189.pdf


[9] Die Heritage Foundation , https://www.heritage.org/


[10] „ Ainda mais indícios de scame nas Legislativas 2022? “ Eintrag auf YouTube, auf Portugiesisch, 2022. https://www.youtube.com/watch?v=L8fA9aOuR9k


[11] „ AnaKarina denuncia „FRAUDE ELEITORAL“ por parte da CNE „Eintrag auf YouTube, auf Portugiesisch, Angola, 2022. https://www.youtube.com/watch?v=hLm8ocLgXCU


[12] „ Häufig gestellte Fragen – Wahlbetrug “, https://www.voteaustralia.org.au/faq_voter_fraud


[13] „ Democracy Index 2020: In Krankheit und Gesundheit? “ Bericht der Economist Intelligence Unit, 2020. https://www.eiu.com/n/campaigns/democracy-index-2020/


[14] „ ethVote: Towards Secure Voting with Distributed Ledgers “ von Johannes Mols und Emmanouil Vasilomanolakis, Universität Aalborg, Dänemark, 2020. https://www.researchgate.net/publication/341000573_ethVote_Towards_secure_voting_with_distributed_ledgers


[15] „ Remote E-Voting Overview “ von NERV, eine Papiereinreichung zur 14. ICEGOV-Konferenz im Jahr 2021, https://ia601401.us.archive.org/33/items/remote-e-voting-overview/Remote e -Abstimmungsübersicht.pdf


[16] CryptoBallot , https://github.com/cryptoballot/cryptoballot


Erscheint auch hier .