Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe

Isu tinoenderera mberi nenhevedzano yedu nezve Monero blockchain, uye chinyorwa chanhasi chichatarisa paRingCT (Ring Confidential Transactions) protocol, iyo inosuma yakavanzika kutengeserana uye mitsva siginecha yemhete. Nehurombo, pane ruzivo rudiki paInternet nezve maitirwo ainoita, uye takaedza kuzadza gap iri.

Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe

Isu tichataura nezvekuti network inovanza sei mari yekuchinjisa vachishandisa iyi protocol, nei vakasiya yakasarudzika cryptonote ring siginecha, uye kuti tekinoroji iyi ichawedzera sei.

Sezvo iyi protocol iri imwe yeakaomesesa matekinoroji muMonero, muverengi achada ruzivo rwekutanga rwekugadzirwa kweiyi blockchain uye neruzivo rwunopfuura rwe elliptic curve cryptography (kukwesha pamusoro peruzivo urwu, unogona kuverenga zvitsauko zvekutanga zvedu. yapfuura nyaya nezve multisignatures).

RingCT protocol

Imwe yezvinobvira kurwiswa kwekriptonote mari ndeye blockchain kuongororwa kunoenderana neruzivo rwehuwandu uye nguva yekutumirwa kutengeserana. Izvi zvinobvumira zvakanyanya kuderedza nzvimbo yekutsvaga yekubuda kwekufarira kune anorwisa. Kudzivirira kubva pakuongorora kwakadaro, Monero yakashandisa isingazivikanwe transaction protocol inovanza zvachose huwandu hwekuchinjisa pane network.

Zvakakosha kucherechedza kuti pfungwa yekuviga mari haisi itsva. Bitcoin Core kuvandudza Greg Maxwell aive mumwe wekutanga kuzvitsanangura mune yake chinyorwa Confidential Transactions. Kuitwa kwazvino kweRingCT ndiko kugadziridzwa kwayo nemukana wekushandisa siginecha yemhete (kungava pasina ivo), uye ndiyo nzira yayakawana zita rayo - Ring Confidential Transactions.

Pakati pezvimwe zvinhu, iyo protocol inobatsira kubvisa matambudziko nekusanganisa guruva zvinobuda - zvinobuda zvezvishoma (kazhinji zvakagamuchirwa nenzira yekuchinja kubva kune kutengeserana), izvo zvakagadzira matambudziko akawanda kupfuura aikosha.

Muna Ndira 2017, forogo yakaoma yeMonero network yakaitika, ichibvumira kushandiswa kwakasarudzika kwekutengeserana zvakavanzika. Uye kare munaSeptember wegore rimwe chete, neshanduro 6 yakaoma forogo, kutengeserana kwakadaro kwakava ivo chete vanobvumirwa pane network.

RingCT inoshandisa nzira dzakati wandei panguva imwe chete: multilayered akabatana asingazivikanwe eboka masiginicha (Multilayered Linkable Spontaneous Anonymous Group Siginecha, yakazonzi MLSAG), chirongwa chekuzvipira (Pedersen Commitments) uye humbowo hwemhando (iri izwi harina shanduro yakagadzwa muchiRussia) .

Iyo RingCT protocol inosuma marudzi maviri ezvisingazivikanwe zvekutengeserana: zviri nyore uye zvizere. Iyo chikwama inogadzira yekutanga kana kutengeserana kunoshandisa zvinopfuura imwe yekuisa, yechipiri - mune yakatarisana mamiriro. Ivo vanosiyana mukusimbiswa kwehuwandu hwekutengesa uye data rakasainwa neMSAG siginicha (tichataura zvakawanda pamusoro peizvi pazasi). Uyezve, kutengeserana kwemhando yakazara kunogona kugadzirwa nechero nhamba yezvipo, hapana mutsauko wakakosha. Mubhuku "Zero kuMonero" Panyaya iyi, zvinonzi sarudzo yekumisa kutengeserana kwakazara kune imwe yekuisa yakaitwa nekukurumidza uye inogona kuchinja mune ramangwana.

MLSAG siginecha

Ngatirangarirei kuti zvipi zvakasainwa zvekutengeserana zvipi. Kutengeserana kwega kwega kunopedza uye kunogadzira imwe mari. Kuberekwa kwemari kunoitika nekugadzira zvinobuda mukutengeserana (kufananidza kwakananga mabhiri), uye zvinobuda izvo kutengeserana kunoshandisa (mushure mezvose, muhupenyu chaihwo isu tinoshandisa mabhengi) inova iyo yekuisa (chenjera, zviri nyore kwazvo kuvhiringidzika. pano).

Yekupinza inonongedza zvakabuda, asi inopedza imwe chete, nekudaro kugadzira "smokescreen" kuita kuti zviome kuongorora nhoroondo yeshanduro. Kana kutengeserana kuine zvinopfuura chimwe chete, saka chimiro chakadaro chinogona kumiririrwa sematrix, apo mitsetse ndiyo yekupinda uye makoramu ndiwo akasanganiswa zvinobuda. Kuti uratidze kunetiweki kuti kutengeserana kunoshandisa chaizvo izvo zvabuda (inoziva makiyi avo epachivande), izvo zvinopinda zvakasainwa nemhete siginicha. Siginicha yakadaro inovimbisa kuti anosaina aiziva makiyi akavanzika ezvinhu zvese zvechero makoramu.

Zvekutengeserana zvakavanzika hazvichashandisi zvekare cryptonote masiginecha emhete, akatsiviwa neMLSAG - vhezheni yemasiginecha e-single-layer mhete yakagadziridzwa kune akawanda mapipu, LSAG.

Ivo vanonzi multilayer nekuti vanosaina akati wandei kamwechete, imwe neimwe yakasanganiswa nevamwe vakati wandei, i.e. matrix yakasainwa, uye kwete mutsara mumwe. Sezvatichaona gare gare, izvi zvinobatsira kuchengetedza pane siginicha saizi.

Ngatitarisei kuti siginecha yemhete inoumbwa sei, tichishandisa muenzaniso wekutengesa kunoshandisa 2 chaiyo kuburitsa uye inoshandisa m - 1 zvisingaite kubva ku blockchain yekusanganisa. Ngatiratidzei makiyi eruzhinji ezvakabuda zvatinoshandisa se
Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe, uye mifananidzo yakakosha kwavari zvinoenderana: Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe Nokudaro, tinowana matrix yehukuru 2 x m. Chekutanga, isu tinofanirwa kuverenga izvo zvinonzi zvinonetsa kune imwe neimwe yezvabuda:
Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe
Isu tinotanga kuverenga nezvinobuda, izvo zvatinoshandisa tichishandisa makiyi avo eruzhinji:Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanweuye nhamba dzisina kurongekaChakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanweNekuda kweizvozvo, tinowana zvinotevera zvakakosha:
Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe, iyo yatinoshandisa kuverenga dambudziko
Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanweiwo maviri anotevera ezvakabuda (kuita kuti zvive nyore kunzwisisa zvatiri kutsiva kupi, isu takasimbisa izvi zvakakosha mumavara akasiyana). Ese anotevera maitiro akaverengerwa mudenderedzwa uchishandisa mafomula akapihwa mumufananidzo wekutanga. Chinhu chekupedzisira kuverenga ndicho chinonetsa kune peya yezvinobuda chaiyo.

Sezvatinoona, makoramu ese kunze kweiyo ine mabudiro chaiwo anoshandisa nhamba dzakagadzirwa zvisina tsarukanoChakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe. nokuti Ο€- column tichavadawo. NgatishandureChakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwemuri s:Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe
Siginicha pachayo ituple yezvese izvi zvakakosha:

Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe

Iyi data inobva yanyorwa mukutengeserana.

Sezvatinoona, MLSAG ine dambudziko rimwe chete c0, iyo inokubvumira kuchengetedza pane siginecha saizi (iyo inotoda nzvimbo yakawanda). Uyezve, chero muongorori, achishandisa iyo dataChakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe, inodzoreredza kukosha c1,…, cm uye inotarisa izvoChakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe. Saka, mhete yedu yakavharwa uye siginicha yakasimbiswa.

Kune RingCT transaction yemhando yakazara, imwezve mutsara inowedzerwa kune matrix ine zvakasanganiswa zvinobuda, asi isu tichataura pamusoro peizvi pazasi.

Pedersen Commitments

Zvirongwa zvekusungirwa (izwi rechirungu rokuti zvisungo rinonyanya kushandiswa) rinoshandiswa kuitira kuti mumwe munhu aratidze kuti anoziva chakavanzika (nhamba) asina kunyatsochiburitsa. Semuenzaniso, iwe unotenderedza imwe nhamba padhizi, funga kuzvipira uye woipfuudza kune iyo inosimbisa bato. Saka, panguva yekuzivisa nhamba yakavanzika, mutsigiri anoverenga akazvimiririra kuzvipira, achiita kuti ave nechokwadi chokuti hauna kumunyengedza.

Zvisungo zveMonero zvinoshandiswa kuvanza huwandu hwekuchinjisa uye kushandisa iyo yakajairika sarudzo - Pedersen zvisungo. Nenzira, chokwadi chinonakidza - pakutanga vagadziri vakaronga kuvanza mari yacho nekusanganisa kwakajairika, ndiko kuti, kuwedzera zvinobuda pamari isingabvumirwe kuti vaunze kusavimbika, asi vakazochinja kuita zvisungo (haisi chokwadi chekuti vakachengeta saizi yekutengeserana, sezvatichaona pazasi).
Kazhinji, kuzvipira kunoratidzika seizvi:
Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanweKupi C - zvinoreva kuzvipira pachako, a - yakavanzika mari, H inzvimbo yakagadziriswa pane elliptic curve (yakawedzera jenareta), uye x - imwe mhando yemasiki yekupokana, chinhu chekuvanza chinogadzirwa zvisina tsarukano. Iyo mask inodiwa pano kuitira kuti munhu wechitatu arege kungofungidzira kukosha kwekuzvipira.

Kana chinhu chitsva chikagadzirwa, chikwama chinoverengera kuzvipira kwacho, uye kana chashandiswa, chinotora kana kukosha kwakaverengerwa panguva yechizvarwa kana kuiverengera, zvichienderana nerudzi rwekutengesa.

RingCT iri nyore

Panyaya yeRingCT transactions iri nyore, kuitira kuti ive nechokwadi chekuti kutengeserana kwakagadzira zvinobuda muhuwandu hwakaenzana nehuwandu hwezvipo (hazvina kuburitsa mari kubva mumhepo yakatetepa), zvinodikanwa kuti huwandu hwezvipikirwa zvekutanga neyechipiri. zvimwe zvakafanana, zvinoti:
Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe
Makomisheni ekuzvipira anozviona zvishoma zvakasiyana - pasina mask:
Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwekupi a - huwandu hwekomisheni, inowanikwa pachena.

Maitiro aya anotibvumira kuratidza kune bato rinovimba kuti tiri kushandisa mari imwe chete pasina kuburitsa pachena.

Kuti zvinhu zvijeke, ngatitarisei muenzaniso. Ngatitii kutengeserana kunoshandisa zviviri zvinobuda (zvichireva kuti vanove zvekushandisa) zvegumi neshanu XMR uye zvinoburitsa zvitatu zvinobuda zvakakosha gumi nemaviri XMR: 10, 5 uye 12 XMR. Panguva imwecheteyo, anobhadhara komisheni ye3 XMR. Saka, huwandu hwemari yakashandiswa pamwe nemari yakagadzirwa uye komisheni yakaenzana ne4 XMR. Ngatiedze kuverenga zvisungo uye titarise mutsauko muhuwandu hwazvo (rangarira masvomhu):

Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe
Pano tinoona kuti kuti equation ienderane, isu tinoda huwandu hwemasikirwo ekuisa uye anobuda masks kuti dzifanane. Kuti uite izvi, chikwama chinogadzira zvisizvo x1, y1, y2 uye y3, uye vakasara x2 inoverenga seizvi:
Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe
Tichishandisa masiki aya, tinogona kuratidza kune chero anosimbisa kuti hatiburitse mari yakawanda kupfuura yatinoshandisa, tisina kuburitsa huwandu. Chekutanga, handiti?

RingCT yakazara

Mukuzara kweRingCT kutengeserana, kutarisa huwandu hwekutamisa hwakanyanya kuomarara. Mukutengeserana uku, chikwama hachidzokorore zvisungo zvekupinza, asi chinoshandisa izvo zvakaverengerwa pazvagadzirwa. Muchiitiko ichi, tinofanira kufunga kuti hatichawana mutsauko muhuwandu hwakaenzana ne zero, asi panzvimbo iyo:
Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe
zviri z - musiyano pakati pekuisa uye kubuda masks. Kana tikafunga zG sekiyi yeruzhinji (iyo iyo de facto iri), ipapo z ndiyo kiyi yakavanzika. Nekudaro, isu tinoziva veruzhinji uye anowirirana makiyi akavanzika. Iine data iri muruoko, tinogona kuishandisa muMLSAG ring siginecha pamwe nemakiyi eruzhinji ezvinobuda zviri kusanganiswa:
Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe
Saka, siginecha yemhete inoshanda ichaita kuti tizive makiyi ese epachivande eimwe yemakoramu, uye isu tinogona kungoziva kiyi yakavanzika mumutsara wekupedzisira kana kutengeserana kusingaburitse mari yakawanda kupfuura yainoshandisa. Nenzira, heino mhinduro kumubvunzo wekuti "nei mutsauko wehuwandu hwezvipikirwa usingatungamiri ku zero" - kana zG = 0, ipapo isu tichawedzera mbiru nezvinobuda chaizvo.

Ko akapihwa mari anoziva sei kuti imarii yaakatumirwa? Zvese zviri nyore pano - mutumiri wekutengeserana uye mugamuchiri anotsinhanisa makiyi achishandisa Diffie-Hellman protocol, uchishandisa kiyi yekutengeserana uye kiyi yekuona yeanogamuchira uye kuverenga chakavanzika chakagovaniswa. Iye anotumira anonyora data pamusoro pemari inobuda, yakavharidzirwa neiyi kiyi yakagovaniswa, munzvimbo dzakakosha dzekutengeserana.

Range zviratidzo

Chii chinoitika kana ukashandisa nhamba isina kunaka sehuwandu muzvisungo? Izvi zvinogona kutungamira kune chizvarwa chekuwedzera mari! Mhedzisiro iyi haigamuchirwi, saka tinoda kuvimbisa kuti mari yatinoshandisa haina kunaka (pasina kuburitsa huwandu uhu, hongu, zvikasadaro pane basa rakawanda uye zvese pasina). Mune mamwe mazwi, isu tinofanirwa kuratidza kuti huwandu huri mukati menguva [0, 2n - 1].

Kuti uite izvi, huwandu hwega hwega hunobuda hwakakamurwa kuita mabhinari manhamba uye kuzvipira kunoverengerwa kune yega yega yega. Zviri nani kuona kuti izvi zvinoitika sei nemuenzaniso.

Ngatifungei kuti mari yedu idiki uye inokodzera 4 bits (mukuita izvi 64 bits), uye isu tinogadzira inobuda inokosha 5 XMR. Isu tinoverenga zvisungo zvechikamu chega chega uye kuzvipira kwese kwemari yese:Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanwe
Zvadaro, kuzvipira kwega kwega kunosanganiswa neanotsiva (Ci-2iH) uye yakasainwa mumaviri neBorromeo ring siginecha (imwe siginecha yemhete), yakakurudzirwa naGreg Maxwell muna 2015 (unogona kuverenga zvakawanda nezvazvo. pano):
Chakavanzika chekutengeserana muMonero, kana nzira yekuendesa zvinhu zvisingazivikanwe kunzvimbo dzisingazivikanweZvikatorwa pamwechete, izvi zvinodaidzwa kuti range proof uye zvinokutendera kuti uve nechokwadi chekuti zvisungo zvinoshandisa huwandu muhuwandu [0, 2n - 1].

Chii chinotevera?

Mukuita kwazvino, humbowo hwemhando hunotora nzvimbo yakawanda - 6176 bytes pane inobuda. Izvi zvinotungamirira kukutengeserana kukuru uye naizvozvo mari yakakwirira. Kuti uderedze saizi yekutengeserana kweMonero, vagadziri vari kuunza bulletproofs pachinzvimbo cheBorromeo siginecha - nzira yehumbowo hwemhando isina zvisungo zvishoma. Maererano nedzimwe fungidziro, vanokwanisa kuderedza saizi yehumbowo hwemhando kusvika ku94%. Nenzira, pakati paJuly teknolojia yakapfuura odhita kubva kuKudelski Security, iyo isina kuratidza chero kukanganisa kwakakosha kungave mune tekinoroji pachayo kana mukuita kwayo. Iyo tekinoroji yakatoshandiswa muyedzo network, uye neiyo nyowani yakaoma forogo, inogona pamwe kuenda kunetiweki huru.

Bvunza mibvunzo yako, kurudzira misoro yezvinyorwa zvitsva nezve tekinoroji mumunda we cryptocurrency, uye zvakare kunyorera kuboka redu mu. Facebookkuti tirambe tichifambirana nezviitiko zvedu nezvinyorwa.

Source: www.habr.com

Voeg