Ny boky "Creating Solidity smart contracts for the Ethereum blockchain. Torolàlana azo ampiharina"

Ny boky "Creating Solidity smart contracts for the Ethereum blockchain. Torolàlana azo ampiharina"
Nandritra ny herintaona mahery aho dia niasa tamin'ny boky "Mamorona fifanarahana Smart Solidity ho an'ny Ethereum Blockchain. Guide Practical", ary izao dia vita io asa io, ary ny boky navoaka ary azo jerena amin'ny Litera.

Manantena aho fa hanampy anao haingana amin'ny famoronana Solidity smart contacts ny bokiko ary mizara DApps ho an'ny blockchain Ethereum. Misy lesona 12 miaraka amin'ny asa azo ampiharina. Rehefa vita izany, ny mpamaky dia afaka mamorona ny node Ethereum eo an-toerana manokana, mamoaka fifanarahana marani-tsaina ary miantso ny fomba fiasany, mifanakalo angon-drakitra eo amin'ny tontolo tena izy sy ny fifanarahana marani-tsaina mampiasa oracles, ary miara-miasa amin'ny tambajotra debug test Rinkeby.

Ny boky dia natokana ho an'izay liana amin'ny teknolojia avo lenta amin'ny sehatry ny blockchain ary te hahazo fahalalana haingana izay ahafahan'izy ireo mirotsaka amin'ny asa mahaliana sy mampanantena.

Ho hitanao eto ambany ny lisitry ny atiny sy ny toko voalohany amin'ny boky (ao amin'ny Litres misy ampahany amin'ny boky). Manantena aho fa hahazo valiny, fanehoan-kevitra ary soso-kevitra. Hiezaka ny handray izany rehetra izany aho rehefa manomana ny fanontana manaraka ny boky.

Lohahevitra misyfampidiranaNy bokintsika dia natao ho an'ireo izay te-hahatakatra ny fitsipiky ny blockchain Ethereum, fa koa ny hahazo fahaiza-manao azo ampiharina amin'ny famoronana DApps mizara amin'ny fiteny fandaharana Solidity ho an'ity tambajotra ity.

Tsara kokoa tsy ny mamaky ity boky ity fotsiny, fa ny miasa miaraka aminy, manatanteraka asa azo ampiharina voalaza ao amin'ny lesona. Mba hiasa dia mila solosaina eo an-toerana ianao, mpizara virtoaly na rahona misy Debian na Ubuntu OS napetraka. Azonao atao koa ny mampiasa Raspberry Pi hanaovana asa maro.

Tamin'ny lesona voalohany Hojerentsika ny fitsipiky ny fiasan'ny blockchain Ethereum sy ny teny fototra, ary hiresaka momba ny toerana azo ampiasaina ity sakana ity.

tanjona lesona faharoa — mamorona node blockchain Ethereum manokana ho an'ny asa fanampiny ao anatin'ity taranja ity amin'ny mpizara Ubuntu sy Debian. Hojerentsika ny endri-javatra amin'ny fametrahana kojakoja fototra, toy ny geth, izay miantoka ny fiasan'ny node blockchain, ary koa ny daemon fitehirizana angon-drakitra.

Lesona fahatelo dia hampianatra anao ny fomba fanandramana amin'ny Ethereum amin'ny microcomputer Raspberry Pi tsy lafo. Hametraka ny rafitra fandidiana (OS) Rasberian ianao amin'ny Raspberry Pi, ny fitaovana Geth izay mampandeha ny node blockchain, ary ny daemon fitehirizana angon-drakitra Swarm.

Lesona fahefatra dia natokana ho an'ny kaonty sy vondrona cryptocurrency ao amin'ny tambajotra Ethereum, ary koa ny fomba famindrana vola avy amin'ny kaonty iray mankany amin'ny iray hafa avy amin'ny console Geth. Hianatra ny fomba hamoronana kaonty ianao, hanombohana ny fifampiraharahana amin'ny famindrana vola, ary hahazoana ny sata momba ny varotra sy ny fandraisana.

Ao amin’ny lesona fahadimy Hahafantatra ny fifanarahana marani-tsaina amin'ny tambajotra Ethereum ianao ary hianatra momba ny famonoana azy ireo amin'ny alàlan'ny milina virtoaly Ethereum.

Hamorona sy hamoaka ny fifanarahana marani-tsaina voalohany amin'ny tambajotra tsy miankina Ethereum ianao ary hianatra ny fomba hiantsoana ny asany. Mba hanaovana izany, dia hampiasa ny Remix Solidity IDE ianao. Hianatra ny fomba fametrahana sy fampiasana ny solc batch compiler ianao.
Hiresaka momba ilay antsoina hoe Application Binary Interface (ABI) ihany koa isika ary hampianatra anao ny fomba fampiasana azy.

Lesona fahenina dia natokana hamorona script JavaScript mihazakazaka Node.js sy manao asa miaraka amin'ny Solidity smart contracts.

Hametraka Node.js amin'ny Ubuntu, Debian ary Rasberian OS ianao, manoratra script hamoahana fifanarahana marani-tsaina amin'ny tambajotra eo an-toerana Ethereum ary hiantso ny asany.

Ho fanampin'izay, hianatra ny fomba handefasana vola eo amin'ny kaonty mahazatra amin'ny alàlan'ny script ianao, ary hanome azy ireo amin'ny kaonty fifanarahana marani-tsaina.

Ao amin’ny lesona fahafito Hianatra ny fomba fametrahana sy fampiasana ny rafitra Truffle ianao, malaza amin'ireo mpamorona fifanarahana smart Solidity. Hianatra ny fomba hamoronana script JavaScript izay miantso ny asa fifanarahana amin'ny alàlan'ny môdely truffle-contract ianao, ary hizaha toetra ny fifanarahana marani-tsainao amin'ny Truffle.

Lesona fahavalo natokana ho an'ny karazana data Solidity. Hanoratra fifanarahana marani-tsaina ianao izay miasa miaraka amin'ireo karazana angona toy ny isa voasonia sy tsy misy sonia, isa voasonia, tady, adiresy, fari-pahalalana be pitsiny, laharana, fanisana, rafitra ary rakibolana.

Ao amin'ny lesona fahasivy Ho dingana iray akaiky kokoa ianao amin'ny famoronana fifanarahana marani-tsaina ho an'ny mainnet Ethereum. Hianatra ny fomba famoahana fifanarahana amin'ny fampiasana Truffle amin'ny tambajotra tsy miankina Geth ianao, ary koa amin'ny testnet Rinkeby. Tena ilaina ny debug fifanarahana marani-tsaina ao amin'ny tambajotra Rinkeby alohan'ny hamoahana azy amin'ny tambajotra lehibe - saika ny zava-drehetra dia tena misy, fa maimaim-poana.

Ao anatin'ny lesona dia hamorona node tambajotra fitsapana Rinkeby ianao, hamatsy vola izany ary hamoaka fifanarahana hendry.

Lesona 10 natokana ho an'ny fitahirizana angon-drakitra fizarana Ethereum Swarm. Amin'ny alàlan'ny fampiasana fitehirizana voazara, dia mitahiry tahiry betsaka amin'ny blockchain Ethereum ianao.

Amin'ity lesona ity dia hamorona fitahirizana Swarm eo an-toerana ianao, manoratra sy mamaky asa amin'ny rakitra ary ny lahatahiry rakitra. Avy eo, hianatra ny fomba fiasa miaraka amin'ny vavahadin'ny Swarm ho an'ny daholobe ianao, manoratra script hidirana amin'ny Swarm avy amin'ny Node.js, ary koa ny fampiasana ny Module Perl Net:: Ethereum:: Swarm.

Tanjon’ny lesona 11 — master miasa amin'ny Solidity smart contracts mampiasa ny fiteny fandaharana Python malaza sy ny rafitra Web3.py. Hametraka ny rafitra ianao, hanoratra script mba hanangonana sy hamoahana ny fifanarahana marani-tsaina, ary hiantso ny asany. Amin'ity tranga ity, Web3.py dia ho ampiasaina ho azy irery ary miaraka amin'ny tontolo fampandrosoana mitambatra Truffle.

Ao amin’ny lesona 12 ianao dia hianatra ny hamindra angona eo amin'ny smart fifanarahana sy ny tena tontolo mampiasa oracles. Hahasoa anao izany raha mandray angona avy amin'ny tranokala, fitaovana IoT, fitaovana sy sensor isan-karazany, ary mandefa angona avy amin'ny fifanarahana marani-tsaina mankany amin'ireo fitaovana ireo. Amin'ny ampahany azo ampiharina amin'ny lesona dia hamorona oracle sy fifanarahana marani-tsaina ianao izay mandray ny tahan'ny fifanakalozana ankehitriny eo anelanelan'ny USD sy rubles avy amin'ny tranokalan'ny Banky Foiben'ny Federasiona Rosiana.

Lesona 1. Fohy momba ny blockchain sy ny tambajotra EthereumNy tanjon'ny lesona: fantaro ny fitsipiky ny fiasan'ny blockchain Ethereum, ny sehatra fampiharana azy ary ny teny fototra.
Asa azo ampiharina: tsy tafiditra amin’ity lesona ity.

Zara raha misy mpamorona rindrambaiko ankehitriny izay tsy naheno na inona na inona momba ny teknolojia blockchain (Blockchain), cryptocurrencies (Cryptocurrency na Crypto Currency), Bitcoin (Bitcoin), fanolorana vola voalohany (ICO, fanolorana vola voalohany), fifanarahana marani-tsaina (Smart Contract), ary koa ireo hevitra sy teny hafa mifandraika amin'ny blockchain.

Ny teknolojia Blockchain dia manokatra tsena vaovao ary mamorona asa ho an'ny mpandrindra. Raha azonao ny pitsopitsony rehetra amin'ny teknolojia cryptocurrency sy ny teknolojia fifanarahana marani-tsaina, dia tsy tokony hanana olana amin'ny fampiharana io fahalalana io amin'ny fampiharana ianao.

Tsy maintsy lazaina fa be dia be ny fanombantombanana manodidina ny cryptocurrencies sy ny blockchains. Hamela ny fifanakalozan-kevitra momba ny fiovan'ny tahan'ny cryptocurrency, ny famoronana piramida, ny saro-pady amin'ny lalàna cryptocurrency, sns. Ao amin'ny taranja fanofanana dia hifantoka indrindra amin'ny lafiny ara-teknika amin'ny fampiharana ny fifanarahana marani-tsaina amin'ny Ethereum blockchain (Ethereum, Ether) sy ny fampivoarana ireo antsoina hoe fampiharana decentralisé (Distributed Application, DApp).

Inona no atao hoe blockchain

Blockchain (Block Chain) dia rojo bloc data mifandray amin'ny fomba iray. Eo am-piandohan'ny rojo dia misy ny bloc voalohany, izay antsoina hoe bloc voalohany (Genesis block) na genesis block. Manaraka izany ny faharoa, avy eo ny fahatelo sy ny manaraka.

Ireo sakana data rehetra ireo dia adika ho azy amin'ny node maro amin'ny tambajotra blockchain. Izany dia miantoka ny fitehirizana ny angon-drakitra blockchain.
Azonao atao ny mieritreritra ny rafitra blockchain ho toy ny nodes marobe (server ara-batana na virtoaly) mifandray amin'ny tambajotra iray ary mamerina ny fanovana rehetra ao amin'ny rojo sakana data. Toy ny solosaina goavam-be maromaro izy io, ary ny node amin'ny solosaina (server) toy izany dia afaka miparitaka eran'izao tontolo izao. Ary azonao atao koa ny manampy ny solosainao amin'ny tambajotra blockchain.

angon-drakitra voazara

Ny blockchain dia azo raisina ho toy ny angon-drakitra voazara izay averina amin'ny node rehetra amin'ny tambajotra blockchain. Amin'ny teoria, ny blockchain dia hiasa raha mbola misy node iray farafahakeliny miasa, mitahiry ny sakana rehetra amin'ny blockchain.

Rejistra data voazara

Ny Blockchain dia azo heverina ho toy ny mpizara angon-drakitra sy ny asa (transactions). Anarana iray hafa ho an'ny rejisitra toy izany dia ledger.

Ny angon-drakitra dia azo ampiana amin'ny bokikely zaraina, saingy tsy azo ovaina na fafana izany. Ity tsy fahafaha-manao ity dia tratra, indrindra indrindra, amin'ny fampiasana algorithm kriptografika, algorithm manokana amin'ny fampidirana sakana amin'ny rojo sy fitehirizana angon-drakitra.

Rehefa manampy sakana sy manao asa (transactions) dia ampiasaina ny fanalahidy manokana sy ho an'ny daholobe. Mametra ny mpampiasa blockchain izy ireo amin'ny alàlan'ny fanomezana azy ireo fotsiny ny fidirana amin'ny angon-drakitra manokana.

varotra

Blockchain dia mitahiry vaovao momba ny asa (transactions) amin'ny sakana. Amin'izay fotoana izay ihany, tsy azo averina na ovaina ny fifampiraharahana taloha efa vita. Ny fifampiraharahana vaovao dia voatahiry ao anaty blocs vaovao fanampiny.

Amin'izany fomba izany, ny tantaran'ny fifanakalozana rehetra dia azo voarakitra tsy miova amin'ny blockchain. Noho izany, ny blockchain dia azo ampiasaina, ohatra, mba hitahiry ny fifampiraharahana amin'ny banky, ny fampahalalana momba ny zon'ny mpamorona, ny tantaran'ny fiovan'ny tompona trano, sns.

Ny blockchain Ethereum dia misy ireo antsoina hoe fanjakana rafitra. Rehefa vita ny fifampiraharahana dia miova ny fanjakana avy amin'ny fanjakana voalohany mankany amin'ny fanjakana ankehitriny. Voarakitra anaty bloc ny fifampiraharahana.

Blockchain ho an'ny daholobe sy tsy miankina

Marihina eto fa ny zava-drehetra voalaza dia marina ihany ho an'ireo antsoina hoe tambajotra blockchain, izay tsy azo fehezin'ny olon-tsotra na fikambanana ara-dalàna, sampan-draharaham-panjakana na governemanta.
Ny antsoina hoe tambajotra blockchain tsy miankina dia eo ambany fifehezan'ny mpamorona azy, ary azo atao ny zavatra rehetra, ohatra, fanoloana tanteraka ny bloc rehetra amin'ny rojo.

Fampiharana azo ampiharina amin'ny blockchain

Inona no mety hahasoa ny blockchain?

Raha fintinina, ny blockchain dia ahafahanao manao fifampiraharahana (transactions) amin'ny olona na orinasa tsy mifampatoky. Ny angon-drakitra voarakitra ao amin'ny blockchain (fifandraisana, angon-drakitra manokana, antontan-taratasy, taratasy fanamarinana, fifanarahana, faktiora, sns.) dia tsy azo hosoka na soloina aorian'ny firaketana. Noho izany, mifototra amin'ny blockchain, dia azo atao ny mamorona, ohatra, rejistra azo itokisana amin'ny karazana antontan-taratasy isan-karazany.

Mazava ho azy fa fantatrao fa ny rafitra cryptocurrency dia noforonina mifototra amin'ny blockchains, natao hanoloana ny vola taratasy tsotra. Ny vola taratasy dia antsoina koa hoe fiat (avy amin'ny Fiat Money).
Ny Blockchain dia miantoka ny fitahirizana sy ny tsy fiovaovan'ny fifanakalozana voarakitra ao anaty sakana, ka izany no antony azo ampiasaina hamoronana rafitra cryptocurrency. Izy io dia mirakitra ny tantara manontolo momba ny famindrana vola crypto eo amin'ireo mpampiasa samihafa (kaonty), ary azo arahana ny fandidiana rehetra.

Na dia mety tsy mitonona anarana aza ny fifampiraharahana ao anatin'ny rafitra cryptocurrency, ny fanesorana ny kriptocurrency sy ny fanoloana azy amin'ny vola fiat dia matetika miteraka fampahafantarana ny mombamomba ny tompon'ny fananana cryptocurrency.

Ny antsoina hoe fifanarahana marani-tsaina, izay rindrambaiko mandeha amin'ny tambajotra Ethereum, dia ahafahanao manara-maso ny fizotran'ny fifampiraharahana sy ny fanaraha-maso ny fampiharana azy. Tena mandaitra izany raha toa ny fandoavam-bola amin'ny fifanakalozana dia atao amin'ny alàlan'ny cryptocurrency Ether.

Ny fifanarahana smart Ethereum blockchain sy Ethereum voasoratra amin'ny fiteny fandaharana Solidity dia azo ampiasaina, ohatra, amin'ireto faritra manaraka ireto:

  • safidy ho an'ny fanaterana ny antontan-taratasy;
  • fitehirizana ny rejisitry ny fananana trano sy ny fampahalalana momba ny fifampiraharahana amin'ny fananana fananana;
  • fitehirizana fampahalalana momba ny zon'ny mpamorona momba ny fananana ara-tsaina (boky, sary, sangan'asa mozika, sns.);
  • fananganana rafitra fifidianana mahaleo tena;
  • ara-bola sy banky;
  • logistics amin'ny sehatra iraisam-pirenena, fanaraha-maso ny fivezivezen'ny entana;
  • fitehirizana angon-drakitra manokana ho analogue amin'ny rafitra kara-panondro;
  • fifampiraharahana azo antoka eo amin'ny sehatry ny varotra;
  • fitehirizana ny vokatry ny fizahana ara-pitsaboana, ary koa ny tantaran`ny fomba voalaza

Olana amin'ny blockchain

Saingy, mazava ho azy, tsy ny zava-drehetra dia tsotra araka ny mety ho hita!

Misy olana amin'ny fanamarinana ny angon-drakitra alohan'ny hampidirana azy amin'ny blockchain (ohatra, sandoka ve izy ireo?), olana amin'ny fiarovana ny rafitra sy rindrambaiko fampiharana ampiasaina amin'ny fiasana amin'ny blockchain, olana amin'ny mety hampiasana fomba ara-teknika ara-tsosialy mba hangalatra ny fidirana. amin'ny poketra cryptocurrency, sns. .P.

Indray mandeha, raha tsy miresaka momba ny blockchain ho an'ny daholobe isika, izay miparitaka manerana izao tontolo izao ny node, fa momba ny blockchain manokana an'ny olona na fikambanana iray, dia tsy ho ambony noho ny haavon'ny fahatokisana ny haavon'ny fahatokisana eto. amin'ity olona ity na ity fikambanana ity.

Tokony ho raisina ihany koa fa ny angon-drakitra voarakitra ao amin'ny blockchain dia azon'ny rehetra atao. Amin'io lafiny io, ny blockchain (indrindra ho an'ny daholobe) dia tsy mety amin'ny fitehirizana vaovao tsiambaratelo. Na izany aza, ny zava-misy fa tsy azo ovaina ny fampahalalana momba ny blockchain dia afaka manampy amin'ny fisorohana na fanadihadiana ireo karazana hetsika hosoka.

Ny rindranasa ivondronan'ny Ethereum dia ho mety raha mandoa vola amin'ny fampiasana azy amin'ny cryptocurrency ianao. Arakaraka ny mahabetsaka ny olona manana cryptocurrency na vonona ny hividy izany, dia ho lasa malaza kokoa ny DApps sy ny fifanarahana marani-tsaina.

Ny olana mahazatra amin'ny blockchain izay manakana ny fampiharana azy dia ny hafainganam-pandeha voafetra izay azo ampiana sakana vaovao sy ny vidin'ny fifanakalozana. Saingy ny teknolojia amin'ity sehatra ity dia mivoatra mavitrika, ary misy ny fanantenana fa ho voavaha ny olana ara-teknika rehefa mandeha ny fotoana.

Ny olana iray hafa dia ny fifanarahana marani-tsaina amin'ny blockchain Ethereum dia miasa amin'ny tontolo mitoka-monina amin'ny milina virtoaly, ary tsy mahazo miditra amin'ny angon-drakitra tena izy. Indrindra indrindra, tsy afaka mamaky angon-drakitra avy amin'ny tranokala na fitaovana ara-batana (sensor, contact, sns.), ny programa fifanarahana marani-tsaina, ary tsy afaka mamoaka angona amin'ny fitaovana ivelany. Hiresaka momba ity olana ity sy ny fomba hamahana izany isika ao amin'ny lesona natokana ho an'ny antsoina hoe Oracles - mpanelanelana amin'ny fampahalalam-baovao amin'ny fifanarahana marani-tsaina.

Misy ihany koa ny fameperana ara-dalàna. Any amin'ny firenena sasany, ohatra, dia voarara ny mampiasa cryptocurrency ho fitaovana fandoavam-bola, saingy azonao atao ny manana izany ho karazana fananana nomerika, toy ny antoka. Ny fananana toy izany dia azo vidiana sy amidy amin'ny fifanakalozana. Na izany na tsy izany, rehefa mamorona tetikasa izay miasa amin'ny cryptocurrencies ianao dia mila mahafantatra ny lalànan'ny firenena eo ambany fahefan'ny tetikasanao.

Ahoana ny fananganana rojo blockchain

Araka ny efa voalazanay, blockchain dia rojo tsotsotra amin'ny sakana data. Voalohany, miforona ny sakana voalohany amin'ity rojo ity, avy eo dia ampiana ny faharoa, sy ny sisa. Ny angon-drakitra momba ny fifampiraharahana dia heverina ho voatahiry ao anaty sakana, ary ampiana amin'ny sakana farany indrindra.

Ao amin'ny Fig. 1.1 dia nasehonay ny dikan-teny tsotra indrindra amin'ny filaharan'ireo sakana, izay ny sakana voalohany dia manondro ny manaraka.

Ny boky "Creating Solidity smart contracts for the Ethereum blockchain. Torolàlana azo ampiharina"
vary. 1.1. Filaharana tsotra amin'ny sakana

Amin'ny alalan'io safidy io, na izany aza, dia tena mora ny manodinkodina ny ao anatin'ny sakana rehetra ao amin'ny rojo, satria ny sakana dia tsy misy fampahalalana mba hiarovana amin'ny fiovana. Raha jerena fa ny sakana dia natao hampiasain'ny olona sy orinasa izay tsy misy fitokisana, dia azontsika atao ny manatsoaka hevitra fa ity fomba fitahirizana angon-drakitra ity dia tsy mety amin'ny sakana.

Andeha isika hanomboka hiaro ny sakana amin'ny hosoka. Amin'ny dingana voalohany dia hiezaka ny hiaro ny sakana tsirairay amin'ny checksum (sary 1.2) isika.

Ny boky "Creating Solidity smart contracts for the Ethereum blockchain. Torolàlana azo ampiharina"
vary. 1.2. Fanampiana fiarovana ho an'ireo sakana ireo miaraka amin'ny checksum

Amin'izao fotoana izao, ny mpanafika dia tsy afaka manova tsotra izao ny sakana, satria misy ny checksum ny angona sakana. Ny fanamarinana ny checksum dia hampiseho fa niova ny angona.

Mba hanaovana kajy ny checksum, azonao atao ny mampiasa ny iray amin'ireo fiasa hashing toy ny MD-5, SHA-1, SHA-256, sns. Ny fiasan'ny hash dia manisa sanda (ohatra, andian-dahatsoratra misy halavany tsy miova) amin'ny fanaovana asa tsy azo ovaina amin'ny sakana angona. Miankina amin'ny karazana asa hash ny asa.

Na dia miova kely aza ny votoatin'ny sakana data dia hiova ihany koa ny sandan'ny hash. Amin'ny alàlan'ny famakafakana ny sandan'ny hash, dia tsy azo atao ny manangana indray ny bloc data izay nanaovana kajy azy.

Ho ampy ve izany fiarovana izany? Indrisy fa tsia.

Amin'ity tetika ity, ny checksum (hash function) dia miaro ny sakana tsirairay, fa tsy ny blockchain manontolo. Ny fahafantarana ny algorithm amin'ny kajy ny fiasan'ny hash, ny mpanafika dia afaka manolo mora foana ny votoatin'ny sakana iray. Ary koa, tsy misy na inona na inona hanakana azy tsy hanala sakana amin'ny rojo na hampiditra vaovao.

Mba hiarovana ny rojo manontolo amin'ny ankapobeny dia azonao atao koa ny mitahiry ao amin'ny sakana tsirairay, miaraka amin'ny angon-drakitra, hash amin'ny angona avy amin'ny sakana teo aloha (sary 1.3).

Ny boky "Creating Solidity smart contracts for the Ethereum blockchain. Torolàlana azo ampiharina"
vary. 1.3. Ampio ny hash amin'ny sakana teo aloha amin'ny sakana data

Amin'ity tetika ity, raha te hanova ny sakana iray dia mila mamerina manitsy ny fiasan'ny hash amin'ny sakana manaraka rehetra ianao. Toa inona no olana?

Ao amin'ny blockchain tena izy, ny fahasahiranana artifisialy dia noforonina koa mba hanampiana sakana vaovao — algorithm izay mitaky loharanon-karena be dia be no ampiasaina. Raha heverinao fa mba hanovana ny sakana iray dia mila manao kajy indray ianao fa tsy ity sakana iray ity ihany, fa ny manaraka rehetra, dia ho sarotra be ny hanaovana izany.

Aoka ho tsaroantsika ihany koa fa ny angon-drakitra blockchain dia voatahiry (doka) amin'ny node tambajotra marobe, i.e. Fitehirizam-paritra no ampiasaina. Ary izany dia manasarotra kokoa ny fanaovana sakana sandoka, satria Tsy maintsy atao ny fanovana amin'ny nodes rehetra.

Koa satria mitahiry vaovao momba ny sakana teo aloha ny sakana, dia azo atao ny manamarina ny votoatin'ny sakana rehetra ao amin'ny rojo.

Ethereum blockchain

Ny blockchain Ethereum dia sehatra iray ahafahana mamorona DApps mizara. Tsy toy ny sehatra hafa, Ethereum dia mamela ny fampiasana ireo antsoina hoe fifanarahana marani-tsaina (smart contracts), voasoratra amin'ny fiteny fandaharana Solidity.

Ity sehatra ity dia noforonina tamin'ny 2013 avy amin'i Vitalik Buterin, mpanorina ny Bitcoin Magazine, ary natomboka tamin'ny 2015. Ny zavatra rehetra hianarantsika na hataontsika amin'ny taranja fanofanana dia mifandray manokana amin'ny fifanarahana smart blockchain sy Solidity Ethereum.

Ny fitrandrahana na ny fomba famoronana sakana

Ny harena ankibon'ny tany dia dingana sarotra sy be loharanon-karena amin'ny fampidirana sakana vaovao amin'ny rojo blockchain, fa tsy hoe "mitrandraka cryptocurrency." Ny fitrandrahana dia miantoka ny fiasan'ny blockchain, satria Io dingana io no tompon'andraikitra amin'ny fampidirana ny fifanakalozana amin'ny blockchain Ethereum.

Antsoina hoe mpitrandraka ny olona sy fikambanana mandray anjara amin'ny fampidirana sakana.
Ny lozisialy mandeha amin'ny node mpitrandraka dia manandrana mitady paramètre hashing antsoina hoe Nonce ho an'ny sakana farany mba hahazoana sanda hash manokana voatondron'ny tambajotra. Ny algorithm hashing Ethash ampiasaina amin'ny Ethereum dia ahafahanao mahazo ny sandan'ny Nonce amin'ny alàlan'ny fikarohana manaraka.

Raha mahita ny sanda Nonce marina ny node mpitrandraka, dia io ilay antsoina hoe porofon'ny asa (PoW, Proof-of-work). Amin'ity tranga ity, raha misy sakana iray ampiana amin'ny tambajotra Ethereum, ny mpitrandraka dia mahazo valisoa amin'ny volan'ny tambajotra - Ether. Amin'ny fotoana anoratana, ny valisoa dia 5 Etera, saingy hihena izany rehefa mandeha ny fotoana.

Noho izany, ny mpitrandraka Ethereum dia miantoka ny fiasan'ny tambajotra amin'ny fanampiana sakana, ary mahazo vola amin'ny cryptocurrency amin'izany. Betsaka ny fampahalalana amin'ny Internet momba ny mpitrandraka sy ny fitrandrahana, fa hifantoka amin'ny famoronana fifanarahana Solidity sy DApps amin'ny tambajotra Ethereum isika.

Famintinana ny lesona

Tao amin'ny lesona voalohany, nifankazatra tamin'ny blockchain ianao ary nianatra fa filaharan'ireo sakana voaforona manokana izy io. Tsy azo ovaina ny ao anatin'ireo sakana voarakitra teo aloha, satria izany dia mitaky kajy ny sakana manaraka rehetra amin'ny node tambajotra maro, izay mitaky loharanon-karena sy fotoana be dia be.

Blockchain dia azo ampiasaina hitahiry ny vokatry ny fifanakalozana. Ny tena tanjony dia ny fandaminana ny fifampiraharahana azo antoka eo amin'ireo antoko (olona sy fikambanana) izay tsy misy itokisana. Nianaranao hoe iza amin'ireo sehatra manokana momba ny fandraharahana sy izay faritra azo ampiasaina ny Ethereum blockchain sy Solidity smart contracts. Ity ny sehatry ny banky, ny fisoratana anarana amin'ny fananan-tany, ny antontan-taratasy, sns.

Nianaranao ihany koa fa mety hipoitra ny olana isan-karazany rehefa mampiasa blockchain. Ireo dia olana amin'ny fanamarinana ny vaovao ampiana amin'ny blockchain, ny hafainganam-pandehan'ny blockchain, ny vidin'ny fifanakalozana, ny olan'ny fifanakalozana angon-drakitra eo amin'ny fifanarahana marani-tsaina sy ny tontolo tena izy, ary koa ny mety ho fanafihana ataon'ny mpanafika mikendry ny hangalatra ny vola crypto amin'ny kaonty mpampiasa. .

Niresaka fohifohy momba ny fitrandrahana harena ankibon'ny tany ho toy ny dingan'ny fampidirana sakana vaovao amin'ny blockchain ihany koa izahay. Ilaina ny fitrandrahana mba hamitana ny fifampiraharahana. Ireo izay tafiditra amin'ny fitrandrahana harena ankibon'ny tany dia miantoka ny fiasan'ny blockchain ary mahazo valisoa amin'ny cryptocurrency amin'izany.

Lesona 2. Manomana tontolo miasa ao amin'ny Ubuntu sy Debian OSMisafidiana rafitra miasa
Fametrahana ny fitaovana ilaina
Fametrahana Geth sy Swarm amin'ny Ubuntu
Fametrahana Geth sy Swarm amin'ny Debian
Fiomanana mialoha
Misintona ny fizarana Go
Fametrahana fari-piainana manodidina
Fanamarinana ny version Go
Fametrahana Geth sy Swarm
Mamorona blockchain manokana
Manomana ny rakitra genesis.json
Mamorona lahatahiry ho an'ny asa
Hamorona kaonty
Manomboka ny fanombohana node
Node Launch Options
Mifandraisa amin'ny node
Fitantanana ny harena ankibon'ny tany sy fisavana ny fifandanjana
Atsaharo ny console Geth
Famintinana ny lesona

Lesona 3. Manomana ny tontolo iasana amin'ny Raspberry Pi 3Manomana ny Raspberry Pi 3 ho an'ny asa
Fametrahana Rasberian
Mametraka fanavaozana
Mamela ny SSH Access
Mametraka adiresy IP Static
Fametrahana ny fitaovana ilaina
Fametrahana ny Go
Misintona ny fizarana Go
Fametrahana fari-piainana manodidina
Fanamarinana ny version Go
Fametrahana Geth sy Swarm
Mamorona blockchain manokana
Fanamarinana ny kaontinao sy ny fifandanjanao
Famintinana ny lesona

Lesona 4. Kaonty sy famindrana vola eo amin'ny kaontyJereo sy ampio kaonty
Jereo ny lisitry ny kaonty
Manampy kaonty
safidy baikon'ny kaonty geth
Tenimiafina kaonty
Cryptocurrency amin'ny Ethereum
Ethereum Currency Units
Mamaritra ny fifandanjan'ny kaontintsika ankehitriny isika
Mamindra vola avy amin'ny kaonty iray mankany amin'ny iray hafa
eth.sendTransaction Method
Jereo ny toe-draharaha
Fandraisan'anjara
Famintinana ny lesona

Lesona 5. Famoahana ny fifanarahana voalohany nataonaoSmart fifanarahana amin'ny Ethereum
Fanatanterahana ny fifanarahana Smart
Ethereum Virtual Machine
Tontolo fampandrosoana mitambatra Remix Solidity IDE
Running compilation
Calling Contract Functions
Famoahana fifanarahana amin'ny tambajotra tsy miankina
Mahazo ny famaritana ABI sy ny kaody binary fifanarahana
Famoahana ny fifanarahana
Fanamarinana ny satan'ny famoahana ny fifanarahana
Calling Contract Functions
Batch compiler solc
Fametrahana solc amin'ny Ubuntu
Fametrahana solc amin'ny Debian
Manangona ny fifanarahana HelloSol
Famoahana ny fifanarahana
Fametrahana solc amin'ny Rasberian
Famintinana ny lesona

Lesona 6. Smart contracts sy Node.jsFametrahana Node.js
Fametrahana amin'ny Ubuntu
Fametrahana amin'ny Debian
Fametrahana sy fampandehanana Ganache-cli
Fametrahana Web3
Fametrahana solc
Fametrahana Node.js amin'ny Rasberian
Script hahazoana lisitry ny kaonty ao amin'ny console
Script ho famoahana fifanarahana marani-tsaina
Alefaso ary makà paramètre
Mahazo safidy fandefasana
Fanangonana fifanarahana
Mamaha ny kaontinao
Loading ABI sy ny kaody binary fifanarahana
Tombanana ny habetsahan'ny entona ilaina
Mamorona zavatra ary manomboka mamoaka fifanarahana
Fampandehanana ny script famoahana fifanarahana
Fiantsoana smart contract functions
Azo atao ve ny manavao ny fifanarahana smart navoaka?
Miasa amin'ny Web3 version 1.0.x
Mahazo lisitry ny kaonty
Famoahana ny fifanarahana
Calling Contract Functions
Mamindra vola avy amin'ny kaonty iray mankany amin'ny iray hafa
Mamindra vola amin'ny kaonty fifanarahana
Fanavaozana ny fifanarahana hendry HelloSol
Mamorona script hijerena ny fifandanjan'ny kaontinao
Ampio antso amin'ny asa getBalance amin'ny script call_contract_get_promise.js
Mampiakatra ny kaonty smart contract izahay
Famintinana ny lesona

Lesona 7. Fampidirana ny TruffleFametrahana Truffle
Mamorona tetikasa HelloSol
Famoronana ny lahatahiry sy ny rakitra
Directory fifanarahana
Fifindra-monina katalaogy
Fitsapana lahatahiry
truffle-config.js rakitra
Manangona ny fifanarahana HelloSol
Manomboka mamoaka fifanarahana
Miantso ny fiasan'ny fifanarahana HelloSol amin'ny truffle Prompt
Ny fiantsoana ny fifanarahana HelloSol dia miasa avy amin'ny script JavaScript mandeha amin'ny Node.js
Fametrahana ny module truffle-contract
Ny fiantsoana ny fifanarahana dia miasa getValue sy getString
Ny fiantsoana fifanarahana dia miasa setValue sy setString
Fanovana sy famoahana indray ny fifanarahana
Miasa amin'ny Web3 version 1.0.x
Manao fanovana amin'ny fifanarahana hendry HelloSol
Scripts amin'ny fiantsoana fomba fifanarahana
Fitsapana amin'ny Truffle
Fitsapana mafy
Test JavaScript
Famintinana ny lesona

Lesona 8. Karazana angon-drakitra solidityFifanarahana amin'ny fianarana karazana angona
Karazana data boolean
Integer tsy misy sonia sy isa voasonia
Isa raikitra
adiresy
Variable karazana sarotra
Arrays habe raikitra
Dynamic arrays
fitanisana
rafitra
Mapping dictionaries
Famintinana ny lesona

Lesona 9. Fifindran'ny fifanarahana amin'ny tambajotra tsy miankina sy amin'ny tambajotra RinkebyFamoahana fifanarahana avy amin'ny Truffle mankany amin'ny tambajotra Geth tsy miankina
Manomana node tambajotra tsy miankina
Fanomanana fifanarahana amin'ny asa
Manangona sy mamindra fifanarahana amin'ny tambajotra Truffle
Manomboka ny fifindran'ny tambajotra eo an-toerana geth
Mahazo artifacts Truffle
Famoahana fifanarahana avy amin'ny Truffle mankany amin'ny testnet Rinkeby
Manomana node Geth hiara-hiasa amin'i Rinkeby
Node synchronization
Manampy kaonty
Mametraka ny kaontinao Rinkeby amin'ny etera
Fanombohana ny fifindra-monina amin'ny tambajotra Rinkeby
Jereo ny fampahalalana momba ny fifanarahana amin'ny tambajotra Rinkeby
Truffle Console ho an'ny tambajotra Rinkeby
Fomba mora kokoa hiantsoana asa fifanarahana
Fomba fiantsoana fifanarahana mampiasa Node.js
Mamindra vola eo amin'ny kaonty ao amin'ny console Truffle ho an'ny Rinkby
Famintinana ny lesona

Lesona 10. Ethereum Swarm Decentralized Data StorageAhoana ny fiasan'ny Ethereum Swarm?
Fametrahana sy fandefasana ny Swarm
Hetsika misy rakitra sy lahatahiry
Mampakatra rakitra mankany Ethereum Swarm
Famakiana rakitra iray avy amin'ny Ethereum Swarm
Jereo ny fisehon'ny rakitra nampidirina
Mametraka lahatahiry misy subdirectories
Mamaky rakitra avy amin'ny lahatahiry alaina
Mampiasa vavahadin'ny Swarm ho an'ny daholobe
Fidirana amin'ny Swarm avy amin'ny script Node.js
Perl Net::Ethereum::Swarm module
Fametrahana ny Net::Ethereum::Swarm module
Manoratra sy mamaky angona
Famintinana ny lesona

Lesona 11. Web3.py rafitra miasa amin'ny Ethereum amin'ny PythonFametrahana Web3.py
Fanavaozana sy fametrahana fonosana ilaina
Fametrahana ny module easysolc
Famoahana fifanarahana mampiasa Web3.py
Fanangonana fifanarahana
Mifandray amin'ny mpamatsy
Manaova famoahana fifanarahana
Mitahiry ny adiresin'ny fifanarahana sy abi ao anaty rakitra
Fampandehanana ny script famoahana fifanarahana
Fomba fiantsoana fifanarahana
Mamaky ny adiresy sy abi amin'ny fifanarahana avy amin'ny rakitra JSON
Mifandray amin'ny mpamatsy
Mamorona zavatra fifanarahana
Fomba fiantsoana fifanarahana
Truffle sy Web3.py
Famintinana ny lesona

Lesona 12. OraclesAfaka matoky angona avy any ivelany ve ny fifanarahana marani-tsaina?
Oracles ho mpanelanelana fampahalalana blockchain
Loharanom-baovao
Kaody hanehoana ny angona avy amin'ny loharano
Oracle amin'ny firaketana ny tahan'ny fifanakalozana amin'ny blockchain
USDRateOracle Contract
Fanavaozana ny tahan'ny fifanakalozana amin'ny fifanarahana smart
Mampiasa Mpanome Socket Web
Miandry hetsika RateUpdate
Fikarakarana ny hetsika RateUpdate
Fanombohana fanavaozana data amin'ny fifanarahana marani-tsaina
Famintinana ny lesona

Source: www.habr.com

Add a comment