Random nhamba uye decentralized network: kuita

Nhanganyaya

function getAbsolutelyRandomNumer() {
        return 4; // returns absolutely random number!
}

Sezvinei nepfungwa yecipher yakasimba zvachose kubva ku cryptography, chaiyo "Publicly Verifiable Random Beacon" (pano PVRB) mapuroteni anoedza chete kuswedera pedyo sezvinobvira kuchirongwa chakakodzera, nekuti. mumanetiweki chaiwo haashande muchimiro chayo chakachena: zvinodikanwa kubvumirana zvakasimba pane imwe diki, panofanira kunge paine matenderedzwa akawanda, uye mameseji ese anofanira kunge achikurumidza uye anogara achiendeswa. Ehe, izvi hazvisizvo mune chaiyo network. Naizvozvo, kana uchigadzira maPVRB emabasa chaiwo mu blockchains yemazuva ano, mukuwedzera kune kusagoneka kwekudzora mhedzisiro inokonzeresa uye cryptographic simba, akawanda akawanda akanyanya ekuvaka uye ehunyanzvi matambudziko anomuka.

YePVRB, iyo blockchain pachayo inonyanya kutaurirana svikiro umo mameseji = kutengeserana. Izvi zvinokutendera kuti utore chikamu kubva kumatambudziko etiweki, kusaendesa mameseji, matambudziko ane middleware - njodzi dzese idzi dzinofungidzirwa nedecentralized network, uye kukosha kwayo kukuru kwePVRB kusakwanisa kudzoreredza kana kukanganisa kutengeserana kwatotumirwa - izvi zvinoita. kusabvumira vatori vechikamu kuti varambe kutora chikamu muprotocol, kunze kwekunge vakaita kurwisa kwakabudirira pakubvumirana. Iyi nhanho yechengetedzo inogamuchirwa, saka PVRB inofanirwa kuramba kubatanidzwa nevatori vechikamu kusvika padanho rakafanana neiyo main blockchain chain. Zvakare, izvi zvinoratidza kuti PVRB inofanirwa kunge iri chikamu chekubvumirana kana network ichibvumirana pane iyo huru blockchain, kunyangwe ichibvumirana pane iyo chete yakanaka inoguma isingaite. Kana kuti, PVRB ingori yakamira chete protocol inoshandiswa nechibvumirano chakangwara chinoshanda zvakabatana zvine ruremekedzo kune blockchain nemabhuroko. Nzira mbiri idzi dzine zvadzakanakira nezvadzinoipira, uye sarudzo pakati padzo hadzisi diki.

Nzira mbiri dzekushandisa PVRB

Ngatitsanangure zvakadzama sarudzo mbiri dzekushandisa PVRB - iyo yakamira vhezheni, inoshanda ichishandisa smart kontrakiti yakazvimirira ye blockchain, uye yekubvumirana-yakabatanidzwa vhezheni, yakavakirwa muprotocol, maererano neiyo network inobvumirana pane blockchain uye kutengeserana kubatanidzwa. Muzviitiko zvese, ini ndichareva yakakurumbira blockchain injini: Ethereum, EOS, uye vese vakafanana navo munzira yavanogashira nekugadzirisa zvibvumirano zvakanaka.

Standalone contract

Mune iyi vhezheni, PVRB chibvumirano chakangwara chinogamuchira kutengeserana kwevagadziri vasina kurongeka (pano vanonzi RP), vanoagadzirisa, anosanganisa zvabuda, uye, semugumisiro, anosvika pane imwe kukosha iyo chero mushandisi anogona kugamuchira kubva muchibvumirano ichi. Ukoshi uhwu haugone kuchengetwa zvakananga muchibvumirano, asi kuti umiririrwe chete nedata kubva kune imwe chete uye imwechete kukosha kwezvakazoitika zvinogona kuwanikwa zvakatemwa. Muchirongwa ichi, maRPs vashandisi ve blockchain, uye chero munhu anogona kubvumidzwa kutora chikamu muchirongwa chechizvarwa.

Iyo sarudzo ine standalone-contract yakanaka:

  • portability (zvibvumirano zvinogona kudhonzwa kubva ku blockchain kuenda ku blockchain)
  • nyore kuita uye kuyedzwa (zvibvumirano zviri nyore kunyora uye kuyedza)
  • nyore mukuita zvirongwa zvehupfumi (zviri nyore kugadzira chako chiratidzo, chine pfungwa dzinoshanda zvinangwa zvePVRB)
  • mukana wekutangisa pane yatove kushanda blockchains

Izvo zvakare zvine zvazvakaipira:

  • mipimo yakasimba pamakomputa zviwanikwa, vhoriyamu yekutengeserana uye kuchengetedza (nemamwe mazwi, cpu/mem/io)
  • zvirambidzo pakushanda mukati mechibvumirano (kwete mirayiridzo yese iripo, zvakaoma kubatanidza maraibhurari ekunze)
  • kusakwanisa kuronga kutumira mameseji nekukurumidza kupfuura kutengeserana kunosanganisirwa mu blockchain

Iyi sarudzo yakakodzera kushandisa PVRB inoda kufambiswa pane network iripo, haina cryptography yakaoma uye haidi kuwanda kwekudyidzana.

Consensus-yakabatanidzwa

Mune iyi vhezheni, PVRB inoshandiswa muiyo blockchain node kodhi, yakavakirwa-mukati kana inomhanya mukuwirirana nekutsinhana kwemameseji pakati pe blockchain node. Mhedzisiro yeprotocol inonyorwa zvakananga mumabhuroki anogadzirwa, uye mameseji eprotocol anotumirwa pamusoro pep2p network pakati penode. Sezvo iyo protocol inoguma nenhamba dzinofanirwa kunyorwa mumabhuraki, network inofanirwa kusvika pakubvumirana pazviri. Izvi zvinoreva kuti mameseji ePVRB, sekutengeserana, anofanirwa kusimbiswa nemanodhi uye kusanganisirwa mumabhuroko kuitira kuti chero mutori wechikamu wetiweki agone kusimbisa kutevedzerwa kwePVRB protocol. Izvi zvinotitungamira kune mhinduro iri pachena - kana network ichibvumirana pane kubvumirana nezve block uye kutengeserana mairi, ipapo PVRB inofanira kunge iri chikamu chekubvumirana, uye kwete yekumira-yega protocol. Kana zvisina kudaro, zvinogoneka kuti chivharo chinoshanda kubva pakubvumirana kwemaonero, asi PVRB protocol haina kuteverwa, uye kubva paPVRB maonero evhavha haigoni kugamuchirwa. Saka kana sarudzo ye "conssensus-integrated" yasarudzwa, PVRB inova chikamu chakakosha chekubvumirana.

Kana uchitsanangura mashandisirwo ePVRB padanho rekubvumirana kwenetiweki, munhu haagone kudzivirira nyaya dzekupedzisira. Mhedzisiro inzira inoshandiswa mukugadzirisa kubvumirana kunokiya mubhuroko (uye cheni inotungamira kwairi) iyo yekupedzisira uye haizomboraswa kure, kunyangwe kana foloko yakafanana ikaitika. Semuenzaniso, muBitcoin hapana maitiro akadaro - kana iwe ukaburitsa cheni yekunyanya kuomarara, inotsiva chero isina kuoma, zvisinei nehurefu hwecheni. Uye muEOS, somuenzaniso, iyo yekupedzisira ndiyo inonzi Last Irreversible Blocks, iyo inowanikwa paavhareji yega yega 432 blocks (12 * 21 + 12 * 15, pre-vote + pre-commit). Kuita uku kwakamirira 2/3 yevagadziri-vagadziri (pano vanonzi BP) siginicha. Kana maforogo achinge akura kupfuura LIB yekupedzisira, anongoraswa. Iyi nzira inoita kuti zvikwanise kuvimbisa kuti kutengeserana kwakabatanidzwa mu blockchain uye hakuzombodzoserwe kumashure, zvisinei kuti ane zviwanikwa izvo munhu anorwisa. Zvakare, zvidhinha zvekupedzisira zvidhinha zvakasainwa ne2/3 BP muHyperledger, Tendermint uye mamwe pBFT-based consensus. Zvakare, zvine musoro kugadzira protocol yekuvimbisa kuguma kwekuwedzera-kubvumirana, sezvo inogona kushanda asynchronously nekugadzirwa uye kuburitswa kwemabhuraki. Heino yakanaka chinyorwa nezve yekupedzisira muEthereum.

Mhedzisiro inonyanya kukosha kune vashandisi, avo vasina iyo vanogona kuzviwana ivo vabatwa ne "double spend" kurwisa, uko BP "inobata" inovharira, uye inoaburitsa mushure mekunge network yaona kutengeserana kwakanaka. Kana pasina mhedziso, ipapo iyo yakadhindwa forogo inotsiva bhuroka ne "yakanaka" kutengeserana neimwe, kubva kune "yakaipa" forogo, umo mari imwechete inotamirwa kune kero yeanorwisa. Panyaya yePVRB, zvinodikanwa zvekupedzisa zvakatonyanya kuomarara, sezvo kuvaka maforogo ePVRB zvichireva mukana weanorwisa kugadzirira akati wandei sarudzo kuitira kuti abudise iyo inobatsira zvakanyanya, uye kudzikisira nguva yekurwisa kunokwanisika mhinduro yakanaka.

Naizvozvo, yakanakisa sarudzo ndeyekubatanidza PVRB uye yekupedzisira kuita imwe protocol - ipapo iyo yakagadziriswa block = yakapedzwa zvisina tsarukano, uye izvi ndizvo chaizvo zvataida kuti tiwane. Iye zvino vatambi vanogashira yakavimbiswa yakasarudzika mumasekondi eN, uye unogona kuve nechokwadi chekuti hazvigoneke kuidzosera kumashure kana kuidzosera zvakare.

Iyo yekubvumirana-yakabatanidzwa sarudzo yakanaka:

  • mukana wekushandiswa kweasynchronous maererano nekugadzirwa kwezvivharo - zvidhinha zvinogadzirwa semazuva ese, asi mukuenderana neizvi, iyo PVRB protocol inogona kushanda, iyo isingaburitse kusarudzika kune yega block.
  • kugona kuita kunyangwe inorema cryptography, pasina zvirambidzo zvinoiswa pazvibvumirano zvakangwara
  • kugona kuronga kuchinjisa mameseji nekukurumidza kupfuura kutengeserana kunosanganisirwa mu blockchain, semuenzaniso, chikamu cheprotocol chinogona kushanda pakati pemanodhi pasina kugovera meseji pane network.

Izvo zvakare zvine zvazvakaipira:

  • Matambudziko mukuyedza nekusimudzira - iwe uchafanirwa kutevedzera zvikanganiso zvetiweki, zvisipo node, network yakaoma forogo.
  • Implementation zvikanganiso zvinoda network hardfork

Nzira mbiri dzekushandisa PVRB dzine kodzero yehupenyu, asi kushandiswa pazvibvumirano zvekuchenjera mu blockchains yemazuva ano kuchiri kushoma mumakomputa zviwanikwa, uye chero shanduko kune yakakomba cryptography kazhinji haigoneke. Uye isu tichada yakakomba cryptography, sezvazvicharatidzwa pazasi. Kunyange zvazvo dambudziko iri rakanyatsojeka renguva pfupi, yakakomba cryptography muzvibvumirano inodiwa kugadzirisa matambudziko akawanda, uye zvishoma nezvishoma inooneka (somuenzaniso, zvibvumirano zvehurongwa zvezkSNARKs muEthereum)

Blockchain, iyo inopa pachena uye yakavimbika protocol meseji chiteshi, haiite izvi mahara. Chero ipi neipi yakasarudzika protocol inofanirwa kufunga nezve mukana wekurwiswa kweSybil; chero chiito chinogona kuitwa nemasimba akasungwa emaakaundi akawanda, saka, pakugadzira, zvinofanirwa kutarisisa kugona kwevanorwisa kugadzira nhamba inopokana yeprotocol. vatori vechikamu vari kuita mubatanidzwa.

PVRB uye block variables.

Handina kunyepa pandakati hapana munhu asati ashandisa PVRB yakanaka, yakaedzwa nemapurogiramu akawanda ekubhejera, mu blockchains. Ndekupi saka kubhejera kwakawanda kunobva paEthereum neEOS? Izvi zvinondishamisa zvakanyanya sezvazvinokushamisa iwe, vakawana kupi akawanda "anoramba" asina kurongeka munzvimbo yakasarudzika?

Iyo yaunofarira nzira yekuwana zvisina tsarukano mu blockchain ndeye kutora imwe mhando ye "isingafungidzike" ruzivo kubva mubhuroko uye kugadzira isina kurongeka yakavakirwa pairi - nekungoita hashing imwechete kana kupfuura hunhu. Chinyorwa chakanaka pamusoro pezvinetso zvezvirongwa zvakadaro pano. Iwe unogona kutora chero ye "isingafungidzike" kukosha mubhuroka, semuenzaniso, iyo block hash, huwandu hwekutengesa, network kuomarara, uye humwe hunhu husingazivikanwe pamberi. Wobva waita hashi ivo, imwe kana kupfuura, uye, muchirevo, iwe unofanirwa kuwana chaiyo chaiyo. Iwe unogona kuwedzera kune wihitepaper kuti chirongwa chako "post-quantum yakachengeteka" (sezvo paine quantum-proof hash mabasa :)).

Asi kunyange post-quantum yakachengeteka hashes haina kukwana, maiwe. Chakavanzika chiri mune zvinodikanwa zvePVRB, rega ndikuyeuchidze nezvazvo kubva kuchinyorwa chakapfuura:

  1. Mhedzisiro yacho inofanirwa kunge iine kugovera kwakafanana, i.e. kuve yakavakirwa pane inogoneka yakasimba cryptography.
  2. Hazvibviri kudzora chero zvimedu zvemugumisiro. Nekuda kweizvozvo, mhedzisiro haigone kufanotaurwa pachine nguva.
  3. Iwe haugone kukanganisa chizvarwa protocol nekusatora chikamu muprotocol kana nekuremedza network nemashoko ekurwisa.
  4. Zvese zviri pamusoro apa zvinofanirwa kupesana nekubatana kwenhamba inobvumidzwa yevasina kutendeseka protocol vatori vechikamu (semuenzaniso, 1/3 yevatori vechikamu).

Muchiitiko ichi, chinodiwa 1 chete chinowanikwa, uye chinodiwa 2 hachizadzikiswe. Nekuregedza hunhu husingafungidzike kubva kubhuroka, isu tinowana kugovera kwakafanana uye kwakanaka randoms. Asi BP ine sarudzo "yekuburitsa block kana kwete." Saka, BP inogona kusarudza kubva ZVIVIRI zvingasarudzwa: "zvayo" uye iyo inozobuda kana mumwe munhu akagadzira block. BP inogona "snoop" pachine nguva chii chichaitika kana akaburitsa block, uye anongofunga kuzviita kana kwete. Nokudaro, kana uchitamba, somuenzaniso, "kunyange-odd" kana "tsvuku / dema" mu roulette, anogona kubudisa bhuroka chete kana akaona kukunda. Izvi zvinoitawo kuti zano rekushandisa, semuenzaniso, block hash "kubva kune ramangwana" kusashanda. Muchiitiko ichi, vanoti "random ichashandiswa, iyo inowanikwa nehashing data yemazuva ano uye hashi yebhokisi remangwana rine urefu hwe, semuenzaniso, N + 42, apo N ndiyo ikozvino block urefu. Izvi zvinosimbisa chirongwa zvishoma, asi zvichiri kubvumira BP, kunyangwe mune ramangwana, kusarudza kana kubata block kana kuburitsa.

BP software mune iyi kesi inova yakaoma, asi kwete yakawanda. Zviri nyore, kana uchisimbisa uye uchisanganisira kutengeserana mubhuroka, pane cheki yekukurumidza kuona kana paine kuhwina, uye, pamwe, kusarudzwa kweimwe transaction paramita kuti uwane yakakura mukana wekuhwina. Panguva imwecheteyo, hazvigoneke kubata smart BP yekunyengedza kwakadaro; nguva yega yega unogona kushandisa kero nyowani uye kuhwina zvishoma nezvishoma pasina kumutsa kufungidzira.

Saka nzira dzinoshandisa ruzivo kubva kubhuroka hadzina kukodzera sekushandiswa kwepasi rose kwePVRB. Mune shanduro shoma, ine zvirambidzo pahukuru hwebheti, zvirambidzo pahuwandu hwevatambi uye / kana kunyoreswa kweKYC (kudzivirira mutambi mumwe kubva kushandisa kero dzakawanda), zvirongwa izvi zvinogona kushanda kumitambo midiki, asi hapana chimwe.

PVRB uye kuzvipira-kuburitsa.

Zvakanaka, nekuda kwehashing uye pamwe nekusatarisika kwehukama hwe block hashi uye zvimwe zvinosiyana. Kana iwe ukagadzirisa dambudziko revashandi vepamberi, unofanirwa kuwana chimwe chinhu chakakodzera. Ngatiwedzerei vashandisi kuchirongwa ichi - regai vadzorewo kusarongeka: chero mushandi wetsigiro wehunyanzvi anokuudza kuti chinhu chakanyanya kurongeka muIT masisitimu zviito zvevashandisi :)

A naive scheme, apo vashandisi vanongotumira nhamba dzisina kujairika uye mhedzisiro inoverengerwa se, semuenzaniso, hashi yehuwandu hwavo, haina kukodzera. Muchiitiko ichi, mutambi wekupedzisira anogona, nekusarudza yake pachake, kudzora kuti mhedzisiro ichave chii. Ichi ndicho chikonzero iyo inonyanya kushandiswa kuzvipira-kuburitsa pateni inoshandiswa. Vatori vechikamu vanotanga vatumira hashes kubva kune yavo randoms (zvibvumirano), uye vobva vavhura izvo zvisingaite ivo pachavo (zvinoburitsa). Chikamu che "kuburitsa" chinotanga chete mushure mekunge madhiri anodiwa aunganidzwa, saka vatori vechikamu vanogona kutumira chaiyo hash yavakatumira kubva pakutanga. Iye zvino ngatiisei izvi zvose pamwe chete nematanho evhavha, uye zviri nani pane imwe yakatorwa kubva kune ramangwana (kusagadzikana kunogona kuwanikwa chete mune imwe yezvivharo zveramangwana), uye voila - iyo randomness yakagadzirira! Iye zvino chero mutambi anopesvedzera mhedzisiro inokonzeresa, uye anogona "kukunda" BP ine hutsinye nekuikurira neyake, isingazivikanwe pachine nguva, kungoita ... nekuda imwe mari kuti ibatanidzwe kune kutengeserana paunenge uchiita - dhipoziti yekuchengetedza, iyo inodzoserwa chete panguva yekuratidzwa maitiro. Muchiitiko ichi, kuita uye kusafumura kunenge kusingabatsiri.

Kwakanga kuri kuedza kwakanaka, uye zvirongwa zvakadaro zviripowo mumitambo yeDApps, asi nhamo, izvi zvakare hazvina kukwana. Iye zvino kwete chete mugodhi, asiwo chero ani zvake muprotocol anogona kukanganisa chigumisiro. Zvichiri kukwanisa kudzora kukosha kwayo pachako, nekusiyana kuduku uye nemutengo, asi, sezvakaitika kune mucheri, kana zvigumisiro zvemufananidzo zvakakosha kudarika mubhadharo wekutora chikamu muPVRB protocol, ipapo zvakangoerekana zvaitika. -producer(RP) anogona kusarudza kuburitsa uye anogona kusarudza kubva pane zvingangoita maviri sarudzo.
Asi zvakave zvichikwanisika kuranga avo vanoita uye vasingaratidzi, uye chirongwa ichi chichauya zvakanaka. Kureruka kwayo ibhenefiti yakakomba - maprotocol akakomba anoda kuverenga kwakasimba.

PVRB uye deterministic siginicha.

Pane imwe nzira yekumanikidza iyo RP kuti ipe pseudo-random nhamba iyo isingakwanise kupesvedzera kana ikapihwa ne "preimage" - ichi chitsidzo siginicha. Siginicha yakadaro, semuenzaniso, RSA, uye haisi ECS. Kana RP iine makiyi maviri: RSA neECC, uye anosaina imwe kukosha nekiyi yake yakavanzika, saka mune iyo RSA achawana ONE UYE CHETE siginicha, uye kana iri ECS anogona kugadzira chero nhamba ye masiginecha akasiyana anoshanda. Izvi zvinodaro nekuti pakugadzira siginecha yeECS, nhamba isina kurongeka inoshandiswa, inosarudzwa nemusaini, uye inogona kusarudzwa nenzira ipi zvayo, ichipa anosaina mukana wekusarudza imwe yemasaini akati wandei. Panyaya yeRSA: "imwe yekuisa kukosha" + "imwe kiyi peya" = "imwe siginicha". Hazvibviri kufanotaura kuti imwe siginicha ichawana chii chimwe RP, saka PVRB ine masiginicha ekumisikidza inogona kurongwa nekubatanidza masiginecha eRSA evatori vechikamu vakati wandei vakasaina kukosha kwakafanana. Semuyenzaniso, yapfuura random. Ichi chirongwa chinochengetedza zviwanikwa zvakawanda, nekuti masiginicha ese ari maviri simbiso yemaitiro chaiwo zvinoenderana neprotocol uye sosi yekusagadzikana.

Nekudaro, kunyangwe nemasiginecha ekumisikidza, chirongwa ichi chichiri panjodzi ye "wekupedzisira mutambi" dambudziko. Mutori wechikamu wekupedzisira anokwanisa kusarudza kuti oburitsa siginicha here kana kuti kwete, nokudaro achidzora zvabuda. Iwe unogona kugadzirisa chirongwa, kuwedzera block hashes kwairi, kuita kutenderera kuitira kuti mhedzisiro irege kufanotaurwa, asi matekiniki ese aya, kunyangwe uchifunga nezvakawanda magadzirirwo, achiri kusiya asina kugadziriswa dambudziko resimba remumwe mubatanidzwa pamubatanidzwa. kuguma munharaunda isingavimbiki uye inogona kushanda chete pasi pezvipingamupinyi zvehupfumi uye nguva. Mukuwedzera, saizi yemakiyi eRSA (1024 uye 2048 bits) yakakura kwazvo, uye saizi ye blockchain transaction ndiyo yakakosha zvakanyanya parameter. Sezviri pachena hapana nzira iri nyore yekugadzirisa dambudziko, ngatienderere mberi.

PVRB uye zvirongwa zvekugovana zvakavanzika

Mune cryptography, kune zvirongwa zvinogona kubvumira network kuti ibvumirane pane imwechete uye imwechete kukosha kwePVRB, nepo zvirongwa zvakadaro zvichipokana nechero zviito zvakaipa zvevamwe vatori vechikamu. Imwe yeprotocol inobatsira iyo inofanirwa kujairana nayo ndeye Shamir yakavanzika yekugovana chirongwa. Inoshanda kugovera chakavanzika (semuenzaniso, kiyi yakavanzika) muzvikamu zvakati wandei, uye kugovera zvikamu izvi kune N vatori vechikamu. Chakavanzika chinogovaniswa nenzira yekuti M mativi kubva muN anokwana kuti aiwanezve, uye aya anogona kuve chero M mativi. Kana paminwe, ipapo kuva negirafu yebasa risingazivikanwi, vatori vechikamu vanotsinhanisa mapoinzi pagirafu, uye mushure mokugamuchira M points, basa rose rinogona kudzorerwa.
Tsananguro yakanaka inopiwa mukati wiki Vasai asi kutamba nayo kuita kuti utambe iyo protocol mumusoro mako inobatsira Demo peji.

Kana iyo FSSS (Fiat-Shamir Chakavanzika Kugovera) chirongwa chaishandiswa muchimiro chayo chakachena, ingave isingaparare PVRB. Muchimiro chayo chakareruka, iyo protocol inogona kutaridzika seizvi:

  • Mumwe nemumwe anotora chikamu anogadzira yavo yega uye anogovera migove kubva mairi kune vamwe vatori vechikamu
  • Mumwe nemumwe anotora chikamu anoburitsa chikamu chake chezvakavanzika zvevamwe vatori vechikamu
  • Kana mutori wechikamu aine migove inodarika M, saka huwandu hwemutori wechikamu uyu hunogona kuverengerwa, uye huchave hwakasiyana, zvisinei neseti yevatori vechikamu vakaburitswa.
  • Iko kusanganiswa kweakazarurwa zvisina mwero ndiyo inodiwa PVRB

Pano, mumwe mutori wechikamu haachapesvedzeri mhedzisiro yeprotocol, kunze kwezviitiko apo kubudirira kweiyo randomness kuburitsa chikumbaridzo kunoenderana naye chete. Nokudaro, iyi protocol, kana pane chikamu chinodiwa cheRPs chinoshanda paprotocol uye chiripo, chinoshanda, kushandisa zvinodiwa zvekristptographic simba, uye kurwisana nedambudziko re "mutambi wekupedzisira".

Iyi inogona kunge iri sarudzo yakanaka, iyi PVRB chirongwa chakavakirwa paFiat-Shamir yakavanzika kugovana inotsanangurwa semuenzaniso mu izvi article. Asi, sezvataurwa pamusoro apa, kana iwe ukaedza kuishandisa musoro-pamusoro mu blockchain, zvisingakwanisi zvehunyanzvi zvinoonekwa. Heino muenzaniso wekuedzwa kwekuita kweprotocol muEOS smart kontrakiti uye chikamu chayo chakakosha - kutarisa yakadhindwa chikamu chechikamu: code. Iwe unogona kuona kubva kune kodhi kuti humbowo kusimbiswa kunoda akati wandei scalar kuwanda, uye nhamba dzinoshandiswa dzakakura kwazvo. Izvo zvinofanirwa kunzwisiswa kuti mu blockchains, simbisa inoitika panguva iyo mugadziri we block anogadzira kutengeserana, uye kazhinji, chero mutori wechikamu anofanirwa kuona zviri nyore kurongeka kweprotocol, saka izvo zvinodikanwa zvekumhanya kweiyo verify basa zvakakomba. . Mune iyi sarudzo, iyo sarudzo yakazove isingashande, sezvo iyo yekuongorora haina kukwana mukati memuganho wekutengesa (0.5 masekondi).

Kunyatsoongorora ndechimwe chezvakakosha zvinodikanwa zvekushandisa, kazhinji, chero epamberi cryptographic zvirongwa mu blockchain. Kugadzira humbowo, kugadzirira mameseji - maitiro aya anogona kubviswa-cheni uye oitwa pamakomputa epamusoro-soro, asi kuongorora hakugone kudziviswa - ichi chimwe chinhu chakakosha chePVRB.

PVRB uye zvikumbaridzo siginicha

Sezvo tajairana nechirongwa chekugovana chakavanzika, takawana kirasi yese yemaprotocol akabatanidzwa neshoko rekuti "chikumbaridzo". Kana kuburitswa kwerumwe ruzivo kuchida kutora chikamu kweM vatori vechikamu vakatendeseka kubva muN, uye seti yevatori vechikamu vakatendeseka inogona kuve yakasarudzika subset yeN, tinotaura nezve "threshold" zvirongwa. Ndivo vanotibvumira kutarisana nedambudziko re "mutambi wekupedzisira", zvino kana munhu anorwisa asingaratidzi chikamu chake chechakavanzika, mumwe, mutori akatendeseka achamuitira. Zvirongwa izvi zvinobvumira kubvumirana pane imwechete uye imwe chete chirevo, kunyangwe iyo protocol ikakanganiswa nevamwe vevatori vechikamu.

Iko kusanganiswa kwemasiginecha ekutemesa uye zvisungo zvemukati zvakaita kuti zvikwanise kugadzira chirongwa chiri nyore uye chinovimbisa chekushandisa PVRB - aya masiginecha ekutemesa zvikumbaridzo. Here chinyorwa nezve kushandiswa kwakasiyana-siyana kwechikumbaridzo siginicha, uye heino imwe yakanaka longread kubva Dash.

Chinyorwa chekupedzisira chinotsanangura masiginecha eBLS (BLS inomirira Boneh-Lynn-Shacham, tarisai chinyorwa), iyo ine yakakosha uye yakanyanya kunaka mhando yevagadziri - yeruzhinji, yakavanzika, makiyi eruzhinji uye masiginecha eBLS anogona kusanganiswa nemumwe nemumwe uchishandisa akareruka masvomhu mashandiro, nepo musanganiswa wavo uchiramba uri makiyi uye masiginecha, zvichikubvumidza kuti uunganidze akawanda nyore nyore. siginicha mune imwe uye mazhinji makiyi eruzhinji mune imwe. Iwo zvakare anotemesa uye anoburitsa mhedzisiro yakafanana kune imwechete yekupinza data. Nekuda kwemhando iyi, misanganiswa yemasiginecha eBLS ndiwo makiyi anoshanda, ayo anobvumira kuitwa kwesarudzo iyo M yevatori vechikamu yeN vanoburitsa siginecha imwe chete inotemerwa, inovimbiswa pachena, uye isingafungidzirwe kusvika yavhurwa neMth. mubati .

Muchirongwa chine masiginecha e-BLS pachikumbaridzo, mubati wega wega anosaina chimwe chinhu achishandisa BLS (semuenzaniso, yakapfuura zvisina tsarukano), uye siginecha yepakati ndiyo inodiwa zvisina tsarukano. Iyo cryptographic zvimiro zve BLS siginecha inogutsa izvo zvinodikanwa zvemhando yemhando, chikamu chechikumbaridzo chinodzivirira kubva kune "wekupedzisira-mutambi", uye yakasarudzika kusanganiswa kwemakiyi kunoita kuti zvikwanise kuita akawanda anonakidza algorithms anobvumira, semuenzaniso, kuunganidzwa kwakanaka kwemameseji eprotocol. .

Saka, kana uri kuvaka PVRB pane yako blockchain, iwe ungangozopedzisira wawana BLS chikumbaridzo siginicha chirongwa, akati wandei mapurojekiti ari kutoishandisa. Somuenzaniso, DFinity (pano bhenji rinoshandisa dunhu, uye pano semuenzaniso kuisirwa kugovaniswa kwakavanzika kunoonekwa), kana Keep.network (heino bhekoni yavo isina kujairika yellow paper, uye pano muenzaniso smart contract inoshandira iyo protocol).

Kuitwa kwePVRB

Nehurombo, isu hatisati tichiona yakagadzirira-yakagadzirwa protocol inoshandiswa muPVRB blockchains yakaratidza kuchengetedzeka kwayo nekugadzikana. Kunyangwe iwo maprotocol pachawo akagadzirira, kuashandisa kumhinduro dziripo hakusi nyore. Kune epakati masisitimu, PVRB haina musoro, uye yakasarudzika inoganhurwa mune zvese zviwanikwa zvekombuta: CPU, ndangariro, kuchengetedza, I/O. Kugadzira PVRB musanganiswa weakasiyana maprotocol kuitira kugadzira chimwe chinhu chinosangana nezvinodiwa zveimwe blockchain inoshanda. Imwe protocol inoverenga zvakanyanya, asi inoda mamwe mameseji pakati peRPs, nepo imwe ichida mashoma mameseji, asi kugadzira humbowo kunogona kuve basa rinotora makumi emaminitsi, kana maawa.

Ini ndichanyora zvinhu zvauchafanirwa kufunga nezvazvo pakusarudza mhando yePVRB:

  • Cryptographic simba. PVRB yako inofanira kunge isingarerekere, isina simba rekudzora kana kadiki. Mune zvimwe zvirongwa izvi hazvisizvo, saka danai cryptographer
  • Dambudziko re "kupedzisira mutambi".. PVRB yako inofanirwa kushingirira kurwiswa uko munhu anorwisa anodzora imwe kana anopfuura maRPs anogona kusarudza chimwe chezviviri zvabuda.
  • Protocol sabotage dambudziko. PVRB yako inofanirwa kushingirira kurwiswa uko munhu anorwisa anodzora imwe kana anopfuura maRPs anosarudza kusarongeka kana kusadaro uye anogona kuvimbiswa kana aine mukana wakapihwa wekupesvedzera izvi.
  • Nhamba yedambudziko remeseji. MaRPs ako anofanirwa kutumira mashoma mameseji ku blockchain uye kudzivirira zviito zvinopindirana zvakanyanya sezvinobvira senge mamiriro akaita senge "Ndakatumira rumwe ruzivo, ndakamirira mhinduro kubva kune mumwe munhu anotora chikamu." Mune p2p network, kunyanya vakapararira munzvimbo, haufanirwe kuvimba nemhinduro yekukurumidza
  • Dambudziko rekuverenga computational. Kuongororwa kwechero nhanho yePVRB pa-cheni kunofanirwa kunge kuri nyore, nekuti inoitwa nevatengi vakazara venetiweki. Kana kushandiswa kuchiitwa uchishandisa chibvumirano chakangwara, saka zvinodikanwa zvekumhanyisa zvakanyanya
  • Dambudziko rekuwanikwa uye kurarama. PVRB yako inofanira kuedza kusimba mumamiriro ezvinhu apo chikamu chetiweki chinotadza kuwanikwa kwenguva yakati uye chikamu cheRP chinongomira kushanda.
  • Dambudziko rekuvimbika kuseta uye yekutanga kiyi yekugovera. Kana PVRB yako ikashandisa yekutanga setup yeprotocol, saka iyi inyaya yakaparadzana yakakura uye yakakomba. Here muenzaniso. Kana vatori vechikamu vachifanira kuudzana makiyi avo vasati vatanga protocol, iri zvakare idambudziko kana kuumbwa kwevatori vechikamu kwakachinja.
  • Matambudziko ebudiriro. Kuwanikwa kwemaraibhurari mumitauro inodiwa, kuchengetedzeka kwavo uye kuita kwavo, kushambadza, bvunzo dzakaoma, nezvimwe.

Semuyenzaniso, chikumbaridzo BLS siginicha ine dambudziko rakakura - vasati vatanga kushanda, vatori vechikamu vanofanirwa kugovera makiyi kune mumwe nemumwe, kuronga boka mukati umo chikumbaridzo chichashanda. Izvi zvinoreva kuti kanenge kutenderera kumwe chete kwekutsinhana mudecentralized network ichafanira kumirira, uye nekupihwa kuti iyo randi inogadzirwa, semuenzaniso, inodiwa mumitambo, ingangoita munguva chaiyo, izvi zvinoreva kuti kuparadza kweprotocol kunogoneka panguva ino. , uye zvakanakira pachikumbaridzo chirongwa chakarasika. Dambudziko iri ratove nyore kupfuura rakapfuura, asi richiri kuda kuvandudzwa kweimwe nzira yekuumbwa kwemapoka ezvikumbaridzo, izvo zvinofanirwa kuchengetedzwa mune zvehupfumi, kuburikidza nedhipoziti uye kubviswa kwemari (slashing) kubva kune vatori vechikamu vasingateveri. protocol. Zvakare, BLS verification ine nhanho inogamuchirika yekuchengetedza haikodzeri, semuenzaniso, mune yakajairwa EOS kana Ethereum transaction - hapana nguva yakakwana yekusimbisa. Kodhi yekondirakiti ndeyeWebAssembly kana EVM, inoitwa nemuchina chaiwo. Mabasa eCryptographic haasati aitwa natively (zvakadaro), uye shanda makumi enguva zvishoma nezvishoma pane akajairwa cryptographic maraibhurari. Maprotocol mazhinji haasangane nezvinodiwa achingobva pane kiyi vhoriyamu, semuenzaniso 1024 uye 2048 bits yeRSA, 4-8 nguva yakakura kupfuura mureza wekutengeserana siginicha muBitcoin neEthereum.

Kuvapo kwekuita mumitauro yakasiyana-siyana yepurogiramu kunobatawo basa - izvo zvishoma, kunyanya kune zvitsva. Sarudzo nekubatanidza mukubvumirana inoda kunyora protocol mumutauro wepuratifomu, saka uchafanirwa kutsvaga kodhi muGo for geth, muRust for Parity, muC ++ yeEOS. Wese munhu achafanirwa kutsvaga JavaScript kodhi, uye sezvo JavaScript uye cryptography isiri shamwari dzepedyo, WebAssembly ichabatsira, iyo ikozvino inozviti ndiyo inotevera yakakosha Internet mwero.

mhedziso

Ndinovimba mune yapfuura chinyorwa Ini ndakwanisa kukugonesa kuti kugadzira nhamba dzisina kurongeka pa blockchain kwakakosha kune akawanda maficha ehupenyu hwedecentralized network, uye nechinyorwa ichi ndakaratidza kuti basa iri rakanyanyisa uye rakaoma, asi mhinduro dzakanaka dzatovepo. Kazhinji, iyo yekupedzisira dhizaini yeprotocol inogoneka chete mushure mekuita bvunzo dzakakura dzinofunga nezve ese maficha kubva pakuseta kusvika pakukanganisa emulation, saka haugone kuwana mabikirwo akagadzirwa muchikwata chewhitepaper uye zvinyorwa, uye isu zvirokwazvo hatizo. sarudza mugore rinotevera kana maviri nyora kuti "ita nenzira iyi, chaizvo."

Bye, yePVRB yedu mu blockchain iri kuvandudzwa they at, takagara pakushandisa masaini e BLS echikumbaridzo, tinoronga kushandisa PVRB pamwero wekubvumirana, sezvo kuongororwa mumakondirakiti akachenjera ane mwero unogamuchirwa wekuchengeteka kusati kwaita. Zvinogoneka kuti isu tinoshandisa zvirongwa zviviri panguva imwe chete: kutanga, kudhura kwakavanzika kugovana kugadzira kwenguva refu random_seed, uye tobva taishandisa sehwaro hwepamusoro-frequency chizvarwa chisina kujairika tichishandisa deterministic pachikumbaridzo BLS siginecha, pamwe isu tichazviganhurira isu chete. imwe yezvirongwa. Nehurombo, hazvibviri kutaura pachine nguva kuti iyo protocol ichavei; chinhu chakanaka chete ndechekuti, sesainzi, mumatambudziko einjiniya, mhedzisiro yakaipa zvakare mhedzisiro, uye imwe neimwe itsva kuedza kugadzirisa dambudziko nderimwe danho rekuita. tsvakurudzo yevose vanobatanidzwa mudambudziko. Kuti tisangane nezvinodiwa zvebhizinesi, isu tinogadzirisa chaiyo inoshanda dambudziko - kupa maapplication emitambo ine yakavimbika sosi ye entropy, saka isu tinofanirwawo kuterera kune blockchain pachayo, kunyanya nyaya dzekupedzisira ketani uye netiweki hutongi.

Uye kunyangwe isu tisati tamboona PVRB inopokana mu blockchains, iyo ingadai yakashandiswa kwenguva yakakwana yekuedzwa nemashandisirwo chaiwo, kuongororwa kwakawanda, mitoro, uye hongu, kurwiswa chaiko, asi nhamba yenzira dzinogoneka inosimbisa izvozvo. mhinduro iripo, uye chii-yeaya maalgorithms anozopedzisira agadzirisa dambudziko. Isu tichafara kugovera zvabuda uye nekutenda zvimwe zvikwata zviri kushandawo panyaya iyi yezvinyorwa uye kodhi inobvumira mainjiniya kuti asatsike pane imwechete reki kaviri.

Saka, paunosangana nemugadziri wekugadzira dhizaini, teerera uye nehanya, uye upe rubatsiro rwepfungwa kana zvichidikanwa :)

Source: www.habr.com

Voeg