Hyperledger Fabric don Dummies

Blockchain Platform don Kasuwancin

Hyperledger Fabric don Dummies

Barka da yamma, masoyi masu karatu, sunana Nikolai Nefedov, Ni ƙwararren ƙwararren fasaha ne na IBM, a cikin wannan labarin ina so in gabatar muku da dandalin blockchain - Hyperledger Fabric. An yi niyyar dandalin don gina aikace-aikacen kasuwanci na matakin kasuwanci (Ajin Kasuwanci). Matsayin labarin shine don masu karatu marasa shiri tare da ainihin ilimin fasahar IT.

Hyperledger Fabric shiri ne na buɗe ido, ɗaya daga cikin rassan aikin buɗe tushen Hyperledger, ƙungiyar Gidauniyar Linux. Kayayyakin Dijital da IBM ne suka ƙaddamar da Fabric na Hyperledger asali. Babban fasalin dandalin Hyperledger Fabric shine mayar da hankali ga aikace-aikacen kamfanoni. Don haka, an samar da dandalin ne bisa la’akari da saurin ciniki da kuma karancin farashi, da kuma tantance duk mahalarta taron. Ana samun waɗannan fa'idodin ta hanyar rarraba sabis ɗin tabbatar da ciniki da ƙirƙirar sabbin tubalan rajistar da aka rarraba, da kuma yin amfani da ikon takaddun shaida da ba da izini ga mahalarta.

Labarina wani bangare ne na jerin kasidu da aka yi kan masana'anta na Hyperledger wanda a cikinsa muke bayyana tsarin tsarin rijistar daliban da ke shiga jami'a.

Babban gine-gine na Hyperledger Fabric

Hyperledger Fabric cibiyar sadarwar blockchain ce da aka rarraba wacce ta ƙunshi sassa daban-daban na aiki waɗanda aka shigar akan nodes na cibiyar sadarwa. Abubuwan Haɓaka Fabric na Hyperledger sune kwantena Docker waɗanda za'a iya sauke su kyauta daga DockerHub. Hakanan ana iya gudanar da Fabric Hyperledger a cikin yanayin Kubernetes.

Don rubuta kwangilar wayo (chaincode a cikin mahallin Hyperledger Fabric), mun yi amfani da Golang (ko da yake Hyperledger Fabric yana ba ku damar amfani da wasu harsuna). Don haɓaka aikace-aikacen al'ada, a cikin yanayinmu, an yi amfani da Node.js tare da madaidaicin Hyperledger Fabric SDK.

Ƙungiyoyin suna gudanar da dabarun kasuwanci (kwangilar mai wayo) - lambar sarkar, adana yanayin rajistar da aka rarraba (bayanan litattafai) da aiwatar da wasu ayyukan tsarin dandamali. Kumburi naúrar ma'ana ce kawai, nodes daban-daban na iya wanzuwa akan uwar garken jiki iri ɗaya. Mafi mahimmanci shine yadda aka haɗa nodes (Trusted domain) da kuma waɗanne ayyuka na cibiyar sadarwar blockchain suke da alaƙa.

Tsarin gine-gine na gabaɗaya yayi kama da haka:

Hyperledger Fabric don Dummies

Hoto 1. Gabaɗaya Gine-gine na Yakar Hyperledger

Aikace-aikacen mai amfani (Submitting Client) aikace-aikace ne wanda masu amfani ke aiki tare da hanyar sadarwar blockchain. Don yin aiki, kuna buƙatar shiga ta hanyar izini kuma kuna da haƙƙin da suka dace don nau'ikan ayyuka daban-daban akan hanyar sadarwa.

Takwarorinsu (Nodes) sun zo cikin ayyuka da yawa:

  • Ƙaddamar da Peer wani kumburi ne wanda ke kwatanta aiwatar da ma'amala (yana aiwatar da lambar kwangila mai wayo). Bayan ingantawa da aiwatar da kwangilar wayo, kumburi yana mayar da sakamakon aiwatarwa zuwa aikace-aikacen abokin ciniki tare da sa hannun sa.
  • Sabis ɗin oda sabis ne da aka rarraba akan nodes da yawa, ana amfani dashi don ƙirƙirar sabbin tubalan na littafin da aka rarraba da ƙirƙirar jeri don aiwatar da ma'amaloli. Sabis ɗin yin oda baya ƙara sabbin tubalan zuwa wurin yin rajista (An Ƙarƙasa zuwa Ƙarfafa Takwarorinsu don ingantacciyar aiki).
  • Committing Peer - kumburi wanda ya ƙunshi rajista da aka rarraba kuma yana ƙara sabbin tubalan zuwa wurin yin rajista (wanda Sabis ɗin oda suka ƙirƙira). Duk Ƙwararrun Ƙwararru sun ƙunshi kwafin gida na littafin da aka rarraba. Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwararren Ƙwaƙwalwa na Ƙaddamarwa ya yi a cikin gida, yana bincika duk ma'amaloli a cikin toshe don inganci.

Manufar Taimako manufa ce don bincika ma'amala don inganci. Waɗannan manufofin sun ayyana saitin nodes masu mahimmanci waɗanda dole ne a aiwatar da kwangilar wayo don a gane ma'amala a matsayin inganci.

Rarraba Registry - Lerger - ya ƙunshi sassa biyu: WolrldState (wanda ake kira State DataBase) da BlockChain.

BlockChain shine jerin tubalan da ke adana bayanan duk canje-canjen da suka faru ga abubuwan da aka rarraba.

WolrldState yanki ne na rajista da aka rarraba wanda ke adana ƙimar halin yanzu (mafi girma) na duk abubuwan rajista da aka rarraba.

WorldState ita ce cibiyar bayanai, a cikin sigar asali - LevelDB ko ƙarin hadaddun - CouchDB, wanda ya ƙunshi nau'i-nau'i masu ƙima, misali: Sunan farko - Ivan, Sunan mahaifi - Ivanov, kwanan rajista a cikin tsarin - 12.12.21/17.12.1961/XNUMX, kwanan wata. haihuwa - XNUMX/XNUMX/XNUMX, da dai sauransu. WorldState da littafan da aka rarraba dole ne su kasance masu daidaituwa a duk membobin tashar da aka bayar.

Tun da Hyperledger Fabric cibiyar sadarwa ce wacce aka san duk mahalarta kuma an tabbatar da su, ana amfani da ikon takaddun shaida a nan - CA (Hukumar Takaddun Shaida). CA yana aiki akan ma'auni na X.509 da maɓalli na jama'a - PKI.

Sabis ɗin membobin sabis ne wanda ta hanyarsa membobi ke tabbatar da cewa wani abu na wata ƙungiya ne ko tashoshi.

Ma'amala ita ce, a mafi yawan lokuta, rikodin sabbin bayanai a cikin littafin da aka rarraba.
Hakanan akwai ma'amaloli don ƙirƙirar tashoshi ko kwangiloli masu wayo. An ƙaddamar da ma'amala ta aikace-aikacen mai amfani kuma ta ƙare tare da rubutawa zuwa littafin da aka rarraba.

Channel (Channel) rufaffiyar rufaffiyar hanyar sadarwa ce mai kunshe da mahalarta biyu ko fiye a cikin hanyar sadarwar blockchain, wanda aka tsara don gudanar da ma'amaloli na sirri a cikin iyaka, amma sananne, da'irar mahalarta. An ƙaddara tashar ta hanyar mahalarta, littafin da aka rarraba, kwangiloli masu wayo, Sabis na oda, WorldState. Dole ne kowane memba na tashar ya sami izini don shiga tashar kuma yana da haƙƙin yin ma'amala iri-iri. Ana yin izini ta amfani da Sabis ɗin Memba.

Yanayin aiwatar da ciniki na yau da kullun

Na gaba, Ina so in yi magana game da yanayi na yau da kullun don aiwatar da ma'amala ta amfani da misalin aikinmu.

A matsayin wani ɓangare na aikinmu na cikin gida, mun ƙirƙiri cibiyar sadarwa ta Hyperledger Fabric, wanda aka tsara don yin rajista da rikodin ɗaliban da ke shiga jami'o'i. Cibiyar sadarwarmu ta ƙunshi ƙungiyoyi biyu, mallakar Jami'ar A da Jami'ar B. Kowace ƙungiya tana ƙunshe da aikace-aikacen abokin ciniki, da nata Committing da Endorsing Peer. Hakanan muna amfani da sabis na oda gama gari, Sabis ɗin Memba da sabis na Hukumar Takaddun shaida.

1) Ƙaddamar da Ma'amala

Aikace-aikacen mai amfani, ta amfani da Hyperledger Fabric SDK, yana fara buƙatar ma'amala kuma yana aika buƙatar zuwa nodes tare da kwangiloli masu wayo. Buƙatun na iya zama don canzawa ko karantawa daga littafin da aka rarraba (Ledger). Idan muka yi la'akari da misali na mu gwajin sanyi na tsarin na lissafin kudi ga daliban jami'a, sa'an nan abokin ciniki aikace-aikace aika wani ma'amala request ga nodes na jami'o'i A da B, wanda aka kunshe a cikin Endorsement manufofin da ake kira smart kwangila. Node A wani kumburi ne da ke cikin jami'a wanda ke yiwa dalibi mai shigowa rajista, kuma kumburin B shine kumburin da ke cikin wata jami'a. Domin samun ceton ma'amala zuwa littafin da aka rarraba, ya zama dole cewa duk nodes waɗanda, bisa ga dabarun kasuwanci, dole ne su amince da ma'amala, nasarar aiwatar da kwangilar kai tsaye tare da sakamako iri ɗaya. Aikace-aikacen mai amfani na kumburin A, ta amfani da kayan aikin Hyperledger Fabric SDK, yana karɓar manufofin Amincewa (manufofin yarda) kuma ya gano ko wane nodes don aika buƙatun ciniki zuwa. Wannan buƙatun ne don kiran (kira) wani takamaiman kwangila mai wayo (aikin sarƙoƙi) don karantawa ko rubuta wasu bayanai zuwa littafin da aka rarraba. A fasaha, SDK abokin ciniki yana amfani da madaidaicin aikin, API ɗin wanda ke wuce wani abu tare da sigogin ma'amala, kuma yana ƙara sa hannun abokin ciniki kuma ya aika wannan bayanan ta hanyar buffer na yarjejeniya akan gRPC zuwa ga madaidaitan nodes (tabbatar da takwarorinsu).

Hyperledger Fabric don Dummies
Hoto 2. Ƙaddamar da ciniki

2) Smart kwangila kisa

Nodes (Tallafawa Takwarorinsu), bayan sun sami buƙatu don gudanar da ma'amala, bincika sa hannun abokin ciniki kuma idan duk abin da yake cikin tsari, to sai su ɗauki wani abu tare da bayanan buƙatun kuma suna gudanar da simulation na aiwatar da kwangilar mai kaifin baki (aiki na sarƙoƙi) da wadannan bayanai. Kwangila mai wayo ita ce dabarun kasuwanci na ma'amala, takamaiman tsari da umarni (a cikin yanayinmu, wannan duban ɗalibi ne, shin sabon ɗalibi ne, ko kuma an riga an yi masa rajista, rajistan shekaru, da sauransu). Don aiwatar da kwangilar wayo, kuna buƙatar bayanai daga WorldState. Sakamakon kwaikwaiyon kwantiragi mai wayo akan ƙwararrun Ƙwararru, ana samun saitin bayanai guda biyu - Karanta Saitin da Saitin Rubutu. Saiti da Saitin Rubutu sune na asali da sabbin dabi'un Jihar Duniya. (sabo - a cikin ma'anar da aka samu ta hanyar simintin kwangila mai wayo).

Hyperledger Fabric don Dummies
Hoto 3. Smart kwangila kisa

3) Mayar da bayanai zuwa aikace-aikacen abokin ciniki

Bayan kwaikwayo na kwangilar wayo, Ƙungiyoyin Ƙarfafawa suna komawa zuwa aikace-aikacen abokin ciniki bayanan farko da sakamakon simintin, da kuma RW Set da takardar shaidar su ta sanya hannu. A wannan mataki, babu canje-canje a cikin littafin da aka rarraba. Aikace-aikacen abokin ciniki yana tabbatar da sa hannun abokin ciniki, kuma yana kwatanta ainihin bayanan ciniki da aka aiko da bayanan da aka dawo (wato, yana bincika ko ainihin bayanan da aka kwaikwayi ciniki da su ya lalace). Idan ma'amalar ta kasance kawai don karanta bayanai daga wurin yin rajista, to, aikace-aikacen abokin ciniki daidai da haka yana karɓar saitin Karatun da ake buƙata, kuma akan wannan, ma'amala yawanci yakan cika cikin nasara ba tare da canza wurin da aka rarraba ba. A cikin yanayin ma'amala wanda yakamata ya canza bayanai a cikin wurin yin rajista, aikace-aikacen abokin ciniki kuma yana bincika ko an aiwatar da manufar Taimakawa. Yana yiwuwa aikace-aikacen abokin ciniki baya duba sakamakon aiwatar da Dokar Amincewa, amma dandamali na Hyperledger Fabric a cikin wannan yanayin yana ba da damar duba manufofin akan nodes (Comitting Peers) a matakin ƙara ma'amala zuwa wurin yin rajista.

Hyperledger Fabric don Dummies
Hoto 4. Mayar da bayanai zuwa aikace-aikacen abokin ciniki

4) Aika saitin RW zuwa oda takwarorinsu

Aikace-aikacen abokin ciniki yana aika ma'amala tare da bayanai masu alaƙa zuwa sabis ɗin oda. Wannan ya haɗa da Saitin RW, sa hannun amincewar abokan zamanta, da ID na Channel.

Sabis na oda - bisa sunan, babban aikin wannan sabis ɗin shine gina ma'amaloli masu shigowa cikin tsari daidai. Kazalika da samar da sabon toshe na rijistar da aka rarraba da kuma ba da tabbacin isar da sabbin tubalan da aka samar ga duk nodes masu yin aiki, don haka tabbatar da daidaiton bayanai akan duk nodes ɗin da ke ɗauke da rijistar rarraba (Committing peers). A lokaci guda, sabis ɗin oda da kansa baya canza wurin yin rajista ta kowace hanya. Sabis ɗin oda muhimmin sashi ne na tsarin, don haka tari ne na nodes da yawa. Sabis ɗin oda ba ya bincika ma'amala don inganci, kawai yana karɓar ma'amala tare da takamaiman tashar ID, shirya ma'amala mai shigowa cikin takamaiman tsari, kuma yana samar da sabbin tubalan littafan da aka rarraba daga gare su. Sabis ɗin oda ɗaya na iya yin hidimar tashoshi da yawa a lokaci guda. Sabis ɗin oda ya haɗa da gungu na Kafka, wanda ke kula da layin ma'amala daidai (ba a canzawa) (duba batu na 7).

Hyperledger Fabric don Dummies
Hoto na 5. Aika saitin RW zuwa oda takwarorinsu

5) Aika tubalan da aka samar zuwa ga Ƙwararren Ƙwararru

Tubalan da aka kafa a cikin Sabis ɗin oda ana watsa su zuwa duk nodes na cibiyar sadarwa. Kowane kulli, bayan ya karɓi sabon toshe, yana bincika shi don bin ka'idodin Taimakawa, yana bincika cewa duk Abokan Taimako sun sami sakamako iri ɗaya (Rubuta Saita) sakamakon ƙirar kwangilar mai kaifin baki, kuma yana bincika idan ainihin ƙimar suna da. canza (wato, - Read Set - data karanta ta hanyar smart kwangila daga WorldState) tun lokacin da aka fara ciniki. Idan duk sharuɗɗan sun cika, ana yiwa ma'amala alama a matsayin inganci, in ba haka ba, ma'amala ta karɓi matsayin mara inganci.

Hyperledger Fabric don Dummies
Hoto na 6. Aika tubalan da aka samar zuwa ga Abokin Hulɗa

6) Ƙara toshe zuwa wurin yin rajista

Kowane kumburi yana ƙara ma'amala zuwa kwafin littafin da aka rarraba, kuma idan ma'amalar ta kasance mai inganci, to, ana amfani da Saitin Rubutun zuwa WorldState (jihar yanzu), bi da bi, ana rubuta sabbin ƙima na abubuwan da ciniki ya shafa. . Idan ma'amala ta sami alamar da ba ta da inganci (misali, akwai ma'amaloli biyu tare da abubuwa iri ɗaya a cikin toshe ɗaya, to ɗayan ma'amalar ba zai yi aiki ba, tunda an riga an canza ƙimar asali ta wata ma'amala. ). Hakanan ana ƙara wannan ma'amala zuwa littafin da aka rarraba tare da alamar da ba ta da inganci, amma Rubutun Rubutun wannan ma'amala baya aiki ga halin da ake ciki na DuniyaState kuma, saboda haka, baya canza abubuwan da ke shiga cikin ma'amala. Bayan haka, ana aika sanarwar zuwa aikace-aikacen mai amfani cewa an ƙara ciniki a cikin ledar da aka rarraba har abada, da kuma matsayin ciniki, wato, ko yana da inganci ko a'a.

Hyperledger Fabric don Dummies
Hoto 7. Ƙara toshe zuwa wurin yin rajista

HIDIMAR BAYANI

Sabis ɗin oda ya ƙunshi gungu na Kafka tare da madaidaitan nodes na ZooKeeper da Nodes na Sabis na oda (OSN) waɗanda ke zaune tsakanin abokan cinikin sabis ɗin oda da Tarin Kafka. Tarin Kafka dandamali ne wanda aka rarraba, mai jurewa kwarara (saƙo) dandamalin gudanarwa. Kowane tashoshi (batun) a cikin Kafka jerin bayanai ne marasa canzawa wanda kawai ke goyan bayan ƙara sabon rikodin (share wanda yake da shi ba zai yiwu ba). An ba da misalin tsarin jigon a ƙasa. Wannan dukiya ta Kafka ce ake amfani da ita don gina dandalin blockchain.

Hyperledger Fabric don Dummies
An karɓa daga kafka.apache.org

  • Hoto 8. Tsarin Batun Sabis na Bada oda*

Hanyoyin haɗi masu amfani

Youtube - Gina blockchain don kasuwanci tare da aikin Hyperledger
Dokokin Fabric Hyperledger
masana'anta Hyperledger: tsarin aiki da aka rarraba don blockchain izini

Godiya

Ina mika godiya ta ga abokan aikina da suka taimaka wajen shirya labarin:
Nikolai Marina
Igor Khapov
Dmitry Gorbachev
Alexander Zemtsov
Ekaterina Guseva

source: www.habr.com

Add a comment