Dharka Hyperledger ee Dummies

A Blockchain Platform ee Ganacsiga

Dharka Hyperledger ee Dummies

Galab wanaagsan, akhristayaasha qaaliga ah, magacaygu waa Nikolay Nefedov, waxaan ahay khabiir ku takhasusay IBM, maqaalkan waxaan jeclaan lahaa inaan ku baro blockchain platform - Hyperledger Fabric. Madal waxaa loogu talagalay in lagu dhiso codsiyada ganacsiga heerka-shirkadeed. Heerka maqaalku waa akhristayaasha aan diyaarsaneyn ee aqoonta aasaasiga ah ee tignoolajiyada IT-ga.

Dharka Hyperledger waa mashruuc il furan, mid ka mid ah laamaha mashruuca isha furan ee Hyperledger, isbahaysiga Linux Foundation. Dharka Hyperledger waxaa markii hore bilaabay Hantida Dijital ah iyo IBM. Muuqaalka ugu muhiimsan ee madal-xirfadeedka Hyperledger waa diiradda isticmaalka ganacsiga. Sidaa darteed, madal ayaa la sameeyay iyadoo la tixgelinayo xawaaraha sare ee wax kala iibsiga iyo kharashkooda yar, iyo sidoo kale aqoonsiga dhammaan ka qaybgalayaasha. Faa'iidooyinkan waxaa lagu gaaraa iyada oo loo marayo kala-soocidda adeegga hubinta macaamilka iyo samaynta blocks cusub ee diiwaanka la qaybiyey, iyo sidoo kale isticmaalka xarun shahaado iyo oggolaansho ka qaybgalayaasha.

Maqaalkaygu waa qayb ka mid ah maqaallo taxane ah oo ku saabsan Hyperledger Fabric, oo aan ku sharraxayno mashruuca nidaamka duubista ardayda gelaysa jaamacadda.

Nashqada guud ee Dharka Hyperledger

Dharka Hyperledger waa shabakad blockchain ah oo la qaybiyey oo ka kooban qaybo kala duwan oo shaqeynaya kuwaas oo lagu rakibay noodhka shabakada. Qaybaha dharka Hyperledger waa weelasha Docker oo si xor ah looga soo dejisan karo DockerHub. Dharka Hyperledger sidoo kale waxaa lagu socodsiin karaa deegaanka Kubernetes.

Si loo qoro qandaraasyo caqli-gal ah (chaincode ee macnaha guud ee Dharka Hyperledger), waxaan isticmaalnay Golang (inkastoo Fabric Hyperledger uu oggol yahay isticmaalka luqadaha kale). Si loo horumariyo codsi caado ah, kiiskeena, waxaan isticmaalnay Node.js oo wata Hyperledger Fabric SDK u dhigma.

Nodes-ku waxay fuliyaan caqli-gal ganacsi (heshiis caqli-gal ah) - chaincode, ku kaydi gobolka diiwaanka la qaybiyey (xogta ledgerka) iyo fulinta adeegyada nidaamka kale ee madal. Noodku waa kaliya unug macquul ah; noodhadhyo kala duwan ayaa ku jiri kara isla server-ka jireed. Wax badan oo ka sii muhiimsan ayaa ah sida qanjidhada loo qaybiyo (Domain Aaminsan) iyo waxa ay qabtaan shabakada blockchain ee ay ku xiran yihiin.

Qaab dhismeedka guud wuxuu u eg yahay sidan:

Dharka Hyperledger ee Dummies

Sawirka 1. Dhismaha Guud ee Fabric Hyperledger

Codsiga isticmaalaha (Submitting Client) waa codsi ay isticmaalayaashu la shaqeeyaan shabakada blockchain. Si aad u shaqeyso, waa in laguu oggolaado oo aad leedahay xuquuqaha ku habboon noocyada kala duwan ee ficillada shabakadda.

Asxaabtu waxay ku yimaadaan doorar dhowr ah:

  • Taageerida Peer waa udub u dhigma fulinta wax kala iibsiga (waxay fulisaa koodhka qandaraaska smart). Kadib xaqiijinta iyo fulinta qandaraaska caqliga leh, noodhka ayaa ku soo celinaya natiijooyinka fulinta codsiga macmiilka oo ay weheliso saxiixiisa.
  • Adeegga Dalbashada waa adeeg loo qaybiyey dhowr nood, oo loo isticmaalo in lagu soo saaro baloogyo cusub oo diiwaanka la qaybiyey oo loo abuuro saf loogu talagalay fulinta wax kala iibsiga. Adeegga dalbashada kuma darto baloogyo cusub diiwaanka (Sifadan waxa loo wareejiyay Samaynta facooda si loo horumariyo waxqabadka).
  • Ballanqaadka Peer waa nood ka kooban diiwaan la qaybiyey oo ku dara qaybo cusub diiwaanka (kuwaas oo ay soo saartay Adeegga Dalbashada). Dhammaan ardada isku xilqaamay waxay ka kooban yihiin nuqul maxalli ah oo buug-gacmeedka la qaybiyay. Samaynta Peer waxay hubisaa dhammaan wax kala iibsiga ee block inay ansax yihiin ka hor intaadan ku darin block cusub gudaha.

Siyaasadda Taageerada waa siyaasadda lagu hubinayo sax ahaanshaha wax kala iibsiga. Nidaamyadani waxay qeexayaan habka loo baahan yahay ee qanjidhada kaas oo qandaraaska caqliga leh ay tahay in la fuliyo si macaamilka loo aqoonsado inuu sax yahay.

Diiwaanka la qaybiyey - Lerger - wuxuu ka kooban yahay laba qaybood: WolrldState (oo sidoo kale loo yaqaan State DataBase) iyo BlockChain.

BlockChain waa silsilad baloog oo kaydisa diiwaannada dhammaan isbeddellada ku dhacay walxaha diiwaanka ee la qaybiyey.

WolrldState waa qayb qaybsan oo buug-yare ah oo kaydisa qiimayaasha hadda jira (goynta gees-goynta) ee dhammaan walxaha buugaagta la qaybiyey.

WorldState waa xog ururin, nooca aasaasiga ah - LevelDB ama mid aad u adag - CouchDB, oo ka kooban lammaane qiimo leh, tusaale ahaan: Magaca koowaad - Ivan, Magaca dambe - Ivanov, taariikhda diiwaangelinta nidaamka - 12.12.21/17.12.1961/XNUMX , taariikhda dhalashada - XNUMX/XNUMX/XNUMX, iwm. WorldState iyo diiwaanka la qaybiyay waa inay ahaadaan kuwo joogto ah dhammaan ka qaybgalayaasha kanaalka la bixiyay.

Maadaama Dharka Hyperledger uu yahay shabakad ay ka qaybgalayaasha oo dhan la yaqaan oo la hubiyay, waxay isticmaashaa awood shahaado u gaar ah - CA (Maamulka Shahaadada). CA waxay ku shaqeysaa iyadoo ku saleysan heerka X.509 iyo kaabayaasha muhiimka ah ee dadweynaha - PKI.

Adeegga xubinimadu waa adeeg ay xubnuhu ku xaqiijiyaan in shay uu ka tirsan yahay urur ama kanaal gaar ah.

Wax kala iibsiga - inta badan, waa u qorista xog cusub diiwaan la qaybiyay.
Waxa kale oo jira macaamil ganacsi oo loogu talagalay abuurista kanaalada ama qandaraasyada smart. Wax kala iibsiga waxaa bilaabay arjiga adeegsadaha wuxuuna ku dhamaanayaa diiwaanka ku jira buuga la qaybiyay.

Kanaalku waa shabakad hoose oo xidhan oo ka kooban laba ama in ka badan oo ka qaybgalayaasha shabakada blockchain, oo loogu talagalay inay ku qabtaan macaamil ganacsi oo qarsoodi ah gudaha goob xaddidan laakiin la yaqaan ee ka qaybgalayaasha. Kanaalka waxaa go'aamiya ka qaybgalayaasha, diiwaankeeda la qaybiyay, qandaraasyada caqliga leh, Adeegga Dalbashada, WorldState. Ka qaybgale kasta oo kanaalka ah waa in loo oggolaadaa inuu galo kanaalka oo uu xaq u leeyahay inuu sameeyo noocyo kala duwan oo wax kala iibsiga ah. Oggolaanshaha waxaa lagu sameeyaa iyadoo la adeegsanayo Adeegga Xubinnimada.

Dhacdooyinka fulinta macaamil ganacsi ee caadiga ah

Marka xigta, waxaan jeclaan lahaa inaan ka hadlo dhacdo fulinta macaamil ganacsi oo caadi ah anigoo isticmaalaya mashruucayaga tusaale ahaan.

Iyada oo qayb ka ah mashruucayaga gudaha, waxaanu abuurnay shabakadda Hyperledger Fabric, kaas oo loogu talagalay in lagu diwaangeliyo oo lagu xisaabtamo ardayda galaya jaamacadaha. Shabakaddayadu waxay ka kooban tahay laba hay'adood oo ay leeyihiin Jaamacadda A iyo Jaamacadda B. Urur kastaa wuxuu ka kooban yahay codsi macmiil, iyo sidoo kale ballan-qaadka iyo Taageerida asaaga. Waxaan sidoo kale isticmaalnaa Adeegga Dalbashada Adeegyada Guud, Adeegga Xubinimada iyo Maamulka Shahaadada.

1) Bilaabida wax kala iibsiga

Codsiga isticmaalaha, oo isticmaalaya Hyperledger Fabric SDK, wuxuu bilaabaa codsi macaamil ganacsi wuxuuna u diraa codsiga qandarasyada caqliga leh. Codsigu wuxuu noqon karaa in laga beddelo ama laga akhriyo diiwaanka la qaybiyey (Ledger). Haddii aan tixgelinno tusaale qaabeynta nidaamka imtixaannada ee xisaabinta ardayda jaamacadda, codsiga macmiilku wuxuu u soo diraa codsi wax kala beddelashada qanjidhada jaamacadaha A iyo B, kuwaas oo lagu daray siyaasadda Taageerada ee loo yaqaan qandaraas caqli-gal ah. Node A waa udub dhexaadka u ah jaamacada laga diiwaan geliyo ardayga soo galaya, halka B waa noode ku yaala jaamacad kale. Si macaamil ganacsi loo badbaadiyo diiwaanka la qaybiyay, waxaa lagama maarmaan ah in dhammaan qanjidhada, sida waafaqsan caqli-gal ganacsi, waa inay ansixiyaan macaamilka, si guul leh u fuliyaan qandaraasyo caqli-gal ah oo leh natiijo isku mid ah. Codsiga isticmaalaha noode A, oo isticmaalaya qalabka Hyperledger Fabric SDK, wuxuu helayaa siyaasadda Taageerada oo wuxuu bartaa noodhka loo diro codsiga wax kala iibsiga. Tani waa codsi lagu baaqayo qandaraas gaar ah oo caqli gal ah (shaqada chaincode) si loo akhriyo ama loo qoro xog gaar ah diiwaanka la qaybiyay. Farsamo ahaan, SDK macmiilku waxa uu isticmaalaa shaqada u dhiganta, API-ga kaas oo la soo mariyo shay gaar ah oo leh cabbiro wax kala beddelasho, iyo sidoo kale ku daraa saxeexa macmiilka oo u soo dira xogtan iyada oo la adeegsanayo borotokoolka kaydinta gRPC ee noodhka ku habboon ( taageeraya asxaabta).

Dharka Hyperledger ee Dummies
Sawirka 2. Bilowga Macaamilka

2) Fulinta heshiis caqli gal ah

Nodes (Endorsing Peers), ka dib markii ay heleen codsi ah in ay sameeyaan macaamil ganacsi, hubi saxeexa macmiilka iyo haddii wax walba waa hagaagsan yihiin, waxay qaataan shay leh xogta codsiga oo ay maamulaan jilitaanka fulinta heshiis caqli gal ah (shaqada chaincode) oo leh xogtan. Qandaraaska smart waa macquulka ganacsiga ee macaamil ganacsi, shuruudo iyo tilmaamo gaar ah (xaaladkeena, tani waa xaqiijinta arday, kani ma arday cusub, mise waa hore u diiwaan gashanaa, xaqiijinta da'da, iwm.). Si aad u fuliso qandaraaska caqliga leh, waxaad sidoo kale u baahan doontaa xogta WorldState. Natiijadu waxay tahay in la isku ekaysiiyo heshiis caqli-gal ah oo lagu taageerayo asaagga, laba qaybood oo xog ah ayaa la helay - Read Set and Write Set. Set and Write Set waa asalka iyo qiyamka cusub ee WorldState. (cusub - macnaha la helay inta lagu jiro jilitaanka qandaraas caqli-gal ah).

Dharka Hyperledger ee Dummies
Sawirka 3. Fulinta qandaraas caqli-gal ah

3) Ku soo celinta xogta codsiga macmiilka

Ka dib markii la sameeyo jilitaanka qandaraaska caqliga leh, Taageerada Asxaabta waxay soo celiyaan xogta asalka ah iyo natiijada jilitaanka, iyo sidoo kale RW Set, oo ay ku saxiixeen shahaadodooda codsiga macmiilka. Marxaladdan, ma jiraan wax isbeddel ah oo ku dhacaya diiwaanka la qaybiyey. Codsiga macmiilku waxa uu hubinayaa saxeexa Taageerada Peer, waxa kale oo uu is barbar dhigaa xogta wax kala iibsiga ee asalka ah ee la soo diray iyo xogta la soo celiyay (yacni, waxa uu hubinayaa in xogta asalka ah ee wax kala iibsiga lagu sawiray ay khaldantay). Haddii macaamilku ahaa kaliya akhrinta xogta diiwaanka, markaa codsiga macmiilku wuxuu helayaa Akhrinta lagama maarmaanka ah tanina badanaa waxay dhamaystirtaa macaamilka si guul leh iyada oo aan bedelin diiwaanka la qaybiyey. Xaaladda macaamil ganacsi oo ay tahay in la beddelo xogta ku jirta diiwaanka, codsiga macmiilku wuxuu sidoo kale hubinayaa hirgelinta siyaasadda Taageerada. Waxaa suurtogal ah in codsiga macmiilku aanu hubin natiijada fulinta Siyaasadda Taageerada, laakiin Qalabka Hyperledger Fabric ee kiiskan ayaa bixiya si loo hubiyo siyaasadaha qanjidhada (Ugu talagalay Peers) marxaladda ku darista macaamil ganacsi ee diiwaanka.

Dharka Hyperledger ee Dummies
Sawirka 4. Ku soo celinta xogta codsiga macmiilka

4) U dirida qalabyada RW Dalbashada Asxaabta

Codsiga macmiilku wuxuu u diraa macaamilka iyo xogta la socota adeegga Dalbashada. Tan waxaa ku jira Set RW, Taageerida saxiixyada asxaabta, iyo Aqoonsiga Kanaalka.

Adeegga dalbashada - iyadoo lagu saleynayo magaca, shaqada ugu weyn ee adeeggani waa in la habeeyo macaamil ganacsi oo soo socda si sax ah. Iyo sidoo kale samaynta block cusub ee diiwaanka la qaybiyey iyo bixinta dammaanad bixinta blocks cusub ee dhammaan qanjidhada ballanqaaday, si loo hubiyo in xogta joogto ah dhammaan noodes ka kooban diiwaanka la qaybiyey (Committing asaaga). Isla mar ahaantaana, adeegga Dalbashada laftiisa sinaba uma beddelo diiwaangelinta. Adeegga dalbashada waa qayb muhiim ah oo ka mid ah nidaamka, marka waa koox ka kooban dhowr nood. Adeegga Dalbashada ma hubiso wax kala iibsiga si sax ah, waxay si fudud u aqbashaa wax kala beddelashada aqoonsi kanaal gaar ah, waxay u habaysaa macaamil ganacsi oo soo galaya hab gaar ah waxayna ka samaysaa qaybo cusub oo diiwaanka la qaybiyey. Hal Adeeg Dalbashada waxay u adeegi kartaa dhowr kanaal isku mar. Adeegga Dalbashada waxa ku jira kooxda Kafka, taas oo ilaalinaysa safka wax kala iibsiga ee saxda ah (aan bedeli karin) (fiiri barta 7).

Dharka Hyperledger ee Dummies
Sawirka 5. U dirida qalabyada RW Dalbashada asxaabta

5) U dirida baloogyo la soo saaray si ay u go'aamiso asaagga

Baloogyada laga soo saaro Adeegga Dalbashada ayaa lagu kala qaadaa (baahinta) dhammaan noodaha shabakadaha. Nod kasta, markii uu helay block cusub, wuxuu hubiyaa inuu u hoggaansamo Siyaasadda Taageerada, wuxuu hubiyaa in dhammaan asxaabtii taageersanayd ay heleen natiijo isku mid ah (Qoritaanka Qor) taas oo ka dhalatay jilitaanka qandaraaska smart, iyo sidoo kale hubinta in qiyamka asalka ahi leeyahay bedelay (taas oo ah, Read Set - xogta uu akhriyey qandaraaska smart ee WorldState) laga bilaabo wakhtiga macaamilka la bilaabay. Haddii dhammaan shuruudaha la buuxiyo, macaamilku wuxuu calaamad u yahay inuu sax yahay, haddii kale, macaamilku wuxuu helayaa xaalad aan sax ahayn.

Dharka Hyperledger ee Dummies
Sawirka 6. Diritaanka baloogyada la soo saaray si ay u go'aamiso asaagga

6) Ku darista block ee diiwaanka

Node kasta wuxuu ku daraa macaamil ganacsi nuqulkiisa maxalliga ah ee diiwaanka la qaybiyay, iyo haddii macaamilku uu sax yahay, markaa Qorista Qorista waxaa lagu dabaqaa WorldState (xaalad hadda jirta), sidaas darteed, qiyamka cusub ee walxaha ay saameeyeen macaamil ganacsi waa qoran yihiin. Haddii macaamilku helo calaamad aan ansax ahayn (tusaale ahaan, laba macaamil ganacsi ayaa ku dhacay shay isku mid ah oo isku mid ah, markaa mid ka mid ah macaamilada ayaa noqon doona mid aan sax ahayn, maadaama qiyamka asalka ah uu horay u bedelay mid kale. wax kala iibsiga). Wax kala iibsiga waxa kale oo lagu daraa buug-gacmeedka la qaybiyey oo leh calaamad aan sax ahayn, laakiin Qoraalka Qoraalka ee wax kala iibsiga laguma dabaqo kan hadda jira ee WorldState, sidaas awgeed, ma beddelo walxaha ka qaybqaata macaamilka. Taas ka dib, ogeysiis ayaa loo diraa arjiga isticmaalaha in macaamilka si joogto ah loogu daray diiwaanka la qaybiyey, iyo sidoo kale heerka macaamilka, taas oo ah, haddii uu sax yahay iyo in kale

Dharka Hyperledger ee Dummies
Sawirka 7. Ku-daridda block ee diiwaanka

ADEEGGA Dalbashada

Adeegga Dalbashada wuxuu ka kooban yahay koox Kafka ah oo leh noodhadhka ZooKeeper u dhigma iyo noodhka Adeegga Dalbashada (OSN), kaas oo u dhexeeya macaamiisha adeegga Dalbashada iyo Kooxda Kafka. Kooxda Kafka waa madal maarayn qaybsan, khalad u dulqaadanaysa socodka (fariinta). Kanaal kasta (mawduuc kasta) oo ku yaal Kafka waa diiwaanno taxane ah oo aan beddelmi karin oo taageeraya in lagu daro rikoodh cusub (tirtirka mid jira suurtagal maaha). Sawirka qaab dhismeedka mawduuca ayaa hoos lagu muujiyay. Waa hantidan Kafka oo loo isticmaalo in lagu dhiso madal blockchain ah.

Dharka Hyperledger ee Dummies
laga soo qaatay kafka.apache.org

  • Sawirka 8. Dalbashada Qaabdhismeedka Mawduuca Adeegga*

Xiriirinta waxtarka leh

Youtube – Dhisida blockchain ganacsi ee Mashruuca Hyperledger
Dukumentiyada Dharka Sare
Dharka Hyperledger: waa nidaam hawleed loo qaybiyey blockchains la oggolaaday

Mahadnaq

Waxaan jeclaan lahaa inaan si weyn ugu mahadceliyo asxaabtayda gacan ka gaysatay diyaarinta maqaalkan:
Nikolay Marin
Igor Khapov
Dmitry Gorbachev
Alexander Zemtsov
Ekaterina Guseva

Source: www.habr.com

Add a comment