Revizio de la malproksima elektronika balotsistemo de la Centra Elekta Komisiono de la Rusa Federacio

La 31-an de aŭgusto 2020, okazis publika provo de la fora elektronika balotsistemo (ĉi-poste nomata DEG) uzanta blokĉenan teknologion, evoluigitan laŭ ordono de la Centra Elekta Komisiono de la Rusa Federacio.

Por konatiĝi kun la nova elektronika balotsistemo kaj kompreni, kian rolon ludas en ĝi blokĉenteknologio kaj kiajn aliajn komponantojn oni uzas, ni komencas serion da publikaĵoj dediĉitaj al la ĉefaj teknikaj solvoj uzataj en la sistemo. Ni proponas komenci en ordo - kun la postuloj por la sistemo kaj la funkcioj de la partoprenantoj en la procezo

Sistemaj Postuloj

La bazaj postuloj validas por iu ajn balotsistemo estas ĝenerale la samaj por tradicia enpersona voĉdonado kaj por malproksima elektronika voĉdonado, kaj estas determinitaj de la Federacia Leĝo de la 12.06.2002-a de junio 67 N 31.07.2020-FZ (kiel modifita la XNUMX-an de julio XNUMX) "Pri Bazaj Garantioj voĉdonrajtoj kaj la rajto partopreni en referendumo de civitanoj de la Rusa Federacio."

  1. Voĉdoni en elektoj kaj referendumoj estas sekreta, ekskludante la eblecon de ajna kontrolo de la volo de civitano (Artikolo 7).
  2. La ŝanco voĉdoni estu donita nur al personoj, kiuj havas aktivan rajton voĉdoni por ĉi tiu voĉdono.
  3. Unu balotanto - unu voĉo, "duobla" voĉdonado ne estas permesita.
  4. La balotprocezo devas esti malferma kaj travidebla al balotantoj kaj observantoj.
  5. La integreco de la voĉdonado devas esti certigita.
  6. Ne devus esti eble kalkuli la provizorajn balotrezultojn antaŭ ol la voĉdonado estas finita.

Do, ni havas tri partoprenantojn: la balotanto, la elektkomisiono kaj la observanto, inter kiuj la ordo de interago estas determinita. Eblas ankaŭ distingi kvaran partoprenanton - la korpojn kiuj efektivigas registradon de civitanoj en la teritorio (ĉefe la Ministerio pri Internaj Aferoj, same kiel aliaj plenumaj aŭtoritatoj), ĉar aktiva voĉdonrajto estas rilata al civitaneco kaj loko de registrado.

Ĉiuj ĉi tiuj partoprenantoj interagas unu kun la alia.

Protokolo de interagado

Ni konsideru la balotprocezon ĉe tradicia balotejo, kun balotujo kaj paperaj balotiloj. En ĝenerale simpligita formo, ĝi aspektas jene: balotanto venas al la balotejo kaj prezentas identigan dokumenton (pasporton). Ĉe la balotejo estas elektokomisiono de policdistrikto, kies membro kontrolas la identecon de la balotanto kaj lian ĉeeston en la balotlisto kiu estis kompilita pli frue. Se la balotanto estas trovita, membro de la komisiono donas al la balotanto baloton, kaj la balotanto subskribas por ricevo de la baloto. Post tio, la balotanto iras al la balotbundo, plenigas la baloton kaj metas ĝin en la balotujon. Por certigi, ke ĉiuj proceduroj estas strikte sekvataj de leĝo, observantoj (reprezentantoj de kandidatoj, publikaj kontrolaj institucioj) kontrolas ĉion ĉi. Post kiam la balotado estas finita, la elektkomisiono, en la ĉeesto de observantoj, nombras la voĉojn kaj establas la balotrezultojn.

La propraĵoj necesaj por voĉdonado en tradicia voĉdonadsistemo estas provizitaj de organizaj mezuroj kaj la establita proceduro por la interago de partoprenantoj: kontroli la pasportojn de balotantoj, persone subskribi por balotiloj, uzi voĉdonejojn kaj sigelitajn balotujojn, la proceduron por kalkuli voĉojn, ktp. .

Por informsistemo, kiu estas malproksima elektronika balotsistemo, ĉi tiu interaga ordo nomiĝas protokolo. Ĉar ĉiuj niaj interagoj fariĝas ciferecaj, ĉi tiu protokolo povas esti konsiderata kiel algoritmo, kiu estas efektivigita de individuaj komponantoj de la sistemo, kaj aro de organizaj kaj teknikaj mezuroj faritaj de uzantoj.

Cifereca interagado trudas certajn postulojn al la efektivigitaj algoritmoj. Ni rigardu la agojn faritajn sur tradicia retejo laŭ informsistemoj kaj kiel tio estas efektivigita en la DEG-sistemo, kiun ni pripensas.

Ni diru tuj, ke blokĉena teknologio ne estas "arĝenta kuglo", kiu solvas ĉiujn problemojn. Por krei tian sistemon, estis necese evoluigi grandan nombron da programaro kaj aparataro komponantoj respondecaj por malsamaj taskoj, kaj konekti ilin per ununura procezo kaj protokolo. Sed samtempe, ĉiuj ĉi tiuj komponantoj interagas kun la blokĉena platformo.

Sistemkomponentoj

De teknika vidpunkto, la DEG-sistemo estas programaro kaj aparataro komplekso (ĉi-poste nomata STC), kiu kombinas aron de komponantoj por certigi interagadon inter partoprenantoj en la balotprocezo en unuigita informa medio.

La interaga diagramo de la komponentoj kaj partoprenantoj de la DEG PTC-sistemo estas montrita en la figuro malsupre.

Revizio de la malproksima elektronika balotsistemo de la Centra Elekta Komisiono de la Rusa Federacio
Klakebla

Malproksima balotprocezo

Nun ni konsideros detale la procezon de malproksima elektronika voĉdonado kaj ĝian efektivigon de la komponantoj de la programaro kaj aparataro DEG.

Laŭ la Proceduro por fora elektronika voĉdonado, por esti inkluzivita en la listo de partoprenantoj en fora elektronika voĉdonado, balotanto devas sendi peton en la portalo de Ŝtataj Servoj. Samtempe, nur tiuj uzantoj, kiuj havas konfirmitan konton kaj sukcese komparitaj kun la registro de balotantoj, referendumaj partoprenantoj de la sistemo "Elektoj" de la Ŝtata Aŭtomatigita Sistemo povas sendi tian peton. Post ricevi la kandidatiĝon, la datumoj de la balotanto estas denove kontrolitaj de la Centra Elekta Komisiono de Rusio kaj alŝutitaj al Elektrolisto-komponento PTC DEG. La elŝuta procezo estas akompanata de la registrado de unikaj identigiloj en la blokĉeno. Membroj de la elektkomisiono kaj observantoj havas aliron al spektado de la listo uzante specialan aŭtomatigitan laborstacion situantan en la regiono de la elektokomisiono.

Kiam balotanto vizitas balotejon, li estas aŭtentikigita (kompare kun pasportdatenoj) kaj identigita en la balotlisto, kaj ankaŭ kontrolas ke tiu balotanto ne antaŭe ricevis baloton. Grava punkto ĉi tie estas, ke estas neeble konstati ĉu la balotanto metis la ricevitan baloton en la balotujon aŭ ne, nur la fakton, ke la baloto jam estis eldonita pli frue. En la kazo de PTC DEG, vizito de balotanto reprezentas peton de uzanto al DEG portalo estas retejo situanta ĉe vybory.gov.ru Kiel tradicia balotejo, la retejo enhavas informmaterialojn pri daŭrantaj balotkampanjoj, informojn pri kandidatoj kaj aliajn informojn. Por efektivigi identigon kaj aŭtentikigon, la ESIA de la Ŝtata Servo-Portalo estas uzata. Tiel, la ĝenerala identigskemo estas konservita kaj dum aplikado kaj dum voĉdonado.

Post tio komenciĝas la anonimiga proceduro - la balotanto ricevas baloton, kiu ne enhavas identigajn signojn: ĝi ne havas numeron, ĝi neniel rilatas al la balotanto, al kiu ĝi estis eldonita. Estas interese konsideri la opcion kiam la balotejo estas ekipita per elektronikaj voĉdonaj kompleksoj - en ĉi tiu kazo, anonimigo estas farita jene: anstataŭ papera baloto, la balotanto estas petata elekti el stako ajnan karton kun strekkodo, per kiu li alproksimiĝos al la voĉdona aparato. Ekzistas neniuj informoj pri la balotanto sur la karto, nur kodo kiu determinas kiun baloton la aparato devas provizi dum prezentado de tia karto. Kun tute cifereca interagado, la ĉefa tasko estas efektivigi anonimigan algoritmon tia ke, unuflanke, estas neeble establi ajnajn uzantidentajn datumojn, kaj aliflanke, provizi la kapablon voĉdoni nur al tiuj uzantoj, kiuj estis antaŭe identigitaj en la listo. Por solvi ĉi tiun problemon, la DEG PTK uzas ĉifrikan algoritmon, konatan en la profesia medio kiel "blinda elektronika subskribo". Ni parolos pri ĝi detale en la sekvaj eldonaĵoj, kaj ankaŭ publikigos la fontkodon; vi ankaŭ povas kolekti pliajn informojn de publikaĵoj en la Interreto uzante ŝlosilvortojn - "kriptografaj sekretaj voĉdonaj protokoloj" aŭ "blinda subskribo"

Tiam la balotanto plenigas la baloton en loko, kie estas neeble vidi la elekton faritan (fermita budo) - se en nia informsistemo la balotanto voĉdonas malproksime, tiam la sola tia loko estas la persona aparato de la uzanto. Por fari tion, la uzanto unue estas translokigita al alia domajno − al la anonima zono. Antaŭ ol ŝanĝi, vi povas pliigi vian VPN-konekton kaj ŝanĝi vian IP-adreson. Estas sur ĉi tiu domajno ke la baloto estas montrata kaj la elekto de la uzanto estas procesita. La fontkodo kiu funkcias sur la aparato de la uzanto estas komence malfermita - ĝi videblas en la retumilo.

Post kiam la elekto estas farita, la baloto estas ĉifrita sur la aparato de la uzanto uzante specialan ĉifradan skemon, sendita kaj registrita en komponanto "Disdonita stokado kaj nombrado de voĉoj", konstruita sur la blokĉena platformo.

Unu el la plej gravaj karakterizaĵoj de la protokolo estas la malebleco scii la balotrezultojn antaŭ ol ĝi estas kompletigita. Ĉe tradicia balotejo, tio estas certigita per sigelo de la balotujo kaj monitorado de observantoj. En ciferecaj interagoj, la plej bona solvo estas ĉifri la elekton de la balotanto. La ĉifrada algoritmo uzita malhelpas la rezultojn de esti rivelitaj antaŭ ol la voĉdonado estas kompletigita. Por tio oni uzas skemon kun du ŝlosiloj: unu (publika) ŝlosilo, kiu estas konata de ĉiuj partoprenantoj, estas uzata por ĉifri la voĉon. Ĝi ne povas esti deĉifrita per la sama ŝlosilo; dua (privata) ŝlosilo estas necesa. La privata ŝlosilo estas dividita inter partoprenantoj en la elektprocezo (membroj de elektkomisionoj, la publika ĉambro, funkciigistoj de nombraj serviloj, ktp) tiel ke ĉiu individua parto de la ŝlosilo estas senutila. Vi povas komenci malĉifri nur post kiam la privata ŝlosilo estas kolektita. En la konsiderata sistemo, la ŝlosila apartigproceduro inkluzivas plurajn stadiojn: apartigo de parto de la ŝlosilo ene de la sistemo, apartigo de la ŝlosilo ekster la sistemo, kaj generacio de komuna publika ŝlosilo. Ni montros detale la procezon de ĉifrado kaj laboro kun ĉifraj ŝlosiloj en estontaj publikaĵoj.

Post kiam la ŝlosilo estas kolektita kaj elŝutita, la kalkulo de la rezultoj komenciĝas por ilia plua registrado en la blokĉeno kaj posta anonco. Karakterizaĵo de la konsiderata sistemo estas la uzo de homomorfa ĉifrada teknologio. Ni priskribos ĉi tiun algoritmon detale en estontaj publikaĵoj kaj parolos pri kial ĉi tiu teknologio estas vaste uzata por krei balotsistemojn. Nun ni notu ĝian ĉefan funkcion: ĉifritaj balotoj registritaj en la kontada sistemo povas esti kombinitaj sen deĉifrado tiel, ke la rezulto de malĉifrado de tia kombinita ĉifroteksto estos la sumigita valoro por ĉiu elekto en la balotoj. Samtempe, la sistemo, kompreneble, efektivigas matematikajn pruvojn pri la ĝusteco de tia kalkulo, kiuj ankaŭ estas registritaj en la kontada sistemo kaj povas esti kontrolitaj de observantoj.

Malsupre estas skizo de la balotprocezo.

Revizio de la malproksima elektronika balotsistemo de la Centra Elekta Komisiono de la Rusa Federacio
Klakebla

Blockchain platformo

Nun kiam ni ekzamenis la ĉefajn trajtojn de la efektivigo de fora elektronika balotsistemo, ni respondu la demandon, per kiu ni komencis - kian rolon ludas blokĉena teknologio en ĉi tio kaj kiajn problemojn ĝi permesas solvi?

En la efektivigita fora balotsistemo, blokĉena teknologio solvas certan gamon da problemoj.

  • La baza tasko estas certigi la integrecon de informoj kadre de voĉdonado, kaj, antaŭ ĉio, de voĉoj.
  • Certigante travideblecon de ekzekuto kaj neŝanĝebleco de programkodo efektivigita en la formo de inteligentaj kontraktoj.
  • Certigante la protekton kaj neŝanĝeblecon de datumoj uzataj en la balotprocezo: la listo de balotantoj, la ŝlosiloj uzataj por ĉifri balotojn en diversaj stadioj de la kripta protokolo, ktp.
  • Provizante malcentralizitan datumstokadon, kun ĉiu partoprenanto havante absolute identan kopion, konfirmitan de la propraĵoj de konsento en la reto.
  • La kapablo vidi transakciojn kaj spuri la progreson de voĉdonado, kiu estas plene reflektita en la blokĉeno, de ĝia komenco ĝis la registrado de la kalkulitaj rezultoj.

Tiel, ni vidas, ke sen uzi ĉi tiun teknologion, estas preskaŭ neeble atingi la necesajn proprietojn en la balotsistemo, kaj ankaŭ fidi ĝin.

La funkcieco de la blokĉena platformo uzata estas riĉigita per la uzo de inteligentaj kontraktoj. Inteligentaj kontraktoj kontrolas ĉiun transakcion per ĉifritaj balotoj pri la aŭtentikeco de elektronikaj kaj "blindaj" subskriboj, kaj ankaŭ faras bazajn kontrolojn pri la ĝusteco de plenigo de la ĉifrita baloto.

Plie, en la konsiderata malproksima elektronika balotsistemo, la komponanto "Distribuita stokado kaj kalkulado de voĉoj" ne estas limigita nur al blokĉenaj nodoj. Por ĉiu nodo, aparta servilo povas esti deplojita, kiu efektivigas la ĉefajn kriptajn funkciojn de la voĉdona protokolo - nombraj serviloj.

Nombrante servilojn

Ĉi tiuj estas malcentralizitaj komponantoj, kiuj provizas la proceduron por distribuita generacio de balota ĉifrada ŝlosilo, same kiel malĉifrado kaj kalkulo de balotrezultoj. Iliaj taskoj inkluzivas:

  • Certigante distribuitan generacion de parto de la balota ĉifrada ŝlosilo. La ŝlosila genera proceduro estos diskutita en la sekvaj artikoloj;
  • Kontrolante la ĝustecon de la ĉifrita baloto (sen deĉifri ĝin);
  • Prilaborado de balotoj en ĉifrita formo por generi la finan ĉifrtekston;
  • Distribuita malkodado de finrezultoj.

Ĉiu etapo de ekzekuto de la kripta protokolo estas registrita en la blokĉena platformo kaj povas esti kontrolita pri ĝusteco de observantoj.

Por doni al la sistemo la necesajn trajtojn en diversaj stadioj de la voĉdonadprocezo, la sekvaj kriptografiaj algoritmoj estas uzataj:

  • Elektronika subskribo;
  • Blinda subskribo de la publika ŝlosilo de la balotanto;
  • ElGamal elipsa kurba ĉifradskemo;
  • Nul-scio-pruvoj;
  • Pedersen 91 DKG (Distribuita Ŝlosila Generacio) protokolo;
  • Protokolo pri privata ŝlosilo kun la skemo de Shamir.

La kripta servo estos diskutita pli detale en la sekvaj artikoloj.

Rezultoj

Ni resumu kelkajn mezajn rezultojn de la konsidero de la fora elektronika balotsistemo. Ni mallonge priskribis la procezon kaj la ĉefajn komponantojn, kiuj efektivigas ĝin, kaj ankaŭ identigis la rimedojn por atingi la ecojn necesajn por iu ajn balotsistemo:

  • Konfirmebleco de balotantoj. La sistemo nur akceptas voĉojn de kontrolitaj balotantoj. Ĉi tiu posedaĵo estas certigita per identigado kaj aŭtentikigado de balotantoj, same kiel registrado de la listo de balotantoj kaj la fakto provizi aliron al la baloto en la blokĉeno.
  • Anonimeco. La sistemo certigas la sekretecon de voĉdonado, sanktigita en la leĝaro de la Rusa Federacio; la identeco de la balotanto ne povas esti determinita de ĉifrita baloto. Realigita uzante algoritmon de "blinda subskribo" kaj anoniman zonon por plenigi kaj sendi la baloton.
  • Konfidenco de voĉoj. Organizintoj kaj aliaj voĉdonantaj partoprenantoj ne povas ekscii la rezulton de la voĉdonado ĝis ĝi estas finita, voĉdonoj estas nombritaj kaj la finaj rezultoj estas deĉifritaj. Konfidenco estas atingita ĉifrante la balotojn kaj farante ilin neeble deĉifri ĝis post voĉdonado.
  • Neŝanĝebleco de datumoj. La datumoj de balotantoj ne povas esti ŝanĝitaj aŭ forigitaj. Neŝanĝebla datumstokado estas provizita de la blokĉena platformo.
  • Konfirmebleco. La observanto povas kontroli ke la voĉoj estis nombritaj ĝuste.
  • Fidindeco. La sistema arkitekturo baziĝas sur la principoj de malcentralizo, certigante la foreston de ununura "punkto de fiasko".

fonto: www.habr.com

Aldoni komenton