Nkag siab txog Stellar Consensus Protocol

Nkag siab txog Stellar Consensus Protocol

Cov txheej txheem kev pom zoo Stellar tau piav qhia thawj zaug hauv tsab xov xwm scientific David Mazier hauv 2015. Qhov no yog "tsoom fwv teb chaws Byzantine kev pom zoo system" uas tso cai rau decentralized, leaderless computing tes hauj lwm mus cuag tau kev pom zoo ntawm kev txiav txim. Stellar kev them nyiaj network siv Stellar Consensus Protocol (SCP) kom muaj kev sib pauv keeb kwm uas pom tau rau txhua tus neeg koom.

Kev pom zoo raws tu qauv yog suav hais tias nyuaj rau kev nkag siab. SCP yog qhov yooj yim dua li feem ntau ntawm lawv, tab sis tseem qhia txog lub koob npe nrov - ib nrab vim yog lub tswv yim yuam kev uas "federated voting", uas yog cov ntsiab lus ntawm thawj ib nrab ntawm cov ntawv tshawb fawb, yog SCP. Tab sis qhov ntawd tsis muaj tseeb! Qhov no tsuas yog ib qho tseem ceeb lub tsev thaiv uas ib nrab thib ob ntawm tsab xov xwm siv los tsim qhov tseeb Stellar consensus raws tu qauv.

Hauv tsab xov xwm no peb yuav piav qhia luv luv txog qhov "kev pom zoo" yog dab tsi, dab tsi tuaj yeem ua "Byzantine" thiab yog vim li cas thiaj ua rau Byzantine system "tsoom fwv". Tom qab ntawd peb yuav piav qhia txog cov txheej txheem pov npav hauv tsoomfwv tau piav qhia hauv tsab xov xwm SCP, thiab thaum kawg peb yuav piav qhia txog SCP tus txheej txheem nws tus kheej.

Daim ntawv cog lus

Ib qho kev pom zoo tso cai rau ib pab pawg neeg tuaj koom ua qhov kev pom zoo ntawm lub ncauj lus, xws li yuav xaj dab tsi rau pluas su.

Ntawm Interstellar, peb tau siv peb tus kheej qhov kev pom zoo noj mov: peb xaj dab tsi peb tus thawj coj ua haujlwm, John, hais. Qhov no yog qhov kev pom zoo yooj yim thiab siv tau zoo. Peb txhua tus cia siab rau John thiab ntseeg tias nws yuav pom ib yam dab tsi nthuav thiab noj qab haus huv txhua hnub.

Tab sis yuav ua li cas yog tias John ua phem rau peb txoj kev ntseeg? Nws tuaj yeem txiav txim siab tias peb txhua tus yuav tsum ua vegans. Nyob rau hauv ib lub lis piam los yog ob, peb yuav zaum overthrow nws thiab muab lub hwj chim rau Elizabeth. Tab sis mam li nco dheev nws hlub avocados nrog anchovies thiab xav tias txhua tus yuav tsum zoo li ntawd. Lub hwj chim corrupts. Yog li nws yog qhov zoo dua los nrhiav qee txoj kev ywj pheej ntau dua: qee txoj hauv kev kom paub tseeb tias qhov kev nyiam sib txawv raug coj mus rau hauv tus account, thaum ua kom lub sijhawm thiab tsis meej pem, kom tsis txhob muaj leej twg txiav txim siab noj su, lossis tsib tus neeg tso cov xaj sib txawv, lossis kev sib tham. rub mus rau yav tsaus ntuj.

Nws yuav zoo li qhov kev daws teeb meem yooj yim: tuav pov npav! Tab sis qhov no yog ib qho kev xav tsis thoob. Leej twg yuav sau cov ntawv xaiv tsa thiab tshaj tawm cov txiaj ntsig? Thiab vim li cas lwm tus yuav tsum ntseeg qhov nws hais? Tej zaum peb ua tau thaum xub thawj pov npav rau ib tug thawj coj uas peb tso siab rau coj kev pov npav - tab sis leej twg yuav coj nws tus kheej los ntawm kev pov npav? Yuav ua li cas yog peb tsis pom zoo rau ib tug thawj coj? Los yog yuav ua li cas yog tias peb ua tiav qhov kev pom zoo, tab sis tus thawj coj no tau daig hauv kev sib tham lossis mus so mob?

Cov teeb meem zoo sib xws tshwm sim hauv cov khoos phis tawj sib faib. Txhua tus neeg koom lossis cov nodes yuav tsum pom zoo rau qee qhov kev txiav txim siab, xws li nws tig nws los hloov kho cov ntaub ntawv sib koom lossis tshem tawm ib txoj haujlwm los ntawm kev ua haujlwm. Nyob rau hauv lub network cryptocurrency, cov nodes pheej yuav tsum xaiv dab tsi tag nrho zaj dab neeg zoo li los ntawm ob peb ua tau versions, uas tej zaum tsis sib haum. Daim ntawv cog lus network no muab kev lees paub rau tus neeg tau txais txiaj ntsig tias cov nyiaj npib yog (a) siv tau (tsis yog cuav) thiab (b) tseem tsis tau siv rau lwm qhov. Qhov no kuj ua kom ntseeg tau tias nws yuav muaj peev xwm siv nyiaj npib yav tom ntej vim tias tus neeg txais tshiab yuav muaj kev lees paub zoo ib yam.

Txhua qhov kev pom zoo hauv kev sib koom ua ke yuav tsum muaj kev ua txhaum cai: nws yuav tsum tsim cov txiaj ntsig zoo ib yam txawm tias muaj kev ua yuam kev xws li kev sib txuas qeeb, cov lus tsis teb, thiab cov lus tsis raug. Byzantine Qhov kev pom zoo kuj tseem tiv taus qhov yuam kev "Byzantine": cov nodes uas muab cov ntaub ntawv tsis tseeb, txawm tias vim yog qhov yuam kev los yog txhob txwm sim ua kom tsis zoo rau lub kaw lus lossis tau txais qee qhov txiaj ntsig. "Byzantine" kev zam txim txhaum - lub peev xwm los ntseeg ib pawg kev txiav txim siab txawm tias qee cov tswv cuab hauv pawg yuav dag lossis tsis ua raws li cov cai ntawm kev txiav txim siab - hu ua zaj lus piv txwv txog cov generals ntawm Byzantine Empireleej twg sim los tswj kev tawm tsam. Cov lus piav qhia zoo ntawm Anthony Stevens.

Xav txog tus tswv crypto npib Alice, leej twg yuav tsum xaiv ntawm kev yuav khoom qab zib qab zib los ntawm Bob thiab them Carol cov nuj nqis. Tej zaum Alice xav them ob leeg ntawm ib zaug los ntawm kev dag ntxias siv tib lub npib. Ua li no, nws yuav tsum hais kom Bob lub computer hais tias lub npib yeej tsis tau them rau Carol, thiab hais kom Carol lub computer hais tias lub npib yeej tsis them rau Bob. Lub Byzantine system ntawm kev cog lus ua rau qhov no tsis yooj yim sua, siv ib daim ntawv ntawm feem ntau txoj cai hu ua pawg. Ib qho ntawm lub network no tsis kam txav mus rau ib qho kev hloov pauv ntawm keeb kwm kom txog thaum nws pom tias muaj pes tsawg tus phooj ywg txaus - pawg neeg - pom zoo rau qhov kev hloov pauv no. Thaum qhov no tshwm sim, lawv yuav tsim ib pawg pov npav loj txaus los yuam kom cov koom haum txuas ntxiv kom pom zoo nrog lawv qhov kev txiav txim siab. Alice tuaj yeem yuam qee cov nodes los dag rau nws tus kheej, tab sis yog tias lub network loj txaus, nws qhov kev sim yuav dhau los ntawm kev pov npav ntawm cov nodes ncaj ncees.

Yuav tsum muaj pes tsawg lub nodes rau pawg? Qhov tsawg kawg nkaus, feem ntau, lossis ntau dua, feem ntau tsim nyog los tawm tsam qhov tsis raug thiab kev dag ntxias. Tab sis txhawm rau suav feem ntau, koj yuav tsum paub tag nrho cov neeg koom. Ntawm Interstellar chaw ua haujlwm lossis hauv cheeb tsam kev xaiv tsa, cov lej no yooj yim nrhiav tau. Tab sis yog tias koj pab pawg yog ib lub network uas tsis muaj kev txwv nyob rau hauv uas cov nodes tuaj yeem nkag mus thiab tawm ntawm lub siab nyiam yam tsis muaj kev pom zoo los ntawm qhov chaw, ces koj xav tau tsoom fwv Byzantine daim ntawv cog lus system muaj peev xwm txiav txim siab pawg tsis yog los ntawm cov npe teev ua ntej ntawm cov nodes, tab sis dynamically, los ntawm kev hloov pauv tsis tu ncua thiab inevitably ua tsis tiav snapshot ntawm nodes ntawm ib lub sijhawm.

Tej zaum nws yuav zoo li tsis yooj yim sua kom tsim ib pawg los ntawm qhov kev xav ntawm ib leeg ntawm ib lub network loj, tab sis nws muaj peev xwm. Xws li pawg pawg tuaj yeem lav qhov txiaj ntsig ntawm kev pov npav xaiv tsa. SCP daim ntawv dawb qhia tau hais tias yuav ua li cas siv tus txheej txheem hu ua los ntawm tsoom fwv pov npav.

Rau cov tsis siab ntev

Cov seem ntawm tsab xov xwm piav qhia txog kev xaiv tsa nom tswv thiab Stellar kev pom zoo raws li kev nthuav dav ntxiv. Yog tias koj tsis txaus siab rau cov ntsiab lus, ntawm no yog cov ntsiab lus dav dav ntawm cov txheej txheem.

  1. Cov nodes ua ib puag ncig ntawm tsoomfwv pov npav ntawm "tus neeg xaiv tsa." Federal voting round txhais tau tias:
    • Cov node pov npav rau qee nqe lus, piv txwv li, "Kuv thov tus nqi ntawm V";
    • Cov node mloog cov phooj ywg lub suab kom txog thaum nws pom ib qho uas tuaj yeem "tau txais";
    • Cov node nrhiav "qurum" rau qhov kev lees paub no. Ib pawg β€œpaub meej” tus neeg xaiv tsa.
  2. Thaum ib lub pob tuaj yeem lees paub ib lossis ntau tus neeg xaiv tsa, nws sim "npaj" "pob npav" los ntawm ntau qhov kev xaiv tsa hauv tsoomfwv.
  3. Thaum ib lub pob muaj peev xwm txheeb xyuas daim ntawv xaiv tsa tau npaj, nws sim ua nws los ntawm ntau qhov kev xaiv tsa hauv tsoomfwv.
  4. Thaum ib lub pob tuaj yeem lees paub qhov kev cog lus ntawm daim ntawv xaiv tsa, nws tuaj yeem "tawm sab nraud" tus nqi ntawm daim ntawv xaiv tsa los ntawm kev siv nws ua qhov kev pom zoo.

Cov kauj ruam no suav nrog ntau qhov kev xaiv tsa nom tswv, uas sib sau ua ib puag ncig SCP. Cia peb ua tib zoo saib seb yuav muaj dab tsi tshwm sim ntawm txhua kauj ruam.

Federated pov npav

Federated pov npav yog txheej txheem los txiav txim seb lub network puas tuaj yeem pom zoo rau qhov kev thov. Hauv kev pov npav, txhua lub pob yuav tsum xaiv ib qho ntawm qhov muaj peev xwm ua tau ntau yam txiaj ntsig. Nws tsis tuaj yeem ua qhov no tshwj tsis yog nws ntseeg siab tias lwm cov nodes hauv lub network yuav tsis xaiv qhov sib txawv. Kom paub tseeb tias qhov no, nodes pauv ib barrage ntawm cov lus rov qab thiab tawm kom txhua leej txhua tus paub tseeb hais tias, uas pawg pob caus ntawd lees txais tib qhov kev txiav txim siab. Cov seem ntawm ntu no piav qhia cov ntsiab lus hauv kab lus no thiab yuav ua li cas tag nrho cov txheej txheem tshwm sim.

Pawg pawg thiab pawg pawg hlais

Cia peb pib los ntawm kev txhais ib pawg. Raws li peb tau tham saum toj no, nyob rau hauv ib tug decentralized network nrog dynamic tswv cuab, nws yog tsis yooj yim sua kom paub ua ntej tus naj npawb ntawm cov nodes thiab yog li ntawd yuav tsum muaj pes tsawg leeg rau feem coob. Tsoom fwv pov npav daws qhov teeb meem no los ntawm kev qhia txog lub tswv yim tshiab pawg txiav ( pawg pawg pawg): Ib pawg me me ntawm cov phooj ywg uas ib pawg ntseeg sib txuas lus cov ntaub ntawv pov npav rau lwm tus hauv lub network. Txhua lub node txhais nws tus kheej pawg pawg (ntawm uas nws dhau los ua tus tswv cuab de facto).

Kev tsim Pawg Pawg pib nrog kev txiav pawg pawg. Rau txhua qhov, nws cov kab txiav tau ntxiv. Tom qab ntawd cov lus hlais ntxiv cov nodes thiab lwm yam. Raws li koj txuas ntxiv, muaj ntau thiab ntau cov nodes uas koj tsis tuaj yeem ntxiv vim tias lawv tau suav nrog hauv daim hlais. Thaum tsis muaj cov nodes tshiab ntxiv, cov txheej txheem nres: peb tau tsim pawg pawg los ntawm "kev kaw" ntawm pawg pawg thawj zaug.

Nkag siab txog Stellar Consensus Protocol
Txhawm rau nrhiav quorum los ntawm ib qho chaw muab ...

Nkag siab txog Stellar Consensus Protocol
... ntxiv cov tswv cuab ntawm nws daim hlais...

Nkag siab txog Stellar Consensus Protocol
...ces peb ntxiv cov tswv cuab ntawm cov nodes.

Nkag siab txog Stellar Consensus Protocol
Peb txuas ntxiv mus txog thaum tsis muaj cov nodes sab laug ntxiv.

Nkag siab txog Stellar Consensus Protocol

Nkag siab txog Stellar Consensus Protocol
Tsis muaj nodes tshuav ntxiv. Nov yog pawg pawg.

Qhov tseeb, txhua qhov tuaj yeem tshwm sim hauv ntau tshaj ib daim. Txhawm rau tsim ib pawg, xaiv tsuas yog ib qho ntawm cov hlais thiab ntxiv cov tswv cuab; tom qab ntawd xaiv ib daim ntawv rau txhua tus tswv cuab thiab ntxiv cov tswv cuab nws txiav thiab lwm yam. Qhov no txhais tau hais tias txhua lub node yog ib tug tswv cuab ntawm ntau pawg pawg.

Nkag siab txog Stellar Consensus Protocol
Xaiv ib pawg pawg ntawm txhua kauj ruam.

Nkag siab txog Stellar Consensus Protocol

Nkag siab txog Stellar Consensus Protocol

Nkag siab txog Stellar Consensus Protocol
Ib pawg pawg ua tau. Los yog lwm txoj kev ...

Nkag siab txog Stellar Consensus Protocol
...xaiv lwm cov hlais...

Nkag siab txog Stellar Consensus Protocol

Nkag siab txog Stellar Consensus Protocol
…(thaum ua tau)…

Nkag siab txog Stellar Consensus Protocol
... tsim lwm pawg pawg.

Yuav ua li cas ib tug node paub uas slices lwm cov nodes nyob rau hauv? Ib yam li lwm cov ntaub ntawv hais txog lwm cov nodes: los ntawm kev sib kis uas txhua qhov ntawm cov xov xwm tshaj tawm mus rau lub network thaum nws lub xeev pov npav hloov. Txhua qhov kev tshaj tawm suav nrog cov ntaub ntawv hais txog qhov xa ntawm cov hlais. SCP daim ntawv dawb tsis qhia txog kev sib txuas lus. Kev nqis tes ua feem ntau siv lus xaiv raws tu qauv rau guaranteed tshaj tawm cov lus thoob plaws hauv lub network.

Nco qab tias nyob rau hauv tsis yog tsoom fwv teb chaws Byzantine system ntawm kev pom zoo, ib pawg yog txhais raws li ib tug feem ntau ntawm tag nrho cov nodes. Lub Byzantine daim ntawv cog lus system yog tsim los ntawm lub ntsiab lus ntawm cov lus nug: yuav ua li cas muaj ntau yam tsis ncaj ncees nodes nyob rau hauv lub system zam? Nyob rau hauv ib qho system ntawm N nodes tsim kom muaj sia nyob f tsis ua hauj lwm, ib lub node yuav tsum muaj peev xwm ua tau zoo los ntawm kev tau txais kev tawm tswv yim los ntawm N-f cov phooj ywg vim f ntawm lawv tej zaum yuav poob. Tab sis tau txais cov lus teb los ntawm N-f cov phooj ywg, peb tuaj yeem xav tias tag nrho cov phooj ywg (los ntawm qhov node tsis tau txais cov lus teb) yog qhov tseeb tiag. Yog li, f tawm ntawm N-f cov phooj ywg (los ntawm cov lus teb tau txais) yog siab phem. Rau cov nodes tuaj rau tib qhov kev pom zoo, feem ntau ntawm cov seem yuav tsum ncaj ncees, uas yog, peb xav tau N-f kom siab dua 2f lossis N> 3f. Yog li feem ntau lub kaw lus tsim kom muaj sia nyob f ua tsis tiav yuav muaj tag nrho ntawm N = 3f + 1 nodes thiab pawg loj ntawm 2f + 1. Thaum ib daim ntawv thov dhau los ntawm pawg thawj coj, tus so ntawm lub network ntseeg tau tias txhua qhov kev thov sib tw yuav ua tsis tiav. Qhov no yog li cas lub network converges rau qhov tshwm sim.

Tab sis nyob rau hauv tsoom fwv teb chaws Byzantine kev pom zoo system, tsis tsuas yog yuav tsis muaj ib tug feem ntau (vim tsis muaj leej twg paub tag nrho cov loj ntawm lub network), tab sis lub tswvyim ntawm ib tug feem ntau yog kiag li tsis muaj txiaj ntsig! Yog tias kev ua tswv cuab hauv lub kaw lus qhib, ces ib tus neeg tuaj yeem tau txais feem ntau los ntawm kev ua lub npe hu ua Sybil nres: rov koom nrog lub network hla ntau lub pob. Yog li vim li cas thiaj tuaj yeem hu ua transitive hlais kaw pawg, thiab nws yuav ua li cas thiaj li txwv tsis pub cov kev sib tw?

Technically, tsis muaj txoj kev! Xav txog ib lub network ntawm rau lub nodes, qhov twg ob triplets raug cais nyob rau hauv ib leeg pawg pawg. Thawj pab pawg yuav txiav txim siab tias qhov thib ob yuav tsis hnov ​​​​txog, thiab rov ua dua. Tsis muaj txoj hauv kev rau lub network no kom ncav cuag kev pom zoo (tshwj tsis yog los ntawm lub sijhawm).

Yog li, SCP xav kom tsoomfwv pov npav (thiab rau cov ntsiab lus tseem ceeb ntawm daim ntawv thov), lub network yuav tsum muaj cov cuab yeej hu ua kev sib tshuam ntawm pawg pawg. Hauv ib lub network nrog cov cuab yeej no, ob pawg pawg uas tuaj yeem tsim ua ib txwm sib tshooj hauv tsawg kawg ib ntawm. Txhawm rau txiav txim siab qhov kev xav ntawm lub network, qhov no zoo li muaj feem ntau. Intuitively, qhov no txhais tau hais tias yog ib pawg neeg pom zoo rau nqe lus X, tsis muaj lwm pawg neeg tuaj yeem pom zoo rau lwm yam, vim tias nws yuav tsum suav nrog qee qhov ntawm thawj pawg uas tau pov npav rau X.

Nkag siab txog Stellar Consensus Protocol
Yog tias muaj kev sib tshuam ntawm pawg pawg hauv lub network ...

Nkag siab txog Stellar Consensus Protocol
...ces ob pawg pawg koj tuaj yeem tsim tau ...

Nkag siab txog Stellar Consensus Protocol
... yeej yuav sib tshuam.

Nkag siab txog Stellar Consensus Protocol

Nkag siab txog Stellar Consensus Protocol

(Tau kawg, cov sib tshooj sib tshooj yuav dhau los ua Byzantine-dag lossis lwm yam phem. Hauv qhov no, pawg pawg kev sib tshuam tsis pab lub network pom zoo tag nrho. Vim li no, ntau qhov txiaj ntsig hauv SCP daim ntawv dawb yog raws li. cov kev xav tsis meej, xws li dab tsi tseem tshuav nyob rau hauv lub network pawg neeg hla txawm tias tom qab tshem cov nodes phem. Rau qhov yooj yim, cia peb tawm cov kev xav no cuam ​​tshuam nyob rau hauv seem ntawm tsab xov xwm).

Tej zaum nws yuav zoo li tsis tsim nyog los cia siab tias pawg ntseeg hla kev muaj peev xwm ua tau nyob rau hauv lub network ntawm cov nodes ywj siab. Tab sis muaj ob qho laj thawj vim li cas qhov no yog li ntawd.

Thawj qhov laj thawj yog qhov muaj nyob hauv Internet nws tus kheej. Is Taws Nem yog ib qho piv txwv zoo tshaj plaws ntawm kev sib koom tes ntawm kev ywj pheej ntawm cov kab ke sib tshuam. Feem ntau cov nodes hauv Is Taws Nem txuas mus rau ob peb lwm qhov hauv zos xwb, tab sis cov txheej txheem me me sib tshooj txaus uas txhua qhov tuaj yeem ncav cuag los ntawm txhua qhov ntawm lwm txoj hauv kev.

Qhov laj thawj thib ob yog qhov tshwj xeeb rau Stellar kev them nyiaj network (qhov feem ntau siv SCP). Txhua lub cuab tam ntawm Stellar network muaj tus tsim tawm, thiab Stellar cov lus qhia xav kom txhua tus neeg tsim tawm los xaiv ib lossis ntau qhov ntawm lub network los ua cov ntawv thov txhiv. Nws yog qhov zoo tshaj plaws rau koj qhov kev txaus siab ncaj qha lossis ncaj qha suav nrog cov nodes hauv pawg pawg rau txhua qhov khoom vaj khoom tsev uas koj nyiam. Quorums rau tag nrho cov nodes txaus siab rau ib qho khoom vaj khoom tsev yuav ces sib tshooj tsawg kawg ntawm cov nodes txhiv dim. Nodes txaus siab rau ntau yam khoom muaj nqis yuav suav nrog txhua qhov kev txhiv dim ntawm cov neeg tawm tswv yim hauv lawv pawg pawg, thiab lawv yuav nrhiav kev sib sau tag nrho cov cuab tam ua ke. Tsis tas li ntawd, txhua yam khoom muaj nqis uas tsis txuas rau hauv txoj kev no rau lwm tus hauv lub network, thiab yuav tsum tsis txhob sib txuas - qhov no yog tsim los kom tsis muaj pawg sib tshooj rau lub network no (piv txwv li, cov tsev txhab nyiaj los ntawm thaj tsam duas qee zaum xav pauv nrog cov tsev txhab nyiaj los ntawm thaj chaw euro thiab cov tsev txhab nyiaj los ntawm thaj tsam peso, yog li lawv nyob hauv tib lub network, tab sis tsis muaj. ntawm lawv mob siab txog kev sib cais ntawm cov menyuam yaus muag daim npav ntaus pob).

Ntawm chav kawm, tos pawg neeg hla tsis yog lav. Lwm qhov kev pom zoo Byzantine tshuav nqi ntau ntawm lawv qhov nyuaj rau kev lees paub ntawm pawg. Ib qho tseem ceeb ntawm kev tsim kho tshiab ntawm SCP yog tias nws tshem tawm lub luag haujlwm los tsim pawg pawg los ntawm kev pom zoo algorithm nws tus kheej thiab coj nws mus rau qib kev thov. Yog li, txawm hais tias kev xaiv tsa nom tswv yog qhov dav txaus los pov npav rau txhua qhov teeb meem, nws txoj kev ntseeg siab tiag tiag nyob ntawm lub ntsiab lus dav dav ntawm cov ntsiab lus no. Qee qhov kev siv dag zog yuav tsis zoo rau kev tsim kev sib txuas lus zoo li lwm tus.

Kev pov npav, lees paub thiab lees paub

Hauv kev xaiv tsa nom tswv, ib qho kev xaiv xaiv pib xaiv rau qee tus nqi V. Qhov no txhais tau tias tshaj tawm cov lus rau lub network: "Kuv yog node N, kuv pawg pawg yog Q, thiab kuv pov npav rau V." Thaum ib tug node pov npav li no, nws cog lus tias nws yeej tsis pov npav tawm tsam V thiab yeej tsis yuav.

Hauv kev tshaj tawm cov phooj ywg-rau-peer, txhua qhov ntawm pom tias lwm tus pov npav li cas. Thaum ib lub pob tau sau cov lus no txaus, nws tuaj yeem taug qab pawg pawg thiab sim nrhiav pawg. Yog tias nws pom ib pawg ntawm cov phooj ywg uas tseem pov npav rau V, nws tuaj yeem mus rau kev saws me nyuam V thiab tshaj tawm cov lus tshiab no rau lub network: "Kuv yog node N, kuv pawg pawg yog Q, thiab kuv lees txais V." Kev lees txais muab kev lav zoo dua li kev pov npav yooj yim. Thaum ib lub pob pov npav rau V, nws yeej tsis pov npav rau lwm txoj kev xaiv. Tab sis yog tias ib lub node txais V, tsis muaj ib qho ntawm Network yuav puas txais lwm txoj kev xaiv (Theorem 8 hauv SCP daim ntawv dawb ua pov thawj qhov no).

Tau kawg, muaj qhov tshwm sim siab uas yuav tsis muaj ib pawg ntawm cov nodes uas pom zoo nrog V. Lwm cov nodes tuaj yeem pov npav rau lwm qhov txiaj ntsig. Tab sis muaj lwm txoj hauv kev rau cov node txav los ntawm kev pov npav yooj yim mus rau kev lees paub. N tuaj yeem lees txais tus nqi sib txawv rau W, txawm tias nws tsis pov npav rau nws, thiab txawm tias nws tsis pom pawg rau nws. Txhawm rau txiav txim siab hloov koj qhov kev pov npav, tsuas yog saib thaiv teeb cov nodes uas tau txais W. Ib qhov thaiv thaiv yog ib qho ntawm txhua pawg pawg N. Raws li lub npe qhia, nws tuaj yeem thaiv lwm lub ntsiab lus. Yog tias tag nrho cov nodes hauv cov txheej txheem no lees txais W, ces (los ntawm Txoj Cai 8) nws yuav tsis muaj peev xwm tsim pawg pawg uas siv tus nqi sib txawv, thiab yog li ntawd nws tseem muaj kev nyab xeeb rau N kom txais W.

Nkag siab txog Stellar Consensus Protocol
Node N nrog peb pawg pawg.

Nkag siab txog Stellar Consensus Protocol
BDF yog qhov thaiv teeb tsa rau N: nws suav nrog ib qho ntawm txhua qhov ntawm N.

Nkag siab txog Stellar Consensus Protocol
BE kuj yog ib qho thaiv teeb rau N vim E tshwm hauv ob daim N.

Tab sis qhov thaiv txheej tsis yog pawg. Nws yuav yooj yim dhau los ua kom yuam kev N rau hauv kev lees txais tus nqi xav tau yog tias nws txaus los hack tsuas yog ib qho ntawm txhua qhov ntawm N. Yog li ntawd, kev lees txais tus nqi tsis yog qhov kawg ntawm kev pov npav. Hloov chaw, N yuav tsum paub meej tias tus nqi, uas yog, saib ib pawg ntawm cov nodes txais nws. Yog hais tias nws tau txais qhov deb, ces, raws li SCP whitepaper proves (nyob rau hauv Theorem 11), tus so ntawm lub network kuj yuav nws thiaj li paub meej tias tus nqi tib yam, yog li N yuav xaus rau tsoom fwv pov npav nrog ib tug tej yam nqi raws li qhov tshwm sim.

Nkag siab txog Stellar Consensus Protocol
Federated pov npav.

Cov txheej txheem ntawm kev pov npav, kev lees paub, thiab kev lees paub yog ib qho kev pov npav tag nrho ntawm tsoomfwv. Stellar consensus raws tu qauv sib xyaw ua ke ntau ntawm cov kev sib tw no los tsim kom muaj kev pom zoo ua tiav.

Stellar Consensus Protocol

Ob qhov tseem ceeb tshaj plaws ntawm kev pom zoo yog βˆ’ kev ruaj ntseg ΠΈ muaj sia nyob. Kev pom zoo algorithm yog "kev nyab xeeb" yog tias nws tsis tuaj yeem muab cov txiaj ntsig sib txawv rau cov neeg koom nrog sib txawv (Bob cov ntawv luam ntawm keeb kwm yuav tsis tawm tsam Carol). "Livability" txhais tau hais tias lub algorithm yuav ib txwm tsim ib tug tshwm sim, uas yog, nws yuav tsis tau daig.

Piav qhia txog kev pov npav ntawm tsoomfwv nyab xeeb nyob rau hauv lub siab hais tias yog ib tug node lees paub tus nqi ntawm V, tsis muaj lwm tus node yuav paub meej tias tus nqi. Tab sis "yuav tsis lees paub lwm lub ntsiab lus" tsis txhais hais tias nws yuav tsum tau lees paub qee yam. Cov neeg tuaj koom tuaj yeem pov npav rau ntau qhov sib txawv uas tsis muaj dab tsi yuav ncav cuag qhov lees txais. Qhov no txhais tau hais tias hauv tsoomfwv pov npav tsis muaj muaj sia nyob.

Stellar consensus raws tu qauv siv federated pov npav nyob rau hauv ib txoj kev uas ua kom muaj kev ruaj ntseg thiab ciaj sia taus. (SCP txoj kev nyab xeeb thiab kev muaj sia nyob tau lees paub muaj qhov txwv theoretical. Tus qauv tsim xaiv qhov kev ruaj ntseg ruaj khov heev, ua rau muaj kev txo qis me me, tab sis muab sijhawm txaus, qhov kev pom zoo yuav ua tiav.) Nyob rau hauv ib lub ntsiab lus, lub tswv yim yog kom muaj ntau lub koom haum pov ntawv xaiv tsa ntawm ntau qhov tseem ceeb kom txog rau thaum ib qho ntawm lawv ua rau nws dhau los ntawm tag nrho cov theem kev pov npav SCP tau piav qhia hauv qab no.

Cov txiaj ntsig uas SCP nrhiav kev pom zoo tuaj yeem yog keeb kwm kev lag luam lossis kev txiav txim siab noj su lossis lwm yam, tab sis nws yog ib qho tseem ceeb uas yuav tsum nco ntsoov tias cov no tsis yog cov txiaj ntsig uas tau lees paub lossis lees paub. Hloov chaw, tsoomfwv pov npav tshwm sim raws li nqe lus hais txog cov nqi no.

Thawj qhov kev xaiv tsa nom tswv yuav muaj nyob rau nomination theem (kev xaiv tsa theem), ntawm cov nqe lus xws li "Kuv xaiv V," tej zaum rau ntau qhov sib txawv ntawm V. Lub hom phiaj ntawm kev xaiv tsa yog nrhiav ib lossis ntau nqe lus uas dhau los ntawm kev lees paub thiab kev lees paub.

Tom qab nrhiav tau cov neeg sib tw ua pov thawj, SCP txav mus rau theem pov npav, qhov twg lub hom phiaj yog txhawm rau nrhiav qhov tseeb. ntawv xov xwm (uas yog, lub thawv rau tus nqi uas tau hais tseg) thiab pawg pawg uas tuaj yeem tshaj tawm cog lus rau nws (commit). Yog ib pawg pawg ua ib daim ntawv xaiv tsa, nws tus nqi raug lees txais raws li kev pom zoo. Tab sis ua ntej ib lub pob tuaj yeem pov npav rau daim ntawv xaiv tsa, nws yuav tsum tau lees paub ua ntej tshem tawm tag nrho cov ntawv pov npav nrog tus nqi qis dua. Cov kauj ruam no - tshem tawm cov ntawv xaiv tsa kom pom ib qho uas tuaj yeem cog lus tau - koom nrog ntau qhov kev pov ntawv xaiv tsa hauv tsoomfwv ntawm ntau daim ntawv pov npav.

Cov ntu hauv qab no piav qhia txog kev xaiv tsa thiab kev pov npav kom ntxaws ntxiv.

Nomination

Thaum pib ntawm qhov kev xaiv tsa, txhua lub pob tuaj yeem xaiv tus nqi rau V thiab pov npav rau nqe lus "Kuv xaiv V." Lub hom phiaj ntawm theem no yog kom paub meej tias qhov kev xaiv tsa ntawm qee tus nqi los ntawm tsoomfwv pov npav.

Tej zaum cov nodes txaus pov npav rau cov lus pom zoo sib txawv uas tsis muaj kev xaiv tsa tuaj yeem ncav cuag qhov lees txais. Yog li ntawd, ntxiv rau tshaj tawm lawv cov kev xaiv tsa xaiv tsa, cov nodes "xav txog" cov kev xaiv tsa ntawm lawv cov phooj ywg. Echo txhais tau hais tias yog ib lub pob pov npav rau kev xaiv tsa V, tab sis pom cov lus los ntawm cov neeg zej zog pov npav rau kev xaiv tsa W, tam sim no nws yuav pov npav rau V thiab W. SCP suav nrog ib txoj hauv kev los tswj cov kev xaiv tsa no, luv luv, muaj cov qauv los txiav txim siab "qhov tseem ceeb" ntawm cov phooj ywg los ntawm ib qho kev xav, thiab tsuas yog cov pov npav ntawm qhov tseem ceeb ntawm cov nodes. siv, qhov qis dua qhov pib, yog li cov node nthuav tawm cov phooj ywg uas nws cov kev xaiv tsa nws yuav cuam tshuam. Cov qauv tseem ceeb suav nrog tus lej ntawm qhov ua ib qho ntawm nws cov khoom siv, yog li qhov tseem ceeb ntawm cov phooj ywg rau ib qho yuav yog qhov tseem ceeb ntawm cov phooj ywg. lwm, thiab vice versa).

Conceptually, kev xaiv tsa yog sib npaug, ob qho tib si V thiab W yog cais tsoomfwv pov npav, txhua tus neeg muaj peev xwm ua tiav qhov kev lees paub lossis kev pom zoo. Hauv kev xyaum, SCP raws tu qauv lus ntim cov neeg pov npav no ua ke.

Txawm hais tias kev pov npav rau V qhov kev xaiv tsa yog kev cog lus tias yuav tsis pov npav tawm tsam V qhov kev xaiv tsa, nws yog nyob rau ntawm daim ntawv thov - qhov no SCP - tias nws tau txiav txim siab tias "tawm tsam" txhais li cas. SCP tsis pom ib nqe lus uas cuam tshuam qhov "Kuv xaiv X" pov npav, uas yog, tsis muaj "Kuv tawm tsam kev xaiv tsa X" cov lus, yog li cov node tuaj yeem pov npav los xaiv tus nqi. Ntau qhov kev xaiv tsa no yuav tsis mus qhov twg, tab sis thaum kawg lub node yuav tuaj yeem lees txais lossis lees paub ib lossis ntau qhov txiaj ntsig. Thaum tus nominee paub tseeb, nws dhau los tus neeg sib tw.

Nkag siab txog Stellar Consensus Protocol
Kev xaiv tsa SCP siv kev xaiv tsa hauv tsoomfwv. Muaj peev xwm muaj ntau yam "B" qhov tseem ceeb muab tso rau ntawm cov phooj ywg thiab "reflected" los ntawm cov node.

Kev xaiv tsa tuaj yeem ua rau ntau tus neeg sib tw tau lees paub. Yog li, SCP xav kom cov txheej txheem thov muab qee txoj hauv kev los sib txuas cov neeg sib tw ua ib qho sib xyaw (composite). Txoj kev koom ua ke tuaj yeem yog dab tsi. Qhov tseem ceeb tshaj plaws yog tias txoj kev no yog kev txiav txim siab, tom qab ntawd txhua lub ntawm yuav sib xyaw cov neeg sib tw tib yam. Hauv kev pov npav noj su, "kev sib koom ua ke" tsuas yog txhais tau tias tsis lees txais ib qho ntawm ob tus neeg sib tw. (Tab sis nyob rau hauv ib txoj kev txiav txim siab: txhua lub node yuav tsum xaiv tus nqi tib yam los pib dua. Piv txwv li, kev xaiv ua ntej hauv cov ntawv sau). Nyob rau hauv Stellar kev them nyiaj network, qhov twg keeb kwm kev hloov pauv tau raug pov npav rau, kev sib koom ua ke ob qhov kev xaiv tsa yuav suav nrog kev sib koom ua ke cov kev lag luam uas lawv muaj thiab qhov kawg ntawm lawv ob lub sijhawm.

SCP whitepaper ua pov thawj (Theorem 12) tias thaum kawg ntawm lub sijhawm txuas ntxiv, lub network nws thiaj li hloov mus rau ib qho kev sib xyaw. Tab sis muaj ib qho teeb meem: kev xaiv tsa nom tswv yog asynchronous raws tu qauv (xws li SCP). Hauv lwm lo lus, nodes tsis sib koom ua ke los ntawm lub sijhawm, tab sis tsuas yog los ntawm cov lus lawv xa. Los ntawm cov node txoj kev xav, nws tsis meej thaum twg xaus ncua theem. Thiab txawm hais tias tag nrho cov nodes thaum kawg yuav tuaj txog ntawm tib qhov sib xyaw, lawv tuaj yeem siv ntau txoj hauv kev, tsim cov neeg sib tw sib txawv ntawm txoj kev, thiab tsis tuaj yeem qhia qhov twg yog qhov kawg.

Tab sis nws ib txwm. Nomination tsuas yog npaj. Qhov tseem ceeb tshaj plaws yog txwv tus naj npawb ntawm cov neeg sib tw kom ua tiav qhov kev pom zoo, uas tshwm sim hauv cov txheej txheem khiav mus ua haujlwm (kev pov npav).

Khiav

Cov ntawv xov xwm yog ob peb , qhov twg counter yog tus lej uas pib ntawm 1 thiab tus nqi yog tus neeg sib tw los ntawm qhov kev xaiv tsa. Qhov no tuaj yeem yog tus ntawm tus kheej tus neeg sib tw lossis tus neeg nyob sib ze tus neeg sib tw tau txais los ntawm cov node. Hais lus kwv yees, ib daim ntawv xaiv tsa suav nrog kev sim rov ua kom lub network kom ncav cuag qhov kev pom zoo ntawm qee tus neeg sib tw ntawm qee qhov kev xaiv tsa los ntawm kev tuav ntau lub koom haum pov npav ntawm cov ntawv pov npav. Cov Counters ntawm cov ntawv xaiv tsa ua raws cov kev sim ua, thiab cov ntawv xaiv tsa uas suav nrog ntau dua yog qhov tseem ceeb tshaj cov ntawv xaiv tsa uas suav qis dua. Yog tsab ntawv xov xwm tau daig, kev xaiv tsa tshiab pib, tam sim no ntawm daim ntawv xaiv tsa .

Nws yog ib qho tseem ceeb kom paub qhov txawv qhov tseem ceeb (piv txwv li, qhov kev txiav txim noj su yuav tsum yog: pizza lossis zaub xam lav), ntawv xov xwm (counter-value pair) thiab cov nqe lus txog daim ntawv xaiv tsa. SCP puag ncig suav nrog ntau qhov kev pov npav ntawm tsoomfwv, tshwj xeeb ntawm cov lus hauv qab no:

  • "Kuv npaj siab ua daim ntawv xaiv tsa B" thiab
  • "Kuv tshaj tawm qhov kev cog lus ntawm daim npav B"

Los ntawm qhov muab ntawm qhov kev xav, kev pom zoo tau mus txog thaum nws pom daim ntawv xaiv tsa B uas nws tuaj yeem lees paub (uas yog, nrhiav pawg lees paub) nqe lus "Kuv ua daim ntawv xaiv tsa B." Txij ntawm no mus, nws muaj kev nyab xeeb ua raws li tus nqi teev tseg hauv B - piv txwv li, tso qhov kev txiav txim rau pluas su. Nws yog hu ua Externalization lub ntsiab lus. Thaum lees txais daim ntawv xaiv tsa tau lees paub, ib lub pob tuaj yeem paub tseeb tias lwm qhov ntawm lwm qhov tau muab tus nqi qub los yog yuav ua li ntawd yav tom ntej.

Txawm hais tias muaj ntau qhov kev xaiv tsa nom tswv tau ua raws li kev thov rau ntau daim ntawv xaiv tsa sib txawv, lawv tsis pauv ntau cov lus vim hais tias txhua cov lus encapsulates ntau daim ntawv xaiv tsa. Ib tsab xov xwm no txhawb nqa lub xeev ntawm ntau lub tebchaws pov npav ib zaug, piv txwv li: β€œKuv lees txais cov ntawv xaiv tsa txij li ua ntej "

Cov ntsiab lus "npaj" thiab "coj" txhais li cas?

Ib pawg pov npav los ua daim ntawv xaiv tsa thaum nws ntseeg siab tias lwm cov nodes yuav tsis ua daim ntawv xaiv tsa uas muaj nqi sib txawv. Convincing qhov no yog lub hom phiaj ntawm kev npaj daim ntawv thov. Ib daim ntawv pov npav uas hais tias "Kuv npaj siab ua daim ntawv xaiv tsa B" yog ib qho kev cog lus tias yuav tsis ua daim ntawv xaiv tsa me dua B, piv txwv li nrog cov suav tsawg dua (SCP xav kom cov nuj nqis hauv cov ntawv xaiv tsa yuav tsum nyob rau hauv ib qho kev txiav txim. Yog li ntawv xov xwm tsawg , yog N1

Vim li cas "Kuv npaj siab ua daim ntawv xaiv tsa B" txhais tau tias "Kuv cog lus tias yuav tsis ua daim ntawv xaiv tsa me dua B"? Vim tias SCP txhais tias rho menyuam tawm raws li qhov tsis sib xws ntawm kev cog lus. Kev pov npav los npaj daim npav kuj tseem suav nrog kev pov npav kom tsis tsim nyog rau qee qhov kev xaiv tsa, thiab, raws li peb tau tham dhau los, kev pov npav rau ib yam yog kev cog lus tias yuav tsis pov npav tawm tsam nws.

Ua ntej tshaj tawm qhov kev cog lus, ib lub pob yuav tsum xub nrhiav ib daim ntawv tshaj tawm uas nws tuaj yeem lees paub raws li npaj. Hauv lwm lo lus, nws ua rau tsoomfwv pov npav rau lub ntsiab lus β€œKuv npaj siab ua daim npav xaiv tsa B,” tej zaum yuav muaj ntau daim npav xaiv tsa, txog thaum nws pom ib qho uas lees txais pawg pawg.

Cov ntawv pov npav tuaj qhov twg los npaj kev pov npav? Ua ntej, cov node tshaj tawm kev npaj los pov npav rau <1,C>, qhov twg C yog tus neeg sib tw ua ke uas tsim los ntawm theem kev xaiv tsa. Txawm li cas los xij, txawm tias tom qab kev npaj rau kev pov npav pib, kev xaiv tsa yuav ua rau cov neeg sib tw ntxiv los ua cov ntawv xaiv tsa tshiab. Lub caij no, cov phooj ywg tuaj yeem muaj cov neeg sib tw sib txawv thiab lawv tuaj yeem tsim cov txheej txheem thaiv uas lees txais "Kuv npaj siab ua daim ntawv xaiv tsa B2" uas yuav ua kom cov node lees txais thiab. Thaum kawg, muaj cov txheej txheem ncua sij hawm uas tsim kom muaj kev sib tw tshiab ntawm tsoomfwv pov npav rau cov ntawv xaiv tsa tshiab uas suav nrog ntau dua yog tias cov ntawv xaiv tsa tam sim no raug daig.

Thaum lub pob pom daim ntawv xaiv tsa B uas nws tuaj yeem lees paub raws li tau npaj tseg, nws tshaj tawm cov lus tshiab "Kev xaiv tsa B." Qhov kev pov npav no qhia rau cov phooj ywg tias cov node yuav tsis tso B. Qhov tseeb, yog B yog daim ntawv xaiv tsa , ces β€œCia li xaiv xaiv tsa " txhais tau hais tias qhov kev tso cai tsis muaj xwm txheej los pov npav rau kev npaj txhij ntawm txhua daim ntawv xaiv tsa los ntawm rau <∞, s>. Qhov txiaj ntsig ntxiv no pab lwm tus phooj ywg kom tau txais kev sib koom tes yog tias lawv tseem nyob rau theem ua ntej ntawm txoj cai.

Nyob rau theem no, nws tsim nyog hais dua ib zaug ntxiv tias cov no yog asynchronous raws tu qauv. Tsuas yog vim hais tias ib qho xa tuaj rau qhov kev cog lus tsis tau txhais hais tias nws cov phooj ywg ua ib yam nkaus. Qee tus ntawm lawv tseem tuaj yeem pov ntawv tawm suab rau cov lus hauv kev npaj rau kev pov npav, lwm tus kuj tseem tuaj yeem ua rau lub ntsiab lus sab nraud. SCP piav qhia yuav ua li cas lub node yuav tsum ua txhua yam ntawm cov phooj ywg cov lus tsis hais nws theem.

Yog tias cov lus "Kuv tau tshaj tawm kev cog lus Β» tsis tuaj yeem tau txais lossis lees paub, uas yog, qhov tshwm sim ntawm cov lus tau txais lossis lees paub los yog - lossis, txawm li cas los xij, ib daim ntawv xaiv tsa nrog tus nqi C, thiab tsis muaj lwm yam, txij li lub pob tau cog lus tias yuav tsis thim rov qab . Thaum lub sij hawm ib lub node tshaj tawm pov npav rau kev cog lus, nws yuav yog C lossis tsis muaj dab tsi, nyob ntawm seb qhov kev pom zoo mus deb npaum li cas. Txawm li cas los xij, qhov no tseem tsis tau txaus rau cov node rau sab nraud C. Qee cov neeg koom nrog Byzantine (uas yog tsawg dua ib pawg, raws li peb qhov kev xav txog kev ruaj ntseg) yuav dag rau ntawm node. Kev lees txais thiab tom qab ntawd lees paub qee daim ntawv xaiv tsa (lossis ntau daim ntawv xaiv tsa) yog dab tsi ua rau cov node muaj kev ntseeg siab rau thaum kawg externalize C.

Nkag siab txog Stellar Consensus Protocol
SCP pov npav los ntawm kev pov npav los ntawm tsoomfwv. Tsis pom: Lub timer tuaj yeem tawm txhua lub sijhawm, nce kev suav ntawm daim ntawv xaiv tsa (thiab tejzaum nws tsim tau ib qho kev sib xyaw tshiab ntawm cov neeg xaiv tsa ntxiv).

Thiab nws yog tag nrho! Thaum lub network tau mus txog qhov kev pom zoo, nws tau npaj ua dua thiab rov ua dua. Ntawm Stellar them nyiaj network, qhov no tshwm sim kwv yees li ib zaug txhua 5 vib nas this: qhov kev ua yeeb yam uas yuav tsum muaj kev ruaj ntseg thiab muaj sia nyob tau lees paub los ntawm SCP.

SCP tuaj yeem ua tiav qhov no los ntawm kev tso siab rau ntau qhov kev xaiv tsa hauv tsoomfwv. Kev pov npav los ntawm Tsoom Fwv Teb Chaws yog ua tau los ntawm lub tswv yim ntawm pawg pawg pawg: pawg ntawm cov phooj ywg uas txhua tus node tau txiav txim siab los ntseeg raws li ib feem ntawm nws pawg pawg (subjective). Qhov kev teeb tsa no txhais tau hais tias kev pom zoo tuaj yeem ncav cuag txawm nyob hauv lub network nrog qhib kev koom tes thiab Byzantine deceptions.

Nyeem ntxiv

  • Tus thawj SCP daim ntawv dawb tuaj yeem pom nothiab S, SΡ“S, daim ntawv qhia tshwj xeeb rau nws qhov kev siv.
  • Tus thawj sau ntawm SCP raws tu qauv, David Mazier, piav qhia nws nyob rau hauv ib tug yooj yim (tab sis tseem technical) txoj kev. no.
  • Tej zaum koj yuav xav tsis thoob uas tsis pom cov ntsiab lus "kev tsuas" lossis "cov ntaub ntawv pov thawj ntawm kev ua haujlwm" hauv kab lus no. SCP tsis siv cov txheej txheem no, tab sis qee qhov kev pom zoo algorithms ua. Zane Witherspoon sau tau siv tau lub ntsiab lus ntawm kev pom zoo algorithms.
  • Kauj ruam los ntawm kauj ruam piav qhia ib lub network yooj yim uas ncav cuag kev pom zoo hauv ib puag ncig ntawm SCP.
  • Rau cov neeg nyeem txaus siab rau kev siv SCP: saib C++ code, siv los ntawm Stellar them nyiaj network, lossis Mus code, uas kuv tau sau kom nkag siab zoo txog SCP.

Tau qhov twg los: www.hab.com

Ntxiv ib saib