Maxaan dhisi karnaa blockchain?

Dhammaan taariikhda bini'aadmigu waa geedi socod joogto ah oo lagaga takhalusayo silsiladaha iyo abuurista kuwa cusub, xitaa kuwa ka sii xoog badan. (Qoraaga aan la magacaabin)

Falanqaynta mashruucyo badan oo blockchain ah (Bitshares, Hyperledger, Exonum, Ethereum, Bitcoin, iwm.), Waxaan fahamsanahay in marka laga eego dhinaca farsamada, ay dhamaantood ku dhisan yihiin mabaadi' isku mid ah. Blockchains waxay xasuusinayaan guryaha, kuwaas oo, inkastoo dhammaan noocyada kala duwan ee naqshadaha, qurxinta iyo ujeedooyinka, ay leeyihiin aasaas, derbiyo, saqafka, daaqadaha, albaabada kuwaas oo isku xiran siyaabo gaar ah. Oo haddii aad fahamto mabaadi'da aasaasiga ah ee naqshadeynta dhismaha oo aad ogtahay sifooyinka alaabta loo isticmaalo, markaa waxaad go'aamin kartaa ujeedada loogu talagalay guri gaar ah. Waqtigan xaadirka ah, xaalad ayaa ka dhalatay blockchain oo qof kastaa maqlay, laakiin dad yar ayaa fahamsan dhismaha iyo mabaadi'da hawlgalka. Sidaa darteed, waxaa jira faham la'aan sababta iyo sida ay macquul u tahay isticmaalka tignoolajiyada blockchain.

Maqaalkan waxaan ku falanqeyn doonaa sifooyinka iyo mabaadi'da ay wadaagaan dhammaan blockchain. Marka xigta, aan eegno dhibaatooyinka lagu xallin karo iyadoo la adeegsanayo blockchain iyo si loo xoojiyo walxaha, aan ku dhisno blockchain yar laakiin dhab ah goobtayada casriga ah!

Marka, aan xasuusano dhibaatooyinka blockchain markii hore la xaliyay.

Waxaan hubaa in qaar badani ay wax ka odhan doonaan xog-ururin la qaybiyey, la baahiyey, mid guud iyo mid aan la beddeli karin. Laakiin maxay waxyaalahan oo dhan lama huraan ugu noqdeen?

Waxaan doorbidayaa inaan bilaabo barashada tignoolajiyada kasta anigoo akhrinaya heerarka, maadaama dhammaan maqaallada iyo buugaagta mowduuca daraasadda lagu sameeyay ay ku saleysan yihiin. Laakiin hadda ma jiraan heerarka blockchain; ISO kaliya ayaa abuurtay guddiyada horumarkooda. Waqtigan xaadirka ah, mashruuc kasta oo blockchain dadweynaha ah wuxuu leeyahay dukumeenti waraaq ah oo u gaar ah, kaas oo asal ahaan ah tilmaamo farsamo. Mashruucii ugu horreeyay ee loo yaqaan blockchain waa shabakadda Bitcoin. Tag bogga rasmiga ah ee shabakada iyo eeg halkay wax ka bilowdeen.

Loolanka Blockchain

Sidaa darteed, hawsha blockchain lagu xalliyo shabakada hormoodka Bitcoin waa in la fuliyo wareejinta la aamini karo ee lahaanshaha hantida dhijitaalka ah (hanti) ee jawi aan la aamini karin oo aan lahayn dhexdhexaadiye. Tusaale ahaan, shabakadda Bitcoin, hantida dhijitaalka ah waa lacagta dhijitaalka ah ee bitcoin. Iyo dhammaan xalalka farsamada ee Bitcoin iyo blockchains kale ayaa u soo degaya xallinta dhibaatadan.

Dhibaatooyinka ay blockchain xalliyo

Ka soo qaad hay’ad maaliyadeed oo gaar ah ayaa sheegtay in ay dhistay shabakad adduunka oo dhan ah iyada oo la kaashanayo ay suurtagal tahay in qof kasta lacag loogu xawilo. Ma rumaysan doontaa? Haddii ururkani yahay Visa ama MasterCard, waxay u badan tahay inaad rumaysan doonto, laakiin haddii, si ka duwan sidii hore, AnonymousWorldMoney, waxaa laga yaabaa inaadan yeelin. Waa maxay sababtu? Laakiin sababtoo ah waxaan si fiican u ognahay sida nidaamyada loo qaybiyo ee ay sameeyaan shirkado gaar ah, ujeeddooyinkee, iyo waxa tani u horseedi karto. Aynu si qoto dheer u eegno dhibaatooyinka nidaamyada noocaas ah iyo sida loo xalin karo iyadoo la adeegsanayo tignoolajiyada blockchain.

Aynu sheegno in shuruudaha AnonymousWorldMoney ay ku jiraan server-yo leh xog-ururin, wayna wanaagsan tahay haddii ay jiraan dhowr ka mid ah xarumaha xogta ee kala duwan. Marka diraha uu lacag xawilo, wax kala iibsi ayaa la diiwangeliyay, kaas oo lagu celceliyo dhammaan server-yada, lacagtuna waxay gaartaa qaataha.

Maxaan dhisi karnaa blockchain?

Dunida ku habboon, nidaamkani si weyn ayuu u shaqeeyaa, laakiin annaga dhibaatooyinka soo socda ayaa ka soo baxa:

  1. Dhibaatada aqoonsiga ka qaybgalayaasha oo dhinac ah iyo baahida qarsoodiga ah ee macaamilada dhinaca kale. Kuwaas. waxaad u baahan tahay inaad lacag ku wareejiso qaate gaar ah iyo si aan qofna u ogeyn wax kala iibsiga marka laga reebo ka qaybgalayaasha wax kala iibsiga. Bangiyadu waxay leeyihiin lambarro xisaabeed iyo kaarar bangi oo ku xidhan shakhsi gaar ah ama cid sharci ah, sirta bangiguna waxay ilaalisaa macluumaadka wax kala iibsiga. Oo yaa dammaanad qaadaya in AnonymousWorldMoney shuruuddu aanay u isticmaalin xogta shakhsiyeed iyo macluumaadka macaamilka ujeeddooyinkeeda?
  2. Sidee loo hubiyaa in qaataha uu si sax ah u helay qaddarka isaga lagu wareejiyay? Marka la eego, qofka soo diray waxa uu wareejiyay $100, qofka la siiyayna waxa uu helay $10. Soo diruhu waxa uu la imanayaa xafiiska AnonymousWorldMoney isaga oo wata rasiidhkiisii, karraaniga waxa uu tusay nuqulkiisa, halkaas oo ay ku qoran tahay in soo dirayuhu wareejiyay $10 oo keliya.
  3. Dhibaatada deegaanka aan la aamini karin, tusaale ahaan, khiyaano la yiraahdo double- kharashka. Ka qaybqaataha aan damiir lahayn wuxuu ku bixin karaa baaqigiisa dhowr jeer ilaa lacag bixinta lagu celceliyo dhammaan server-yada. Aragtida CAPDabcan, qofna ma burin, heshiisna ugu dambeyntii waa la gaari doonaa, laakiin qof ma heli doono lacag adeegyada ama alaabta la bixiyo. Sidaa darteed, haddii aysan jirin kalsooni buuxda oo ku saabsan ururka lacag bixinta ama ka qaybgalayaasha macaamil ganacsi, markaa waa lagama maarmaan in la dhiso shabakad ku salaysan kalsooni, laakiin cryptography.
  4. Xaalad AnonymousWorldMoney waxay leedahay tiro xaddidan oo adeegayaal ah oo laga yaabo inay noqdaan kuwo aan la heli karin si ula kac ah ama ujeedo xun awgeed.
  5. AnonymousWorldMoney waxay qaadan doontaa guddigeeda la taaban karo.
  6. Suurtagalnimada xakamaynta. Inta lagu guda jiro hawlgalka Seeraar, waxaa soo baxday in dadku ma rabaan oo kaliya in ay u gudbiyaan lacagta qadaadiicda midba midka kale, laakiin sidoo kale si ay u hubiyaan xaaladaha kala duwan ee macaamil ganacsi, xaaladaha shaqada barnaamijka, si toos ah u fuliyaan falalka ku xiran tahay shuruudaha, iwm.

Sida blockchain u xalliyo dhibaatooyinkan

  1. Aqoonsiga ka qaybgalayaasha waxa lagu fuliyaa iyada oo la adeegsanayo laba furayaal: mid gaar ah iyo mid guud, iyo saxeexa dhijitaalka ah ee algorithm si gaar ah u tilmaamaya soo diraha iyo qaataha, isaga oo ka tagaya aqoonsigooda qarsoodi.
  2. Wax kala iibsiga ayaa loo ururiyaa blocks, xashiishka block ayaa la xisaabiyaa oo lagu qoraa block soo socda. Isku xigxiga duubista xashiishka ee blocks waxay siinaysaa tignoolajiyada blockchain magaceeda, sidoo kale waxay ka dhigaysaa mid aan macquul ahayn in si aan la ogaan karin loo beddelo / tirtiro blocks ama macaamil ganacsi oo gaar ah blocks. Sidaa darteed, haddii wax kala iibsiga lagu daro blockchain, waxaad hubin kartaa in xogteeda ay ahaan doonto mid aan isbeddelin.
  3. Khiyaanada laba-laba-kharashka ah waxaa looga hortagayaa iyadoo la gaaro is-afgarad shabakadeed xogta la tixgelinayo inay sax tahay iyo tan la tuurayo. Shabakadda Bitcoin, is-afgaradka waxaa lagu gaaraa caddaynta shaqada (PoW).
  4. Kalsoonida shabakada waxaa lagu gaaraa xaqiiqda ah in blockchain uu yahay mid dadweyne, halkaas oo kaqeybgale kastaa uu maamuli karo noodhka u gaar ah, uu helo nuqul dhamaystiran oo blockchain ah iyo, sidoo kale, si madax-bannaan u bilaabaan si ay u hubiyaan macaamilada saxda ah. Waa in la ogaadaa in xannibaadaha casriga ah ay suurtogal u tahay in la dhiso ma aha oo kaliya dadweynaha (furan) laakiin sidoo kale kuwa gaarka ah (xiran) blockchains, iyo sidoo kale isticmaalka nidaamyada isku dhafan.
  5. blockchain gabi ahaanba kama takhalusi doono guddiyada, sababtoo ah ... waa inaad bixisaa dadka taageera shabakada, laakiin blockchain baahida loo qabo guddiga ayaa lagu caddeeyey si lagu qanci karo oo aan shaki ku jirin baahideeda.
  6. Blockchain-yada casriga ah waxay awood u leeyihiin inay hirgeliyaan caqli-gal ganacsi, kaas oo blockchain-ka loo yaqaan 'Smart Contracts'. Fikradda qandaraasyada caqliga leh waxaa lagu fuliyaa luqado kala duwan oo heer sare ah.

Marka xigta, waxaan si faahfaahsan uga fiirsan doonaa xalalkan.

Dhismaha blockchain

Qaybaha Blockchain

Ka qaybgale kastaa wuxuu bilaabi karaa noodhkiisa isagoo wata nuqul buuxa oo ah blockchain (node ​​buuxa). Nodes buuxa oo duubi kara macaamil ganacsi ee blockchain ayaa loo yaqaan noodhadhka la isku raacsan yahay (markhaati) ama macdan qodayaal (macdan qodayaal). Noocyo buuxa oo kaliya ee hubinaya saxnimada wax kala iibsiga ayaa loo yaqaan qanjidhada hanti dhawrka (hanti). Macaamiisha fudud (macaamiisha iftiinka) ma kaydiyaan koobiyada buuxa ee blockchain, laakiin la falgalaan shabakada adoo isticmaalaya noodhadh buuxa.
Isticmaalayaasha intooda badani waxay isticmaalaan macaamiil fudud ama boorsooyinka shabakadda si ay wax u kala iibsadaan. Dhammaan qanjidhada waxay ku xiran yihiin midba midka kale. Cunsurradan, qaab dhismeedka shabakadu wuxuu noqonayaa mid deggan:

Maxaan dhisi karnaa blockchain?

Wareegga nolosha macaamil ganacsi

Aynu eegno meertada nolosha wax kala iibsiga oo aan u kala qaybinno:

Maxaan dhisi karnaa blockchain?

Tignoolajiyada Blockchain

Aynu si faahfaahsan u dul istaagno xalalka farsamada iyo xidhiidhka ay la leeyihiin midba midka kale.

Aqoonsiga

Wax kala iibsiga blockchain kasta waa in si dhijitaal ah loo saxeexo. Sidaa darteed, si loo dhamaystiro wax kala iibsiga, ka qaybgale kastaa waa inuu lahaadaa lamaane fure ah: mid gaar ah / mid guud. Mararka qaarkood furayaasha lamaanaha ah waxaa loogu yeeraa boorsada jeebka, sababtoo ah furayaasha ayaa si gaar ah ula xidhiidha ciwaanka dhijitaalka ah ee gaarka ah iyo dheelitirnaanta ka qaybqaataha. Dhab ahaantii, furayaasha iyo ciwaanadu waa kaliya tirooyinka tirooyinka ee hababka nambarada kala duwan. Tusaalooyinka furayaasha iyo ciwaannada boorsada:

Private key: 0a78194a8a893b8baac7c09b6a4a4b4b161b2f80a126cbb79bde231a4567420f
Public key: 0579b478952214d7cddac32ac9dc522c821a4489bc10aac3a81b9d1cd7a92e57ba
Address: 0x3814JnJpGnt5tB2GD1qfKP709W3KbRdfb27V

Si loo abuuro saxeex dhijitaal ah oo ku jira blockchains, algorithm ku salaysan qaloocyada elliptik ayaa la isticmaalaa: Algorithm Saxiixa Dijital ah ee Elliptic Curve (ECDSA). Si uu u shaqeeyo, furaha gaarka ah (lambarka 256-bit) waxaa badanaa loo qaataa si aan kala sooc lahayn. Tirada fursadaha muhiimka ah waa 2 ilaa awoodda 256, sidaas darteed waxaan ka hadli karnaa wax aan macquul ahayn ee la mid ah qiimaha furayaasha gaarka ah.

Marka xigta, furaha dadweynaha waxaa laga helaa kan gaarka ah iyadoo lagu dhufto qiimihiisu isku-duwayaasha bar ku yaal qalooca elliptical, taasoo keentay isku-duwayaasha bar cusub oo isku mid ah. Tallaabadani waxay hubinaysaa inaad hesho lammaane muhiim ah oo ku habboon si dijital ah wax kala iibsiga. Ugu dambeyntii, cinwaanka boorsada jeebka ayaa si gaar ah looga soo qaatay furaha dadweynaha.

Waxaa jira maqaallo badan oo leh tafaasiil ku saabsan qarsoodiga loo isticmaalo blockchain, tusaale ahaan: Bitcoin si kooban - Cryptography

Furaha khaaska ah waa inuu ahaadaa mid si adag loo xafiday. Furaha dadweynaha qof walba waa yaqaan. Haddii furaha khaaska ah uu lumo, gelitaanka hantida (qadaadiicda) lama soo celin karo lacagtuna weligeed way lumin doontaa. Sidaa darteed, hawsha si ammaan ah u kaydinta furayaasha gaarka ah waa mid aad u habboon, sababtoo ah Kani maaha bangi aad had iyo jeer la iman karto baasaboorkaaga oo aad dib ugu soo celin karto akoonkaaga. Waxaa jira warshad dhan oo loogu talagalay soo saarista waxa loogu yeero boorsada crypto qabow, oo la mid ah darawallada flash-ka:

Maxaan dhisi karnaa blockchain?

ama waxaad isticmaali kartaa habab badan oo la isku halayn karo, tusaale ahaan, ku shaabadeynta qiimaha furaha gaarka ah ee calaamadaha:

Maxaan dhisi karnaa blockchain?

Wareejinta

Faahfaahin dheeraad ah oo ku saabsan qaabka wax kala iibsiga ayaa laga heli karaa maqaalka Bitcoin si kooban - Wax kala iibsiga. Waxaa muhiim noo ah inaan fahanno in wax kala iibsi kastaa leeyahay ugu yaraan xogtan soo socota:

From: 0x48C89c341C5960Ca2Bf3732D6D8a0F4f89Cc4368 - Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ адрСс отправитСля
To: 0x367adb7894334678b90Π°fe7882a5b06f7fbc783a - Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ адрСс получатСля
Value: 0.0001 - сумма Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ
Transaction Hash: 0x617ede331e8a99f46a363b32b239542bb4006e4fa9a2727a6636ffe3eb095cef - Ρ…ΡΡˆ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ

Marka xigta, wax kala iibsiga waxa lagu saxeexaa fure gaar ah oo la soo diro (fiiri faahfaahinta hawlgalka borotokoolka Bitcoin si kooban-Protocol) dhammaan qanjidhada blockchain ee hubinaya wax kala iibsiga si sax ah. Xaqiijinta wax kala iibsiga algorithm waa mid aan sahlanayn oo waxaa ku jira laba darsin tallaabo.

xannibaadyada wax kala iibsiga

Kadib hubinta ansaxnimada wax kala iibsiga, noodhadhku waxay ka sameeyaan blocks iyaga. Wax kala iibsiga ka sokoow, xashiishkii baloogii hore iyo nambar (Nonce counter) ayaa lagu qoraa blockka, xashiishka blockka hadda jira waxaa lagu xisaabiyaa iyadoo la isticmaalayo SHA-256 algorithm. Xashiishku waa inuu dejiyay xaalado kakan. Tusaale ahaan, shabakadda Bitcoin, dhibka xashiishku si toos ah ayaa loo beddelaa 2dii toddobaadba mar iyadoo ku xidhan awoodda shabakadda si baloog u soo baxo qiyaastii hal mar 10kii daqiiqoba. Kakanaanta waxaa lagu go'aamiyaa shuruudahan soo socda: xashiishka la helay waa inuu ka yar yahay tiro hore loo go'aamiyay. Haddii xaaladdan aan la daboolin, ka dibna 1 ayaa lagu daraa Nonce, iyo shaqada xisaabinta xashiishka ayaa soo noqnoqda. Si loo doorto xashiish, goobta Nonce ayaa la isticmaalaa, sababtoo ah Tani waa xogta kaliya ee ku jirta block ee la bedeli karo; inta soo hartay waa inay ahaato mid aan isbeddelin. Xashiish sax ah waa inuu lahaadaa tiro cayiman oo eber ah, sida mid ka mid ah xashiishyada dhabta ah:

000000000000000000000bf03212e7dd1176f52f816fa395fc9b93c44bc11f91

Si guul leh u helista xashiishku waa caddaynta shaqada la qabtay (Caddaynta-Shaqada, PoW) ee shabakadaha Bitcoin ama Ethereum. Habka lagu helo xashiishyada waxaa loo yaqaan macdanta, oo la mid ah macdanta dahabka. Magaca ayaa si sax ah u qeexaya nuxurka habka, sababtoo ah waxaa jira raadinta sahlan ee fursadaha, iyo haddii qof helo xashiish ku haboon, ka dibna tani waa nasiib. Waxay la mid tahay in la helo dahab dhab ah oo tan dhagaxa qashinka ah ah. Abaalmarinta xannibaadda hadda waa 12.5 BTC oo haddii aad ku dhufato heerka Bitcoin ee $ 3900, waxaad helaysaa in ka badan kiilogaraam dahab saafi ah. Wax loo dagaalamo baa jira!

Ka dib markii si guul leh loo helo xashiish, baloogga iyo xashiishkii la helay laftiisa ayaa loo qoraa blockchain sida block soo socda. Faahfaahin dheeraad ah oo ku saabsan qaabka blocks waxaa laga heli karaa maqaalka Bitcoin si kooban-Blockchain, hoosna waa jaantus la fududeeyey:

Maxaan dhisi karnaa blockchain?

Blockchain-ku wuxuu ku bilaabmaa baloog aan wali lahayn xashiishkii block hore. Waxaa jira hal block oo kaliya oo ku jira blockchain oo leh magac u gaar ah oo loo yaqaan 'Block'. Baloogyada soo haray waxay leeyihiin qaab isku mid ah waxayna ku kala duwan yihiin oo kaliya tirada macaamilada. Wax kala iibsiga dhabta ah iyo baloogyada hadda lagu abuuray Bitcoin ama Ethereum waa la arki karaa Xawilaadda Internetka.

Cabirka blocks ee Seeraar waxa uu ku kooban yahay 1MB iyo qadarka ugu yar ee macluumaadka wax kala iibsiga ee ku saabsan 200 bytes, tirada ugu badan ee macaamil ganacsi ee block ah waxay noqon kartaa ilaa 6000. Laga soo bilaabo halkan, jidka, waxay raacdaa waxqabadka Bitcoin, kaas oo qof kastaa ku qoslo: block ayaa la soo saaraa qiyaastii hal mar 10 daqiiqo * 60 seconds = 600 seconds, taas oo siinaya waxqabadka rasmiga ah ee ku saabsan 10 TPS. Inkasta oo dhab ahaantii, tani maaha wax soo saar, laakiin algorithm shaqo oo si ula kac ah loo fuliyay. Ethereum, tartanka, waxay si fudud u sameeyeen wakhtiga jiilka block 15 ilbiriqsi. iyo wax soo saarku si rasmi ah kor ugu kacay. Sidaa darteed, blockchains ee isticmaala PoW sida la isku raacsan yahay, wax macno ah ma samaynayso in la barbardhigo waxqabadka gabi ahaanba, sababtoo ah waxay si toos ah ugu xiran tahay kakanaanta xisaabinta kaydka, taas oo loo qoondeyn karo qiimo kasta.

Fargeeto

Maxaa dhacaya haddii, tusaale ahaan, dhowr noodes laga helo hashes buuxiya shuruudaha kakanaanta, laakiin ay ku kala duwan yihiin qiimaha (si kale haddii loo dhigo, waxay yimaadeen heshiisyo kala duwan) oo ay u qoraan blocks blockchain? Aynu aragno sida blockchain uu uga ilaaliyo xaaladdan. Xaaladdan oo kale, fargeeto loo yaqaan ayaa dhacaya, blockchain-kuna wuxuu leeyahay laba nooc oo silsilad ah:

Maxaan dhisi karnaa blockchain?

Maxaa dhacaya marka xiga? Marka xigta, qayb ka mid ah shabakadu waxay bilaabataa inay ka shaqeyso xannibaadda N+2 ee hal silsilad, iyo qayb kale:

Maxaan dhisi karnaa blockchain?

Mid ka mid ah baloogyadan ayaa horay loo heli doonaa waxaana loo diri doonaa blockchain, ka dibna, sida waafaqsan qawaaniinta, blockchain waa inuu u beddelaa silsilad dheer oo uu baabi'iyo dhammaan wax kala iibsiga blockchain:

Maxaan dhisi karnaa blockchain?

Isla mar ahaantaana, xaalad ayaa laga yaabaa inay soo baxdo marka macaamilka kaqeybgalaha uu ku jiray kaliya mid ka mid ah fargeetada, kaas oo la joojiyay. Sidaa darteed, si aad u hubiso in macaamilka la rabo uu ku qoran yahay blockchain, waxaa jira talo guud - ka hor inta aanad aamini karin macaamilka, waa inaad sugto ilaa inta soo socota ee soo socota lagu daro blockchain. Talooyin ku saabsan inta baloog ee la sugo blockchain kala duwan way kala duwan yihiin. Tusaale ahaan, shabakadda Bitcoin ugu yaraan waa 2 blocks, ugu badnaan waa 6.

Sawir la mid ah oo leh fargeeto xannibaad ah ayaa la arki doonaa inta lagu jiro waxa loogu yeero 51% weerarka - tani waa marka koox ka mid ah macdan qodayaasha ay isku dayaan inay koraan silsilad kale oo xannibaad ah, iyagoo doonaya inay joojiyaan silsiladda macaamilkooda khiyaanada ah. Inkasta oo wakhtigan xaadirka ah, halkii khiyaamo, ay faa'iido badan tahay inaad ku bixiso awoodaada macdan daacad ah.

Is-afgarad

Si loo duubo xannibaadda blockchain, shabakadu waa inay gaadhaa heshiis la isku raacsan yahay. Aynu xasuusanno hawsha lagu gaarayo is-afgaradka shabakadaha isgaarsiinta kumbuyuutarka. Dhibaatada waxaa loo qaabeeyey sidii hawsha guud ee Byzantine BFT (Dulqaadka cilladda Byzantine). Ka tagista sharraxaadda quruxda badan ee dhibaatooyinka ciidanka Byzantine, dhibaatada waxaa loo qaabayn karaa sida soo socota: sidee bay noodhadhka shabakadu u iman karaan natiijo caadi ah haddii qaar ka mid ah noodhka shabakadaha ay si ula kac ah u qalloocin karaan. Algorithms-yada jira ee lagu xallinayo dhibaatada BFT waxay muujinayaan in shabakadu ay si sax ah u shaqeyn karto haddii ay jiraan wax ka yar 1/3 ee khiyaanada. Waa maxay sababta BFT loogu dabaqi waayay shabakadda Bitcoin? Maxay lagama maarmaan u ahayd in la isticmaalo PoW? Waxaa jira dhowr sababood:

  • BFT waxay si fiican ugu shaqeysaa gogol yar oo qanjidhada go'an ah, laakiin blockchain dadweynaha tirada qanjidhada ayaa ah mid aan la saadaalin karin, sidoo kale, noodhadhka ayaa loo dami karaa loona dami karaa si aan kala sooc lahayn.
  • Waa lagama maarmaan in lagu dhiirigeliyo dadka si ay u bilaabaan blockchain nodes. Si taas loo sameeyo, dadka waa in la abaalmariyo. Gudaha BFT ma jiraan wax si rasmi ah loogu heli karo abaal-marin, laakiin waxa abaalgudka loogu talagalay PoW waa u caddahay qof kasta oo heer dareen leh: koronto uu isticmaalo processor-ku habka lagu helo xashiishka xannibaadda.

Marka lagu daro PoW, waxaa jira dhowr heshiis oo kale oo loo isticmaalo xannibaadaha casriga ah, tusaale ahaan:

  • PoS (Caddaynta-Stake) - on blockchain Hyperledger
  • DPoS (Delegated Proof-of-Stake) - on blockchain BitShares
  • Wax ka beddelka BFT: SBFT (BFT fudud) iyo PBFT (Practical BFT), tusaale ahaan blockchain Exonum

Aan wax yar dul istaagno heshiiska PoS, sababtoo ah... Waa PoS iyo noocyadeeda kuwa ugu badan ee ku baahsan xannibaadaha gaarka ah. Waa maxay sababta qarsoodiga? Dhinaca kale, sifooyinka PoS ayaa ka fiican marka la barbardhigo PoW, sababtoo ah Si loo gaaro heshiis, ilo xisaabeed yar ayaa loo baahan yahay, taas oo macnaheedu yahay xawaaraha qorista xogta blockchain ayaa kordheysa. Laakiin dhanka kale, PoS waxay haysataa fursado badan oo khiyaano ah, sidaa darteed si tan looga takhaluso, dhammaan ka qaybgalayaasha blockchain waa in la yaqaan.

Oggolaanshaha PoS wuxuu ku saleysan yahay xulashada node kaas oo qori kara xannibaad leh macaamil ganacsi blockchain iyadoo kuxiran qaddarka lacagaha ee koontada, ama halkii, ma aha koontada, laakiin dammaanadda, i.e. Inta badan ee aad haysato dammaanad ahaan, waxay u badan tahay in shabakadu ay dooran doonto noodhkaaga si aad u qorto block. Debaajiga dib looma soo celin doono haddii balooggu aanu shaqaynayn. Tani waxay kaa ilaalinaysaa khiyaanada. Waxaa jira kala duwanaanshaha soo socda ee PoS:

  • Heshiiska ergada PoS (DPoS) wuxuu u qaybiyaa ka qaybgalayaasha "codbixiyeyaal" iyo "xaqiijiyeyaal". Kuwa haysta lacagta qadaadiicda (ka qaybgalayaasha codaynta) waxay u wakiisheen awoodooda si ay u xaqiijiyaan una diiwaan galiyaan macaamilka blockchain ka qaybgalayaasha kale. Sidaa darteed, ansaxiyeyaashu waxay qabtaan dhammaan shaqada xisaabinta waxayna helayaan abaal-marin, joogitaanka ka qaybgalayaasha codbixinta waxay dammaanad qaadaysaa daacadnimada ansaxayaasha, sababtoo ah waa la bedeli karaa wakhti kasta.
  • LPoS (Cadaynta-Stake-ka-sharafeed ee la ijaaray) waxay kuu oggolaanaysaa inaad lacagtaada ka kiraysato noodyada kale si ay fursad fiican ugu helaan inay ansixiyaan blocks. Taasi. Waxaad heli kartaa komishanka wax kala iibsiga adiga oo aan ka qaybgalin xaqiijinta macaamilka dhabta ah iyo xannibaadda macdanta.

Waxaa jira tiro kale oo la isku raacsan yahay oo aan weli si ballaaran loo isticmaalin, kaliya waxaan halkan ku liis gareyn doonaa macluumaadka, iyo dulmarka algorithms-ka la isku raacsan yahay laftooda ayaa laga heli karaa, tusaale ahaan, maqaalka: Algorithms Consensus ee Blockchain.

  • Abwaanka (Caddaynta-Waqtiga Dhaafay)
  • PoC (Caddaynta-Awoodda)
  • PoB (Caddaynta-Gubashada)
  • Miisaan La'aanta (Caddaynta-Miisaanka)
  • PoA (caddayn-hawlaha) - PoW + PoS
  • PoI (Caddaynta-Muhiimada)

Isku hallaynta iyo moodooyinka geynta ee blockchains

blockchain dadweynaha

Badbaadinta Dadweynaha ama magac kale blockchain aan ogolaansho lahayn Tan waxaa lagu gaaraa iyada oo u oggolaanaysa qof kasta inuu ku xidho oo eego macluumaadka ama xitaa isku xidho noodhkooda, kalsoonidana waxay ku dhisan tahay heshiis PoW.

Blockchain gaar ah

Private ama blockchain la ogolyahay ee gaarka ah. In blockchain-kan, kaliya koox gaar ah oo ka qaybgalayaasha (ururada ama dadka) ayaa heli kara macluumaadka. blockchain-yada noocan oo kale ah waxaa dhisa ururo leh hadafka ah kordhinta faa'iidada guud ama waxtarka. Kalsoonidooda waxaa lagu hubiyaa ujeedooyinka guud ee ka qaybgalayaasha iyo PoS iyo BFT algorithms isku raacsan.

Blockchain Consortium

Waxaa jira Xiriir ama Blockchain-ka dadweynaha ee la oggol yahay. Kuwani waa blockchains oo qof kastaa ku xidhi karo si uu u daawado, laakiin ka qaybqaataha wuxuu ku dari karaa macluumaadka ama wuxuu isku xiri karaa noodhkiisa kaliya ogolaanshaha ka qaybgalayaasha kale. Blockchain-yada noocan oo kale ah waxaa dhisa ururo si loo kordhiyo kalsoonida macaamiisha ama macaamiisha badeecadaha ama bulshada guud ahaan. Halkan, isku halaynta waxaa sidoo kale lagu gaaraa joogitaanka kalsoonida ka qaybgalayaasha iyo isla PoS iyo algorithms isku raacsanaanta BFT.

Qandaraasyada smart

Blockchains oo la hirgeliyay ka dib Bitcoin waxay leeyihiin, hal shahaado ama mid kale, waxay ku dartay awoodda fulinta qandaraasyada smart. Asal ahaan, qandaraas caqli-gal ah waa macaamil ganacsi kaas oo koodka barnaamijka loo dhigo fulinta. Qandaraasyada casriga ah ee shabakada Ethereum waxaa lagu fuliyaa EVM (Ethereum Virtual Machine). Si loo bilaabo fulinta qandaraas caqli-gal ah, waa in si cad loo bilaabo macaamil kale, ama shuruudaha fulinta waa in la buuxiyaa. Natiijooyinka fulinta qandaraaska smart ayaa sidoo kale lagu qori doonaa blockchain. Helitaanka xogta ka baxsan blockchain waa suurtagal, laakiin aad u xaddidan.

Waa maxay caqli-gal ganacsi oo lagu hirgelin karo iyadoo la adeegsanayo qandaraas caqli-gal ah? Dhab ahaantii, ma jiraan wax badan, tusaale ahaan, hubinta xaaladaha isticmaalka xogta blockchain, bedelida milkiilayaasha hantida dhijitaalka ah ee ku xiran shuruudahan, xogta duubista ee kaydinta joogtada ah ee blockchain. Caqliga waxaa lagu hirgeliyay luuqad heer sare ah oo gaar ah.

Tusaalaha caadiga ah ee shaqeynta ee la fuliyo iyadoo la adeegsanayo qandaraasyo caqli-gal ah ayaa ah soo saarista calaamadaha ICO-yada. Tusaale ahaan, waxaan hirgaliyay qandaraas caqli gal ah si aan u soo saaro 500 AlexToken dhexdhexaad ah. By isku xirka Etherscan wuxuu ku yaalaa

Koodhka isha ee qandaraaska smart ee luqadda Solidity

pragma solidity ^0.4.23;
library SafeMath {
/**
* @dev Multiplies two numbers, throws on overflow.
**/
function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
if (a == 0) {
return 0;
}
c = a * b;
assert(c / a == b);
return c;
}
/**
* @dev Integer division of two numbers, truncating the quotient.
**/
function div(uint256 a, uint256 b) internal pure returns (uint256) {
// assert(b > 0); // Solidity automatically throws when dividing by 0
/**
* @title SafeMath
* @dev Math operations with safety checks that throw on error
*/
// uint256 c = a / b;
// assert(a == b * c + a % b); // There is no case in which this doesn't hold
return a / b;
}
/**
* @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
**/
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
assert(b <= a);
return a - b;
}
/**
* @dev Adds two numbers, throws on overflow.
**/
function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
c = a + b;
assert(c >= a);
return c;
}
}
/**
* @title Ownable
* @dev The Ownable contract has an owner address, and provides basic authorization control
* functions, this simplifies the implementation of "user permissions".
**/
contract Ownable {
address public owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
/**
* @dev The Ownable constructor sets the original `owner` of the contract to the sender account.
**/
constructor() public {
owner = msg.sender;
}
/**
* @dev Throws if called by any account other than the owner.
**/
modifier onlyOwner() {
require(msg.sender == owner);
_;
}
/**
* @dev Allows the current owner to transfer control of the contract to a newOwner.
* @param newOwner The address to transfer ownership to.
**/
function transferOwnership(address newOwner) public onlyOwner {
require(newOwner != address(0));
emit OwnershipTransferred(owner, newOwner);
owner = newOwner;
}
}
/**
* @title ERC20Basic interface
* @dev Basic ERC20 interface
**/
contract ERC20Basic {
function totalSupply() public view returns (uint256);
function balanceOf(address who) public view returns (uint256);
function transfer(address to, uint256 value) public returns (bool);
event Transfer(address indexed from, address indexed to, uint256 value);
}
/**
* @title ERC20 interface
* @dev see https://github.com/ethereum/EIPs/issues/20
**/
contract ERC20 is ERC20Basic {
function allowance(address owner, address spender) public view returns (uint256);
function transferFrom(address from, address to, uint256 value) public returns (bool);
function approve(address spender, uint256 value) public returns (bool);
event Approval(address indexed owner, address indexed spender, uint256 value);
}
/**
* @title Basic token
* @dev Basic version of StandardToken, with no allowances.
**/
contract BasicToken is ERC20Basic {
using SafeMath for uint256;
mapping(address => uint256) balances;
uint256 totalSupply_;
/**
* @dev total number of tokens in existence
**/
function totalSupply() public view returns (uint256) {
return totalSupply_;
}
/**
* @dev transfer token for a specified address
* @param _to The address to transfer to.
* @param _value The amount to be transferred.
**/
function transfer(address _to, uint256 _value) public returns (bool) {
require(_to != address(0));
require(_value <= balances[msg.sender]);
balances[msg.sender] = balances[msg.sender].sub(_value);
balances[_to] = balances[_to].add(_value);
emit Transfer(msg.sender, _to, _value);
return true;
}
/**
* @dev Gets the balance of the specified address.
* @param _owner The address to query the the balance of.
* @return An uint256 representing the amount owned by the passed address.
**/
function balanceOf(address _owner) public view returns (uint256) {
return balances[_owner];
}
}
contract StandardToken is ERC20, BasicToken {
mapping (address => mapping (address => uint256)) internal allowed;
/**
* @dev Transfer tokens from one address to another
* @param _from address The address which you want to send tokens from
* @param _to address The address which you want to transfer to
* @param _value uint256 the amount of tokens to be transferred
**/
function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
require(_to != address(0));
require(_value <= balances[_from]);
require(_value <= allowed[_from][msg.sender]);
balances[_from] = balances[_from].sub(_value);
balances[_to] = balances[_to].add(_value);
allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
emit Transfer(_from, _to, _value);
return true;
}
/**
* @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
*
* Beware that changing an allowance with this method brings the risk that someone may use both the old
* and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this
* race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:
* https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
* @param _spender The address which will spend the funds.
* @param _value The amount of tokens to be spent.
**/
function approve(address _spender, uint256 _value) public returns (bool) {
allowed[msg.sender][_spender] = _value;
emit Approval(msg.sender, _spender, _value);
return true;
}
/**
* @dev Function to check the amount of tokens that an owner allowed to a spender.
* @param _owner address The address which owns the funds.
* @param _spender address The address which will spend the funds.
* @return A uint256 specifying the amount of tokens still available for the spender.
**/
function allowance(address _owner, address _spender) public view returns (uint256) {
return allowed[_owner][_spender];
}
/**
* @dev Increase the amount of tokens that an owner allowed to a spender.
*
* approve should be called when allowed[_spender] == 0. To increment
* allowed value is better to use this function to avoid 2 calls (and wait until
* the first transaction is mined)
* From MonolithDAO Token.sol
* @param _spender The address which will spend the funds.
* @param _addedValue The amount of tokens to increase the allowance by.
**/
function increaseApproval(address _spender, uint _addedValue) public returns (bool) {
allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
/**
* @dev Decrease the amount of tokens that an owner allowed to a spender.
*
* approve should be called when allowed[_spender] == 0. To decrement
* allowed value is better to use this function to avoid 2 calls (and wait until
* the first transaction is mined)
* From MonolithDAO Token.sol
* @param _spender The address which will spend the funds.
* @param _subtractedValue The amount of tokens to decrease the allowance by.
**/
function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
uint oldValue = allowed[msg.sender][_spender];
if (_subtractedValue > oldValue) {
allowed[msg.sender][_spender] = 0;
} else {
allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
}
emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
}
/**
* @title Configurable
* @dev Configurable varriables of the contract
**/
contract Configurable {
uint256 public constant cap = 1000000000*10**18;
uint256 public constant basePrice = 100*10**18; // tokens per 1 ether
uint256 public tokensSold = 0;
uint256 public constant tokenReserve = 500000000*10**18;
uint256 public remainingTokens = 0;
}
/**
* @title CrowdsaleToken 
* @dev Contract to preform crowd sale with token
**/
contract CrowdsaleToken is StandardToken, Configurable, Ownable {
/**
* @dev enum of current crowd sale state
**/
enum Stages {
none,
icoStart, 
icoEnd
}
Stages currentStage;
/**
* @dev constructor of CrowdsaleToken
**/
constructor() public {
currentStage = Stages.none;
balances[owner] = balances[owner].add(tokenReserve);
totalSupply_ = totalSupply_.add(tokenReserve);
remainingTokens = cap;
emit Transfer(address(this), owner, tokenReserve);
}
/**
* @dev fallback function to send ether to for Crowd sale
**/
function () public payable {
require(currentStage == Stages.icoStart);
require(msg.value > 0);
require(remainingTokens > 0);
uint256 weiAmount = msg.value; // Calculate tokens to sell
uint256 tokens = weiAmount.mul(basePrice).div(1 ether);
uint256 returnWei = 0;
if(tokensSold.add(tokens) > cap){
uint256 newTokens = cap.sub(tokensSold);
uint256 newWei = newTokens.div(basePrice).mul(1 ether);
returnWei = weiAmount.sub(newWei);
weiAmount = newWei;
tokens = newTokens;
}
tokensSold = tokensSold.add(tokens); // Increment raised amount
remainingTokens = cap.sub(tokensSold);
if(returnWei > 0){
msg.sender.transfer(returnWei);
emit Transfer(address(this), msg.sender, returnWei);
}
balances[msg.sender] = balances[msg.sender].add(tokens);
emit Transfer(address(this), msg.sender, tokens);
totalSupply_ = totalSupply_.add(tokens);
owner.transfer(weiAmount);// Send money to owner
}
/**
* @dev startIco starts the public ICO
**/
function startIco() public onlyOwner {
require(currentStage != Stages.icoEnd);
currentStage = Stages.icoStart;
}
/**
* @dev endIco closes down the ICO 
**/
function endIco() internal {
currentStage = Stages.icoEnd;
// Transfer any remaining tokens
if(remainingTokens > 0)
balances[owner] = balances[owner].add(remainingTokens);
// transfer any remaining ETH balance in the contract to the owner
owner.transfer(address(this).balance); 
}
/**
* @dev finalizeIco closes down the ICO and sets needed varriables
**/
function finalizeIco() public onlyOwner {
require(currentStage != Stages.icoEnd);
endIco();
}
}
/**
* @title LavevelToken 
* @dev Contract to create the Lavevel Token
**/
contract AlexToken is CrowdsaleToken {
string public constant name = "AlexToken";
string public constant symbol = "ALT";
uint32 public constant decimals = 18;
}

iyo matalaadda binary sida shabakadu u aragto

60806040526000600355600060045533600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600560146101000a81548160ff021916908360028111156200006f57fe5b0217905550620001036b019d971e4fe8401e74000000600080600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200024a6401000000000262000b1d179091906401000000009004565b600080600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620001986b019d971e4fe8401e740000006001546200024a6401000000000262000b1d179091906401000000009004565b6001819055506b033b2e3c9fd0803ce8000000600481905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6b019d971e4fe8401e740000006040518082815260200191505060405180910390a362000267565b600081830190508281101515156200025e57fe5b80905092915050565b611cb880620002776000396000f300608060405260043610610112576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146104c7578063095ea7b31461055757806318160ddd146105bc57806323b872dd146105e7578063313ce5671461066c578063355274ea146106a3578063518ab2a8146106ce57806366188463146106f957806370a082311461075e57806389311e6f146107b55780638da5cb5b146107cc578063903a3ef61461082357806395d89b411461083a578063a9059cbb146108ca578063bf5839031461092f578063c7876ea41461095a578063cbcb317114610985578063d73dd623146109b0578063dd62ed3e14610a15578063f2fde38b14610a8c575b60008060008060006001600281111561012757fe5b600560149054906101000a900460ff16600281111561014257fe5b14151561014e57600080fd5b60003411151561015d57600080fd5b600060045411151561016e57600080fd5b3494506101a7670de0b6b3a764000061019968056bc75e2d6310000088610acf90919063ffffffff16565b610b0790919063ffffffff16565b9350600092506b033b2e3c9fd0803ce80000006101cf85600354610b1d90919063ffffffff16565b111561024c576101f66003546b033b2e3c9fd0803ce8000000610b3990919063ffffffff16565b915061022e670de0b6b3a764000061022068056bc75e2d6310000085610b0790919063ffffffff16565b610acf90919063ffffffff16565b90506102438186610b3990919063ffffffff16565b92508094508193505b61026184600354610b1d90919063ffffffff16565b6003819055506102886003546b033b2e3c9fd0803ce8000000610b3990919063ffffffff16565b6004819055506000831115610344573373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f193505050501580156102dd573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a35b610395846000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b1d90919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a361045184600154610b1d90919063ffffffff16565b600181905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc869081150290604051600060405180830381858888f193505050501580156104bf573d6000803e3d6000fd5b505050505050005b3480156104d357600080fd5b506104dc610b52565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561051c578082015181840152602081019050610501565b50505050905090810190601f1680156105495780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561056357600080fd5b506105a2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b8b565b604051808215151515815260200191505060405180910390f35b3480156105c857600080fd5b506105d1610c7d565b6040518082815260200191505060405180910390f35b3480156105f357600080fd5b50610652600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c87565b604051808215151515815260200191505060405180910390f35b34801561067857600080fd5b50610681611041565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b3480156106af57600080fd5b506106b8611046565b6040518082815260200191505060405180910390f35b3480156106da57600080fd5b506106e3611056565b6040518082815260200191505060405180910390f35b34801561070557600080fd5b50610744600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061105c565b604051808215151515815260200191505060405180910390f35b34801561076a57600080fd5b5061079f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112ed565b6040518082815260200191505060405180910390f35b3480156107c157600080fd5b506107ca611335565b005b3480156107d857600080fd5b506107e16113eb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561082f57600080fd5b50610838611411565b005b34801561084657600080fd5b5061084f6114ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561088f578082015181840152602081019050610874565b50505050905090810190601f1680156108bc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156108d657600080fd5b50610915600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506114e4565b604051808215151515815260200191505060405180910390f35b34801561093b57600080fd5b50610944611703565b6040518082815260200191505060405180910390f35b34801561096657600080fd5b5061096f611709565b6040518082815260200191505060405180910390f35b34801561099157600080fd5b5061099a611716565b6040518082815260200191505060405180910390f35b3480156109bc57600080fd5b506109fb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611726565b604051808215151515815260200191505060405180910390f35b348015610a2157600080fd5b50610a76600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611922565b6040518082815260200191505060405180910390f35b348015610a9857600080fd5b50610acd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119a9565b005b600080831415610ae25760009050610b01565b8183029050818382811515610af357fe5b04141515610afd57fe5b8090505b92915050565b60008183811515610b1457fe5b04905092915050565b60008183019050828110151515610b3057fe5b80905092915050565b6000828211151515610b4757fe5b818303905092915050565b6040805190810160405280600981526020017f416c6578546f6b656e000000000000000000000000000000000000000000000081525081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600154905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610cc457600080fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610d1157600080fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610d9c57600080fd5b610ded826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b3990919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e80826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b1d90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610f5182600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b3990919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b601281565b6b033b2e3c9fd0803ce800000081565b60035481565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083111561116d576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611201565b6111808382610b3990919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561139157600080fd5b60028081111561139d57fe5b600560149054906101000a900460ff1660028111156113b857fe5b141515156113c557600080fd5b6001600560146101000a81548160ff021916908360028111156113e457fe5b0217905550565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561146d57600080fd5b60028081111561147957fe5b600560149054906101000a900460ff16600281111561149457fe5b141515156114a157600080fd5b6114a9611b01565b565b6040805190810160405280600381526020017f414c54000000000000000000000000000000000000000000000000000000000081525081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561152157600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561156e57600080fd5b6115bf826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b3990919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611652826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b1d90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60045481565b68056bc75e2d6310000081565b6b019d971e4fe8401e7400000081565b60006117b782600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b1d90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a0557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611a4157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6002600560146101000a81548160ff02191690836002811115611b2057fe5b021790555060006004541115611c0a57611ba5600454600080600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b1d90919063ffffffff16565b600080600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050158015611c89573d6000803e3d6000fd5b505600a165627a7a723058205bbef016cc7699572f944871cb6f05e69915ada3a92a1d9f03a3fb434aac0c2b0029

Faahfaahin dheeraad ah oo ku saabsan qandaraasyada caqliga leh ayaa laga heli karaa maqaalka: Waa maxay qandaraasyada smart ee Ethereum.

gunaanad

Waxaan taxnay tignoolajiyada ay ku dhisan yihiin blockchains casriga ah iyo sida ay isugu xidhan yihiin. Hadda aan dejino dhibaatooyinka lagu xallin karo iyadoo la adeegsanayo blockchain, iyo xalalkee ayaa noqon doona, sida ugu fiican, aan waxtar lahayn. Marka, isticmaalka blockchain looma baahna haddii:

  • Macaamilada waxaa lagu fuliyaa deegaan la aamini karo;
  • Joogitaanka guddi dhexdhexaadin ah kama xumeynayo nolosha ka qaybgalayaasha;
  • Ka qaybgalayaashu ma haystaan ​​hanti lagu matali karo hanti dijital ah;
  • Ma jirto qaybinta hantida dhijitaalka ah, i.e. qiimaha waxaa leh ama keenay hal kaqeybgale oo kaliya.

Muxuu mustaqbalka u hayaa blockchain? Hadda waxaan qiyaasi karnaa oo keliya hababka suurtagalka ah ee horumarinta tignoolajiyada blockchain:

  • Blockchain waxay noqon doontaa tignoolajiyada xogta caadiga ah ee caadiga ah sida, tusaale ahaan, SQL ama NoSQL si loo xalliyo dhibaatooyinkeeda gaarka ah;
  • Blockchain waxay noqon doontaa borotokool baahsan, sida HTTP loogu talagalay internetka;
  • Blockchain waxay noqon doontaa aasaaska nidaam maaliyadeed iyo siyaasadeed oo cusub ee meeraha!

Qaybta soo socota waxaan eegi doonaa waxa blockchain hadda jira iyo sababta loogu isticmaalo warshadaha kala duwan.

Tani waa bilow uun!

Source: www.habr.com

Add a comment