{"id":39018,"date":"2019-10-31T22:27:25","date_gmt":"2019-10-31T19:27:25","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kniga-sozdanie-smart-kontraktov-solidity-dlya-blokchejna-ethereum-prakticheskoe-rukovodstvo\/"},"modified":"2019-10-31T22:27:25","modified_gmt":"2019-10-31T19:27:25","slug":"kniga-sozdanie-smart-kontraktov-solidity-dlya-blokchejna-ethereum-prakticheskoe-rukovodstvo","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/novosti-interneta\/kniga-sozdanie-smart-kontraktov-solidity-dlya-blokchejna-ethereum-prakticheskoe-rukovodstvo","title":{"rendered":"Libri \u00abKrijimi i Kontratave t\u00eb Men\u00e7ura Solidity p\u00ebr Blockchainin Ethereum. Udh\u00ebzues Praktik\u00bb","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Libri \u00abKrijimi i Kontratave t\u00eb Men\u00e7ura Solidity p\u00ebr Blockchainin Ethereum. Udh\u00ebzues Praktik\u00bb\" src=\"\/wp-content\/uploads\/2019\/10\/9549e708e99fef6892045ff854231fa7.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nKam punuar p\u00ebr m\u00eb shum\u00eb se nj\u00eb vit mbi librin \u00abKrijimi i kontratave t\u00eb men\u00e7ura Solidity p\u00ebr blockchainin Ethereum. Udh\u00ebzues praktik\u00bb, dhe tani puna \u00ebsht\u00eb e p\u00ebrfunduar, libri <noindex><a rel=\"nofollow\" href=\"https:\/\/www.litres.ru\/aleksandr-frolov-198\/sozdanie-smart-kontraktov-solidity-dlya-blokcheyna-et\/\">\u00ebsht\u00eb botuar dhe i aksesuesh\u00ebm n\u00eb Litrese.<\/a><\/noindex>.<\/p>\n<p>Shpresoj se libri im do t\u00eb ndihmoj\u00eb t\u00eb filloni shpejt krijimin e kontratave t\u00eb men\u00e7ura Solidity dhe aplikacioneve t\u00eb shp\u00ebrndara DApp p\u00ebr blockchainin Ethereum. Ai p\u00ebrb consists nga 12 m\u00ebsime me detyra praktike. Pas p\u00ebrfundimit t\u00eb tyre, lexuesi do t\u00eb jet\u00eb n\u00eb gjendje t\u00eb krijoj\u00eb nyjat e tij lokale Ethereum, t\u00eb publikoj\u00eb kontrata t\u00eb men\u00e7ura dhe t\u00eb th\u00ebrras\u00eb metodat e tyre, t\u00eb shk\u00ebmbej\u00eb t\u00eb dh\u00ebna mes bot\u00ebs reale dhe kontratave t\u00eb men\u00e7ura me an\u00eb t\u00eb orakujve, t\u00eb punoj\u00eb me rrjetin e testimit Rinkeby. <\/p>\n<p>Libri \u00ebsht\u00eb drejtuar t\u00eb gjith\u00eb atyre q\u00eb jan\u00eb t\u00eb interesuar p\u00ebr teknologjit\u00eb e avancuara n\u00eb fush\u00ebn e blockchaineve dhe duan t\u00eb fitojn\u00eb shpejt njohuri q\u00eb lejojn\u00eb pun\u00eb interesante dhe me perspektiv\u00eb.<\/p>\n<p>M\u00eb posht\u00eb do t\u00eb gjeni p\u00ebrmbajtjen dhe kapitullin e par\u00eb t\u00eb librit (po ashtu n\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/www.litres.ru\/aleksandr-frolov-198\/sozdanie-smart-kontraktov-solidity-dlya-blokcheyna-et\/\">Litrese<\/a><\/noindex> jan\u00eb t\u00eb aksesueshme fragmente t\u00eb librit). Shpresoj t\u00eb marr reagime, v\u00ebrejtje dhe sugjerime. T\u00eb gjitha k\u00ebto do t'i marr parasysh gjat\u00eb p\u00ebrgatitjes s\u00eb edi\u00e7ionit t\u00eb ardhsh\u00ebm t\u00eb librit.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\n<b class=\"spoiler_title\">P\u00ebrmbajtja<\/b><b class=\"spoiler_title\">Hyrje<\/b>Libri yn\u00eb \u00ebsht\u00eb p\u00ebr ata q\u00eb duan jo vet\u00ebm t\u00eb kuptojn\u00eb parimet e funksionimit t\u00eb blockchain-it Ethereum, por edhe t\u00eb fitojn\u00eb aft\u00ebsi praktike n\u00eb krijimin e aplikacioneve t\u00eb shp\u00ebrndara DApp n\u00eb gjuh\u00ebn e programimit Solidity p\u00ebr k\u00ebt\u00eb rrjet.<\/p>\n<p>Ky lib\u00ebr \u00ebsht\u00eb m\u00eb i mir\u00eb p\u00ebr t'u punuar praktisht, duke kryer detyrat q\u00eb p\u00ebrshkruhen n\u00eb m\u00ebsime. P\u00ebr ta punuar, do t\u00eb nevojitet nj\u00eb kompjuter lokal, nj\u00eb server virtual ose t\u00eb bazuar n\u00eb cloud me sistemin operativ Debian ose Ubuntu t\u00eb instaluar. Po ashtu, p\u00ebr kryerjen e shum\u00eb detyrave mund t\u00eb p\u00ebrdoret Raspberry Pi.<\/p>\n<p><b>N\u00eb m\u00ebsimin e par\u00eb <\/b>ne do t\u00eb shqyrtojm\u00eb parimet e funksionimit t\u00eb blockchain-it Ethereum dhe terminologjin\u00eb kryesore, si dhe do t\u00eb flasim mbi vendet ku mund t\u00eb p\u00ebrdoret ky blockchain. <\/p>\n<p>Q\u00ebllimi <b>m\u00ebsimit t\u00eb dyt\u00eb<\/b> \u2014 krijimi i nj\u00eb nodi t\u00eb blockchain-it privat Ethereum p\u00ebr pun\u00eb t\u00eb m\u00ebtejshme n\u00eb kuad\u00ebr t\u00eb k\u00ebtij kursi n\u00eb serverin Ubuntu dhe Debian. Ne do t\u00eb shqyrtojm\u00eb ve\u00e7antit\u00eb e instalimit t\u00eb mjeteve kryesore, t\u00eb tilla si geth, q\u00eb siguron funksionimin e nodit t\u00eb blockchain-it ton\u00eb, si dhe demonin e ruajtjes s\u00eb decentralizuar t\u00eb t\u00eb dh\u00ebnave swarm.<\/p>\n<p><b>M\u00ebsimi i tret\u00eb<\/b> do t'ju m\u00ebsoj\u00eb t\u00eb kryeni eksperimente me Ethereum n\u00eb nj\u00eb mikrokompjuter t\u00eb lir\u00eb Raspberry Pi. Do t\u00eb instaloni sistemin operativ (OS) Rasberian n\u00eb Raspberry Pi, utilitarin Geth q\u00eb siguron funksionimin e nodit t\u00eb bllokut t\u00eb zinxhir\u00ebve, si dhe demonin e ruajtjes s\u00eb dh\u00ebnash t\u00eb decentralizuara Swarm.<\/p>\n<p><b>M\u00ebsimi i kat\u00ebrt<\/b> \u00ebsht\u00eb i dedikuar p\u00ebr llogarit\u00eb dhe nj\u00ebsit\u00eb e kriptovalut\u00ebs n\u00eb rrjetin Ethereum, si dhe m\u00ebnyrat e transferimit t\u00eb fondeve nga nj\u00eb llogari n\u00eb tjetr\u00ebn nga konsola Geth. Do t\u00eb m\u00ebsoni si t\u00eb krijoni llogari, t\u00eb inicioni transaksione p\u00ebr transferimin e fondeve, t\u00eb merrni gjendjen e transaksionit dhe pranuar mjetin e tij.<\/p>\n<p><b>N\u00eb m\u00ebsimin e pest\u00eb<\/b> do t\u00eb njiheni me kontratat inteligjente n\u00eb rrjetin Ethereum, dhe do t\u00eb m\u00ebsoni rreth ekzekutimit t\u00eb tyre nga makineria virtuale Ethereum. <\/p>\n<p>Do t\u00eb krijoni dhe publikoni kontrat\u00ebn tuaj t\u00eb par\u00eb inteligjente n\u00eb nj\u00eb rrjet privat Ethereum dhe do t\u00eb m\u00ebsoni si t\u00eb thirrni funksionet e saj. P\u00ebr k\u00ebt\u00eb do t\u00eb p\u00ebrdorni ambientin e zhvillimit Remix Solidity IDE. P\u00ebr m\u00eb tep\u00ebr, do t\u00eb m\u00ebsoni si t\u00eb instaloni dhe p\u00ebrdorni kompajlerin paket\u00eb solc.<br \/>\nPo ashtu, do t'ju flasim p\u00ebr at\u00eb q\u00eb quhet nd\u00ebrfaqja binare e aplikacionit Application Binary Interface (ABI) dhe do t'ju m\u00ebsojm\u00eb si ta p\u00ebrdorni at\u00eb.<\/p>\n<p><b>M\u00ebsimi i gjasht\u00eb<\/b> i kushton krijimit t\u00eb skripteve JavaScript, q\u00eb funksionojn\u00eb n\u00ebn menaxhimin e Node.js dhe kryejn\u00eb operacione me kontrata t\u00eb men\u00e7ura Solidity.<\/p>\n<p>Do t\u00eb instaloni Node.js n\u00eb sistemet operative Ubuntu, Debian dhe Raspbian, do t\u00eb shkruani skripte p\u00ebr publikimin e kontrat\u00ebs s\u00eb men\u00e7ur n\u00eb rrjetin lokal Ethereum dhe thirrjen e funksioneve t\u00eb saj. <\/p>\n<p>P\u00ebr m\u00eb tep\u00ebr, do t\u00eb m\u00ebsoni si t\u00eb transferoni mjete midis llogarive normale me an\u00eb t\u00eb skripteve dhe si t\u2019i kreditoni ato n\u00eb llogarit\u00eb e kontratave t\u00eb men\u00e7ura.<\/p>\n<p><b>N\u00eb m\u00ebsimin e shtat\u00eb<\/b> do t\u00eb m\u00ebsoni t\u00eb instaloni dhe p\u00ebrdorni ambientin e integruar Truffle, q\u00eb \u00ebsht\u00eb popullor mes zhvilluesve t\u00eb kontratave t\u00eb men\u00e7ura Solidity. Do t\u00eb m\u00ebsoni t\u00eb krijoni skripte JavaScript q\u00eb th\u00ebrrasin funksionet e kontratave duke p\u00ebrdorur modulinn truffle-contract, si dhe t\u00eb testeoni kontrat\u00ebn tuaj t\u00eb men\u00e7ur me ndihm\u00ebn e Truffle.<\/p>\n<p><b>N\u00eb m\u00ebsimin e tet\u00eb<\/b> i kushton tipeve t\u00eb t\u00eb dh\u00ebnave n\u00eb Solidity. Do t\u00eb shkruani kontrata t\u00eb men\u00e7ura q\u00eb punojn\u00eb me tipe t\u00eb dh\u00ebnash si numra t\u00eb plot\u00eb me dhe pa n\u00ebnshkrim, numra me n\u00ebnshkrim, strings, adresa, variabla t\u00eb tipeve komplekse, array, enumerime, struktura dhe fjalor\u00eb.<\/p>\n<p><b>N\u00eb m\u00ebsimin e n\u00ebnt\u00eb<\/b> Ju do t\u00eb afroni edhe nj\u00eb hap m\u00eb pran\u00eb krijimit t\u00eb kontratave inteligjente p\u00ebr rrjetin kryesor Ethereum. Do t\u00eb m\u00ebsoni si t\u00eb publikoni kontrata duke p\u00ebrdorur Truffle n\u00eb nj\u00eb rrjet privat Geth, si dhe n\u00eb rrjetin testues Rinkeby. Debugging e kontratave inteligjente n\u00eb rrjetin Rinkeby \u00ebsht\u00eb shum\u00eb e dobishme para publikimit n\u00eb rrjetin kryesor \u2014 atje \u00ebsht\u00eb pothuajse gjith\u00e7ka e v\u00ebrtet\u00eb, por falas.<\/p>\n<p>Gjat\u00eb m\u00ebsimit do t\u00eb krijoni nj\u00eb nyj\u00eb t\u00eb rrjetit testues Rinkeby, do ta mbushni at\u00eb me fonde dhe do t\u00eb publikoni nj\u00eb kontrat\u00eb inteligjente.<\/p>\n<p><b>M\u00ebsimi 10<\/b> i kushtohet magazinave t\u00eb shp\u00ebrndara t\u00eb t\u00eb dh\u00ebnave Ethereum Swarm. Duke p\u00ebrdorur magazinat e shp\u00ebrndara, ju kurseni n\u00eb ruajtjen e t\u00eb dh\u00ebnave t\u00eb m\u00ebdha n\u00eb blockchainin Ethereum. <\/p>\n<p>Gjat\u00eb k\u00ebtij m\u00ebsimi do t\u00eb krijoni nj\u00eb magazin\u00eb lokale Swarm, do t\u00eb kryeni operacione t\u00eb shkrimit dhe leximit t\u00eb skedar\u00ebve, si dhe katalog\u00ebve me skedar\u00eb. M\u00eb pas do t\u00eb m\u00ebsoni si t\u00eb punoni me portalin publik Swarm, do t\u00eb shkruani skenar\u00eb p\u00ebr t\u00eb hyr\u00eb n\u00eb Swarm nga Node.js, po ashtu edhe me modulin Perl Net::Ethereum::Swarm.<\/p>\n<p><b>Q\u00ebllimi i m\u00ebsimit 11<\/b> \u2014 t\u00eb m\u00ebsoni t\u00eb punoni me kontratat smart Solidity duke p\u00ebrdorur gjuh\u00ebn e njohur programuese Python dhe korniz\u00ebn Web3.py. Do t\u00eb instaloni k\u00ebt\u00eb korniz\u00eb, do t\u00eb shkruani skripte p\u00ebr kompilimin dhe publikimin e kontratave smart, si dhe p\u00ebr thirrjen e funksioneve t\u00eb tyre. Gjat\u00eb k\u00ebsaj, Web3.py do t\u00eb p\u00ebrdoret si i till\u00eb, ashtu edhe n\u00eb bashk\u00ebpunim me ambientin e zhvillimit Truffle.<\/p>\n<p><b>N\u00eb m\u00ebsimin 12<\/b> do t\u00eb m\u00ebsoni t\u00eb kaloni t\u00eb dh\u00ebnat midis kontratave smart dhe bot\u00ebs reale duke p\u00ebrdorur oracle. Kjo do t'ju ndihmoj\u00eb t\u00eb merrni t\u00eb dh\u00ebna nga faqet e internetit, pajisjet e internetit t\u00eb gj\u00ebrave IoT, pajisje t\u00eb ndryshme dhe senzora, dhe t\u00eb d\u00ebrgoni t\u00eb dh\u00ebna nga kontratat smart n\u00eb k\u00ebto pajisje. N\u00eb pjes\u00ebn praktike t\u00eb m\u00ebsimit do t\u00eb krijoni nj\u00eb oracle dhe nj\u00eb kontrat\u00eb smart q\u00eb merr kursin aktual t\u00eb k\u00ebmbimit USD n\u00eb rubla nga faqja e Bank\u00ebs Qendrore t\u00eb RF.<\/p>\n<p><b class=\"spoiler_title\">M\u00ebsimi 1. N\u00eb lidhje me blockchain dhe rrjetin Ethereum<\/b><b>Q\u00ebllimi i m\u00ebsimit:<\/b> t\u00eb njiheni me parimet e funksionimit t\u00eb blockchain Ethereum, fushat e aplikimit t\u00eb tij dhe terminologjin\u00eb kryesore.<br \/>\n<b>Detyrat praktike:<\/b> n\u00eb k\u00ebt\u00eb m\u00ebsim nuk parashikohen.<\/p>\n<p>Sot, me siguri, nuk ka zhvillues software-i q\u00eb nuk ka d\u00ebgjuar p\u00ebr teknologjin\u00eb blockchain, kriptovalutat, bitcoin, ofertat fillestare t\u00eb monedhave (ICO), kontratat smart, si dhe p\u00ebr termat dhe konceptet e tjera q\u00eb lidhen me blockchain-in.<\/p>\n<p>Teknologjia e blockchain-it hap tregje t\u00eb reja dhe krijon vende pune p\u00ebr programuesit. N\u00ebse do t\u00eb m\u00ebsoni t\u00eb gjitha nuancat e teknologjive t\u00eb kriptovalutave dhe kontratave smart, nuk duhet t\u00eb keni probleme n\u00eb aplikimin e k\u00ebtyre njohurive n\u00eb praktik\u00eb.<\/p>\n<p>Kemi p\u00ebr t\u00eb th\u00ebn\u00eb se rreth kriptovalutave dhe blockchain-eve ka shum\u00eb spekulime. Ne do ta lem\u00eb anash diskutimin mbi ndryshimet e \u00e7mimeve t\u00eb kriptovalutave, krijimin e piramidave, nuancat e legjislacionit t\u00eb kriptovalutave, etj. N\u00eb kursin ton\u00eb t\u00eb m\u00ebsimit, do t\u00eb p\u00ebrqendrohemi kryesisht n\u00eb aspektet teknike t\u00eb p\u00ebrdorimit t\u00eb kontratave smart n\u00eb blockchain-in Ethereum dhe n\u00eb zhvillimin e ashtuquajturave aplikacione t\u00eb decentralizuara (DApp).<\/p>\n<h3>\u00c7far\u00eb \u00ebsht\u00eb blockchain?<\/h3>\n<p>\nBlockchain (Blloku i t\u00eb Dh\u00ebnave) \u00ebsht\u00eb nj\u00eb zinxhir i blloqeve t\u00eb dh\u00ebnash, t\u00eb lidhura me nj\u00ebra-tjetr\u00ebn n\u00eb nj\u00eb m\u00ebnyr\u00eb t\u00eb caktuar. N\u00eb fillim t\u00eb zinxhirit ndodhet blloku i par\u00eb, i quajtur blloku fillestar (genesis block) ose blloku i gjenez\u00ebs. Pas tij vjen blloku i dyt\u00eb, pastaj i treti dhe k\u00ebshtu me radh\u00eb.<\/p>\n<p>T\u00eb gjith\u00eb k\u00ebta blloqe t\u00eb dh\u00ebnash automatikisht shum\u00ebfishohen n\u00eb num\u00ebr t\u00eb madh nodash n\u00eb rrjetin e blockchain-it. K\u00ebshtu sigurohet ruajtja e decentralizuar e t\u00eb dh\u00ebnave t\u00eb blockchain-it. <br \/>\nMund ta imagjinoni sistemin e blockchain-it si nj\u00eb sasi t\u00eb madhe nodash (servera fizik\u00eb ose virtual\u00eb), t\u00eb bashkuara n\u00eb nj\u00eb rrjet dhe q\u00eb replikojn\u00eb t\u00eb gjitha ndryshimet n\u00eb zinxhirin e blloqeve t\u00eb dh\u00ebnash. \u00cbsht\u00eb si nj\u00eb kompjuter gjigant multi-server, ku nodet e k\u00ebtij kompjuteri (server\u00ebt) mund t\u00eb jen\u00eb t\u00eb shp\u00ebrndara n\u00eb t\u00eb gjith\u00eb bot\u00ebn. Dhe ju gjithashtu mund ta shtoni kompjuterin tuaj n\u00eb rrjetin e blockchain-it. <\/p>\n<h4>Baza e t\u00eb Dh\u00ebnave t\u00eb Shp\u00ebrndara<\/h4>\n<p>\nBlockchain mund t\u00eb \u062a\u0635\u0648\u0631oni si nj\u00eb baz\u00eb t\u00eb dh\u00ebnash t\u00eb shp\u00ebrndara, e replikueshme n\u00eb t\u00eb gjitha nodet e rrjetit t\u00eb blockchain-it. N\u00eb teori, blockchain do t\u00eb funksionoj\u00eb derisa t\u00eb funksionoj\u00eb t\u00eb pakt\u00ebn nj\u00eb nod q\u00eb ruan t\u00eb gjitha blloqet e blockchain-it.<\/p>\n<h4>Regjistri i shp\u00ebrndar\u00eb i t\u00eb dh\u00ebnave<\/h4>\n<p>\nBlockchain mund t\u00eb \u062a\u0635\u0648\u0631oni si nj\u00eb regjist\u00ebr t\u00eb shp\u00ebrndar\u00eb t\u00eb t\u00eb dh\u00ebnave dhe operacioneve (transaksioneve). Nj\u00eb em\u00ebr tjet\u00ebr p\u00ebr k\u00ebt\u00eb regjist\u00ebr \u00ebsht\u00eb libri i p\u00ebrgjithsh\u00ebm. <\/p>\n<p>N\u00eb regjistrin e shp\u00ebrndar\u00eb mund t\u00eb shtohen t\u00eb dh\u00ebna, por nuk \u00ebsht\u00eb e mundur t'i ndryshohen ose fshihen ato. Kjo pamund\u00ebsi arrihet, nd\u00ebr t\u00eb tjera, n\u00ebp\u00ebrmjet p\u00ebrdorimit t\u00eb algoritemeve kriptografike, algoritemeve speciale p\u00ebr shtimin e blloqeve n\u00eb zinxhir dhe ruajtjes s\u00eb decentralizuar t\u00eb t\u00eb dh\u00ebnave.<\/p>\n<p>N\u00eb shtimin e blloqeve dhe ekzekutimin e operacioneve (transaksioneve) p\u00ebrdoren \u00e7el\u00ebsat privat\u00eb dhe publik\u00eb. Ato kufizojn\u00eb p\u00ebrdoruesit e blockchain-it, duke u ofruar qasje vet\u00ebm n\u00eb blloqet e tyre t\u00eb dh\u00ebnash.<\/p>\n<h4>Transaksionet<\/h4>\n<p>\nBlockchain ruan informacionin p\u00ebr operacionet (transaksionet) n\u00eb blloqe. N\u00eb k\u00ebt\u00eb m\u00ebnyr\u00eb, transaksionet e vjetra, q\u00eb tashm\u00eb jan\u00eb kryer, nuk mund t\u00eb rikthehen ose ndryshohen. Transaksionet e reja ruhen n\u00eb blloqet e reja, t\u00eb shtuar.<\/p>\n<p>K\u00ebshtu, n\u00eb blockchain mund t\u00eb regjistrohet n\u00eb m\u00ebnyr\u00eb t\u00eb pandryshueshme e gjith\u00eb historia e transaksioneve. Prandaj, blockchain mund t\u00eb p\u00ebrdoret, p\u00ebr shembull, p\u00ebr ruajtjen e sigurt t\u00eb operacioneve bankare, informacionit mbi t\u00eb drejtat e autorit, historin\u00eb e ndryshimeve t\u00eb pronar\u00ebve t\u00eb pronave dhe t\u00eb ngjashme.<\/p>\n<p>Blockchain-i Ethereum p\u00ebrmban at\u00eb q\u00eb quhet gjendje e sistemit. Nd\u00ebrsa transaksionet kryhen, gjendja ndryshon nga fillestare n\u00eb aktuale. Transaksionet regjistrohen n\u00eb blloqe.<\/p>\n<h4>Blockchain-et publik\u00eb dhe privat\u00eb<\/h4>\n<p>\nDuhet theksuar se gjith\u00e7ka e th\u00ebn\u00eb \u00ebsht\u00eb e v\u00ebrtet\u00eb vet\u00ebm p\u00ebr ato q\u00eb quhen rrjete publike blockchain, t\u00eb cilat nuk mund t\u00eb kontrollohen nga asnj\u00eb individ fizik ose juridik, agjenci shtet\u00ebrore ose qeveri. <br \/>\nAto q\u00eb quhen rrjete private blockchain jan\u00eb n\u00ebn kontrollin e plot\u00eb t\u00eb krijuesve t\u00eb tyre, dhe aty \u00ebsht\u00eb e mundur gjith\u00e7ka, p\u00ebr shembull, z\u00ebvend\u00ebsimi i plot\u00eb i t\u00eb gjitha blloqeve t\u00eb zinxhirit.<\/p>\n<h4>Aplikimet praktike t\u00eb blockchain-it<\/h4>\n<p>\nP\u00ebr \u00e7far\u00eb mund t\u00eb p\u00ebrdoret blockchain-i?<\/p>\n<p>N\u00ebse flasim shkurt, blockchain-i lejon kryerjen e operacioneve (transaksioneve) n\u00eb m\u00ebnyr\u00eb t\u00eb sigurt midis personave ose kompanive q\u00eb nuk kan\u00eb besim n\u00eb nj\u00ebra-tjetr\u00ebn. T\u00eb dh\u00ebnat e regjistruara n\u00eb blockchain (transaksione, t\u00eb dh\u00ebna personale, dokumente, d\u00ebshmi, kontrata, faturat etj.) nuk mund t\u00eb falsifikohen ose z\u00ebvend\u00ebsohen pas regjistrimit. Prandaj, mbi baz\u00ebn e blockchain-it mund t\u00eb krijohen, p\u00ebr shembull, regjistra t\u00eb besuesh\u00ebm t\u00eb shp\u00ebrndar\u00eb p\u00ebr dokumente t\u00eb ndryshme.<\/p>\n<p>Sigurisht, ju e dini se sistemet e kriptomonedhave krijohen mbi baz\u00ebn e bllokadave, t\u00eb destinuara t\u00eb z\u00ebvend\u00ebsojn\u00eb parat\u00eb e zakonshme t\u00eb papel shume. Parat\u00eb e papel quhen gjithashtu fiat (nga Fiat Money).<br \/>\nBllokada siguron ruajtjen dhe pandryshueshm\u00ebrin\u00eb e transaksioneve t\u00eb shkruara n\u00eb blloqe, prandaj ajo mund t\u00eb p\u00ebrdoret p\u00ebr krijimin e sistemeve t\u00eb kriptomonedhave. Ajo p\u00ebrmban t\u00eb gjith\u00eb historin\u00eb e transferimeve t\u00eb fondeve kripto nd\u00ebrmjet p\u00ebrdoruesve t\u00eb ndrysh\u00ebm (akuantave), dhe \u00e7do operacion mund t\u00eb gjurmohen.<\/p>\n<p>Edhe pse operacionet brenda sistemeve t\u00eb kriptomonedhave mund t\u00eb jen\u00eb anonime, t\u00ebrheqja e kriptomonedhave dhe shk\u00ebmbimi i saj me para fiat zakonisht \u00e7on n\u00eb zb\u00ebrthimin e identitetit t\u00eb pronarit t\u00eb aktivin t\u00eb kriptomonedh\u00ebs. <\/p>\n<p>Kontratat e quajtura smart, q\u00eb p\u00ebrb\u00ebjn\u00eb softuer q\u00eb funksionon n\u00eb rrjetin Ethereum, lejojn\u00eb automatizimin e procesit t\u00eb n\u00ebnshkrimit t\u00eb marr\u00ebveshjeve dhe kontrollin e p\u00ebrmbushjes s\u00eb tyre. Kjo \u00ebsht\u00eb ve\u00e7an\u00ebrisht efektive n\u00ebse pagesa p\u00ebr marr\u00ebveshjen b\u00ebhet me kriptomonedh\u00ebn Ether.<\/p>\n<p>Bllokada Ethereum dhe kontratat smart Ethereum, t\u00eb shkruara n\u00eb gjuh\u00ebn e programimit Solidity, mund t\u00eb p\u00ebrdoren, p\u00ebr shembull, n\u00eb fushat e tilla:<\/p>\n<ul>\n<li>alternativa ndaj noteri p\u00ebr v\u00ebrtetimin e dokumenteve;<\/li>\n<li>ruajtja e regjistrit t\u00eb pasurive t\u00eb paluajtshme dhe informacionit mbi transaksionet me pasurit\u00eb e paluajtshme;<\/li>\n<li>ruajtja e informacionit mbi t\u00eb drejtat e autorit p\u00ebr objekte t\u00eb pron\u00ebsis\u00eb intelektuale (libra, imazhe, vepra muzikore etj.);<\/li>\n<li>krijimi i sistemeve t\u00eb votimit t\u00eb pavarur;<\/li>\n<li>sfera financiare dhe veprimtaria bankare;<\/li>\n<li>logjistika n\u00eb p\u00ebrmasat nd\u00ebrkomb\u00ebtare, ndjekja e l\u00ebvizjes s\u00eb ngarkesave;<\/li>\n<li>ruajtja e t\u00eb dh\u00ebnave personale si nj\u00eb analog i sistemit t\u00eb identifikimit;<\/li>\n<li>transaksione t\u00eb sigurta n\u00eb fush\u00ebn tregtare;<\/li>\n<li>ruajtja e rezultateve t\u00eb ekzaminimeve mjek\u00ebsore, si dhe historiku i procedurave t\u00eb caktuara;<\/li>\n<\/ul>\n<p><\/p>\n<h4>Problemet me blockchain-in;<\/h4>\n<p>\nPor, sigurisht, nuk \u00ebsht\u00eb gjith\u00e7ka kaq e thjesht\u00eb si\u00e7 mund t\u00eb duket! <\/p>\n<p>Ka probleme me verifikimin e t\u00eb dh\u00ebnave para se ato t\u00eb shtohen n\u00eb blockchain (p\u00ebr shembull, a jan\u00eb t\u00eb falsifikuara?), probleme n\u00eb sigurin\u00eb e softuerit sistemor dhe aplikativ q\u00eb p\u00ebrdoret p\u00ebr pun\u00ebn me blockchain-in, probleme me mund\u00ebsin\u00eb e p\u00ebrdorimit t\u00eb metodave t\u00eb ingjinjeris\u00eb sociale p\u00ebr t\u00eb vjedhur qasjen n\u00eb portofolat me kriptovaluta etj.<\/p>\n<p>P\u00ebrs\u00ebri, n\u00ebse b\u00ebhet fjal\u00eb p\u00ebr nj\u00eb blockchain privat, i cili i p\u00ebrket nj\u00eb personi ose organizate dhe jo p\u00ebr nj\u00eb blockchain publik me node t\u00eb shp\u00ebrndara n\u00eb t\u00eb gjith\u00eb bot\u00ebn, niveli i besimit k\u00ebtu do t\u00eb jet\u00eb vet\u00ebm aq sa \u00ebsht\u00eb forca e besimit ndaj k\u00ebtij personi apo organizate.<\/p>\n<p>Duhet gjithashtu t\u00eb merret parasysh se t\u00eb dh\u00ebnat e regjistruara n\u00eb blockchain b\u00ebhen t\u00eb disponueshme p\u00ebr t\u00eb gjith\u00eb. N\u00eb k\u00ebt\u00eb kuptim, blockchain (ve\u00e7an\u00ebrisht publik) nuk \u00ebsht\u00eb i p\u00ebrshtatsh\u00ebm p\u00ebr ruajtjen e informacionit konfidencial. Megjithat\u00eb, fakti q\u00eb informacioni n\u00eb blockchain nuk mund t\u00eb ndryshohet mund t\u00eb ndihmoj\u00eb n\u00eb parandalimin ose hetimin e llojeve t\u00eb ndryshme t\u00eb mashtrimeve.<\/p>\n<p>Aplikacionet e decentralizuara t\u00eb Ethereum do t\u00eb ishin m\u00eb t\u00eb lehta p\u00ebr t'u p\u00ebrdorur n\u00ebse paguhen me kriptovaluta. Sa m\u00eb shum\u00eb njer\u00ebz q\u00eb zot\u00ebrojn\u00eb kriptovaluta ose jan\u00eb t\u00eb gatsh\u00ebm t'i blejn\u00eb ato, aq m\u00eb shum\u00eb do t\u00eb popullohen aplikacionet DApp dhe smart kontratat.<\/p>\n<p>Mes problemeve t\u00eb zakonshme t\u00eb blockchain-it q\u00eb pengojn\u00eb aplikimin e tij praktik, mund t\u00eb p\u00ebrmenden shpejt\u00ebsia e kufizuar e shtimit t\u00eb bllokut t\u00eb ri dhe koston relativisht t\u00eb lart\u00eb t\u00eb transaksioneve. Por teknologjit\u00eb n\u00eb k\u00ebt\u00eb fush\u00eb po zhvillohen intensivisht, dhe ka shpresa se problemet teknike do t\u00eb zgjidhen me kalimin e koh\u00ebs.<\/p>\n<p>Nj\u00eb problem tjet\u00ebr \u00ebsht\u00eb se kontratat inteligjente t\u00eb blockchain-it Ethereum funksionojn\u00eb n\u00eb nj\u00eb mjedis t\u00eb izoluar t\u00eb makinave virtuale, dhe nuk kan\u00eb akses n\u00eb t\u00eb dh\u00ebna nga bota reale. N\u00eb ve\u00e7anti, p\u00ebr programin e kontrat\u00ebs inteligjente nuk \u00ebsht\u00eb e mundur t\u00eb lexoj\u00eb t\u00eb dh\u00ebna nga faqet e internetit ose ndonj\u00eb pajisje fizike (sensor\u00eb, kontakte etj.), as nuk mund t\u00eb dal\u00eb me t\u00eb dh\u00ebna n\u00eb pajisje t\u00eb jashtme. Ky problem dhe m\u00ebnyrat e zgjidhjes s\u00eb tij do t\u00eb diskutohen n\u00eb or\u00ebn e dedikuar Oracle-ve \u2014 nd\u00ebrmjet\u00ebsve informativ\u00eb t\u00eb kontratave inteligjente.<\/p>\n<p>Ka\u00e7ka kufizime ekzistojn\u00eb n\u00eb fush\u00ebn e legjislacionit. N\u00eb disa vende, p\u00ebr shembull, p\u00ebrdorimi i kriptomonedh\u00ebs si mjete pagese ndalohet, por mund t\u00eb mbash at\u00eb si nj\u00eb aset digjital, si\u00e7 jan\u00eb gjithashtu titujt e tregtis\u00eb. K\u00ebto asete mund t\u00eb blihen dhe shiten n\u00eb bursa. N\u00eb \u00e7do rast, kur krijoni nj\u00eb projekt q\u00eb funksionon me kriptomonedha, duhet t\u00eb njiheni me legjislacionin e atij vendi n\u00ebn juridiksionin e t\u00eb cilit bie projekti juaj.<\/p>\n<h3>Si formohet zinxhiri i blockchain<\/h3>\n<p>\nSi\u00e7 e tham\u00eb m\u00eb par\u00eb, blockchain paraqet nj\u00eb zinxhir t\u00eb thjesht\u00eb blokesh t\u00eb dh\u00ebnash. N\u00eb fillim, formohet blloku i par\u00eb i k\u00ebtij zinxhiri, pastaj i shtohet blloku i dyt\u00eb dhe k\u00ebshtu me radh\u00eb. Supozohet se t\u00eb dh\u00ebnat e transaksioneve ruhen n\u00eb blloqe dhe shtohen n\u00eb bllokun m\u00eb t\u00eb fundit.<\/p>\n<p>N\u00eb fig. 1.1 kemi treguar variantin m\u00eb t\u00eb thjesht\u00eb t\u00eb sekuenc\u00ebs s\u00eb bllok\u00ebve, ku blloku i par\u00eb i referohet t\u00eb ardhsh\u00ebm. <\/p>\n<p><img decoding=\"async\" alt=\"Libri \u00abKrijimi i Kontratave t\u00eb Men\u00e7ura Solidity p\u00ebr Blockchainin Ethereum. Udh\u00ebzues Praktik\u00bb\" src=\"\/wp-content\/uploads\/2019\/10\/23ca04ba2c8914334032523d01bf8b80.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Fig. 1.1. Sekuenca e thjesht\u00eb e bllok\u00ebve<\/i><\/p>\n<p>Megjithat\u00eb, n\u00eb k\u00ebt\u00eb variant, \u00ebsht\u00eb shum\u00eb leht\u00eb t\u00eb falsifikosh p\u00ebrmbajtjen e \u00e7do blloku n\u00eb zinxhir, pasi blloqet nuk p\u00ebrmbajn\u00eb asnj\u00eb informacion p\u00ebr mbrojtjen nga ndryshimi. Duke marr\u00eb parasysh se blockchain \u00ebsht\u00eb i destinuar p\u00ebr p\u00ebrdorim nga njer\u00ebz dhe kompani q\u00eb nuk kan\u00eb besim, mund t\u00eb p\u00ebrfundojm\u00eb se nj\u00eb m\u00ebnyr\u00eb e till\u00eb ruajtjeje t\u00eb dh\u00ebnash nuk p\u00ebrshtatet p\u00ebr blockchain.<\/p>\n<p>Le t\u00eb merremi me mbrojtjen e blloqeve nga falsifikimi. N\u00eb faz\u00ebn e par\u00eb, do t\u00eb provojm\u00eb t\u00eb mbrojm\u00eb \u00e7do bllok me nj\u00eb kontrolle (Figura 1.2).<\/p>\n<p><img decoding=\"async\" alt=\"Libri \u00abKrijimi i Kontratave t\u00eb Men\u00e7ura Solidity p\u00ebr Blockchainin Ethereum. Udh\u00ebzues Praktik\u00bb\" src=\"\/wp-content\/uploads\/2019\/10\/141502accec14e868a9382c612cfc791.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Figura 1.2. Shtimi i mbrojtjes s\u00eb t\u00eb dh\u00ebnave t\u00eb bllok\u00ebve me nj\u00eb kontrolle<\/i><\/p>\n<p>Tani, nj\u00eb sulmues nuk mund ta ndryshoj\u00eb thjesht bllokun, pasi ai p\u00ebrmban nj\u00eb kontroll t\u00eb t\u00eb dh\u00ebnave t\u00eb bllokut. Kontrolli i kontrollit do t\u00eb tregoj\u00eb q\u00eb t\u00eb dh\u00ebnat jan\u00eb ndryshuar.<\/p>\n<p>P\u00ebr t\u00eb llogaritur kontrollin, mund t\u00eb p\u00ebrdorni nj\u00eb nga funksionet e hash-it, si\u00e7 jan\u00eb MD-5, SHA-1, SHA-256 etj. Funksionet e hash-it llogarisin nj\u00eb vler\u00eb t\u00eb caktuar (p.sh., n\u00eb form\u00ebn e nj\u00eb vargu tekstual me gjat\u00ebsi t\u00eb vazhdueshme) si rezultat i ekzekutimit t\u00eb funksioneve t\u00eb pakthyeshme mbi bllokun e t\u00eb dh\u00ebnave. Operacionet varen nga lloji i funksionit t\u00eb hash-it. <\/p>\n<p>Edhe me nj\u00eb ndryshim t\u00eb vog\u00ebl n\u00eb p\u00ebrmbajtjen e bllokut t\u00eb dh\u00ebnash, vlera e funksionit hash do t\u00eb ndryshoj\u00eb gjithashtu. Duke analizuar vler\u00ebn e funksionit hash, nuk \u00ebsht\u00eb e mundur t\u00eb rikuperohet blloku i t\u00eb dh\u00ebnave p\u00ebr t\u00eb cilin \u00ebsht\u00eb llogaritur ajo.<\/p>\n<p>A do t\u00eb jet\u00eb e mjaftueshme nj\u00eb mbrojtje e till\u00eb? Fatkeq\u00ebsisht, jo.<\/p>\n<p>N\u00eb k\u00ebt\u00eb skem\u00eb, suma kontrolli (funksioni hash) mbron vet\u00ebm blloqet individuale, por jo t\u00eb gjith\u00eb zinxhirin e blloqeve. Duke ditur algoritmin p\u00ebr llogaritjen e funksionit hash, nj\u00eb sulmues mund ta ndryshoj\u00eb leht\u00ebsisht p\u00ebrmbajtjen e bllokut. Asgj\u00eb nuk e ndalon at\u00eb t\u00eb fshij\u00eb blloqet nga zinxhiri ose t\u00eb shtoj\u00eb t\u00eb reja.<\/p>\n<p>P\u00ebr t\u00eb mbrojtur t\u00eb gjith\u00eb zinxhirin si nj\u00eb t\u00ebr\u00ebsi, mund t\u00eb ruhet n\u00eb secilin bllok, s\u00eb bashku me t\u00eb dh\u00ebnat, gjithashtu edhe hash-in e t\u00eb dh\u00ebnave t\u00eb bllokut t\u00eb m\u00ebparsh\u00ebm (Figura 1.3).<\/p>\n<p><img decoding=\"async\" alt=\"Libri \u00abKrijimi i Kontratave t\u00eb Men\u00e7ura Solidity p\u00ebr Blockchainin Ethereum. Udh\u00ebzues Praktik\u00bb\" src=\"\/wp-content\/uploads\/2019\/10\/f414ab67dbabc763c537a430e01ed065.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Figura 1.3. Shtojm\u00eb n\u00eb bllokun e dh\u00ebnave hash-in e bllokut t\u00eb m\u00ebparsh\u00ebm<\/i><\/p>\n<p>N\u00eb k\u00ebt\u00eb skem\u00eb, p\u00ebr t\u00eb ndryshuar ndonj\u00eb bllok, duhet t\u00eb ri-llogaritet funksioni hash i t\u00eb gjith\u00eb blloqeve pasues. Duket sikur, \u00e7far\u00eb problemi ka?<\/p>\n<p>N\u00eb blloqet e v\u00ebrtet\u00eb, jan\u00eb krijuar v\u00ebshtir\u00ebsi artificiale p\u00ebr t\u00eb shtuar blloqe t\u00eb reja \u2014 algoritmet p\u00ebrdoren q\u00eb k\u00ebrkojn\u00eb shum\u00eb burime kompjuterike. Duke pasur parasysh se p\u00ebr t\u00eb b\u00ebr\u00eb ndryshime n\u00eb nj\u00eb bllok, duhet t\u00eb ri-kalkulohet jo vet\u00ebm ky bllok, por t\u00eb gjith\u00eb ata q\u00eb pasojn\u00eb, do t\u00eb jet\u00eb jasht\u00ebzakonisht e v\u00ebshtir\u00eb.<\/p>\n<p>Le t\u00eb kujtojm\u00eb gjithashtu se t\u00eb dh\u00ebnat e blockchain-it ruhen (duplikohen) n\u00eb shum\u00eb node t\u00eb rrjetit, pra p\u00ebrdoret ruajtja e decentralizuar. Kjo e komplikon shum\u00eb falsifikimin e bllokut, sepse ndryshime duhet t\u00eb b\u00ebhen n\u00eb t\u00eb gjitha node-t e rrjetit.<\/p>\n<p>Pasi blloqet mbajn\u00eb informacion rreth bllokut t\u00eb m\u00ebparsh\u00ebm, mund t\u00eb kontrollohet p\u00ebrmbajtja e t\u00eb gjith\u00eb blloqeve n\u00eb zinxhir.<\/p>\n<h3>Blockchain Ethereum<\/h3>\n<p>\nBlockchain Ethereum p\u00ebrfaq\u00ebson nj\u00eb platform\u00eb mbi t\u00eb cil\u00ebn mund t\u00eb krijohen aplikacione t\u00eb shp\u00ebrndara DApp. Ndryshe nga platforma t\u00eb tjera, Ethereum lejon p\u00ebrdorimin e ashtuquajturve kontrata t\u00eb men\u00e7ura (smart contracts), t\u00eb shkruara n\u00eb gjuh\u00ebn e programimit Solidity.<\/p>\n<p>Kjo platform\u00eb u krijua n\u00eb vitin 2013 nga Vitalik Buterin, themeluesi i revist\u00ebs Bitcoin Magazine, dhe u lan\u00e7ua n\u00eb vitin 2015. \u00c7do gj\u00eb q\u00eb do t\u00eb studiojm\u00eb ose b\u00ebjm\u00eb n\u00eb kursin ton\u00eb nd\u00ebrlidhet pik\u00ebrisht me blockchain-in Ethereum dhe kontratat inteligjente Solidity.<\/p>\n<h3>Minimi ose si krijohen blloqet<\/h3>\n<p>\nMinimi (mining) \u00ebsht\u00eb nj\u00eb proces mjaft i nd\u00ebrlikuar dhe i k\u00ebrkuesh\u00ebm p\u00ebr burime p\u00ebr shtimin e blloqeve t\u00eb reja n\u00eb zinxhirin e blockchain-it, dhe aspak \u00abshk\u00ebputja e kriptovalutave\u00bb. Minimi siguron funksionalitetin e blockchain-it, pasi ky proces \u00ebsht\u00eb p\u00ebrgjegj\u00ebs p\u00ebr shtimin e transaksioneve n\u00eb blockchain-in Ethereum.<\/p>\n<p>Njer\u00ebzit dhe organizatat q\u00eb merret me shtimin e blloqeve quhen minator\u00eb (miner).<br \/>\nSoftware-i (SO) q\u00eb punon n\u00eb nyjat e minator\u00ebve p\u00ebrpiqet t\u00eb gjej\u00eb p\u00ebr bllokun e fundit parametrin e hash-it t\u00eb quajtur Nonce, p\u00ebr t\u00eb arritur nj\u00eb vler\u00eb t\u00eb caktuar t\u00eb funksionit hash t\u00eb caktuar nga rrjeti. Algoritmi i hashing-ut Ethash, i aplikuar n\u00eb Ethereum, lejon arritjen e vler\u00ebs Nonce vet\u00ebm p\u00ebrmes nj\u00eb provimi t\u00eb vazhduesh\u00ebm. <\/p>\n<p>N\u00ebse nyja e minerit ka gjetur vler\u00ebn e sakt\u00eb t\u00eb Nonce, kjo \u00ebsht\u00eb ajo q\u00eb quhet prov\u00eb pune (PoW, Proof-of-work). N\u00eb k\u00ebt\u00eb rast, n\u00ebse blloku shtohet n\u00eb rrjetin Ethereum, miner\u00ebt fitojn\u00eb nj\u00eb shp\u00ebrblim t\u00eb caktuar n\u00eb monedh\u00ebn e rrjetit \u2014 Ether. N\u00eb momentin e p\u00ebrgatitjes s\u00eb librit ton\u00eb, shp\u00ebrblimi \u00ebsht\u00eb 5 Ether, megjithat\u00eb me kalimin e koh\u00ebs ai do t\u00eb ulet.<\/p>\n<p>K\u00ebshtu, miner\u00ebt e Ethereum sigurojn\u00eb funksionimin e rrjetit duke shtuar blloqe dhe p\u00ebr k\u00ebt\u00eb marrin para t\u00eb kriptomonedh\u00ebs. N\u00eb internet do t\u00eb gjeni nj\u00eb sasi t\u00eb madhe informacioni rreth miner\u00ebve dhe minerit, nd\u00ebrsa ne do t\u00eb p\u00ebrqendrohemi n\u00eb krijimin e kontratave Solidity dhe aplikacioneve t\u00eb decentralizuara DApp n\u00eb rrjetin Ethereum.<\/p>\n<h3>P\u00ebrfundimet e m\u00ebsimit<\/h3>\n<p>\nN\u00eb m\u00ebsimin e par\u00eb, ju u njoftuat me teknologjin\u00eb blockchain dhe m\u00ebsuat se ajo p\u00ebrb\u00ebn nj\u00eb sekuenc\u00eb bllokesh t\u00eb strukturuara n\u00eb nj\u00eb m\u00ebnyr\u00eb t\u00eb ve\u00e7ant\u00eb. P\u00ebrmbajtja e blloqeve t\u00eb regjistruara m\u00eb par\u00eb nuk mund t\u00eb ndryshohet, pasi kjo do t\u00eb k\u00ebrkonte rind\u00ebrritjen e t\u00eb gjith\u00eb blloqeve t\u00eb m\u00ebpasshme n\u00eb shum\u00eb nyje t\u00eb rrjetit, gj\u00eb q\u00eb k\u00ebrkon shum\u00eb burime dhe koh\u00eb.<\/p>\n<p>Blockchain mund t\u00eb p\u00ebrdoret p\u00ebr t\u00eb ruajtur rezultatet e transaksioneve. Q\u00ebllimi i tij kryesor \u00ebsht\u00eb organizimi i nj\u00eb ekzekutimi t\u00eb sigurt t\u00eb transaksioneve midis pal\u00ebve ( individ\u00ebve dhe organizatave) t\u00eb cilat nuk kan\u00eb besim t\u00eb nd\u00ebrsjell\u00eb. Ju keni m\u00ebsuar n\u00eb cilat fusha specifike t\u00eb biznesit dhe n\u00eb cilat sektor\u00eb mund t\u00eb p\u00ebrdoret blockchain Ethereum dhe kontratat inteligjente Solidity. Kjo p\u00ebrfshin sektorin bankar, regjistrimin e t\u00eb drejtave t\u00eb pron\u00ebsis\u00eb, dokumenteve etj.<\/p>\n<p>Ju gjithashtu keni m\u00ebsuar se gjat\u00eb p\u00ebrdorimit t\u00eb blockchain-it mund t\u00eb ndodhin probleme t\u00eb ndryshme. K\u00ebto p\u00ebrfshijn\u00eb problemet e verifikimit t\u00eb informacionit t\u00eb shtuar n\u00eb blockchain, shpejt\u00ebsin\u00eb e pun\u00ebs s\u00eb blockchain-it, kostot e transaksioneve, problemin e shk\u00ebmbimit t\u00eb t\u00eb dh\u00ebnave midis kontratave inteligjente dhe bot\u00ebs reale, si dhe sulmet potenciale nga hackerat, t\u00eb cilat synojn\u00eb t\u00eb vjedhin fondet kripto nga llogarit\u00eb e p\u00ebrdoruesve.<\/p>\n<p>Gjithashtu, ne p\u00ebrmend\u00ebm n\u00eb m\u00ebnyr\u00eb t\u00eb shkurt\u00ebr minier\u00ebn si procesin e shtimit t\u00eb blloqeve t\u00eb reja n\u00eb blockchain. Miniera \u00ebsht\u00eb e nevojshme p\u00ebr kryerjen e transaksioneve. Ata q\u00eb merret me minier\u00ebn sigurojn\u00eb funksionalitetin e blockchain-it dhe marrin nj\u00eb shp\u00ebrblim n\u00eb kriptovalut\u00eb p\u00ebr k\u00ebt\u00eb.<\/p>\n<p><b class=\"spoiler_title\">M\u00ebsimi 2. P\u00ebrgatitja e mjedisit t\u00eb pun\u00ebs n\u00eb sistemet operative Ubuntu dhe Debian<\/b>Zgjedhja e sistemit operativ<br \/>\nInstalimi i utilitar\u00ebve t\u00eb nevojsh\u00ebm<br \/>\nInstalimi i Geth dhe Swarm n\u00eb Ubuntu<br \/>\nInstalimi i Geth dhe Swarm n\u00eb Debian<br \/>\nP\u00ebrgatitja paraprake<br \/>\nShkarkimi i distribucionit Go<br \/>\nInstalimi i variablave t\u00eb ambientit<br \/>\nKontrolli i versionit t\u00eb Go<br \/>\nInstalimi i Geth dhe Swarm<br \/>\nKrijimi i nj\u00eb blockchain privat<br \/>\n\u0413\u043e\u0442\u043e\u0432\u0438\u043c \u0444\u0430\u0439\u043b genesis.json<br \/>\nKrijimi i nj\u00eb katalogu p\u00ebr pun\u00eb<br \/>\nKrijimi i nj\u00eb llogarie<br \/>\nNisja e inicializimit t\u00eb nodit<br \/>\nParametrat e nisjes s\u00eb nodit<br \/>\nLidhja me nodin ton\u00eb<br \/>\nMenaxhimi i minimit dhe kontrolli i bilancit<br \/>\nMbyllja e konsol\u00ebs Geth<br \/>\nP\u00ebrfundimet e m\u00ebsimit<\/p>\n<p><b class=\"spoiler_title\">M\u00ebsimi 3. P\u00ebrgatitja e mjedisit t\u00eb pun\u00ebs n\u00eb Raspberry Pi 3<\/b>P\u00ebrgatitja e Raspberry Pi 3 p\u00ebr pun\u00eb<br \/>\nInstalimi i Raspbian<br \/>\nInstalimi i azhurnimeve<br \/>\nAktivizimi i aksesit SSH<br \/>\nInstalimi i nj\u00eb adrese IP statike<br \/>\nInstalimi i utilitar\u00ebve t\u00eb nevojsh\u00ebm<br \/>\nInstalimi i Go<br \/>\nShkarkimi i distribucionit Go<br \/>\nInstalimi i variablave t\u00eb ambientit<br \/>\nKontrolli i versionit t\u00eb Go<br \/>\nInstalimi i Geth dhe Swarm<br \/>\nKrijimi i nj\u00eb blockchain privat<br \/>\nKontrolli i llogaris\u00eb dhe bilancit<br \/>\nP\u00ebrfundimet e m\u00ebsimit<\/p>\n<p><b class=\"spoiler_title\">M\u00ebsimi 4. Llogarit\u00eb dhe transferimi i fondeve midis llogarive<\/b>Shikimi dhe shtimi i llogarive<br \/>\nShikimi i list\u00ebs s\u00eb llogarive<br \/>\nShtimi i nj\u00eb llogarie<br \/>\nParametrat e komand\u00ebs geth account<br \/>\nFjal\u00ebkalimet e llogarive<br \/>\nKriptovaluta n\u00eb Ethereum<br \/>\nNj\u00ebsit\u00eb monetare t\u00eb Ethereum<br \/>\nP\u00ebrkufizimi i bilancit aktual t\u00eb llogarive tona<br \/>\nTransferimi i fondeve nga nj\u00eb llogari n\u00eb tjetr\u00ebn<br \/>\nMetoda eth.sendTransaction<br \/>\nShikimi i gjendjes s\u00eb transaksionit<br \/>\nT\u00eb dh\u00ebnat e transaksionit<br \/>\nP\u00ebrfundimet e m\u00ebsimit<\/p>\n<p><b class=\"spoiler_title\">Leksioni 5. Publikimi i kontrat\u00ebs s\u00eb par\u00eb<\/b>Kontratat Smart n\u00eb Ethereum<br \/>\nEkzekutimi i kontrat\u00ebs Smart<br \/>\nMakin\u00eb virtuale Ethereum<br \/>\nAmbienti i integruar i zhvillimit Remix Solidity IDE<br \/>\nFillimi i kompilimit<br \/>\nThirrja e funksioneve t\u00eb kontrat\u00ebs<br \/>\nPublikimi i kontrat\u00ebs n\u00eb nj\u00eb rrjet privat<br \/>\nMarrja e p\u00ebrcaktimit ABI dhe kodit binar t\u00eb kontrat\u00ebs<br \/>\nPublikimi i kontrat\u00ebs<br \/>\nKontrollimi i gjendjes s\u00eb transaksionit t\u00eb publikimit t\u00eb kontrat\u00ebs<br \/>\nThirrja e funksioneve t\u00eb kontrat\u00ebs<br \/>\nKompilatori i paket\u00ebs solc<br \/>\nInstalimi i solc n\u00eb Ubuntu<br \/>\nInstalimi i solc n\u00eb Debian<br \/>\nKompilim i kontrat\u00ebs HelloSol<br \/>\nPublikimi i kontrat\u00ebs<br \/>\nInstalimi i solc n\u00eb Rasberian<br \/>\nP\u00ebrfundimet e m\u00ebsimit<\/p>\n<p><b class=\"spoiler_title\">\u0423\u0440\u043e\u043a 6. \u0421\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u0438 Node.js<\/b>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Node.js<br \/>\nInstalimi n\u00eb Ubuntu<br \/>\nInstalimi n\u00eb Debian<br \/>\nInstalimi dhe ekzekutimi i Ganache-cli<br \/>\nInstalimi i Web3<br \/>\nInstalimi i solc<br \/>\nInstalimi i Node.js n\u00eb Rasberian<br \/>\nSkripti p\u00ebr t\u00eb marr\u00eb list\u00ebn e llogarive n\u00eb konsol\u00eb<br \/>\nSkripti p\u00ebr publikimin e kontrat\u00ebs smart<br \/>\nEkzekutimi dhe marrja e parametrave<br \/>\nMarrja e parametrave t\u00eb ekzekutimit<br \/>\nKompilimi i kontrat\u00ebs<br \/>\n\u00c7lirimi i llogaris\u00eb<br \/>\nNgarkimi i ABI dhe kodit binar t\u00eb kontrat\u00ebs<br \/>\nVler\u00ebsimi i sasis\u00eb s\u00eb gazit t\u00eb nevojsh\u00ebm<br \/>\nKrijimi i objektit dhe nisja e publikimit t\u00eb kontrat\u00ebs<br \/>\nEkzekutimi i skriptit p\u00ebr publikimin e kontrat\u00ebs<br \/>\nThirrja e funksioneve t\u00eb kontrat\u00ebs smart<br \/>\nA \u00ebsht\u00eb e mundur p\u00ebrdit\u00ebsimi i kontrat\u00ebs smart t\u00eb publikuar<br \/>\nPuna me Web3 version 1.0.x<br \/>\nMarrim list\u00ebn e llogarive<br \/>\nPublikimi i kontrat\u00ebs<br \/>\nThirrja e funksioneve t\u00eb kontrat\u00ebs<br \/>\nTransferimi i fondeve nga nj\u00eb llogari n\u00eb tjetr\u00ebn<br \/>\nTransferimi i fondeve n\u00eb llogarin\u00eb e kontrat\u00ebs<br \/>\nP\u00ebrdit\u00ebsimi i kontraktit inteligjent HelloSol<br \/>\nKrijimi i skriptit p\u00ebr t\u00eb par\u00eb bilancin e llogaris\u00eb<br \/>\n\u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0432\u044b\u0437\u043e\u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 getBalance \u0432 \u0441\u043a\u0440\u0438\u043f\u0442 call_contract_get_promise.js<br \/>\nRimbushja e llogaris\u00eb s\u00eb kontraktit inteligjent<br \/>\nP\u00ebrfundimet e m\u00ebsimit<\/p>\n<p><b class=\"spoiler_title\">M\u00ebsimi 7. Hyrje n\u00eb Truffle<\/b>Instalimi i Truffle<br \/>\nKrijimi i projektit HelloSol<br \/>\nKrijimi i katalogut dhe skedave t\u00eb projektit<br \/>\nKatalogu contracts<br \/>\nKatalogu migrations<br \/>\nKatalogu test<br \/>\n\u0424\u0430\u0439\u043b truffle-config.js<br \/>\nKompilim i kontrat\u00ebs HelloSol<br \/>\nKryerja e publikimit t\u00eb kontraktit<br \/>\nThirrja e funksioneve t\u00eb kontraktit HelloSol n\u00eb thirrjet Truffle<br \/>\n\u0412\u044b\u0437\u043e\u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u0430 HelloSol \u0438\u0437 \u0441\u043a\u0440\u0438\u043f\u0442\u0430 JavaScript \u043f\u043e\u0434 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c Node.js<br \/>\nInstalimi i modulit truffle-contract<br \/>\nThirrja e funksioneve t\u00eb kontraktit getValue dhe getString<br \/>\nThirrja e funksioneve t\u00eb kontraktit setValue dhe setString<br \/>\nModifikimi i kontraktit dhe ribotimi<br \/>\nPuna me Web3 version 1.0.x<br \/>\nB\u00ebjm\u00eb ndryshime n\u00eb kontraktin inteligjent HelloSol<br \/>\nSkriptet p\u00ebr thirrjen e metodave t\u00eb kontraktit<br \/>\nTestimi n\u00eb Truffle<br \/>\nTest n\u00eb Solidity<br \/>\nTest n\u00eb JavaScript<br \/>\nP\u00ebrfundimet e m\u00ebsimit<\/p>\n<p><b class=\"spoiler_title\">M\u00ebsimi 8. Llojet e t\u00eb dh\u00ebnave n\u00eb Solidity<\/b>Kontrakti p\u00ebr studimin e llojeve t\u00eb t\u00eb dh\u00ebnave<br \/>\nLlojet logjike t\u00eb t\u00eb dh\u00ebnave<br \/>\nNumra t\u00eb padiskutuesh\u00ebm dhe numra t\u00eb plot\u00eb me shenj\u00eb<br \/>\nNumra me pik\u00eb fikse<br \/>\nAdresa<br \/>\nVariablat e tipeve komplekse<br \/>\nArrays me madh\u00ebsi fikse<br \/>\nArrays dinamike<br \/>\nEnumerimi<br \/>\nStrukturat<br \/>\nDictionaries mapping<br \/>\nP\u00ebrfundimet e m\u00ebsimit<\/p>\n<p><b class=\"spoiler_title\">M\u00ebsimi 9. Migrimi i kontraktave n\u00eb rrjetin privat dhe n\u00eb rrjetin Rinkeby<\/b>Publikimi i kontraktit nga Truffle n\u00eb rrjetin privat Geth<br \/>\nP\u00ebrgatitja e nodit t\u00eb rrjetit privat<br \/>\nP\u00ebrgatitja e kontrat\u00ebs p\u00ebr operim<br \/>\nKompilimi dhe migrimi i kontrat\u00ebs n\u00eb rrjetin Truffle<br \/>\nStartimi i migrimit n\u00eb rrjetin lokal geth<br \/>\nNxjerrja e artefakteve Truffle<br \/>\nPublikimi i kontrat\u00ebs nga Truffle n\u00eb rrjetin testues Rinkeby<br \/>\nP\u00ebrgatitja e nodit Geth p\u00ebr t'u punuar me Rinkeby<br \/>\nSinkronizimi i nodit<br \/>\nShtimi i llogarive<br \/>\nPlot\u00ebsimi i llogaris\u00eb Rinkeby me Ethereum<br \/>\nStartimi i migrimit t\u00eb kontrat\u00ebs n\u00eb rrjetin Rinkeby<br \/>\nShikimi i informacionit rreth kontrat\u00ebs n\u00eb rrjetin Rinkeby<br \/>\nKonsola Truffle p\u00ebr rrjetin Rinkeby<br \/>\nNj\u00eb m\u00ebnyr\u00eb m\u00eb e thjesht\u00eb p\u00ebr t\u00eb thirrur funksionet e kontrat\u00ebs<br \/>\n\u0412\u044b\u0437\u043e\u0432 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u0430 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 Node.js<br \/>\nTransferimi i fondeve midis llogarive n\u00eb konsol\u00ebn Truffle p\u00ebr Rinkeby<br \/>\nP\u00ebrfundimet e m\u00ebsimit<\/p>\n<p><b class=\"spoiler_title\">M\u00ebsimi 10. Ruajtja e t\u00eb dh\u00ebnave t\u00eb decentralizuara n\u00eb Ethereum Swarm<\/b>Si funksionon Ethereum Swarm<br \/>\nInstalimi dhe startimi i Swarm<br \/>\nOperacionet me skedar\u00eb dhe katalog\u00eb<br \/>\nNgarkimi i skedarit n\u00eb Ethereum Swarm<br \/>\nLeximi i skedarit nga Ethereum Swarm<br \/>\nShikimi i manifestit t\u00eb skedarit t\u00eb ngarkuar<br \/>\nNgarkimi i katalog\u00ebve me n\u00ebn-katalog\u00eb<br \/>\nLeximi i skedarit nga katalogu i ngarkuar<br \/>\nP\u00ebrdorimi i kalimit publik t\u00eb Swarm<br \/>\n\u041e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043a Swarm \u0438\u0437 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 Node.js<br \/>\nModuli Perl Net::Ethereum::Swarm<br \/>\nInstalimi i modulit Net::Ethereum::Swarm<br \/>\nShkrimi dhe leximi i t\u00eb dh\u00ebnave<br \/>\nP\u00ebrfundimet e m\u00ebsimit<\/p>\n<p><b class=\"spoiler_title\">M\u00ebsimi 11. Korniza Web3.py p\u00ebr pun\u00eb me Ethereum n\u00eb Python<\/b>Instalimi i Web3.py<br \/>\nP\u00ebrdit\u00ebsimi dhe instalimi i paketave t\u00eb nevojshme<br \/>\nInstalimi i modulit easysolc<br \/>\nPublikimi i kontrat\u00ebs me Web3.py<br \/>\nKompilimi i kontrat\u00ebs<br \/>\nLidhja me ofruesin<br \/>\nKryerja e publikimit t\u00eb kontrat\u00ebs<br \/>\nRuajtja e adres\u00ebs s\u00eb kontrat\u00ebs dhe abi n\u00eb skedar<br \/>\nEkzekutimi i skriptit p\u00ebr publikimin e kontrat\u00ebs<br \/>\nThirrja e metodave t\u00eb kontrat\u00ebs<br \/>\nLeximi i adres\u00ebs dhe abi t\u00eb kontrat\u00ebs nga skedari JSON<br \/>\nLidhja me ofruesin<br \/>\nKrijimi i objektit t\u00eb kontrat\u00ebs<br \/>\nThirrja e metodave t\u00eb kontrat\u00ebs<br \/>\nTruffle dhe Web3.py<br \/>\nP\u00ebrfundimet e m\u00ebsimit<\/p>\n<p><b class=\"spoiler_title\">M\u00ebsimi 12. Orakujt<\/b>A mund t\u00eb besoj\u00eb nj\u00eb kontrat\u00eb e men\u00e7ur t\u00eb dh\u00ebnat nga bota e jashtme<br \/>\nOrakujt si nd\u00ebrmjet\u00ebs informacioni t\u00eb bllokut<br \/>\nBurimi i t\u00eb dh\u00ebnave<br \/>\nKodi p\u00ebr paraqitjen e t\u00eb dh\u00ebnave nga burimi<br \/>\nOrakulli p\u00ebr regjistrimin e kursit t\u00eb k\u00ebmbimit n\u00eb bllok<br \/>\nKontrata USDRateOracle<br \/>\nP\u00ebrdit\u00ebsimi i kursit t\u00eb k\u00ebmbimit n\u00eb kontrat\u00ebn e men\u00e7ur<br \/>\nP\u00ebrdorimi i ofruesit Web Socket<br \/>\nPr\u7b49\u5f85\u4e8b\u4ef6 RateUpdate<br \/>\nP\u00ebrpunimi i ngjarjes RateUpdate<br \/>\nIniciimi i p\u00ebrdit\u00ebsimit t\u00eb t\u00eb dh\u00ebnave n\u00eb kontrat\u00ebn e men\u00e7ur<br \/>\nP\u00ebrfundimet e m\u00ebsimit<\/p>\n<p>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/467347\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0411\u043e\u043b\u044c\u0448\u0435 \u0433\u043e\u0434\u0430 \u044f \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430\u0434 \u043a\u043d\u0438\u0433\u043e\u0439 \u00ab\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u043e\u0432 Solidity \u0434\u043b\u044f \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 Ethereum. \u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e\u00bb, \u0438 \u0432\u043e\u0442 \u0442\u0435\u043f\u0435\u0440\u044c \u044d\u0442\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430, \u0430 \u043a\u043d\u0438\u0433\u0430 \u0438\u0437\u0434\u0430\u043d\u0430 \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 \u041b\u0438\u0442\u0440\u0435\u0441\u0435. \u041d\u0430\u0434\u0435\u044e\u0441\u044c, \u043c\u043e\u044f \u043a\u043d\u0438\u0433\u0430 \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u043a \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u0432 Solidity \u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 DApp \u0434\u043b\u044f \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 Ethereum. \u041e\u043d\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 12 \u0443\u0440\u043e\u043a\u043e\u0432 \u0441 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u043c\u0438. \u0412\u044b\u043f\u043e\u043b\u043d\u0438\u0432 \u0438\u0445, \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":29275,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-39018","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-novosti-interneta"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0411\u043e\u043b\u044c\u0448\u0435 \u0433\u043e\u0434\u0430 \u044f \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430\u0434 \u043a\u043d\u0438\u0433\u043e\u0439 \u00ab\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u043e\u0432 Solidity \u0434\u043b\u044f \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 Ethereum. \u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e\u00bb, \u0438 \u0432\u043e\u0442 \u0442\u0435\u043f\u0435\u0440\u044c \u044d\u0442\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430, \u0430 \u043a\u043d\u0438\u0433\u0430 \u0438\u0437\u0434\u0430\u043d\u0430 \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 \u041b\u0438\u0442\u0440\u0435\u0441\u0435. \u041d\u0430\u0434\u0435\u044e\u0441\u044c, \u043c\u043e\u044f \u043a\u043d\u0438\u0433\u0430 \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u043a \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u0432 Solidity \u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 DApp \u0434\u043b\u044f \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 Ethereum. \u041e\u043d\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 12 \u0443\u0440\u043e\u043a\u043e\u0432 \u0441 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u043c\u0438. \u0412\u044b\u043f\u043e\u043b\u043d\u0438\u0432 \u0438\u0445, \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sq\/blog\/novosti-interneta\/kniga-sozdanie-smart-kontraktov-solidity-dlya-blokchejna-ethereum-prakticheskoe-rukovodstvo\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u043d\u0438\u0433\u0430 \u00ab\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u043e\u0432 Solidity \u0434\u043b\u044f \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 Ethereum. \u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e\u00bb | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0411\u043e\u043b\u044c\u0448\u0435 \u0433\u043e\u0434\u0430 \u044f \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430\u0434 \u043a\u043d\u0438\u0433\u043e\u0439 \u00ab\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u043e\u0432 Solidity \u0434\u043b\u044f \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 Ethereum. \u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e\u00bb, \u0438 \u0432\u043e\u0442 \u0442\u0435\u043f\u0435\u0440\u044c \u044d\u0442\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430, \u0430 \u043a\u043d\u0438\u0433\u0430 \u0438\u0437\u0434\u0430\u043d\u0430 \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 \u041b\u0438\u0442\u0440\u0435\u0441\u0435. \u041d\u0430\u0434\u0435\u044e\u0441\u044c, \u043c\u043e\u044f \u043a\u043d\u0438\u0433\u0430 \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u043a \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u0432 Solidity \u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 DApp \u0434\u043b\u044f \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 Ethereum. \u041e\u043d\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 12 \u0443\u0440\u043e\u043a\u043e\u0432 \u0441 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u043c\u0438. \u0412\u044b\u043f\u043e\u043b\u043d\u0438\u0432 \u0438\u0445, \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/novosti-interneta\/kniga-sozdanie-smart-kontraktov-solidity-dlya-blokchejna-ethereum-prakticheskoe-rukovodstvo\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:27:25+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:27:25+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Libri \u00abKrijimi i kontratave t\u00eb men\u00e7ura Solidity p\u00ebr blockchain-in Ethereum. Udh\u00ebzues praktik\u00bb | ProHoster","description":"P\u00ebr m\u00eb shum\u00eb se nj\u00eb vit kam punuar n\u00eb librin \"Krijimi i kontratave t\u00eb men\u00e7ura Solidity p\u00ebr bllokun Ethereum. Udh\u00ebzues praktik\", dhe tani ky pun\u00eb p\u00ebrfundoi, dhe lib\u00ebrn \u00ebsht\u00eb botuar dhe i disponuesh\u00ebm n\u00eb Litres. Shpresoj q\u00eb libri im do t\u00eb ndihmoj\u00eb t\u00eb filloni shpejt me krijimin e kontratave t\u00eb men\u00e7ura Solidity dhe aplikacioneve t\u00eb shp\u00ebrndara DApp p\u00ebr bllokun Ethereum. Ai p\u00ebrfshin 12 m\u00ebsime me detyra praktike. Duke i p\u00ebrfunduar ato, lexuesi","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/novosti-interneta\/kniga-sozdanie-smart-kontraktov-solidity-dlya-blokchejna-ethereum-prakticheskoe-rukovodstvo","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u043d\u0438\u0433\u0430 \u00ab\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u043e\u0432 Solidity \u0434\u043b\u044f \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 Ethereum. \u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e\u00bb | ProHoster","og:description":"\u0411\u043e\u043b\u044c\u0448\u0435 \u0433\u043e\u0434\u0430 \u044f \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430\u0434 \u043a\u043d\u0438\u0433\u043e\u0439 \u00ab\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u043e\u0432 Solidity \u0434\u043b\u044f \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 Ethereum. \u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e\u00bb, \u0438 \u0432\u043e\u0442 \u0442\u0435\u043f\u0435\u0440\u044c \u044d\u0442\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430, \u0430 \u043a\u043d\u0438\u0433\u0430 \u0438\u0437\u0434\u0430\u043d\u0430 \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 \u041b\u0438\u0442\u0440\u0435\u0441\u0435. \u041d\u0430\u0434\u0435\u044e\u0441\u044c, \u043c\u043e\u044f \u043a\u043d\u0438\u0433\u0430 \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u043a \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u0432 Solidity \u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 DApp \u0434\u043b\u044f \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 Ethereum. \u041e\u043d\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 12 \u0443\u0440\u043e\u043a\u043e\u0432 \u0441 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u043c\u0438. \u0412\u044b\u043f\u043e\u043b\u043d\u0438\u0432 \u0438\u0445, \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c","og:url":"https:\/\/prohoster.info\/sq\/blog\/novosti-interneta\/kniga-sozdanie-smart-kontraktov-solidity-dlya-blokchejna-ethereum-prakticheskoe-rukovodstvo","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:27:25+00:00","article:modified_time":"2019-10-31T19:27:25+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"39018","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-24 00:24:24","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 00:58:39","updated":"2026-01-24 00:24:24"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/39018","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=39018"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/39018\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/29275"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=39018"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=39018"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=39018"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}