Tiyn - Блокчейндегі қазақ ақшасы


Мен былтыр биткоин туралы мақаланы жазғаннан кейін блокчейн және криптовалюта саласына тереңірек үңілдім. Неше түрлі қызық жобалар бар екен. Мысалыға:
  • Sia — бұл платформада әр адам өзінің компьютеріндегі бос жатқан диск бөлімін басқаларға жалға бере алады. Жалға алушы файлдарын бұлтқа салғандай болады және осы қызмет үшін Siacoin токендерімен төлейді. Жалға берушілерге дискілерінің қолданылуына қарай осы Siacoin-дар төленеді.
  • Golem — бұл жоба жоғарғыға ұқсас бірақ дискінің орнына компьютердің есептеу ресурстары жалға беріледі. Яғни процессор мен видеокартаның қызметі Golem токендерімен төленеді.
  • Steemit — блокчейндегі әлеуметтік тор. Екі ерекшелігі бар. Біреуі — торға мақала жазған үшін Steem токендері төленеді. Екіншісі — мақалалар мен коменттер блокчейнге жазылатындықтан, олар мәңгілікке сақталады. Бүкіл тор жойылғанша өшіру мүмкін емес.
Бірақ осылардың арасында Ethereum (Эфириум) платформасы ерекше орын алады. Ethereum бір жағынан биткоин сияқты төлем құралы, токендері ether (эфир, әлде әтір) деп аталады. Екінші жағынан платформаның үстінен бағдарламалар жазу мүмкіндігі бар, бұл оның ең басты фичасы (ерекшелегі). Бұл бағдарламалар смарт контракт деп аталады, яғни "ақылды келісім-шарт". Смарт контракттың бір түрі — токендер. Токендер әр түрлі өлшем бірліктерін білдіруі мүмкін, мысалы, құнды қағаз, билет, жетон, валюта, тағы сол сияқты бірліктер.

Сонымен, эфириумның күштілігі соншалықты, жоғарыдағы айтылған Golem жобасы осы платформаның үстінде жасалған. Платформада смарт контракт жазуға арналған Solidity тілі бәріне танымал Javascript-ке өте ұқсайды. Сондықтан блокчейнмен байланысты жобалар жасау бірталай IT мамандарына қол жетімді болды. Және де жобалар күннен күнге көбейіп жатыр. Мысалы, Германияда электрокөліктерді зарядтайтын станциялардың иелеріне арналған Share&Charge қызметі. Әр станция иесі мобилді бағдарлама арқылы электрокөлік жүргізушілеріне өз қызметін ұсына алады. Тарифін өзі қояды, қағаз құжат, чек керек емес. Төлемдер евромен (€) қабылданады.

Осы жерде сұрақ туындайды. Қалайша блокчейнде, атап айтқанда Ethereum платформасында евротөлемдер өтіп жатыр? Бұған жауап — токен. Share&Charge жобасы арнайы, құны евроның құнына тең токендер шығарады. Қолданушылар осы токендермен алмасады, тек электронды әмияндарынан ақша шешкен кезде, не әмиянға салған кезде ғана нағыз евро жүріп отырады. Мен осыны көріп, өзіміздің теңгемен байланысты бір токен жазуды ұйғардым. Жаттығу ретінде, әрі халықпен бөлісіп талқылау тақырыбы ретінде.

Tiyn токендерін қарсы алыңыздар!


Неге аты тиын, теңге емес деп ойлаған шығар бәрі. Бұған кейбір ойлар себеп болды. Біріншіден EVM (Ethereum Virtual Machine, смарт контракттарды іске қосатын жүйе) әзірше тек бүтін сандармен қызмет атқарады, содан мысалы 3 теңге 45 тиынды қалай сақтаймын деп әуре болып, бәрін тиындармен санаймын деп шештім. Кейін бірақ ол оңай шешілетін нәрсе екенін ұқтым. Екіншіден, тиын қазір қайтсе де қолданыста жоқ, соңғы рет тиынды қашан ұстағаным есімде жоқ. Тиын тұрмақ бір теңгенің өзі сирек кездеседі. Ең болмаса блокчейнде жүріп отырсын дегенім.

Tiyn токені ERC20 стандартын қолдап жасалған. Бұл стандарт токендермен алмасу, теңгерімді тексеру сияқты функциялар міндетті түрде болу керек екенін және оның форматын жариялайды. Эфириумға жасалатын құралдардың біразы ERC20-ға үйлесімді токендерді қолдайды, сондықтан бұл стандартты ұстану тиімді.

Tiyn-ның өзіне ғана сай келесі функциялары бар:
  • setRate — ETH/TIYN бағамын қою. Бұл бағам былай есептеледі. Бір TIYN ылғи 0.01 KZT-ға тең. Бұл қағида. Сонда бір TIYN қанша ETH болатынын екі сайттың мәліметінен есептеп алуға болады. etherscan.io бізге 1 ETH қанша USD тұратынын көрсетеді. Ал Ұлттық банкімізден USD қанша KZT екенін білеміз. Мен соңғы рет есептегенде 1 TIYN ~ 0.000000096439192849 ETH болып шықты. Немесе 96 439 192 849 wei. Wei — эфирдің ең кіші бөлшегі, 1 ether = 1^e18 wei. Басқа қандай бөлшектері бар екенін мына жерден көрсе болады. Бағамды әкім рөліндегі әмиян ғана өзгерте алады.
  • buy, sell — TIYN-ды сатып алу және сату. Тиынды тек әтірмен сатып алуға болады. Оның өзге әрекетпен пайда болу жолы жоқ. Кейбір токендердің блокчейнге салынар кезде бастапқы көлемі беріледі, мысалы миллион токен. Бірақ тиынның бастапқы көлемі жоқ. Яғни жоқтан зат пайда болып жатқан жоқ, смарт-контрактқа салынған эфирдің құнына тең тиын ғана бар. Сату да сол сияқты, тек эфирге ғана сатылады, және тиын құрдан құр жоқ болып кетпейді.
  • allowBuy, revokeBuy — әмиянға сатып алуды рұқсат ету және керісінше тыйым салу. Бұл неге керек? Биткоин және басқа да криптовалюталар арқылы біраз қылмыстық ұйымдар өз ақшаларын өткізеді, себебі әр әмиянның артында кім тұрғанын ешкім қадағаламайды, бұл децентрализацияланған жүйелер ғой. Ал осы функциялар арқылы TIYN әкімі біреуге рұқсат бермес бұрын, оны идентификациядан өткізе алады.
  • allowSell, revokeSell — әмиянға сатуды рұқсат ету немесе тыйым салу. Алдыңғы пунктқа ұқсас. Әкім рөлінің міндетіне ғана кіреді.
  • setAdmin, unsetAdmin — әмиянды әкім рөлінде тағайындау және осы рөлден түсіру. Бұл Tiyn иесіне ғана жетімді функциялар.
  • withdraw — контрактта жиналған эфирдің бөлігін шығарып алу. Тек контракт иесі ғана бұл функцияны атқара алады. Эфирді контракттан шығарудың себептері болуы мүмкін, мысалы Tiyn қолданушыларының транзакцияға кеткен шығындарын өтеу (эфириумда әр транзакция үшін кішкентай комиссия алынады, сондықтан әмиянда кішкене болса да ether болуы керек). Бірақ контрактта бүкіл Tiyn токендерінің құнын қамтамасыз ететіндей мөлшердегі эфир жату керек (плюс бағам волатильдігін ескеретін сома).
  • setOwner — контракт иесін тағайындау. Осы функциямен контракт иесі өзінің орнына басқа иені қоя алады.
Жоғарыдағы функциялар тізімінен байқаған шығарсыздар, Tiyn контрактында бірнеше рөлдер бар. Жай ғана әмиян, сатып алушы, сатушы, әкім және ие. Әр қайсысының өзіне ғана берілген функциялары бар.

Қолмен шұқылап, сынауға оңай болу үшін мен қарапайым веб-бағдарлама тұрғызып қойдым. tiyntoken.kz сайтына кіріңіздер. Жаңа әмияндарға автоматты түрде 1 ETH салынады және сатып алу рұқсаты беріледі. Бағдарлама блокчейнмен қатынасатындықтан, шыдамдық білдіріп кейбір оқиғаларды бір-екі минутқа дейін күтуіңізді сұраймын. Теңгерімді жаңарту үшін бүкіл парақты жаңартыңыз. Сайт UI/UX жағынан нашарлау.

Әзірге Tiyn контракты Эфириумның Ropsten сынақ торында істеп тұр. Яғни сондағы эфирдің немесе Tiyn токенінің ешқандай құны жоқ. Контрактты сайтсыз тікелей шұқылаймын дегендерге адресі — 0xcb1975eD7864f835012976Cd50E8bfB744612Eb4.

Жобаның түпкі кодтары Гитхабта жатыр. Оның ішінде негізгі Tiyn контрактының коды 'backend/contracts/Tiyn.sol' жолында жатыр.

Жалпы әлі жазатын нәрсе көп, бірақ мақала тым ұзын болып кетеді ма деп отырмын. Осының өзін біреу оқыса — рақмет! Сұрақтарыңыз болса, төменде пікір, коммент жазып отырыңыз.

  • 0
0 пікір
Тек тіркелген қолданушылар ғана пікір қалдыра алады.