Ethereum блокчейнінің көрсеткіші және масштабтау мүмкіндігі
Bitcoin сияқты, Ethereum масштабтау мәселесінің негізгі себебі желідегі әрбір түйін әрбір транзакцияны өңдеуі керек желілік протокол болып табылады. Ethereum 1.x жұмысты дәлелдеу (PoW) консенсус механизмінің сәл өзгертілген нұсқасын жүзеге асырады. Ethereum-да кеншілер мақсатты қиындыққа жету үшін уақытты табу үшін жарысу керек. Әрбір түйін кеншілердің жұмысының жарамдылығын тексеруі және ағымдағы желі күйінің дәл көшірмесін сақтауы керек. Бұл транзакция процесінің мүмкіндігін және Ethereum блокчейн желісінің өткізу қабілетін айтарлықтай шектейді. Қазіргі уақытта олсекундына 12-15 транзакциянығана өңдей алады.
Блокчейннің масштабтау трилеммасы
Алғаш рет Виталик Бутерин қолданған масштабтау трилеммасы блокчейндегі оның масштабтауға, орталықсыздандыруға және қауіпсіздікке ешбір зиян келтірместен шешу мүмкіндігіне қатысты тұжырымдама. Трилемма блокчейн жүйесінде барлық үш қасиетке қол жеткізу мүмкін емес деп мәлімдейді:
Орталықсыздандыру: бұл биткоин мен блокчейн жасалған негізгі қағида. Орталықсыздандыру цензураға қарсы тұруға мүмкіндік береді және кез келген адамға орталықтандырылмаған экожүйеге орталық органсыз немесе делдалсыз қатысуға мүмкіндік береді.
Қауіпсіздік: Бұл қоғамдық кітаптың тұтастығы мен өзгермейтіндігін және51% шабуылғақарсы тұру мүмкіндігін білдіреді. немесе желілік шабуылдар сияқты DDoS.
Масштабтау мүмкіндігі: Бұл блокчейн желісіндегі транзакциялардың өсіп келе жатқан көлемін өңдеу мүмкіндігіне қатысты. Ethereum blockchain өнертапқыш ойлағандай әлемдік компьютер болуы үшін ол Amazon, Visa немесе Mastercard сияқты көптеген орталықтандырылған жүйелердің транзакция өткізу қабілетіне сәйкес келуі керек.
Төмендегі диаграмма блокчейндегі масштабтау трилеммасының суреті болып табылады:
Масштабтаудың негізгі мәселесі негізгі деңгейде үшеуіне де жету жолын табу болып табылады. Биткоин мен Ethereum дизайн таңдаулары орталықсыздандыру мен қауіпсіздікті қолдайды, сонымен бірге масштабтауға құрбандық жасайды.
Ethereum масштабтау шешімдері
Ethereum масштабтау шешімі Ethereum қауымдастығындағы ең белсенді тақырыптардың бірі болып табылады. Төменде қауымдастықEthereum болашағыүшін күресуге тырысатын бірнеше алаңдаушылық бар:
PoW көмегімен транзакцияны өңдеу және блок құру уақыты — кеншілер барлық транзакцияларды қаншалықты жылдам өңдей алады және тау-кен өндіру арқылы жаңа блок жасай алады?
Транзакцияның түпкіліктілігі – орталықтандырылмаған желі транзакцияның орын алғаны және оны қайтару мүмкін еместігі туралы консенсусқа қаншалықты тез қол жеткізе алады? Қазіргі уақытта желіге блоктың негізгі тізбекте аяқталғанын қарастыру үшін Bitcoin-пен шамамен алты блок және Ethereum-мен 3-4 минут қажет. Қызығушылық танытқан оқырмандар транзакцияны реттеу және блоктың аяқталу ықтималдығы үшін Виталик блогын тексеруі керек.
Іске асырылатын немесе ұсынылатын шешімдер үш санатқа бөлінеді: тізбекті шешім, желіден тыс шешім және консенсус механизмі хаттамалары. Блок өлшемін ұлғайту немесе бір блокчейнді көптеген тәуелсіз альткоин тізбегіне бөлу сияқты айқын немесе теориялық кейбіреулері бар. «Тең-теңімен» сипатына байланысты дәстүрлі көлденең масштабтау тәсілі жұмыс істемеуі мүмкін. Ethereum желісіне тән, масштабтау мәселелеріне ықпал ететін күйі бар немесе азаматтығы жоқ смарт келісімшарттарға да біраз көңіл бөлінді. Біз барлық осы шешімдердің жоғары деңгейлі тұжырымдамаларын қарастырамыз, содан кейін перспективалыларының кейбіріне тереңірек үңілеміз.
Блок өлшемі
Бұл тік масштабтау тәсіліне ұқсас. Bitcoin Cash, Ethereum Core және т.б. сияқты кейбір альткоиндер транзакцияның жалпы өнімділігін алу үшін үлкенірек блок өлшемін енгізуде. Бұл тәсілдің теориясы мынада: PoW майнингі бүкіл процестегі басты кедергі болғандықтан, блок өлшемін ұлғайту арқылы біз бір тау-кен өңдеуге көбірек транзакциялар жасай аламыз. Сташ негізіндегі тау-кен өндіру үшінбағытталған ациклді графикті(DAG) жасау сәл ұзағырақ уақыт алуы мүмкін, бірақ өндіруді аяқтаудың орташа уақыты нашарлауы мүмкін емес, өйткені Ethereum клиенттерінің көпшілігі DAG-ды бәрібір кэштейді.
Төмендегі диаграмма бұл техниканың қалай жұмыс істейтінін көрсетеді:
Дегенмен, тік масштабтау сияқты, жалпы алғанда, бұл шешім үлкен өлшемді блоктарды өңдеу үшін желі түйіндерінің жақсырақ есептеу мүмкіндігін талап етеді. Бұл желі бірнеше бай қолдарға шоғырланған сценарийге әкелуі мүмкін және осылайша, ақыр соңында блокчейннің негізгі қағидалары орталықсыздандыру мен қауіпсіздікке нұқсан келтіруі мүмкін.
Альткойндар
Тағы бір шешім - бір үлкен блокчейнге ие болу емес, көптеген кішігірім блокчейндер менальткоиндергеие болу. Бұл, сайып келгенде, солай болуы мүмкін, өйткені көптеген тік салалар салалық тізбектерді жасайды немесе құруды жоспарлайды. Бұл әрбір жеке блокчейндегі пайдаланушының белсенділігін төмендетеді және осылайша масштабталатын экожүйеге мүмкіндік береді.
Төмендегі диаграмма бұл техниканың қалай жұмыс істейтінін көрсетеді:
Дегенмен, бұл опцияда бірнеше мәселелер бар. Солардың бірі – қауіпсіздік мәселелері. Блокчейндегі транзакцияларды өңдеуге көбірек желі түйіндері қатысса, желі қауіпсіз болады деген жалпы пікір бар. Альткоин тізбегінің кеңірек таралуымен кез келген блокчейнде аз түйіндер жұмыс істейді. Бұл блокчейннің қауіпсіздігін төмендетуі мүмкін, өйткені кішірек altcoin желісі желілік шабуылдарға осал болуы мүмкін. Айталық, бізде үлкенірек желіде шамамен 10 000 түйін бар, ол желіге шабуыл жасау үшін кемінде 5001 түйінді (немесе 51% деп атайды) бұзылуды қажет етеді. Егер біз 10 000 түйінді 50 кіші тізбекке бөлетін болсақ, әрбір тізбек 200 түйіннен тұрады және кез келген кішірек тізбекті жою үшін тек 101 түйін қажет, мұны біз 1% шабуыл мәселесі деп атаймыз. Тағы бір мәселе - кросс-тізбекті интеграция. Кросс-блокчейндік интеграцияны өңдеуге арналған кейбір шешімдер бар болса да, кішігірім тізбектер мен альткоиндерді біріктірудің жалпы күрделілігі күрт артады.
Тізбекті шешімдер
Тізбекті шешімдер, кейде 1-деңгейлік шешімдер деп те аталады, Ethereum блокчейн желісінің базалық деңгейінде масштабтау және өнімділік мәселелерін шешу үшін шешімдер іздеуге арналған. Осындай шешімдердің бірі - бөлшектеу. Sharding жаңа тұжырымдама емес, өйткені дәстүрлі RDBMS және жаңа үлкен деректер платформалары көптеген жылдар бойы масштабтау мен өнімділікті жақсарту тәсілі ретінде sharding қолданып келеді.
Ethereum желісімен бөлісудің мақсаты желі түйіндерін, блокчейнді және жаһандық күйлерді әртүрлі бөліктерге топтау болып табылады және әрбір бөлік топ ішіндегі осы түйіндер арасында жалпы транзакция күйі туралы консенсусқа жетеді. Концептуалды деңгейде бұл Plasma, 2-деңгейдің бүйірлік тізбегі тәсілінен айтарлықтай ерекшеленбеуі мүмкін, бірақ техникалық қиындықтар, салдарлар және желілік күш-жігер мүлдем басқаша.
Басқа 1-деңгей немесе тізбекті шешім - Ethereum-дағы масштабтау және өнімділік мәселелерін қарастыратын ең белсенді зерттеу бағыттарының бірі болып табылатынProof of Stake (PoS) консенсус механизміне ауысу. PoW негізіндегі консенсус механизмінің артықшылықтары мен кемшіліктері туралы көптеген пікірталастар бар. Бұл орталықтандырылмаған желіде блокчейнді қамтамасыз етуде өте тиімді, бірақ ол сонымен қатар блокчейн өнімділігіндегі негізгі кедергі болып табылады.
Қарапайым тілмен айтқанда, Proof of Stake – блокчейн желілеріндегі ең танымал консенсус алгоритмдерінің бірі. PoW консенсусына қарағанда, шахтерлер криптографиялық басқатырғыштарды шешкені үшін марапатталады, PoS консенсус алгоритмінде таңдалған валидаторлар пулы жаңа блоктарды ұсынып отырады. Валидатор детерминирленген жолмен таңдалады, оның байлығына байланысты, сонымен қатар үлес ретінде анықталады. Өз монеталарын үлес ретінде салған кез келген адам валидатор бола алады. Қатысу мүмкіндігі олар салған ставкаларға пропорционалды болуы мүмкін. Айталық, Алиса, Боб, Кэтрин және Дэвид қатысу үшін тиісінше 40 Эфир, 30 Эфир, 20 Эфир және 10 Эфир ставкасын қойды; олар 40%, 30%, 20% және 10% блок жасаушы ретінде таңдалу мүмкіндігіне ие болады.
Төменде оның PoS консенсус механизмінде қалай жұмыс істейтіні көрсетілген. Келесі диаграммада көрсетілгендей, блокчейн валидаторлар жинағын қадағалайды, кейде блок жасаушылар немесе жалғандар деп те аталады. Кез келген уақытта, жаңа блоктарды жасау қажет болғанда, блокчейн валидаторды кездейсоқ таңдайды. Таңдалған валидатор транзакцияларды тексереді және барлық валидаторларға келісу үшін жаңа блоктарды ұсынады. Содан кейін жаңа блоктарға барлық ағымдағы валидаторлар дауыс береді. Дауыс беру құқығы валидатор салған үлеске негізделген. Кімде-кім жарамсыз транзакцияларды ұсынса немесе блоктайды немесе қасақана дауыс берсе, яғни олар тізбектің тұтастығын әдейі бұзатын болса, өз үлестерін жоғалтуы мүмкін. Блоктың өзін жасағаны үшін түйін сыйақы алмайды. Мәміле үшін сыйақы төленеді. Жаңа блоктар қабылданғаннан кейін блок жасаушы транзакциялық комиссияны жаңа блоктарды жасау жұмысы үшін сыйақы ретінде жинай алады. Түйінді таңдаудың екі негізгі мүмкін нұсқасы бар:
Кездейсоқ «ең бай» түйіндерден;
Ең ескі түйіндерден кездейсоқ.
PoW механизмімен салыстырғанда PoS энергияны үнемдейтін және қоршаған ортаға зиянсыз деп саналады. Ол сондай-ақ қауіпсіз деп саналады. Бұл 51% шабуыл қаупін азайтады, өйткені зиянды валидаторлар блокчейн желісін басып алу үшін жалпы үлестердің 50% -дан астамын жинауы керек. Мұндай алгоритм «кепілді» жоғалту қаупіне байланысты шабуылдаушыларды жалған транзакцияларды тексеруден бас тартуға арналған.
PoW сияқты, жалпы орталықсыздандыру PoS негізіндегі қоғамдық блокчейнде толық мүмкін болмауы мүмкін. Себебі, бірнеше бай түйіндер желідегі үлестерді монополиялай алады. Көбірек үлес қосқандар дауыс берудің көп бөлігін тиімді басқара алады және жаңа блок құруға көбірек мүмкіндік алады. Екі алгоритм де байларды бай ететін әлеуметтік және экономикалық мәселеге бағынады.
Тізбектен тыс шешімдер
Тізбекті шешімнің негіздемесіне ұқсас, Ethereum қауымдастығы сонымен қатар кейде 2-деңгейлік шешімдер деп аталатын тізбектен тыс шешімдерді белсенді түрде іздейді. Біреуі - плазмасы бар бүйірлік тізбекті ерітінді. Барлық транзакцияларды негізгі тізбекке қоюдың орнына, Plasma кез келген адамға бүйірлік тізбектерді жасауға және жаһандық блокчейнге бүйірлік тізбектерді байланыстыруға мүмкіндік береді. Бұл Bitcoin-дегі жарықтандыру желісінің шешіміне ұқсас.
Тағы біреуі - Bitcoin-дегі төлем арналарына ұқсас Raiden-пен мемлекеттік арна шешімі. Бұл тәсілдің гипотезасы көптеген тараптар арасындағы транзакцияларды тек қатысушы тараптар растауы керек және барлық транзакцияларды бүкіл желі арқылы тексерудің қажеті жоқ.
Масштабтауды және өткізу қабілеттілігін жақсартудың бір интуитивті шешімі - көптеген шағын тізбектерді жасау. Бұл ақылға қонымды шешім сияқты көрінуі мүмкін, өйткені ол іскерлік және әлеуметтік қажеттіліктерге сай болуы мүмкін. Мысалға, тұтынушылар немесе азаматтар ретінде өзімізді алайық, біз жергілікті азық-түлік дүкенінен жемістер мен көкөністерді сатып аламыз, ол жаңа піскен өнімдерді жеткізудің бүкіл тізбегі арқылы қадағалануды және азық-түлік қауіпсіздігін қамтамасыз ету үшін бір блокчейнді қолдана алады.
Сатып алудың соңында сіз азық-түлікті P2P төлем блокчейні арқылы тікелей төлей аласыз. Ипотека немесе бизнес несиесін қолданған кезде, сіз ипотекалық блокчейн арқылы ипотека мен несиеңізді мақұлдауыңыз мүмкін және т.б. Біз үлкен жаһандық тізбекті көрмей тұрып, барлық осы тік тізбектерді немесе жеке тізбектерді кездестіреміз.
Дегенмен, ол кросс-тізбекті интеграция және қауіпсіздікті қамтамасыз ету мәселелерін тудырады. Плазма осы мәселені шешуге тырысады. Оны алғаш рет 2017 жылдың тамызында Джозеф Пун мен Виталик Бутерин ұсынған. Дизайн идеясы транзакцияларды плазмалық тізбектер деп те аталатын жылдамырақ және азырақ бүйірлік тізбектерге түсіру болып табылады. Мемлекеттік арна тәсіліне ұқсас, плазмалық тізбек өз транзакцияларын мезгіл-мезгіл Ethereum түбірлік тізбегіне жасайды.
Қауіпсіздік пен тұтастық түбірлік тізбек арқылы қамтамасыз етіледі. Плазмалық тізбектерде қандай да бір алаяқтық күдігі анықталса, транзакциялар кері қайтарылады және Plasma пайдаланушылары плазма тізбегінен шығып, түбірлік тізбекке көше алады.
Төмендегі диаграмма плазмалық желінің қандай болуы мүмкін екенін көрсетеді:
Әрбір плазмалық тізбек өз алдына блокчейн болып табылады. Олар ақылды келісімшарт арқылы Ethereum түбірлік тізбегімен байланысты. Ақылды келісім-шарт негізінен тұтас еншілес тізбекті түбірлік тізбекке қосады, көпір ретінде әрекет етеді. Кез келген адам плазма тізбегін жасай алады және плазма тізбегін түбірлік тізбекпен байланыстыратын ақылды келісім-шарт жаза алады.
Келесі диаграммада көрсетілгендей, әрбір кезеңде плазмалық тізбектердің әрбір блогының блок тақырыптары түбірлік тізбекке беріледі және түбірлік тізбектің блоктарында жазылады.
Плазма тізбегіндегі транзакциялар әрбір плазмалық тізбекте сақталады. Содан кейін блок тақырыптарындағы Merkle дәлелі еншілес тізбектегі деректерді тексеру үшін пайдаланылады. Бұл көптеген плазмалық тізбектерде ондаған және мыңдаған транзакцияларды параллельді өңдеуге мүмкіндік береді, сонымен қатар қауіпсіздікті қамтамасыз ету үшін түбірлік тізбекте Merkle тақырыбының аз және жеткілікті ақпаратын қалдырады:
Түбірлік тізбек АҚШ-тағы федералды сот жүйесіне ұқсас арбитр рөлін атқарады, мұнда түбірлік тізбек жоғарғы сот және плазмалық тізбектер аудандық соттар немесе аудандық соттар болып табылады. Федералдық сот жүйесінде федералды округтік сот істі шешкеннен кейін, іс аудандық сотқа немесе жоғарғы сотқа арбитражға шағымдануы мүмкін.
Плазма тізбегінде алаяқтық орын алған кезде, ол тізбектер бойынша екі есе жұмсалған болса да немесе сіз барлық шоттардағыдан көп ақша аударасыз ба, кез келген адам транзакцияның жарамсыз екенін дәлелдейтін алаяқтықты дәлелдей алады. Алаяқтық транзакциялары дәлелденсе, транзакция кері қайтарылады.
Плазманы пайдаланушылар бала плазма тізбегінен шығып, эфирлерді негізгі тізбекке қайта бере алады. Түпнұсқа ұсыныстар плазмалық блокчейннің операторы ретінде блоктарға транзакцияларды тексеру және қосу және еншілес блокчейн күйін басқару үшін жалғыз валидатор тұжырымдамасын енгізеді.
Бұл тәсілдің идеясы - жаһандық деңгейде блокчейннің қауіпсіздігі мен тұтастығы PoW немесе, ең алдымен, гибридті PoW және PoS консенсус хаттамасы арқылы түбірлік тізбек арқылы қамтамасыз етіледі. Плазма тізбегінің валидаторы қорды ұстауы және алаяқтық әрекеттер жасауы мүмкін болған жағдайда, кез келген адам түбірлік тізбекке валидаторға қарсы алаяқтықты дәлелдей алады.
Валидатордан алаяқтық екені дәлелденгеннен кейін, түбірлік тізбек әсер еткен плазма тізбегіндегі барлық тіркелгілерге түбірлік тізбекке өтуге мүмкіндік береді. Бұлжаппай шығусценарийі деп аталады. Бұл жағдайда жеке тіркелгілер түбірлік тізбекке бір-бірден тасымалданады, жарамсыз транзакция кері қайтарылады және плазмалық тізбектің валидаторы смарт-келісімшартқа салған үлеспен айыппұл салынады. Қанша тіркелгіні тасымалдау қажет екеніне байланысты жаппай шығуды аяқтау үшін біраз уақыт кетуі мүмкін.
Бұл Ethereum зерттеу қоғамдастығындағы ең қызықты және белсенді тақырыптардың бірі болғанымен, плазманы іске асырудың жалпыға ортақ шығарылымы әлі жоқ. Оның орнына, жеңілдетілген қауіпсіздік моделін және плазмалық тізбектерден шығуға арналған негізгі операцияларды қамтитын қарапайым іске асыру үшін ең аз өміршең плазма немесе MVP деп аталатын бастапқы ұсыныстың кішірейтілген нұсқасы ұсынылды.
MVP-тің өте қызықты аспектісі - UTXO моделін қайта енгізу. Ethereum-дағы негізгі айырмашылықтардың бірі - биткоиннің UTXO үлгісінен шот балансы әлемдік күйде ұсталатын мемлекеттік нысан болып табылатын неғұрлым анықталған шот үлгісіне көшу.
Ethereum шотының үлгісі транзакцияны тексеруді және ақша аударуды параллелизмді құрбан ете отырып, қарапайым етеді. Бұл маңызды кемшілік болмауы мүмкін, өйткені барлық транзакциялар барлық түйіндер арқылы тексерілуі керек. Бірақ Plasma көмегімен түбірлік тізбек транзакцияны өңдеуден қауіпсіздікті қамтамасыз ету мен арбитражға көшкен сайын жарамсыз транзакцияларды параллель түрде тексеру мүмкіндігі маңызды болады.
Блокчейндердің ағаш құрылымы, демек, барлық еншілес тізбектердегі UTXO ағаштары, алаяқтық дәлелдерін тексеру және барлық плазмалық тізбектердегі қауіпсіздікті қамтамасыз ету үшін бөлінген параллельді алгоритмдерді қолдануды жеңілдетеді.
Төмендегі диаграмма Ethereum плазмасының еншілес тізбектерінің ағашы ата-аналық плазма тізбегімен байланыстырылған және ақыр соңында Ethereum түбірлік тізбегімен қосылған және қорғалған кезде, әлеуетті Плазма Ethereum блокчейн желісіне не әкеле алатынын көрсетеді:
Жаппай масштабтауға қымбат есептеулерді еншілес тізбектерге түсіру арқылы қол жеткізіледі және түбірлік тізбекке ғаламдық деңгейде блокчейнге ортақ қауіпсіздік пен арбитраж қызметтерін ұсынуға мүмкіндік береді. Cosmos желісі сияқты бірнеше ұқсас тізбекті өзара әрекеттесу шешімдері бар. Блокчейндердің интернеті деп мәлімделген Cosmos желісі хаб арқылы біріктіру архитектурасын ұсынады. Тәуелсіз блокчейндер аймақтар немесе спицейлер ретінде негізгі блокчейнге хаб ретінде бекітілген. Оның мақсаты IBC (blockchain аралық коммуникациялар) хаттамасы арқылы блокчейн интеграциясын жеңілдету болып табылады.