Random naj npawb thiab decentralized networks: kev siv

Taw qhia

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

Raws li nrog lub tswv yim ntawm kev muaj zog tiag tiag los ntawm cryptography, tiag tiag "Publicly Verifiable Random Beacon" (tom qab no PVRB) cov txheej txheem tsuas yog sim kom ze li sai tau rau lub tswv yim zoo, vim Hauv kev tes hauj lwm tiag tiag nws tsis siv rau hauv nws daim ntawv dawb huv: nws yog ib qho tsim nyog yuav tsum pom zoo nruj me ntsis ntawm ib qho me ntsis, yuav tsum muaj ntau lub voj voog, thiab tag nrho cov lus yuav tsum ceev ceev thiab xa mus tas li. Tau kawg, qhov no tsis yog qhov tseeb hauv kev tes hauj lwm tiag. Yog li ntawd, thaum tsim PVRBs rau cov dej num tshwj xeeb hauv niaj hnub blockchains, ntxiv rau qhov ua tsis tau zoo ntawm kev tswj qhov tshwm sim randomness thiab lub zog cryptographic, ntau yam teeb meem kev tsim vaj tsev thiab kev tsim tawm.

Rau PVRB, lub blockchain nws tus kheej yog qhov tseem ceeb ntawm kev sib txuas lus nruab nrab uas cov lus = kev lag luam. Qhov no tso cai rau koj los ua ib feem ntawm cov teeb meem hauv network, tsis xa cov lus, teeb meem nrog cov khoom nruab nrab - tag nrho cov kev pheej hmoo no yog suav tias yog los ntawm kev faib tawm network, thiab nws tus nqi tseem ceeb rau PVRB yog qhov tsis muaj peev xwm tshem tawm lossis ua tsis ncaj rau qhov kev xa khoom xa tuaj - qhov no ua. tsis tso cai rau cov neeg koom tsis kam koom nrog hauv cov txheej txheem, tshwj tsis yog lawv tau ua tiav kev tawm tsam ntawm kev pom zoo. Qhov kev ruaj ntseg qib no tau txais, yog li PVRB yuav tsum tiv thaiv kev sib tsoo los ntawm cov neeg tuaj koom kom zoo ib yam li cov saw tseem ceeb blockchain. Tsis tas li ntawd, qhov no qhia tias PVRB yuav tsum yog ib feem ntawm qhov kev pom zoo yog tias lub network pom zoo rau lub ntsiab blockchain, txawm tias nws kuj pom zoo rau qhov kev ncaj ncees nkaus xwb. Los yog, PVRB tsuas yog cov txheej txheem ib leeg siv los ntawm daim ntawv cog lus ntse uas ua haujlwm asynchronously nrog kev hwm rau blockchain thiab blocks. Ob txoj kev muaj lawv qhov zoo thiab qhov tsis zoo, thiab kev xaiv ntawm lawv yog qhov tsis tseem ceeb.

Ob txoj hauv kev los siv PVRB

Cia peb piav qhia ntau ntxiv txog ob txoj hauv kev rau kev siv PVRB - ib leeg version, uas ua haujlwm siv daim ntawv cog lus ntse ywj pheej ntawm blockchain, thiab kev pom zoo-kev sib koom ua ke, tsim rau hauv cov txheej txheem, raws li lub network pom zoo ntawm blockchain thiab yuav suav nrog. Nyob rau hauv txhua rooj plaub, kuv yuav txhais tau tias nrov blockchain xyaw: Ethereum, EOS, thiab tag nrho cov zoo sib xws rau lawv nyob rau hauv txoj kev lawv host thiab ua cov ntawv cog lus ntse.

Standalone daim ntawv cog lus

Hauv cov ntawv no, PVRB yog daim ntawv cog lus ntse uas lees txais kev lag luam ntawm cov neeg tsim khoom lag luam random (tom qab no hu ua RP), txheej txheem lawv, sib txuas cov txiaj ntsig, thiab, raws li qhov tshwm sim, tuaj txog ntawm qee tus nqi uas txhua tus neeg siv tau txais los ntawm daim ntawv cog lus no. Tus nqi no yuav tsis raug khaws cia ncaj qha rau hauv daim ntawv cog lus, tab sis tsuas yog sawv cev los ntawm cov ntaub ntawv los ntawm qhov twg thiab tsuas yog ib qho txiaj ntsig ntawm qhov tshwm sim random tuaj yeem txiav txim siab tau. Hauv cov tswv yim no, RPs yog cov neeg siv ntawm blockchain, thiab txhua tus tuaj yeem raug tso cai los koom nrog cov txheej txheem tiam.

Qhov kev xaiv nrog standalone-daim ntawv cog lus yog qhov zoo:

  • portability (cov ntawv cog lus tuaj yeem rub los ntawm blockchain mus rau blockchain)
  • yooj yim ntawm kev siv thiab kev sim (cov ntawv cog lus yooj yim sau thiab sim)
  • yooj yim hauv kev siv cov phiaj xwm kev lag luam (nws yooj yim los ua koj tus kheej token, uas nws lub tswv yim ua haujlwm rau lub hom phiaj ntawm PVRB)
  • muaj peev xwm ntawm launching ntawm twb ua hauj lwm blockchains

Nws kuj muaj qhov tsis zoo:

  • Cov kev txwv muaj zog ntawm kev suav cov peev txheej, kev ntim khoom lag luam thiab kev cia khoom (hauv lwm lo lus, cpu / mem / io)
  • kev txwv ntawm kev ua haujlwm hauv daim ntawv cog lus (tsis yog tag nrho cov lus qhia muaj, nws nyuaj rau txuas cov tsev qiv ntawv sab nraud)
  • tsis muaj peev xwm los teeb tsa kev xa xov sai dua li kev lag luam suav nrog hauv blockchain

Qhov kev xaiv no tsim nyog rau kev siv PVRB uas yuav tsum tau khiav ntawm ib lub network uas twb muaj lawm, tsis muaj kev sib txuas lus nyuaj thiab tsis tas yuav muaj kev cuam tshuam ntau.

Kev pom zoo-kev koom ua ke

Nyob rau hauv no version, PVRB yog siv nyob rau hauv lub blockchain node code, built-in los yog khiav nyob rau hauv parallel nrog sib pauv lus ntawm blockchain nodes. Cov txiaj ntsig ntawm cov txheej txheem tau sau ncaj qha rau hauv cov blocks tsim, thiab cov lus raws tu qauv raug xa mus rau p2p network ntawm nodes. Txij li cov txheej txheem ua rau cov lej uas yuav tsum tau sau rau hauv cov blocks, lub network yuav tsum ncav cuag qhov kev pom zoo rau lawv. Qhov no txhais tau hais tias PVRB cov lus, zoo li kev lag luam, yuav tsum tau lees paub los ntawm cov nodes thiab suav nrog hauv cov blocks kom txhua tus neeg koom nrog hauv lub network tuaj yeem siv tau raws li PVRB raws tu qauv. Qhov no cia li coj peb mus rau qhov kev daws teeb meem - yog tias lub network pom zoo rau kev pom zoo ntawm kev thaiv thiab kev lag luam hauv nws, ces PVRB yuav tsum yog ib feem ntawm qhov kev pom zoo, thiab tsis yog cov txheej txheem ib leeg. Txwv tsis pub, nws muaj peev xwm hais tias ib qho thaiv tau siv tau los ntawm qhov kev pom zoo ntawm qhov kev pom, tab sis PVRB raws tu qauv tsis ua raws, thiab los ntawm PVRB taw tes ntawm kev pom qhov thaiv tsis tuaj yeem lees txais. Yog li yog tias qhov kev xaiv "kev pom zoo-kev koom ua ke" raug xaiv, PVRB dhau los ua ib feem tseem ceeb ntawm kev pom zoo.

Thaum piav qhia txog kev siv PVRB ntawm qib kev pom zoo hauv lub network, ib qho tsis tuaj yeem zam qhov teeb meem ntawm qhov kawg. Qhov kawg yog lub tshuab siv los txiav txim siab qhov kev pom zoo uas kaw rau hauv ib qho thaiv (thiab cov saw hlau ua rau nws) uas yog qhov kawg thiab yuav tsis muab pov tseg, txawm tias muaj rab rawg sib npaug. Piv txwv li, nyob rau hauv Bitcoin tsis muaj xws li mechanism - yog hais tias koj luam tawm ib tug saw ntawm ntau complexity, nws yuav hloov ib tug complex, tsis hais qhov ntev ntawm chains. Thiab hauv EOS, piv txwv li, qhov kawg yog qhov hu ua Last Irreversible Blocks, uas tshwm sim nyob rau nruab nrab txhua 432 blocks (12 * 21 + 12 * 15, pre-vote + pre-commit). Cov txheej txheem no yog qhov tseem ceeb tos 2/3 ntawm block-producers (tom qab no hu ua BP) kos npe. Thaum rab rawg tshwm uas laus dua li LIB kawg, lawv tsuas yog muab pov tseg. Cov txheej txheem no ua rau nws muaj peev xwm lees paub tias kev hloov pauv tau suav nrog hauv blockchain thiab yuav tsis rov qab los, txawm tias muaj peev txheej dab tsi uas tus neeg tawm tsam muaj. Tsis tas li ntawd, cov blocks kawg yog cov blocks kos npe los ntawm 2/3 BP hauv Hyperledger, Tendermint thiab lwm yam kev pom zoo raws li pBFT. Tsis tas li ntawd, nws ua rau kev txiav txim siab los ua cov txheej txheem kom ntseeg tau qhov kawg ntawm qhov kev pom zoo ntxiv, vim nws tuaj yeem ua haujlwm asynchronously nrog kev tsim khoom thiab kev tshaj tawm ntawm cov blocks. Nov yog qhov zoo ib tsab xov xwm hais txog qhov kawg hauv Ethereum.

Qhov kawg yog qhov tseem ceeb heev rau cov neeg siv, uas tsis muaj nws tuaj yeem pom lawv tus kheej raug tsim txom los ntawm "ob chav siv" nres, qhov twg BP "tuav" thaiv, thiab tshaj tawm lawv tom qab lub network tau "pom" kev lag luam zoo. Yog tias tsis muaj qhov kawg, tom qab ntawv luam tawm diav rawg hloov qhov thaiv nrog "zoo" kev hloov pauv nrog lwm tus, los ntawm "phem" diav rawg, uas tib cov nyiaj tau xa mus rau tus neeg tawm tsam qhov chaw nyob. Nyob rau hauv rooj plaub ntawm PVRB, cov kev xav tau rau qhov kawg yog qhov nruj dua, txij li lub tsev rab diav rawg rau PVRB txhais tau hais tias lub sijhawm rau tus neeg tawm tsam los npaj ntau yam kev xaiv los mus tshaj tawm cov txiaj ntsig zoo tshaj plaws, thiab txwv lub sijhawm ntawm kev tawm tsam yog ib qho zoo daws.

Yog li, qhov kev xaiv zoo tshaj plaws yog muab PVRB thiab qhov kawg rau hauv ib txoj cai - tom qab ntawd qhov kawg block = qhov kawg random, thiab qhov no yog qhov peb xav tau kom tau txais. Tam sim no cov neeg ua si yuav tau txais kev lees paub random hauv N vib nas this, thiab tuaj yeem paub tseeb tias nws tsis tuaj yeem yob nws rov qab lossis rov ua dua nws dua.

Qhov kev pom zoo-kev sib koom ua ke yog qhov zoo:

  • Qhov ua tau ntawm kev siv asynchronous nyob rau hauv kev sib raug zoo ntawm cov blocks - blocks yog tsim raws li niaj zaus, tab sis nyob rau hauv parallel nrog qhov no, PVRB raws tu qauv muaj peev xwm ua hauj lwm, uas tsis tsim randomness rau txhua block.
  • lub peev xwm los siv txawm tias hnyav crypto txiaj, tsis muaj kev txwv rau kev cog lus ntse
  • lub peev xwm los npaj kev sib pauv ntawm cov lus sai dua li kev lag luam suav nrog hauv blockchain, piv txwv li, ib feem ntawm cov txheej txheem tuaj yeem ua haujlwm ntawm cov nodes yam tsis muaj kev xa xov hauv lub network.

Nws kuj muaj qhov tsis zoo:

  • Nyuaj hauv kev sim thiab kev txhim kho - koj yuav tsum ua raws li kev ua yuam kev hauv network, cov nodes ploj lawm, network nyuaj diav rawg
  • Kev ua yuam kev yuav tsum muaj lub network hardfork

Ob txoj hauv kev ntawm kev siv PVRB muaj txoj cai rau lub neej, tab sis kev siv ntawm cov ntawv cog lus ntse hauv cov blockchains niaj hnub no tseem txwv tsis pub siv cov cuab yeej siv suav nrog, thiab kev hloov pauv mus rau qhov kev hloov pauv loj heev feem ntau tsuas yog ua tsis tau. Thiab peb yuav xav tau kev crypto txiaj loj, raws li yuav pom hauv qab no. Txawm hais tias qhov teeb meem no yog ib ntus kom meej meej, kev crypto txiaj loj hauv cov ntawv cog lus yog xav tau los daws ntau yam teeb meem, thiab nws maj mam tshwm sim (piv txwv li, cov ntawv cog lus rau zkSNARKs hauv Ethereum)

Blockchain, uas muab lub pob tshab thiab txhim khu kev qha kev xa xov channel, tsis ua li ntawd dawb. Txhua tus txheej txheem decentralized yuav tsum coj mus rau hauv tus account qhov muaj peev xwm ntawm Sybil nres; txhua qhov kev txiav txim tuaj yeem ua tau los ntawm kev sib koom ua ke ntawm ntau tus lej nyiaj, yog li ntawd, thaum tsim, nws yog ib qho tsim nyog yuav tsum coj mus rau hauv tus account lub peev xwm ntawm cov neeg tawm tsam los tsim tus lej ntawm cov txheej txheem. cov neeg koom ua kev sib koom ua ke.

PVRB thiab thaiv qhov sib txawv.

Kuv tsis tau dag thaum kuv hais tias tsis muaj leej twg tseem ua tau zoo PVRB, sim los ntawm ntau daim ntawv thov kev twv txiaj, hauv blockchains. Qhov twg thiaj li muaj ntau daim ntawv thov kev twv txiaj los ntawm Ethereum thiab EOS? Qhov no ua rau kuv xav tsis thoob ntau npaum li nws ua rau koj xav tsis thoob, qhov twg lawv tau txais ntau qhov "tsis tu ncua" randoms hauv ib puag ncig kev txiav txim siab?

Txoj hauv kev nyiam kom tau txais qhov tsis sib xws hauv blockchain yog coj qee yam "tsis paub txog" cov ntaub ntawv los ntawm qhov thaiv thiab ua ib qho random raws li nws - tsuas yog los ntawm hashing ib lossis ntau qhov txiaj ntsig. Cov lus zoo txog cov teeb meem ntawm cov tswv yim zoo li no no. Koj tuaj yeem nqa ib qho ntawm "tsis paub txog" qhov tseem ceeb hauv qhov thaiv, piv txwv li, block hash, tus lej ntawm kev hloov pauv, kev sib txuas hauv network, thiab lwm yam tsis paub ua ntej. Ces hash lawv, ib los yog ntau tshaj, thiab, nyob rau hauv txoj kev xav, koj yuav tsum tau ib tug tiag tiag random. Koj tuaj yeem ntxiv rau daim ntawv wihite uas koj lub tswv yim yog "tom qab-quantum ruaj ntseg" (vim muaj quantum-proof hash functions :)).

Tab sis txawm tias tom qab quantum ruaj ntseg hashes tsis txaus, alas. Cov ntaub ntawv zais cia nyob rau hauv cov kev cai rau PVRB, cia kuv nco koj ntawm lawv los ntawm tsab xov xwm dhau los:

  1. Qhov tshwm sim yuav tsum muaj qhov sib txawv ntawm kev faib tawm, piv txwv li yog raws li qhov muaj zog crypto txiaj.
  2. Nws tsis muaj peev xwm tswj tau ib qho ntawm cov khoom ntawm qhov tshwm sim. Raws li qhov tshwm sim, qhov tshwm sim tsis tuaj yeem kwv yees ua ntej.
  3. Koj tsis tuaj yeem ua phem rau cov txheej txheem tiam los ntawm kev tsis koom nrog hauv cov txheej txheem lossis los ntawm kev tshaj tawm lub network nrog cov lus tawm tsam
  4. Tag nrho cov saum toj no yuav tsum muaj kev tiv thaiv rau kev sib koom ua ke ntawm ib qho kev tso cai ntawm cov neeg koom nrog tsis ncaj ncees (piv txwv li, 1/3 ntawm cov neeg koom).

Hauv qhov no, tsuas yog qhov yuav tsum tau ua 1 yog ua tau raws li qhov yuav tsum tau ua, thiab qhov yuav tsum tau ua 2 yog tsis tau. Los ntawm hashing unpredictable qhov tseem ceeb los ntawm lub block, peb yuav tau txais ib tug uniform faib thiab zoo randoms. Tab sis BP tsawg kawg muaj kev xaiv "tshaj tawm qhov thaiv lossis tsis yog." Yog li, BP tsawg kawg tuaj yeem xaiv los ntawm OB qhov kev xaiv random: "nws tus kheej" thiab ib qho uas yuav tig tawm yog tias lwm tus ua qhov thaiv. BP tuaj yeem "snoop" ua ntej yuav muaj dab tsi tshwm sim yog tias nws tshaj tawm qhov thaiv, thiab tsuas yog txiav txim siab ua nws lossis tsis ua. Yog li, thaum ua si, piv txwv li, "txuas- khib" lossis "liab / dub" hauv roulette, nws tuaj yeem tshaj tawm ib qho thaiv tsuas yog tias nws pom qhov yeej. Qhov no kuj ua rau lub tswv yim ntawm kev siv, piv txwv li, block hash "los ntawm lub neej yav tom ntej" ua haujlwm tsis tau. Nyob rau hauv cov ntaub ntawv no, lawv hais tias "random yuav siv, uas yog tau los ntawm hashing cov ntaub ntawv tam sim no thiab lub hash ntawm ib tug yav tom ntej block nrog ib tug siab ntawm, piv txwv li, N + 42, qhov twg N yog tam sim no block qhov siab. Qhov no ntxiv dag zog rau lub tswv yim me ntsis, tab sis tseem tso cai rau BP, txawm tias yav tom ntej, xaiv seb puas yuav tuav lub thaiv lossis tshaj tawm.

BP software nyob rau hauv cov ntaub ntawv no ua ntau nyuaj, tab sis tsis ntau. Tsuas yog, thaum muaj kev lees paub thiab suav nrog kev lag luam hauv ib qho thaiv, muaj kev tshawb xyuas ceev kom pom tias yuav muaj yeej, thiab, tejzaum nws, xaiv ib qho kev sib pauv tsis tau kom tau txais qhov muaj feem ntau ntawm yeej. Nyob rau tib lub sijhawm, nws yuav luag tsis tuaj yeem ntes tus ntse BP rau cov kev tswj hwm zoo li no; txhua zaus koj tuaj yeem siv qhov chaw nyob tshiab thiab yeej me ntsis yam tsis muaj kev xav tsis thoob.

Yog li cov txheej txheem siv cov ntaub ntawv los ntawm thaiv tsis haum raws li kev siv thoob ntiaj teb ntawm PVRB. Nyob rau hauv ib tug txwv version, nrog rau cov kev txwv ntawm qhov ntau thiab tsawg thawj koom ruam, txwv tsis pub tus naj npawb ntawm players thiab / los yog KYC sau npe (kom tiv thaiv ib tug neeg uas ua ntawv los ntawm kev siv ntau qhov chaw nyob), cov tswv yim no yuav ua hauj lwm rau me me ua si, tab sis tsis muaj dab tsi ntxiv.

PVRB thiab cog lus-qhia tawm.

Okay, ua tsaug rau hashing thiab tsawg kawg qhov txheeb ze unpredictability ntawm block hash thiab lwm yam txawv. Yog tias koj daws qhov teeb meem ntawm cov miners pem hauv ntej, koj yuav tsum tau txais ib yam dab tsi zoo dua. Cia peb ntxiv cov neeg siv rau cov tswv yim no - cia lawv tseem cuam tshuam rau qhov tsis sib xws: txhua tus neeg ua haujlwm pabcuam kev pabcuam yuav qhia rau koj tias feem ntau random tshaj plaws hauv IT systems yog kev ua ntawm cov neeg siv :)

Lub tswv yim naive, thaum cov neeg siv tsuas yog xa cov lej random thiab cov txiaj ntsig tau suav nrog, piv txwv li, tus lej ntawm lawv cov lej, tsis haum. Hauv qhov no, tus neeg ua si kawg tuaj yeem, los ntawm kev xaiv nws tus kheej random, tswj qhov tshwm sim yuav ua li cas. Qhov no yog vim li cas thiaj siv tau ntau yam kev cog lus-qhia tawm qauv. Cov neeg koom ua ntej xa hashs los ntawm lawv cov randoms (commits), thiab tom qab ntawd qhib qhov randoms lawv tus kheej (qhia tawm). Theem "qhia tawm" pib tsuas yog tom qab qhov kev cog lus tsim nyog tau sau tseg, yog li cov neeg tuaj koom tuaj yeem xa raws nraim qhov random hash uas lawv tau xa ua ntej. Tam sim no cia peb muab tag nrho cov no ua ke nrog cov kev txwv ntawm ib qho thaiv, thiab zoo dua li ib qho ntawm yav tom ntej (randomness tsuas yog pom nyob rau hauv ib qho ntawm cov blocks yav tom ntej), thiab voila - randomness yog npaj txhij! Tam sim no txhua tus neeg ua si cuam tshuam rau qhov tshwm sim randomness, thiab tuaj yeem "yuam" lub siab phem BP los ntawm kev hla nws nrog nws tus kheej, tsis paub ua ntej, randomness... los ntawm kev xav tau ib qho nyiaj uas yuav tsum tau txuas nrog rau kev sib pauv thaum cog lus - kev tso nyiaj ruaj ntseg, uas yuav raug xa rov qab tsuas yog thaum lub sijhawm nthuav tawm. Hauv qhov no, kev cog lus thiab tsis nthuav tawm yuav tsis muaj txiaj ntsig.

Nws yog ib qho kev sim zoo, thiab cov tswv yim zoo li no kuj muaj nyob hauv kev ua si DApps, tab sis alas, qhov no rov tsis txaus. Tam sim no tsis yog tsuas yog cov miner xwb, tab sis kuj yog ib tus neeg koom nrog hauv cov txheej txheem tuaj yeem cuam tshuam qhov tshwm sim. Nws tseem muaj peev xwm tswj tau tus nqi ntawm nws tus kheej, tsis tshua muaj kev hloov pauv thiab tus nqi, tab sis, xws li cov miner, yog tias cov txiaj ntsig ntawm kev kos duab muaj txiaj ntsig ntau dua li tus nqi rau kev koom tes hauv PVRB raws tu qauv, ces qhov random. -producer (RP) tuaj yeem txiav txim siab seb puas yuav nthuav tawm thiab tseem tuaj yeem xaiv los ntawm tsawg kawg ob txoj kev xaiv.
Tab sis nws tau los ua rau txim rau cov neeg uas ua txhaum thiab tsis qhia tawm, thiab cov tswv yim no yuav los ua ke. Nws txoj kev yooj yim yog qhov txiaj ntsig loj - cov txheej txheem loj dua yuav tsum muaj kev suav muaj zog ntau dua.

PVRB thiab deterministic kos npe.

Muaj lwm txoj hauv kev los yuam RP muab tus lej pseudo-random uas nws tsis tuaj yeem cuam tshuam yog tias nws tau muab "preimage" - qhov no yog qhov kos npe txiav txim siab. Xws li kos npe yog, piv txwv li, RSA, thiab tsis yog ECS. Yog tias RP muaj ob peb tus yuam sij: RSA thiab ECC, thiab nws kos npe rau qee tus nqi nrog nws tus yuam sij ntiag tug, ces nyob rau hauv rooj plaub ntawm RSA nws yuav tau txais ib qho thiab tsuas yog ib qho kos npe, thiab nyob rau hauv rooj plaub ntawm ECS nws tuaj yeem tsim muaj pes tsawg tus. sib txawv kos npe siv tau. Qhov no yog vim tias thaum tsim ECS kos npe, siv tus lej random, xaiv los ntawm tus neeg kos npe, thiab nws tuaj yeem xaiv tau txhua txoj hauv kev, muab lub sijhawm rau tus neeg kos npe xaiv ib qho ntawm ntau qhov kos npe. Nyob rau hauv rooj plaub ntawm RSA: "ib tus nqi nkag" + "ib khub tseem ceeb" = "ib kos npe". Nws tsis tuaj yeem kwv yees tias kos npe rau lwm tus RP yuav tau txais dab tsi, yog li PVRB nrog kev txiav txim siab kos npe tuaj yeem tsim los ntawm kev sib txuas RSA kos npe ntawm ntau tus neeg koom nrog kos npe tib yam. Piv txwv li, yav dhau los random. Cov txheej txheem no txuag nyiaj ntau, vim kos npe yog ob qho tib si kev lees paub ntawm tus cwj pwm raug raws li txoj cai thiab qhov chaw ntawm randomness.

Txawm li cas los xij, txawm tias muaj kev txiav txim siab kos npe, lub tswv yim tseem muaj kev cuam tshuam rau qhov teeb meem "kawg neeg ua yeeb yam". Cov neeg koom zaum kawg tseem tuaj yeem txiav txim siab seb puas yuav luam tawm daim ntawv kos npe lossis tsis, yog li tswj cov txiaj ntsig. Koj tuaj yeem hloov kho cov tswv yim, ntxiv block hashes rau nws, ua ib puag ncig kom cov txiaj ntsig tsis tuaj yeem kwv yees ua ntej, tab sis tag nrho cov tswv yim no, txawm tias suav nrog ntau qhov kev hloov kho, tseem tsis tau daws qhov teeb meem ntawm kev cuam tshuam ntawm ib tus neeg koom nrog. ua rau ib puag ncig tsis ntseeg thiab tsuas tuaj yeem ua haujlwm raws li kev lag luam thiab sijhawm txwv. Tsis tas li ntawd, qhov loj ntawm RSA cov yuam sij (1024 thiab 2048 cov khoom) yog qhov loj heev, thiab qhov loj me rau kev lag luam blockchain yog qhov tseem ceeb heev. Pom tau tias tsis muaj txoj hauv kev yooj yim los daws qhov teeb meem, cia peb mus.

PVRB thiab kev sib qhia zais cia

Hauv cryptography, muaj cov tswv yim uas tuaj yeem tso cai rau lub network pom zoo rau ib qho thiab tsuas yog ib qho PVRB tus nqi, thaum cov tswv yim zoo li no tiv taus kev ua phem ntawm qee tus neeg koom. Ib qho tseem ceeb raws tu qauv uas tsim nyog paub koj tus kheej nrog yog Shamir txoj kev sib qhia zais cia. Nws ua haujlwm los faib ib qho zais cia (piv txwv li, tus yuam sij zais cia) rau hauv ntau qhov chaw, thiab faib cov khoom no rau N cov neeg koom. Qhov zais cia tau muab faib ua ib txoj hauv kev uas M qhov tawm ntawm N yog txaus kom rov qab tau nws, thiab cov no tuaj yeem yog txhua qhov M. Yog tias ntawm cov ntiv tes, tom qab ntawd muaj daim duab ntawm qhov tsis paub ua haujlwm, cov neeg koom nrog pauv cov ntsiab lus ntawm daim duab, thiab tom qab tau txais M cov ntsiab lus, tag nrho cov haujlwm tuaj yeem rov qab los.
Cov lus piav qhia zoo tau muab rau hauv wiki tab sis ua si nrog nws xyaum kom ua si raws tu qauv hauv koj lub taub hau yog qhov tseem ceeb rau demo nplooj.

Yog tias FSSS (Fiat-Shamir Secret Sharing) cov tswv yim siv tau rau hauv nws daim ntawv ntshiab, nws yuav yog PVRB indestructible. Hauv nws daim ntawv yooj yim tshaj plaws, cov txheej txheem yuav zoo li no:

  • Txhua tus neeg koom nrog tsim lawv tus kheej random thiab faib faib los ntawm nws mus rau lwm tus neeg koom
  • Txhua tus neeg koom qhia nws ib feem ntawm kev zais ntawm lwm tus neeg koom
  • Yog tias tus neeg koom nrog muaj ntau tshaj M shares, ces tus naj npawb ntawm cov neeg koom nrog no tuaj yeem suav tau, thiab nws yuav yog qhov tshwj xeeb, tsis hais txog ntawm pawg neeg koom nrog.
  • Kev sib xyaw ua ke ntawm kev nthuav tawm randoms yog qhov xav tau PVRB

Ntawm no, ib tus neeg koom nrog tsis cuam tshuam cov txiaj ntsig ntawm txoj cai, tshwj tsis yog nyob rau hauv cov xwm txheej uas qhov ua tiav ntawm qhov kev nthuav qhia tsis txaus ntseeg tsuas yog nyob ntawm nws. Yog li, cov txheej txheem no, yog tias muaj qhov yuav tsum tau ua ntawm RPs ua haujlwm ntawm cov txheej txheem thiab muaj, ua haujlwm, ua raws li qhov yuav tsum tau muaj rau lub zog cryptographic, thiab tiv thaiv qhov teeb meem "tus neeg ua yeeb yam kawg".

Qhov no tuaj yeem yog qhov kev xaiv zoo tshaj plaws, lub tswv yim PVRB no raws li Fiat-Shamir kev sib qhia zais cia tau piav qhia piv txwv hauv qhov no tsab xov xwm. Tab sis, raws li tau hais los saum no, yog tias koj sim siv nws lub taub hau hauv blockchain, kev txwv kev tshwm sim. Ntawm no yog ib qho piv txwv ntawm kev sim ua raws li txoj cai hauv EOS ntse daim ntawv cog lus thiab nws qhov tseem ceeb tshaj plaws - txheeb xyuas cov neeg koom nrog tshaj tawm: code. Koj tuaj yeem pom los ntawm cov lej uas pov thawj validation yuav tsum muaj ntau qhov sib npaug ntawm cov lej, thiab cov lej siv loj heev. Nws yuav tsum to taub tias nyob rau hauv blockchains, txheeb xyuas tshwm sim thaum lub sij hawm thaum lub block-producer txheej txheem kev sib pauv, thiab feem ntau, txhua tus neeg koom yuav tsum tau yooj yim txheeb xyuas qhov tseeb ntawm cov txheej txheem, yog li cov kev cai rau kev ceev ntawm kev txheeb xyuas muaj nuj nqi yog qhov hnyav heev. . Hauv qhov kev xaiv no, qhov kev xaiv tau hloov mus ua tsis tau zoo, vim tias qhov kev txheeb xyuas tsis haum nyob rau hauv kev txwv kev lag luam (0.5 vib nas this).

Kev txheeb xyuas kev ua tau zoo yog ib qho tseem ceeb tshaj plaws uas yuav tsum tau siv rau kev siv, feem ntau, cov txheej txheem cryptographic siab heev hauv blockchain. Tsim cov ntaub ntawv pov thawj, npaj cov lus - cov txheej txheem no tuaj yeem raug tshem tawm thiab ua tiav ntawm cov khoos phis tawj ua haujlwm siab, tab sis kev pov thawj tsis tuaj yeem hla - qhov no yog lwm qhov tseem ceeb rau PVRB.

PVRB thiab pib kos npe

Tau paub txog cov txheej txheem sib qhia zais cia, peb pom tag nrho cov txheej txheem kev cai koom ua ke los ntawm lo lus tseem ceeb "threshold". Thaum qhov kev nthuav tawm ntawm qee cov ntaub ntawv xav tau kev koom tes ntawm M cov neeg koom siab ncaj ncees tawm ntawm N, thiab cov txheej txheem ntawm cov neeg koom siab ncaj ncees tuaj yeem yog ib qho kev txiav txim siab ntawm N, peb hais txog "threshold" schemes. Nws yog lawv uas tso cai rau peb los daws qhov teeb meem "tus neeg ua yeeb yam kawg", tam sim no yog tias tus neeg tawm tsam tsis qhia nws ib feem ntawm qhov zais cia, lwm tus neeg koom nrog ncaj ncees yuav ua rau nws. Cov tswv yim no tso cai rau kev pom zoo ntawm ib qho thiab tsuas yog ib lub ntsiab lus, txawm tias cov txheej txheem raug ua phem los ntawm qee tus neeg koom.

Kev sib xyaw ua ke ntawm kev txiav txim siab kos npe thiab cov phiaj xwm pib ua rau nws muaj peev xwm tsim tau ib qho yooj yim thiab cog lus tswv yim rau kev siv PVRB - cov no yog qhov kev txiav txim siab kos npe. Ntawm no ib tsab xov xwm hais txog kev siv ntau yam ntawm qhov pib kos npe, thiab ntawm no yog lwm qhov zoo nyeem ntev los ntawm Dash.

Kab lus kawg piav txog BLS kos npe (BLS sawv cev rau Boneh-Lynn-Shacham, ntawm no tsab xov xwm), uas muaj qhov tseem ceeb heev thiab yooj yim heev rau cov programmers - pej xeem, zais cia, pej xeem cov yuam sij thiab BLS kos npe tuaj yeem ua ke nrog ib leeg siv kev ua lej yooj yim, thaum lawv cov kev sib txuas tseem siv tau cov yuam sij thiab kos npe, tso cai rau koj yooj yim sau ntau yam. kos npe rau hauv ib qho thiab ntau tus yuam sij pej xeem rau hauv ib qho. Lawv kuj yog kev txiav txim siab thiab tsim cov txiaj ntsig tib yam rau tib cov ntaub ntawv nkag. Ua tsaug rau qhov zoo no, kev sib txuas ntawm BLS kos npe yog lawv tus kheej cov yuam sij siv tau, uas tso cai rau kev siv cov kev xaiv uas M ntawm N cov neeg koom tsim ib qho thiab tsuas yog ib qho kos npe uas txiav txim siab, lees paub rau pej xeem, thiab tsis paub txog kom txog thaum nws qhib los ntawm Mth. tus neeg koom.

Hauv ib lub tswv yim nrog qhov pib BLS kos npe, txhua tus neeg koom nrog kos npe ib yam dab tsi siv BLS (piv txwv li, qhov kev sib tw dhau los), thiab qhov pib kos npe yog qhov xav tau random. Cov cuab yeej cryptographic ntawm BLS kos npe txaus siab rau qhov yuav tsum tau ua rau qhov tsis zoo, qhov chaw pib tiv thaiv "tus neeg ua yeeb yam kawg", thiab qhov sib xyaw tshwj xeeb ntawm cov yuam sij ua rau nws muaj peev xwm ua tau raws li ntau qhov kev nthuav dav algorithms uas tso cai, piv txwv li, kev sib sau ua ke ntawm cov lus raws tu qauv. .

Yog li, yog tias koj tab tom tsim PVRB ntawm koj lub blockchain, koj feem ntau yuav xaus nrog BLS qhov pib kos npe cov phiaj xwm, ntau qhov haujlwm twb tau siv lawm. Piv txwv li, DFinity (no benchmark uas siv lub Circuit Court, thiab S, SΡ“S, Piv txwv li kev siv cov ntaub ntawv pov thawj kev sib koom ua ke), lossis Keep.network (ntawm no yog lawv cov beacon random daim ntawv dajthiab no Piv txwv ntse daim ntawv cog lus ua hauj lwm raws tu qauv).

Kev siv PVRB

Hmoov tsis zoo, peb tseem tsis tau pom cov txheej txheem npaj ua tiav hauv PVRB blockchains uas tau ua pov thawj nws txoj kev ruaj ntseg thiab ruaj ntseg. Txawm hais tias cov txheej txheem lawv tus kheej tau npaj txhij, technically siv lawv rau cov kev daws teeb meem uas twb muaj lawm tsis yooj yim. Rau lub hauv paus nruab nrab, PVRB tsis ua rau muaj kev nkag siab, thiab cov kev faib tawm yog nruj me ntsis txwv nyob rau hauv tag nrho cov kev siv suav: CPU, nco, cia, I / O. Tsim ib PVRB yog kev sib txuas ntawm cov txheej txheem sib txawv txhawm rau tsim qee yam uas ua tau raws li txhua qhov kev xav tau rau tsawg kawg qee qhov siv tau blockchain. Ib txoj cai suav tau zoo dua, tab sis xav tau ntau cov lus ntawm RPs, thaum lwm qhov xav tau cov lus tsawg heev, tab sis tsim cov ntawv pov thawj tuaj yeem ua haujlwm uas siv sijhawm kaum feeb, lossis ntau teev.

Kuv yuav sau cov xwm txheej uas koj yuav tau xav txog thaum xaiv PVRB zoo:

  • Cryptographic zog. Koj PVRB yuav tsum nruj me ntsis txwv tsis pub, tsis muaj peev xwm tswj tau ib qho me ntsis. Nyob rau hauv ib co schemes no tsis yog li ntawd, yog li hu rau ib tug cryptographer
  • Qhov teeb meem "kawg actor".. Koj PVRB yuav tsum tiv thaiv kev tawm tsam qhov twg tus neeg tawm tsam tswj ib lossis ntau dua RPs tuaj yeem xaiv ib qho ntawm ob qhov txiaj ntsig.
  • Protocol sabotage teeb meem. Koj PVRB yuav tsum tiv thaiv kev tawm tsam qhov twg tus neeg tawm tsam tswj hwm ib lossis ntau dua RPs txiav txim siab seb puas yuav tsum tau ua los yog tsis tau thiab tuaj yeem lav lossis nrog qhov muaj feem cuam tshuam los cuam tshuam qhov no
  • Tus naj npawb ntawm cov lus teeb meem. Koj RPs yuav tsum xa qhov tsawg kawg nkaus ntawm cov lus mus rau blockchain thiab zam kev ua haujlwm synchronous ntau li ntau tau xws li cov xwm txheej zoo li "Kuv xa qee cov ntaub ntawv, Kuv tab tom tos cov lus teb los ntawm ib tus neeg koom nrog tshwj xeeb." Hauv p2p tes hauj lwm, tshwj xeeb tshaj yog thaj chaw uas muaj kev sib cais, koj yuav tsum tsis txhob suav rau cov lus teb ceev
  • Qhov teeb meem ntawm kev siv computer complexity. Kev pov thawj ntawm txhua theem ntawm PVRB ntawm cov saw hlau yuav tsum yooj yim heev, vim nws tau ua los ntawm tag nrho cov neeg siv khoom ntawm lub network. Yog tias qhov kev siv tau ua tiav siv daim ntawv cog lus ntse, ces cov kev xav tau ceev nruj heev
  • Qhov teeb meem ntawm kev nkag mus tau thiab kev ua neej nyob. Koj PVRB yuav tsum siv zog ua kom muaj zog rau cov xwm txheej uas ib feem ntawm lub network tsis muaj nyob rau lub sijhawm thiab ib feem ntawm RP tsuas yog tsis ua haujlwm.
  • Qhov teeb meem ntawm kev teeb tsa kev ntseeg siab thiab pib qhov tseem ceeb faib. Yog tias koj PVRB siv qhov kev teeb tsa tseem ceeb ntawm cov txheej txheem, ces qhov no yog ib zaj dab neeg loj thiab loj. Ntawm no Piv txwv. Yog tias cov neeg koom yuav tsum qhia lawv tus yuam sij ua ntej pib txoj cai, qhov no kuj yog teeb meem yog tias cov neeg koom nrog hloov pauv
  • Teeb meem kev loj hlob. Muaj cov tsev qiv ntawv hauv cov lus uas yuav tsum tau muaj, lawv txoj kev ruaj ntseg thiab kev ua haujlwm, kev tshaj tawm, kev sim nyuaj, thiab lwm yam.

Piv txwv li, qhov pib BLS kos npe muaj qhov teeb meem tseem ceeb - ua ntej pib ua haujlwm, cov neeg koom yuav tsum faib cov yuam sij rau ib leeg, npaj ib pab pawg nyob rau hauv qhov chaw pib yuav ua haujlwm. Qhov no txhais tau hais tias tsawg kawg ib puag ncig ntawm kev sib pauv hauv kev sib koom ua ke yuav tsum tau tos, thiab muab cov khoom tsim tawm, piv txwv li, yog qhov tsim nyog hauv kev ua si, yuav luag nyob rau lub sijhawm, qhov no txhais tau tias kev ua phem ntawm cov txheej txheem tuaj yeem ua tau nyob rau theem no. , thiab qhov zoo ntawm cov txheej txheem pib poob. Qhov teeb meem no tau yooj yim dua li yav dhau los, tab sis tseem xav tau kev txhim kho cov txheej txheem sib cais rau kev tsim cov pab pawg pib, uas yuav tsum muaj kev tiv thaiv kev lag luam, los ntawm kev tso nyiaj thiab tshem tawm cov nyiaj (slashing) los ntawm cov neeg koom nrog uas tsis ua raws cov raws tu qauv. Tsis tas li ntawd, BLS kev pov thawj nrog qib kev ruaj ntseg zoo tsuas yog tsis haum, piv txwv li, rau hauv tus qauv EOS lossis Ethereum kev hloov pauv - tsuas yog tsis muaj sijhawm txaus rau kev pov thawj. Daim ntawv cog lus code yog WebAssembly lossis EVM, ua tiav los ntawm lub tshuab virtual. Cryptographic functions tsis tau siv ib txwm (tsis tau), thiab ua haujlwm kaum zaus qeeb dua li cov tsev qiv ntawv cryptographic. Ntau cov txheej txheem tsis ua raws li qhov yuav tsum tau ua raws li qhov tseem ceeb ntim, piv txwv li 1024 thiab 2048 khoom rau RSA, 4-8 npaug loj dua li tus qauv kev lag luam kos npe hauv Bitcoin thiab Ethereum.

Lub xub ntiag ntawm kev siv nyob rau hauv ntau hom lus programming kuj plays lub luag hauj lwm - ntawm uas muaj tsawg, tshwj xeeb tshaj yog rau cov kev cai tshiab. Qhov kev xaiv nrog kev koom ua ke rau hauv kev pom zoo yuav tsum tau sau cov txheej txheem hauv cov lus hauv lub platform, yog li koj yuav tsum tau nrhiav cov cai hauv Go for geth, hauv Rust for Parity, hauv C ++ rau EOS. Txhua tus yuav tsum tau saib rau JavaScript code, thiab txij li JavaScript thiab cryptography tsis yog cov phooj ywg tshwj xeeb, WebAssembly yuav pab tau, uas tam sim no twv yuav raug hu ua tus qauv tseem ceeb hauv Internet ntxiv.

xaus

Kuv vam tias yav dhau los Tshooj Kuv tau tswj xyuas kom koj ntseeg tau tias kev tsim cov lej sib txawv ntawm blockchain yog qhov tseem ceeb rau ntau yam ntawm lub neej ntawm kev sib koom tes sib koom tes, thiab nrog rau tsab xov xwm no kuv tau pom tias txoj haujlwm no tsis tshua muaj siab thiab nyuaj, tab sis cov kev daws teeb meem zoo twb muaj lawm. Feem ntau, qhov kawg tsim ntawm tus txheej txheem yog ua tau tsuas yog tom qab ua qhov kev ntsuam xyuas loj uas coj mus rau hauv tus account txhua yam los ntawm kev teeb tsa rau kev ua txhaum cai, yog li koj tsis zoo li yuav pom cov zaub mov npaj ua hauv pab pawg ntawv dawb thiab cov ntawv, thiab peb yeej yuav tsis. txiav txim siab xyoo tom ntej los yog ob tug sau "ua li no, raws nraim."

Nyob zoo, rau peb PVRB hauv blockchain tau tsim Haya, peb tau txiav txim siab siv qhov pib BLS kos npe, peb npaj yuav siv PVRB ntawm qib kev pom zoo, txij li kev txheeb xyuas hauv cov ntawv cog lus ntse nrog rau qib kev ruaj ntseg tseem tsis tau muaj. Nws yog qhov ua tau tias peb siv ob lub tswv yim ib zaug: thawj zaug, kev sib koom ua lag luam kim heev los tsim cov random_seed mus sij hawm ntev, thiab tom qab ntawd peb siv nws los ua lub hauv paus rau kev tsim ntau zaus siv cov kev txiav txim siab pib BLS kos npe, tej zaum peb yuav txwv peb tus kheej rau xwb. ib qho ntawm cov txheej txheem. Hmoov tsis zoo, nws tsis tuaj yeem hais ua ntej tias tus txheej txheem yuav yog dab tsi; qhov zoo xwb yog tias, xws li hauv kev tshawb fawb, hauv engineering teeb meem, qhov tshwm sim tsis zoo kuj yog qhov tshwm sim, thiab txhua qhov kev sim tshiab los daws qhov teeb meem yog lwm kauj ruam rau. kev tshawb fawb ntawm txhua tus neeg koom nrog qhov teeb meem. Txhawm rau ua kom tau raws li kev lag luam, peb daws qhov teeb meem tshwj xeeb - muab cov ntawv thov kev ua si nrog qhov kev ntseeg siab ntawm entropy, yog li peb kuj yuav tsum tau xyuam xim rau blockchain nws tus kheej, tshwj xeeb tshaj yog cov teeb meem ntawm kev sib tw kawg thiab kev tswj hwm network.

Thiab txawm hais tias peb tseem tsis tau pom muaj pov thawj tiv thaiv PVRB hauv blockchains, uas yuav tau siv sijhawm txaus los kuaj los ntawm cov ntawv thov tiag tiag, ntau qhov kev tshuaj xyuas, thauj khoom, thiab tau kawg, kev tawm tsam tiag tiag, tab sis tus naj npawb ntawm txoj hauv kev tau lees paub tias kev daws teeb meem tshwm sim, thiab dab tsi - ntawm cov algorithms no yuav daws qhov teeb meem. Peb yuav zoo siab los qhia cov txiaj ntsig thiab ua tsaug rau lwm pab pawg uas tseem ua haujlwm ntawm qhov teeb meem no rau cov khoom thiab cov cai uas tso cai rau cov kws ua haujlwm tsis tau nqis los ntawm tib rake ob zaug.

Yog li, thaum koj ntsib tus programmer tsim kev sib txawv ntawm qhov sib txawv, ua tib zoo saib thiab saib xyuas, thiab muab kev pabcuam puas siab puas ntsws yog tias tsim nyog :)

Tau qhov twg los: www.hab.com

Ntxiv ib saib