Lesela la Hyperledger bakeng sa Dummies

Sethala sa Blockchain bakeng sa Khoebo

Lesela la Hyperledger bakeng sa Dummies

Lumela, babali ba ratehang, lebitso la ka ke Nikolai Nefedov, ke setsebi sa theknoloji sa IBM, sehloohong sena ke rata ho u tsebisa sethaleng sa blockchain - Hyperledger Fabric. Sethala se reretsoe ho aha likopo tsa khoebo tsa boemo ba khoebo (Enterprise class). Boemo ba sengoloa ke ba babali ba sa itokisetsang ba nang le tsebo ea mantlha ea mahlale a IT.

Hyperledger Fabric ke morero oa mohloli o bulehileng, e 'ngoe ea makala a Hyperledger open source project, consortium ea Linux Foundation. Hyperledger Fabric e qalile ho hlahisoa ke Digital Assets le IBM. Ntho e ka sehloohong ea sethala sa Hyperledger Fabric ke ho tsepamisa maikutlo ho likopo tsa lik'hamphani. Ka hona, sethala se ile sa ntlafatsoa ho nahanela lebelo le phahameng la litšebelisano le litšenyehelo tsa bona tse tlaase, hammoho le ho khetholla barupeluoa bohle. Melemo ena e finyelloa ka ho arola tšebeletso ea netefatso ea transaction le ho theha li-blocks tse ncha tsa registry e abuoang, hammoho le ho sebelisa matla a setifikeiti le ho lumella barupeluoa.

Sehlooho sa ka ke karolo ea letoto la lihlooho tse buang ka Hyperledger Fabric moo re hlalosang morero oa tsamaiso ea ho ngolisa liithuti tse kenang univesithing.

Kakaretso ea meralo ea Hyperledger Fabric

Hyperledger Fabric ke marang-rang a ajoang a blockchain a nang le likarolo tse fapaneng tse sebetsang tse kentsoeng litsing tsa marang-rang. Likarolo tsa Lesela la Hyperledger ke lijana tsa Docker tse ka khoasolloang ka bolokolohi ho DockerHub. Hyperledger Fabric e ka boela ea tsamaisoa sebakeng sa Kubernetes.

Ho ngola likonteraka tse bohlale (chaincode ka moelelo oa Hyperledger Fabric), re sebelisitse Golang (le hoja Hyperledger Fabric e u lumella ho sebelisa lipuo tse ling). Ho hlahisa kopo e tloaelehileng, molemong oa rona, Node.js e sebelisitsoe le Hyperledger Fabric SDK e lumellanang.

Li-node li tsamaisa logic ea khoebo (konteraka e bohlale) - chaincode, boloka boemo ba registry e abuoang (lintlha tsa ledger) le ho phethahatsa lits'ebeletso tse ling tsa sistimi ea sethala. Node ke yuniti e utloahalang feela, li-node tse fapaneng li ka ba teng ho seva se tšoanang sa 'mele. Habohlokoa le ho feta ke hore na li-node li arotsoe joang (Trusted domain) le hore na ke mesebetsi efe ea marang-rang ea blockchain e amanang le eona.

Mehaho e akaretsang e shebahala tjena:

Lesela la Hyperledger bakeng sa Dummies

Setšoantšo sa 1. Kakaretso ea Architecture ea Hyperledger Fabric

Sesebelisoa sa mosebelisi (Ho Romela Client) ke sesebelisoa seo basebelisi ba sebetsang le marang-rang a blockchain. Ho sebetsa, o hloka ho feta ka tumello le ho ba le litokelo tse nepahetseng bakeng sa mefuta e fapaneng ea liketso marang-rang.

Lithaka (Nodes) li tla ka likarolo tse 'maloa:

  • Endorsing Peer ke node e etsisang ts'ebetso ea transaction (e phethisa khoutu ea konteraka e bohlale). Ka mor'a ho netefatsa le ho phethahatsa konteraka e bohlale, node e khutlisetsa liphetho tsa ts'ebetso ho kopo ea bareki hammoho le ho saena ha eona.
  • Ts'ebeletso ea ho Odara ke ts'ebeletso e ajoang ho li-node tse 'maloa, e sebelisetsoa ho theha li-blocks tse ncha tsa ledger e ajoang le ho theha tatellano ea ho etsa litšebelisano. Ts'ebeletso ea ho Odara ha e kenye li-blocks tse ncha ho ngolisoeng (E fetiselitsoe ho Boitlamo ba Lithaka bakeng sa ts'ebetso e ntle).
  • Committing Peer - node e nang le registry e abuoang mme e eketsa li-blocks tse ncha ho ngoliso (tse entsoeng ke Ts'ebeletso ea ho Odara). All Committing Peers e na le kopi ea lehae ea bukana e ajoang. Peer ea Boitlamo, pele e eketsa block e ncha sebakeng sa heno, e hlahloba litšebelisano tsohle tse ka har'a block bakeng sa bonnete.

Endorsement Policy ke leano la ho lekola transaction hore na e nepahetse. Melao ena e hlalosa sete e hlokahalang ea li-node tseo konteraka e bohlale e lokelang ho etsoa ho tsona e le hore khoebo e tle e lemohuoe e le e sebetsang.

Registry e ajoang - Lerger - e na le likarolo tse peli: WolrldState (eo hape e bitsoang State DataBase) le BlockChain.

BlockChain ke letoto la li-block tse bolokang lirekoto tsa liphetoho tsohle tse etsahetseng linthong tse ajoang tsa leja.

WolrldState ke karolo ea ngoliso e ajoang e bolokang boleng ba hajoale (bo feteletseng) ba lintho tsohle tse ajoang tsa ngoliso.

WorldState ke database, ka mofuta oa motheo - LevelDB kapa ho feta e rarahaneng - CouchDB, e nang le lipara tsa bohlokoa, mohlala: Lebitso la pele - Ivan, Surname - Ivanov, letsatsi la ho ngolisa tsamaisong - 12.12.21/17.12.1961/XNUMX, letsatsi la tsoalo - XNUMX/XNUMX/XNUMX, joalo-joalo. WorldState le ledger e abuoang e tlameha ho ts'oana ho litho tsohle tsa mocha o fanoeng.

Kaha Hyperledger Fabric ke marang-rang ao barupeluoa bohle ba tsejoang le ho tiisetsoa, ​​​​bolaoli bo inehetseng ba setifikeiti bo sebelisoa mona - CA (Setifikeiti sa Bolaoli). CA e sebetsa ho latela maemo a X.509 le lisebelisoa tsa bohlokoa tsa sechaba - PKI.

Tirelo ya Botho ke tshebeletso eo ka yona ditho di netefatsang hore ntho e itseng ke ya mokgatlo kapa kanale e itseng.

Hangata, transaction ke rekoto ea data e ncha bukeng e ajoang.
Ho boetse ho na le litšebelisano bakeng sa ho theha likanale kapa likonteraka tse bohlale. Ts'ebetso e qalisoa ke mosebelisi mme e qetella ka ho ngolla bukana e ajoang.

Channel (Channel) ke subnet e koetsoeng e nang le barupeluoa ba babeli kapa ho feta ho netweke ea blockchain, e etselitsoeng ho etsa litšebelisano tsa lekunutu ka har'a selikalikoe se lekanyelitsoeng, empa se tsejoa, sa barupeluoa. Seteishene se khethoa ke barupeluoa, bukana ea bona e abuoang, likonteraka tse bohlale, Tšebeletso ea Ordering, WorldState. Setho se seng le se seng sa seteishene se tlameha ho fuoa tumello ea ho kena seteisheneng 'me se be le tokelo ea ho etsa mefuta e fapaneng ea transaction. Tumello e etsoa ho sebelisoa Tšebeletso ea Botho.

Tlhōrō e tloaelehileng ea ts'ebetso ea transaction

Ka mor'a moo, ke rata ho bua ka boemo bo tloaelehileng ba ho etsa khoebo ka mohlala oa morero oa rona.

E le karolo ea morero oa rona oa ka hare, re thehile marang-rang a Hyperledger Fabric, a etselitsoeng ho ngolisa le ho rekota liithuti tse kenang liunivesithing. Marang-rang a rona a na le mekhatlo e 'meli, e nang le Univesithi A le Univesithi ea B. Mokhatlo o mong le o mong o na le kopo ea bareki, hammoho le Peer ea eona ea Boitlamo le ho Emahanya. Re boetse re sebelisa litšebeletso tse tloaelehileng tsa ho Odara, Ts'ebeletso ea Memebership le litšebeletso tsa Bolaoli ba Setifikeiti.

1) Ho qala ha transaction

Sesebelisoa sa mosebelisi, se sebelisang Hyperledger Fabric SDK, se qala kopo ea transaction mme se romella kopo ho li-node tse nang le likonteraka tse bohlale. Kopo e ka ba ho fetola kapa ho bala ho tsoa bukeng e ajoang (Ledger). Haeba re nahana ka mohlala oa tlhahlobo ea rona ea tlhahlobo ea sistimi bakeng sa likarabelo bakeng sa baithuti ba univesithi, kopo ea moreki e romella kopo ea transaction ho li-node tsa liunivesithi tsa A le B, tse kenyellelitsoeng leanong la Tumello ea konteraka e bitsoang bohlale. Node A ke node e fumanehang univesithing e ngolisang moithuti ea kenang, 'me node B ke node e fumanehang univesithing e' ngoe. E le hore transaction e bolokehe ho ledger e ajoang, ho hlokahala hore li-node tsohle, ho ea ka logic ea khoebo, li lumellane le ts'ebetso, li atlehe ho phethahatsa likonteraka tse bohlale ka sephetho se tšoanang. Ts'ebeliso ea mosebelisi ea node A, e sebelisang lisebelisoa tsa Hyperledger Fabric SDK, e amohela leano la Endorsement (leano la tumello) mme e fumana hore na ke li-node life tse ka romellang kopo ea transaction ho tsona. Ena ke kopo ea ho letsetsa (invoke) konteraka e itseng e bohlale (chaincode function) e le hore u bale kapa u ngole lintlha tse itseng ho ledja e ajoang. Ka botekgeniki, SDK ea moreki e sebelisa ts'ebetso e tsamaellanang, API ea eona e fetisetsoang ntho e nang le liparamente tsa transaction, hape e eketsa signature ea moreki mme e romela data ena ka protocol buffer holim'a gRPC ho li-node tse loketseng (ho lumella lithaka).

Lesela la Hyperledger bakeng sa Dummies
Setšoantšo sa 2. Qalo ea Transaction

2) Ts'ebetso ea konteraka e bohlale

Nodes (Endorsing Peers), ha ba se ba fumane kopo ea ho etsa khoebo, hlahloba tekenetso ea bareki 'me haeba ntho e' ngoe le e 'ngoe e le ka tatellano, joale ba nka ntho e nang le lintlha tsa kopo ebe ba tsamaisa papiso ea ho etsoa ha konteraka e bohlale (chaincode function) ka data tsena. Konteraka e bohlale ke logic ea khoebo ea transaction, sete e itseng ea maemo le litaelo (tabeng ea rona, sena ke cheke ea seithuti, ke seithuti se secha, kapa se se se ngolisitsoe, ho hlahloba lilemo, joalo-joalo). Ho etsa konteraka e bohlale, o tla hloka le data ho tsoa ho WorldState. Ka lebaka la ketsiso e bohlale ea kontraka ho Endoring peer, ho fumanoe li-data tse peli - Bala Seta le ho Ngola Set. Read Set and Write Set ke boleng ba mantlha le bo bocha ba WorldState. (e ncha - ka kutloisiso e fumanoang ka ho etsisa konteraka e bohlale).

Lesela la Hyperledger bakeng sa Dummies
Setšoantšo sa 3. Ts'ebetso ea konteraka e bohlale

3) Ho khutlisetsa data ho sesebelisoa sa bareki

Ka mor'a ho etsisa konteraka e bohlale, Endorsing Peers e khutlela ho kopo ea bareki boitsebiso ba pele le sephetho sa papiso, hammoho le RW Set e saennoeng ke setifikeiti sa bona. Mothating ona, ha ho na liphetoho ho ledger e ajoang. Sesebelisoa sa moreki se netefatsa tshaeno ea Lithaka tsa Tšebeliso, hape se bapisa data ea mantlha ea transaction e rometsoeng le data e khutlisitsoeng (ke hore, e hlahloba hore na data ea mantlha eo khoebo e etsisitsoeng ho eona e senyehile). Haeba transaction e ne e le feela bakeng sa ho bala data ho tsoa ho registry, joale kopo ea moreki ka tsela e nepahetseng e fumana Read Set e hlokahalang, 'me ho sena hangata transaction e phethela ka katleho ntle le ho fetola ngoliso e ajoang. Tabeng ea transaction e lokelang ho fetola data ho registry, kopo ea bareki e boetse e hlahloba hore na leano la Endorsing le sebelisitsoe. Ho ka etsahala hore kopo ea bareki ha e hlahlobe sephetho sa ts'ebetso ea Leano la ho Tšehetsa, empa sethala sa Hyperledger Fabric tabeng ena se fana ka ho hlahloba maano a li-node (Comitting Peers) sethaleng sa ho eketsa ts'ebetso ho ngolisoeng.

Lesela la Hyperledger bakeng sa Dummies
Setšoantšo sa 4. Ho khutlisetsa data ho sesebelisoa sa bareki

4) Ho romela li-RW sets ho Ho Odara Lithaka

Sesebelisoa sa moreki se romella transaction hammoho le data e amanang le ts'ebeletso ea ho Odara. Sena se kenyelletsa RW Set, li-signature tsa lithaka tsa Endorsing, le ID ea Channel.

Ts'ebeletso ea ho odara - Ho ipapisitsoe le lebitso, mosebetsi o ka sehloohong oa ts'ebeletso ena ke ho theha litšebelisano tse kenang ka tatellano e nepahetseng. Hammoho le ho thehoa ha block e ncha ea registry e ajoang le ho fana ka tiiso ea li-blocks tse ncha tse hlahisitsoeng ho li-node tsohle tsa Boikemisetso, kahoo ho netefatsa hore data e lumellana le li-node tsohle tse nang le registry e ajoang (Ho itlama lithaka). Ka nako e ts'oanang, tšebeletso ea Ordering ka boeona ha e fetole registry ka tsela leha e le efe. Ho Odara Tšebeletso ke karolo ea bohlokoa ea sistimi, ka hona ke sehlopha sa li-node tse 'maloa. The Ordering Service ha e hlahlobe transaction hore na e nepahetse, e mpa e amohela transaction e nang le ID e itseng ea mocha, e hlophisa litšebelisano tse kenang ka tatellano e itseng, 'me e theha li-blocks tse ncha tsa ledger e abuoang ho bona. Tšebeletso e le 'ngoe ea ho Odara e ka sebeletsa liteishene tse' maloa ka nako e le 'ngoe. The Ordering Service e kenyelletsa sehlopha sa Kafka, se bolokang mokoloko o nepahetseng (o sa fetoheng) oa transaction (bona ntlha ea 7).

Lesela la Hyperledger bakeng sa Dummies
Setšoantšo sa 5. Ho romela li-RW sets ho Ho Odara Lithaka

5) Ho romela li-blocks tse hlahisitsoeng ho Peer ea Boitlamo

Li-blocks tse entsoeng Tšebeletsong ea ho Odara li phatlalatsoa ho li-node tsohle tsa marang-rang. Node e 'ngoe le e' ngoe, ha e se e fumane sebaka se secha, e e hlahloba hore na e lumellana le Leano la ho Eketsa, e hlahloba hore Endorsing Peers e fumane sephetho se tšoanang (Ngola Setha) ka lebaka la papiso e bohlale ea konteraka, hape e hlahloba hore na litekanyetso tsa pele li na le. e fetotsoe (ke hore, - Read Set - data e baloang ke konteraka e bohlale ho tsoa ho WorldState) ho tloha ha thekisetsano e qala. Haeba maemo ohle a finyelloa, transaction e tšoauoa e le e nepahetseng, ho seng joalo, transaction e fumana boemo ba ho se sebetse.

Lesela la Hyperledger bakeng sa Dummies
Setšoantšo sa 6. Ho romela li-blocks tse hlahisitsoeng ho Peer e Itebelang

6) Ho eketsa block ho registry

Node e 'ngoe le e' ngoe e eketsa ts'ebetso ho kopi ea eona ea lehae ea bukana e abiloeng, 'me haeba thekiso e nepahetse, joale Write Set e sebelisoa ho WorldState (naha ea hajoale), ka ho latellana, litekanyetso tse ncha tsa lintho tse anngoeng ke thekiso li ngotsoe. . Haeba khoebo e amohetse letšoao le neng le sa sebetse (mohlala, ho ne ho e-na le litšebelisano tse peli tse nang le lintho tse tšoanang ka har'a sebaka se le seng, joale e 'ngoe ea litšebelisano e ke ke ea sebetsa, kaha litekanyetso tsa pele li se li fetotsoe ke transaction e' ngoe. ). Ts'ebetso ena e boetse e eketsoa bukeng e abuoang e nang le lets'oao le sa sebetseng, empa Setsi sa Ngola sa transaction ena ha se sebetse ho boemo ba hajoale ba WorldState mme, ka hona, ha e fetole lintho tse kenyang letsoho khoebong. Kamora moo, tsebiso e romelloa ho ts'ebeliso ea mosebelisi ea hore khoebo e kenyellelitsoe bukeng e abuoang ka ho sa feleng, hammoho le boemo ba transaction, ke hore, hore na e nepahetse kapa che ...

Lesela la Hyperledger bakeng sa Dummies
Setšoantšo sa 7. Ho eketsa boloko ho registry

TAELO TŠEBELETSO

The Ordering Service e na le sehlopha sa Kafka se nang le li-ZooKeeper node tse tsamaellanang le Ordering Service Nodes (OSN) tse lutseng lipakeng tsa bareki ba ho Odara le Kafka Cluster. Sehlopha sa Kafka ke sethala sa taolo se ajoang, se mamellang liphoso (molaetsa). Mocha o mong le o mong (sehlooho) oa Kafka ke tatellano e sa fetoheng ea lirekoto tse tšehetsang feela ho eketsa rekoto e ncha (ho hlakola e teng ha ho khonehe). Ka tlase ho fanoe ka setšoantšo sa sebopeho sa sehlooho. Ke thepa ena ea Kafka e sebelisetsoang ho haha ​​sethala sa blockchain.

Lesela la Hyperledger bakeng sa Dummies
e nkiloe ho kafka.apache.org

  • Setšoantšo sa 8. Ho Odara Sebopeho sa Sehlooho sa Tšebeletso*

Lihokelo tse sebetsang

Youtube - Ho aha blockchain bakeng sa khoebo le Morero oa Hyperledger
Hyperledger Fabric Docs
Hyperledger fabric: mokhoa oa ho sebetsa o abuoang bakeng sa li-blockchains tse lumelletsoeng

Liteboho

Ke leboha haholo basebetsi-'moho le 'na ka thuso ea bona ha ba lokisetsa sengoloa sena:
Nikolai Marina
Igor Khapov
Dmitry Gorbachev
Alexander Zemtsov
Ekaterina Guseva

Source: www.habr.com

Eketsa ka tlhaloso