Hersiening van die afgeleë elektroniese stemstelsel van die Sentrale Verkiesingskommissie van die Russiese Federasie

Op 31 Augustus 2020 het 'n openbare toets van die afgeleë elektroniese stemstelsel (hierna verwys as DEG) met behulp van blokkettingtegnologie, ontwikkel in opdrag van die Sentrale Verkiesingskommissie van die Russiese Federasie, plaasgevind.

Om kennis te maak met die nuwe elektroniese stemstelsel en te verstaan ​​watter rol blokkettingtegnologie daarin speel en watter ander komponente gebruik word, begin ons 'n reeks publikasies gewy aan die belangrikste tegniese oplossings wat in die stelsel gebruik word. Ons stel voor om in orde te begin - met die vereistes vir die stelsel en die funksies van die deelnemers aan die proses

Stelselvereistes

Die basiese vereistes wat op enige stemstelsel van toepassing is, is oor die algemeen dieselfde vir tradisionele persoonlike stemming en vir elektroniese afstandstemming, en word bepaal deur die Federale Wet van 12.06.2002 Junie 67 N 31.07.2020-FZ (soos gewysig op XNUMX Julie XNUMX) "Op basiese waarborge stemreg en die reg om deel te neem aan 'n referendum van burgers van die Russiese Federasie."

  1. Stemming in verkiesings en referendums is geheim, uitgesluit die moontlikheid van enige beheer oor die wil van 'n burger (Artikel 7).
  2. Die geleentheid om te stem moet slegs verskaf word aan persone wat 'n aktiewe reg het om vir hierdie stem te stem.
  3. Een kieser - een stem, "dubbel" stem word nie toegelaat nie.
  4. Die stemproses moet oop en deursigtig wees vir kiesers en waarnemers.
  5. Die integriteit van die uitgebrachte stem moet verseker word.
  6. Dit behoort nie moontlik te wees om die tussentydse stemuitslae te bereken voordat die stemming afgehandel is nie.

Dus, ons het drie deelnemers: die kieser, die verkiesingskommissie en die waarnemer, tussen wie die volgorde van interaksie bepaal word. Dit is ook moontlik om 'n vierde deelnemer uit te sonder - die liggame wat registrasie van burgers in die gebied uitvoer (hoofsaaklik die Ministerie van Binnelandse Sake, sowel as ander uitvoerende owerhede), aangesien aktiewe stemreg geassosieer word met burgerskap en plek van registrasie.

Al hierdie deelnemers het interaksie met mekaar.

Interaksie protokol

Kom ons kyk na die stemproses by 'n tradisionele stemlokaal, met 'n stembus en papierstembriewe. In 'n algemeen vereenvoudigde vorm lyk dit so: 'n kieser kom na die stemlokaal en toon 'n identifikasiedokument (paspoort). Daar is 'n ringverkiesingskommissie by die stemlokaal, wie se lid die identiteit van die kieser en sy teenwoordigheid in die kieserslys wat vroeër saamgestel is, verifieer. Indien die kieser gevind word, gee 'n lid van die kommissie die kieser 'n stembrief, en die kieser teken vir ontvangs van die stembrief. Hierna gaan die kieser na die stemhokkie, vul die stembrief in en plaas dit in die stembus. Om te verseker dat alle prosedures streng deur die wet gevolg word, word dit alles deur waarnemers (verteenwoordigers van kandidate, openbare moniteringsinstellings) gemonitor. Nadat die stemming afgehandel is, tel die verkiesingskommissie, in die teenwoordigheid van waarnemers, die stemme en stel die stemuitslae vas.

Die eiendom wat nodig is om in 'n tradisionele stemstelsel te stem, word verskaf deur organisatoriese maatreëls en die gevestigde prosedure vir die interaksie van deelnemers: kontrolering van kiesers se paspoorte, persoonlik teken vir stembriewe, gebruik van stemhokkies en verseëlde stembusse, die prosedure vir die tel van stemme, ens. .

Vir 'n inligtingstelsel, wat 'n afgeleë elektroniese stemstelsel is, word hierdie interaksieorde 'n protokol genoem. Aangesien al ons interaksies digitaal word, kan hierdie protokol beskou word as 'n algoritme wat geïmplementeer word deur individuele komponente van die stelsel, en 'n stel organisatoriese en tegniese maatreëls wat deur gebruikers uitgevoer word.

Digitale interaksie stel sekere vereistes aan die geïmplementeerde algoritmes. Kom ons kyk na die aksies wat uitgevoer word op 'n tradisionele webwerf in terme van inligtingstelsels en hoe dit geïmplementeer word in die DEG-stelsel wat ons oorweeg.

Kom ons sê dadelik dat blokkettingtegnologie nie 'n "silwer koeël" is wat alle probleme oplos nie. Om so 'n stelsel te skep, was dit nodig om 'n groot aantal sagteware- en hardewarekomponente te ontwikkel wat verantwoordelik is vir verskillende take, en dit met 'n enkele proses en protokol te verbind. Maar terselfdertyd is al hierdie komponente in wisselwerking met die blockchain-platform.

Stelsel komponente

Vanuit 'n tegniese oogpunt is die DEG-stelsel 'n sagteware- en hardewarekompleks (hierna verwys as SBM), wat 'n stel komponente kombineer om interaksie tussen deelnemers aan die verkiesingsproses in 'n verenigde inligtingsomgewing te verseker.

Die interaksiediagram van die komponente en deelnemers van die DEG PTC-stelsel word in die figuur hieronder getoon.

Hersiening van die afgeleë elektroniese stemstelsel van die Sentrale Verkiesingskommissie van die Russiese Federasie
Klikbaar

Afgeleë stemproses

Nou sal ons die proses van elektroniese stemming op afstand en die implementering daarvan deur die komponente van die DEG-sagteware- en hardewarekompleks in detail oorweeg.

Volgens die Prosedure vir elektroniese afstandstemming, om ingesluit te word by die lys van deelnemers aan elektroniese afstandstemming, moet 'n kieser 'n aansoek op die Staatsdiensteportaal indien. Terselfdertyd kan slegs die gebruikers wat 'n bevestigde rekening het en suksesvol vergelyk is met die kiesersregister, referendumdeelnemers van die Staat Outomatiese Stelsel "Verkiesings" -stelsel so 'n aansoek indien. Nadat die aansoek ontvang is, word die kieser se data weer deur die Sentrale Verkiesingskommissie van Rusland nagegaan en opgelaai na Kieserslys-komponent PTC DEG. Die aflaaiproses gaan gepaard met die aantekening van unieke identifiseerders in die blokketting. Lede van die verkiesingskommissie en waarnemers het toegang om die lys te bekyk deur 'n spesiale outomatiese werkstasie op die perseel van die verkiesingskommissie te gebruik.

Wanneer 'n kieser 'n stemlokaal besoek, word hy gewaarmerk (in vergelyking met paspoortdata) en in die kieserslys geïdentifiseer, asook om te kyk dat hierdie kieser nie voorheen 'n stembrief ontvang het nie. 'n Belangrike punt hier is dat dit onmoontlik is om vas te stel of die kieser die ontvangde stembrief in die stembus geplaas het of nie, slegs die feit dat die stembrief reeds vroeër uitgereik is. In die geval van PTC DEG verteenwoordig 'n kieser se besoek 'n gebruiker se versoek om DEG-portaal is 'n webwerf geleë by vybory.gov.ru Soos 'n tradisionele stemlokaal, bevat die webwerf inligtingsmateriaal oor deurlopende verkiesingsveldtogte, inligting oor kandidate en ander inligting. Om identifikasie en verifikasie uit te voer, word die ESIA van die Staatsdiensteportaal gebruik. Die algemene identifikasieskema word dus gehandhaaf beide wanneer aansoek gedoen word en wanneer gestem word.

Hierna begin die anonimiseringsprosedure - die kieser kry 'n stembrief wat geen identifikasiemerke bevat nie: dit het nie 'n nommer nie, dit hou geensins verband met die kieser aan wie dit uitgereik is nie. Dit is interessant om die opsie te oorweeg wanneer die stemlokaal toegerus is met elektroniese stemkomplekse - in hierdie geval word anonimisering soos volg uitgevoer: in plaas van 'n papierstembrief, word die kieser gevra om uit 'n stapel enige kaart te kies met 'n strepieskode waarmee hy sal die stemapparaat nader. Daar is geen inligting oor die kieser op die kaart nie, slegs 'n kode wat bepaal watter stembrief die toestel moet verskaf wanneer so 'n kaart aangebied word. Met 'n heeltemal digitale interaksie is die hooftaak om 'n anonimiseringsalgoritme te implementeer sodat dit aan die een kant onmoontlik is om enige gebruiker-identifikasiedata vas te stel, en aan die ander kant om die vermoë te bied om slegs te stem aan die gebruikers wat voorheen in die lys geïdentifiseer is. Om hierdie probleem op te los, gebruik die DEG PTK 'n kriptografiese algoritme, bekend in die professionele omgewing as 'n "blinde elektroniese handtekening." Ons sal in die volgende publikasies in detail daaroor praat, en sal ook die bronkode publiseer; u kan ook bykomende inligting van publikasies op die internet insamel deur sleutelwoorde te gebruik - "kriptografiese geheime stemprotokolle" of "blinde handtekening"

Dan vul die kieser die stembrief in op 'n plek waar dit onmoontlik is om die keuse wat gemaak is te sien ('n geslote hokkie) - as die kieser in ons inligtingstelsel op afstand stem, dan is die enigste sodanige plek die gebruiker se persoonlike toestel. Om dit te doen, word die gebruiker eers na 'n ander domein oorgeplaas − na die anonieme sone. Voordat u oorskakel, kan u u VPN-verbinding verhoog en u IP-adres verander. Dit is op hierdie domein dat die stembrief vertoon word en die gebruiker se keuse verwerk word. Die bronkode wat op die gebruiker se toestel loop, is aanvanklik oop – dit kan in die blaaier gesien word.

Sodra die keuse gemaak is, word die stembrief op die gebruiker se toestel geïnkripteer deur 'n spesiale enkripsieskema te gebruik, gestuur en aangeteken in komponent "Verspreide berging en tel van stemme", gebou op die blockchain-platform.

Een van die belangrikste kenmerke van die protokol is die onmoontlikheid om die stemuitslae te ken voordat dit voltooi is. By 'n tradisionele stemlokaal word dit verseker deur die stembus te verseël en deur waarnemers te moniteer. In digitale interaksies is die beste oplossing om die kieser se keuse te enkripteer. Die enkripsie-algoritme wat gebruik word, verhoed dat die resultate geopenbaar word voordat die stemming voltooi is. Hiervoor word 'n skema met twee sleutels gebruik: een (openbare) sleutel, wat aan alle deelnemers bekend is, word gebruik om die stem te enkripteer. Dit kan nie met dieselfde sleutel gedekripteer word nie; 'n tweede (privaat) sleutel is nodig. Die private sleutel word verdeel tussen deelnemers aan die verkiesingsproses (lede van verkiesingskommissies, die openbare kamer, operateurs van telbedieners, ensovoorts) op so 'n manier dat elke individuele deel van die sleutel nutteloos is. Jy kan eers met dekripsie begin nadat die private sleutel afgehaal is. In die stelsel wat oorweeg word, sluit die sleutelskeidingsprosedure verskeie stadiums in: skeiding van 'n deel van die sleutel binne die stelsel, skeiding van die sleutel buite die stelsel, en generering van 'n gemeenskaplike publieke sleutel. Ons sal in detail die proses van enkripsie en die werk met kriptografiese sleutels in toekomstige publikasies wys.

Nadat die sleutel versamel en afgelaai is, begin die berekening van die resultate vir hul verdere opname in die blokketting en daaropvolgende aankondiging. 'n Kenmerk van die stelsel wat oorweeg word, is die gebruik van homomorfiese enkripsietegnologie. Ons sal hierdie algoritme in detail beskryf in toekomstige publikasies en praat oor hoekom hierdie tegnologie wyd gebruik word om stemstelsels te skep. Kom ons let nou op die hoofkenmerk daarvan: geënkripteerde stembriewe wat in die rekeningkundige stelsel aangeteken is, kan sonder dekripsie gekombineer word op so 'n manier dat die resultaat van die dekripteer van so 'n gekombineerde syferteks die opgesomde waarde vir elke keuse in die stembriewe sal wees. Terselfdertyd implementeer die stelsel natuurlik wiskundige bewyse van die korrektheid van so 'n berekening, wat ook in die rekeningkundige stelsel aangeteken word en deur waarnemers geverifieer kan word.

Hieronder is 'n uiteensetting van die stemproses.

Hersiening van die afgeleë elektroniese stemstelsel van die Sentrale Verkiesingskommissie van die Russiese Federasie
Klikbaar

Blockchain platform

Noudat ons die hoofkenmerke van die implementering van 'n afgeleë elektroniese stemstelsel ondersoek het, laat ons die vraag beantwoord waarmee ons begin het - watter rol speel blockchain-tegnologie hierin en watter probleme kan dit opgelos word?

In die geïmplementeerde afgeleë stemstelsel los blockchain-tegnologie 'n sekere reeks probleme op.

  • Die basiese taak is om die integriteit van inligting binne die raamwerk van stemming, en eerstens, stemme te verseker.
  • Verseker deursigtigheid van uitvoering en onveranderlikheid van programkode geïmplementeer in die vorm van slim kontrakte.
  • Versekering van die beskerming en onveranderlikheid van data wat in die stemproses gebruik word: die lys van kiesers, die sleutels wat gebruik word om stembriewe in verskeie stadiums van die kriptografiese protokol te enkripteer, ensovoorts.
  • Die verskaffing van gedesentraliseerde databerging, met elke deelnemer met 'n absoluut identiese kopie, bevestig deur die eienskappe van konsensus in die netwerk.
  • Die vermoë om transaksies te sien en die vordering van die stemming op te spoor, wat ten volle in die blokketting weerspieël word, vanaf die begin tot die aantekening van die berekende resultate.

Ons sien dus dat sonder om hierdie tegnologie te gebruik, dit byna onmoontlik is om die nodige eienskappe in die stemstelsel te bereik, sowel as om daarin te vertrou.

Die funksionaliteit van die blockchain-platform wat gebruik word, word verryk deur die gebruik van slim kontrakte. Slim kontrakte kontroleer elke transaksie met geënkripteerde stembriewe vir die egtheid van elektroniese en "blinde" handtekeninge, en voer ook basiese kontroles uit oor die korrektheid van die invul van die geënkripteerde stembrief.

Boonop is die "Verspreide berging en tel van stemme"-komponent in die oorweegde elektroniese afgeleë stemstelsel nie net beperk tot blokkettingnodes nie. Vir elke nodus kan 'n aparte bediener ontplooi word wat die hoof kriptografiese funksies van die stemprotokol implementeer - telbedieners.

Tel bedieners

Dit is gedesentraliseerde komponente wat die prosedure verskaf vir verspreide generering van 'n stembriefenkripsiesleutel, sowel as dekripsie en berekening van stemresultate. Hul take sluit in:

  • Verseker verspreide generering van 'n deel van die stembriefenkripsiesleutel. Die sleutelgenereringsprosedure sal in die volgende artikels bespreek word;
  • Kontroleer die korrektheid van die geënkripteerde stembrief (sonder om dit te dekripteer);
  • Verwerking van stembriewe in geënkripteerde vorm om die finale syferteks te genereer;
  • Verspreide dekodering van finale resultate.

Elke stadium van uitvoering van die kriptografiese protokol word in die blockchain-platform aangeteken en kan deur waarnemers nagegaan word vir korrektheid.

Om die stelsel die nodige eienskappe in verskeie stadiums van die stemproses te gee, word die volgende kriptografiese algoritmes gebruik:

  • Elektroniese handtekening;
  • Blinde ondertekening van die kieser se publieke sleutel;
  • ElGamal elliptiese kromme enkripsie skema;
  • Zero-kennis bewyse;
  • Pedersen 91 DKG (Distributed Key Generation) protokol;
  • Privaat sleutel deel protokol met behulp van Shamir se skema.

Die kriptografiese diens sal in meer besonderhede in die volgende artikels bespreek word.

Resultate van

Kom ons som 'n paar tussenresultate van die oorweging van die elektroniese afgeleë stemstelsel op. Ons het die proses en die hoofkomponente wat dit implementeer kortliks beskryf, en ook die maniere geïdentifiseer om die eienskappe wat nodig is vir enige stemstelsel te bereik:

  • Kieserverifieerbaarheid. Die stelsel aanvaar slegs stemme van geverifieerde kiesers. Hierdie eiendom word verseker deur kiesers te identifiseer en te staaf, sowel as die opname van die kieserslys en die feit om toegang tot die stembrief in die blokketting te verskaf.
  • Anonimiteit. Die stelsel verseker die stemgeheim, verskans in die wetgewing van die Russiese Federasie; die identiteit van die kieser kan nie uit 'n geënkripteerde stembrief bepaal word nie. Geïmplementeer met behulp van 'n "blinde handtekening"-algoritme en 'n anonieme sone vir die invul en stuur van die stembrief.
  • Vertroulikheid van stemme. Organiseerders en ander stemdeelnemers kan nie die uitslag van die stemming uitvind voordat dit afgehandel is, stemme getel en die finale uitslae ontsyfer is nie. Vertroulikheid word verkry deur die stembriewe te enkripteer en dit onmoontlik te maak om te dekripteer tot ná stemming.
  • Data onveranderlikheid. Kieserdata kan nie verander of uitgevee word nie. Onveranderlike databerging word verskaf deur die blockchain-platform.
  • Verifieerbaarheid. Die waarnemer kan verifieer dat die stemme korrek getel is.
  • Betroubaarheid. Die stelselargitektuur is gebaseer op die beginsels van desentralisasie, wat die afwesigheid van 'n enkele "punt van mislukking" verseker.

Bron: will.com

Voeg 'n opmerking