Мазмұны:

Блокчейн шын мәнінде қалай жұмыс істейді
Блокчейн шын мәнінде қалай жұмыс істейді

Бейне: Блокчейн шын мәнінде қалай жұмыс істейді

Бейне: Блокчейн шын мәнінде қалай жұмыс істейді
Бейне: Гражданская война в России 1917-1922. История на карте 2024, Сәуір
Anonim

Бұл пост барлығына блокчейннің не үшін ойлап табылғанын, криптовалюталардың қалай жұмыс істейтінін және логика тұрғысынан соңғы жылдардағы ең әдемі жүйе екенін айтып беруге арналған.

Мен сізге бірден ескертемін, кесіндінің астында ҮЛКЕН мәтін парағы бар және егер сіз криптовалюталар тақырыбы бойынша сұрақты біржола «жабуға» дайын болмасаңыз, дәл қазір таңдаулыларыңызға жазба қосыңыз және уақытты сақтаңыз)

Блокчейн - бұл жаңа, оғаш, түсініксіз технология, бірақ ол сіздің әңгімеңізге қарағанда әлемді өзгертіп жатқан сияқты. Ол көптен бері бізбен бірге жүрген көрінеді.

Бұл жазба компьютерден өте алыс және үстірт ғана білетін адамдарға айтылғандай жазылған, мысалы, ол сіздің ата-анаңызға дайындалып жатқанын елестетіңіз. Мен оны гуманитарлық ғылымдардағы әріптестеріме де тастай аламын және олар түсінетініне сенімдімін.

Бұл қиын мәселеде Олег бәрімізге көмектеседі. Танысыңыз!

Егер Олег ұнамаса, мен оны қуып жіберемін.

Негіздер: бізге блокчейн не үшін қажет?

Блокчейн Сатоси Накамотоның «Биткоин: бір-теңімен электронды қолма-қол ақша жүйесі» мақаласында сипатталған. Онда небәрі сегіз бетте автор Blockchain алгоритміне негізделген Bitcoin криптовалютасының негіздерін сипаттады.

Өзгертуге болмайтын тізім

Блокчейн - блоктар тізбегі немесе басқаша айтқанда байланыстырылған тізім. Мұндай тізімде әрбір келесі жазба алдыңғы бір жазбаға сілтеме жасайды және осылайша тізбек бойынша біріншіге дейін жалғаса береді. Пойыздың вагондары сияқты әрқайсысы келесісін сүйреп апарады. Тізімдерге келетін болсақ, Никита Лихачевтың TJ-де жақсы мақаласы бар, онда бұл мүлдем жаңадан келгендер үшін түсіндіріледі. Аналогиялар ішінара сол жерден алынған.

Мысал келтірейік

Олегтің достары одан үнемі қарызға ақша алады. Олег мейірімді, бірақ өте ұмытшақ. Арада бір аптадан кейін ол қарызды кім қайтармағаны есіне түспейді, бірақ ол туралы барлығынан сұрауға ұялады. Сондықтан бір күні үйіндегі тақтаға қарызға ақша алған достарының тізімін жасап, бұған нүкте қоюды ұйғарады.

Енді Олег әрқашан тақтаға шығып, Макстың бәрін қайтарғанына көз жеткізе алады, бірақ Ваня қазірдің өзінде 700 рубль бермейді. Бір күні Олег Ваняны үйіне ішуге шақырады. Олег дәретханаға бара жатқанда, Ваня «Ваняға 200 рубль қарызға алдым» деген жазуды өшіріп, оның орнына «Ваня 500 рубль берді» деп жазады.

Тізіміне сенген Олег қарызын ұмытып, 700 рубльден айырылады. Ол қандай да бір жолмен күресуді шешеді. Өткен жылы Олег бағдарламалау курсына барды, онда оған хэшинг туралы айтылды. Ол кез келген жолды бір мәнді символдар жиынына – хэшке айналдыруға болатынын, ал жолдағы кез келген символды өзгерту оны толығымен өзгертетінін есіне алады.

Соңында нүкте қосу соңғы хэшті танылмастай өзгертті - оны пайдалануға болады.

Олег белгілі SHA-256 хэшін алып, онымен әрбір жазбаны хэштейді, нәтижені соңына қосады. Енді Олег өзінің жазбаларын қайтадан хэштеу және жасылмен салыстыру арқылы ешкімнің өзгертпегеніне көз жеткізе алады.

Бірақ EVIL IVAN сонымен қатар SHA-256 қалай пайдалану керектігін біледі және жазбаны хэшпен бірге оңай өзгерте алады. Әсіресе, хэш тақтада дәл қасына жазылса.

Сондықтан, қауіпсіздікті арттыру үшін Олег жазбаның өзін ғана емес, оны алдыңғы жазбадағы хэшпен бірге қосуды шешеді. Енді келесі жазбалардың барлығы алдыңғыларға байланысты. Кем дегенде бір жолды өзгертсеңіз, тізімдегі төмендегі барлық қалғандарының хэштерін қайта есептеуге тура келеді.

Бірақ бір күні Иван түнде жасырынып, қажетті жазбаны өзгертіп, бүкіл тізімнің хэштерін соңына дейін жаңартады. Оған бірнеше сағат кетеді, бірақ Олег әлі қатты ұйықтап жатыр және естімейді. Таңертең Олег мүлдем дұрыс тізімді тапты - барлық хэштер сәйкес келеді. Бірақ түн ұйқысыз өтсе де, Иван оны бәрібір алдады. Өзіңізді түнгі Иваннан тағы қалай қорғауға болады?

Олег өмірін қандай да бір жолмен қиындатуды шешеді. Енді тізімге жаңа жазба қосу үшін Олег онымен байланысты күрделі есепті шешеді, мысалы, математикалық теңдеуді. Ол жауапты соңғы хэшке қосады.

Олег математиканы жақсы біледі, бірақ жазба қосуға он минут кетеді. Осыған қарамастан, жұмсалған уақыт оған тұрарлық, өйткені егер Иван бірдеңені қайтадан өзгерткісі келсе, әр жол үшін теңдеулерді қайта шешуге тура келеді және олардың ондаған болуы мүмкін. Бұл көп уақытты алады, өйткені теңдеулер әр уақытта бірегей және белгілі бір жазбамен байланысты.

Бірақ тізімді тексеру қарапайым: алдымен хэштерді бұрынғыдай салыстыру керек, содан кейін қарапайым ауыстыру арқылы теңдеулердің шешімдерін тексеру керек. Егер бәрі біріктірілсе, тізім өзгермейді.

Шындығында теңдеулерде бәрі жақсы емес: компьютерлер оларды тым жақсы шешеді және көптеген бірегей теңдеулерді қайда сақтауға болады. Сондықтан блокчейннің авторлары бұдан да әдемі мәселені ойлап тапты: бүкіл жазбаның соңғы хэші 10 нөлден басталуы үшін мұндай санды (бір рет емес) табу керек. Мұндай немқұрайлылықты табу қиын, бірақ нәтиже әрқашан тек көзбен тексерілуі мүмкін.

Енді Олег барлық хэштерді тексереді және қосымша олардың әрқайсысы нөлдердің көрсетілген санынан басталатынына көз жеткізеді. Айлакер Иван, тіпті қуатты ноутбукпен қаруланған болса да, барлық хэштерді түнде шартты қанағаттандыру үшін қайта есептеуге уақыты болмайды - уақыт жеткіліксіз болады.

Мұндай тізім, шын мәнінде, тізедегі үй блокчейні болып табылады. Оның қауіпсіздігіне математиктер кепілдік береді, олар бұл хэштерді дөрекі күшпен қоспағанда, қандай да бір жолмен тезірек есептеуге болмайтынын дәлелдеді. Әрбір жазба үшін хэштердің мұндай санауы тау-кен болып табылады, ол туралы бүгін көп және егжей-тегжейлі болады.

Сенімді орталықтандыру

Біздің достарымызға «кім кімнен қарыз алған» деген жалған тізім жүргізу идеясы ұнады. Олар сондай-ақ барда кімнің кімге төлегенін және олардың әлі қанша қарызы барын еске түсіргісі келмейді - бәрі қабырғада жазылған. Сіз бұл идеяны талқылап, енді барлығына ортақ тізім қажет деп шештіңіз.

Бірақ мұндай маңызды бухгалтерияны кімге сеніп тапсыру керек? Өйткені, ақшаға келгенде сенім бірінші орынға шығады. Біз ақшамызды сақтайтын белгісіздерге сенбейміз. Бұл үшін біздің ата-бабаларымыз банктерді ойлап тапты, олар уақыт өте келе сенім білдіре бастады, өйткені олар Орталық банктің лицензиясымен, заңдарымен және сақтандыруымен қамтамасыз етілген.

Достар ортасында бәрі бір-біріне сенеді және сіз бұл рөл үшін ең жауаптысын таңдай аласыз. Бірақ егер мәселе бейтаныс адамдар туралы болса ше? Биткоин сияқты тұтас қала, ел немесе бүкіл әлем? Жалпы ол жерде ешкім ешкімге сене алмайды.

Орталықсыздандыру: ешкім ешкімге сенбейді

Сондықтан олар балама тәсіл ойлап тапты: тізімнің көшірмесін барлығына сақтау. Осылайша, шабуылдаушы бір тізімді қайта жазып қана қоймай, әр үйге жасырын кіріп, сол жерде тізімдерді қайта жазуы керек еді. Сосын үйінде ешкім білмеген бірнеше тізімді біреулер сақтаған екен. Бұл орталықсыздандыру.

Бұл тәсілдің кемшілігі - жаңа жазбалар енгізу үшін сіз барлық басқа қатысушыларға қоңырау шалып, олардың әрқайсысына соңғы өзгерістер туралы хабарлауыңыз керек. Бірақ егер бұл қатысушылар жансыз машиналар болса, бұл мүлдем проблема болмайды.

Мұндай жүйеде жалғыз сенім нүктесі жоқ, демек, пара алу мен алдау мүмкіндігі де бар. Жүйенің барлық қатысушылары бір ереже бойынша әрекет етеді: ешкім ешкімге сенбейді. Әркім өз қолындағы ақпаратқа ғана сенеді. Бұл кез келген орталықтандырылмаған желінің негізгі заңы.

Мәмілелер

Дүкенде кәстрөл сатып алғанда, сіз картаңыздан пин-кодты енгізесіз, бұл дүкенге сіздің шотыңызда 35 рубль бар-жоғын банктен сұрауға мүмкіндік береді. Басқаша айтқанда, сіз банк растайтын немесе қабылдамайтын пин-кодпен 35 рубльге транзакцияға қол қоясыз.

«Мен Ваняны 500 рубль қарызға алдым» түріндегі жазбаларымыз да транзакциялар. Бірақ бізде транзакциялардың авторына рұқсат беретін банк жоқ. Иванның «Макс Олегке 100 500 рубль қарызы бар» деген жазбаны тыныш қоспағанын қалай тексеруге болады?

Блокчейн бұл үшін ашық және жеке кілттер механизмін пайдаланады; АТ мамандары оларды бір SSH-де авторизациялау үшін бұрыннан пайдаланып келеді. Мен мұны «Шифрлауға кіріспе» бөліміндегі «Қауіпсіздік, шифрлау, киберпанк» деген жазбада саусақпен түсіндірдім.

Бұл күрделі, бірақ әдемі математика қалай жұмыс істейтіні туралы қысқаша: сіз өзіңіздің компьютеріңізде ұзақ жай сандар жұбын жасайсыз - ашық және жеке кілт. Жеке кілт өте құпия болып саналады, өйткені ол жалпыға ортақ шифрланған нәрсені шеше алады.

Бірақ керісінше жұмыс істейді. Егер сіз ашық кілтті барлық достарыңызбен бөліссеңіз, олар кез келген хабарламаны олар үшін шифрлай алады, сондықтан оны тек сіз оқи аласыз, өйткені жеке кілт сізге тиесілі.

Бірақ бұдан басқа, ашық кілт пайдалы әсерге ие - оның көмегімен деректердің шифрын ашпай-ақ, деректердің жеке кілтпен шифрланғанын тексеруге болады. Бұл қасиеттердің барлығы «Шифрлар кітабында» жақсы сипатталған.

Біз ешкімге сенуге болмайтын орталықтандырылмаған интернеттеміз. Транзакцияға жабық кілтпен қол қойылады және ашық кілтпен бірге арнайы қоймаға – расталмаған транзакциялар пулына жіберіледі. Сондықтан желінің кез келген мүшесі оны басқа біреу емес, сіздің ақшаңызды төлегісі келмейтінін растай алады.

Бұл желінің ашықтығы мен қауіпсіздігін қамтамасыз етеді. Егер бұрын банктер бұған жауапты болса, блокчейнде математиктер бұған жауапты.

Жеке кілттерді беру және сақтау жолын білгісі келмейтін қарапайым пайдаланушылар үшін онлайн әмиян қызметтері көмектеседі. Ұзын ашық кілттерді көшіру үшін онда ыңғайлы QR кодтары жасалады. Мысалы, Blockchain Wallet, өйткені оның ыңғайлы мобильді қосымшасы бар және екі негізгі криптовалютаға - BTC және ETH-ге қолдау көрсетеді.

«Баланс» түсінігінің болмауы

Біздің басқарма сияқты, блокчейн де тек транзакция тарихынан тұрады. Ол әр әмиянның балансын сақтамайды, әйтпесе қосымша қорғау әдістерін ойлап табуға тура келеді.

Тек жеке кілт әмиянның иелігін растайды. Бірақ желінің басқа мүшелері менің сатып алуға жеткілікті ақшам бар екеніне қалай көз жеткізе алады?

Бізде теңгерім жоқ болғандықтан, сіз оны дәлелдеуіңіз керек. Сондықтан блокчейн транзакциясы тек сіздің қолтаңбаңызды және қанша жұмсағыңыз келетінін ғана емес, сонымен қатар қажетті ақша сомасын алған алдыңғы транзакцияларға сілтемелерді де қамтиды.

Яғни, егер сіз 400 рубль жұмсағыңыз келсе, сіз өзіңіздің кірістеріңіз бен шығыстарыңыздың бүкіл тарихын тексересіз және транзакцияңызға 100 + 250 + 50 рубль берілген кірістерді қосасыз, осылайша сізде осы 400 рубль бар екенін дәлелдейсіз.

Желінің әрбір мүшесі табысыңызды екі рет тіркемегеніңізді тағы бір рет тексереді. Өткен аптада Макс берген 300 рубльді сіз әлі жұмсаған жоқсыз.

Транзакцияға қосылған мұндай кірістер блокчейндегі кірістер деп аталады, ал ақшаның барлық алушылары шығыстар деп аталады. Барлық кірістердің қосындысы бір уақытта тасымалдағыңыз келетіндей сирек болады - сондықтан шығыстардың бірі көбінесе өзіңіз боласыз. Басқаша айтқанда, блокчейндегі транзакция «маған 3 және 2 BTC берілді, мен олардан 4 BTC аударып, қалған 1 BTC-ді қайтарғым келеді» деген сияқты көрінеді.

Блокчейннің сұлулығы мынада: кірістер бір әмияннан алынбайды. Өйткені, тек кілт тексеріледі. Егер сіз барлық кірістердің жеке кілтін білсеңіз, оларды транзакцияға оңай тіркеп, осы ақшамен төлей аласыз. Сіз пин-кодты білетін бірнеше картамен супермаркетте төлеп жатқандайсыз.

Дегенмен, егер сіз жеке кілтіңізді жоғалтсаңыз, дискіңіз өліп қалса немесе ноутбук ұрланса, биткоиндер мәңгілікке жоғалады. Ешкім оларды жаңа транзакциялар үшін кіріс ретінде пайдалана алмайды.

Бұл сома бүкіл әлем үшін мәңгілікке қолжетімсіз болып қалады – банкноттардың бір бумасын өртеп жібергендей. Төлқұжаттың көшірмесімен өтініш жазатын бірде-бір банк жоқ, оны басып шығарады. Бұл «ауадан» жаңа биткоиндерді қосымша шығаруды талап етеді.

Екі есе жұмсау мәселесі

Жоғарыда транзакциялар арнайы «расталмаған транзакциялар пулына» қосылатынын айттым. Егер бізде шын мәнінде дайын қол қойылған мәмілелер болса, бізге қандай да бір аралық ұйым не үшін қажет? Неліктен оларды тікелей блокчейнге жазбасқа?

Өйткені А нүктесінен В нүктесіне дейінгі сигналдар әрқашан кідіріспен жүреді. Екі транзакция мүлдем басқа жолмен жүруі мүмкін. Ал бірінші басталған транзакция алушыға кейінірек жетуі мүмкін, себебі ол ұзағырақ жолды алды.

Бұл бір ақшаны бірден екі адресатқа жібергенде, олар екі есе жұмсауға әкеледі, олар бұл туралы тіпті ойламайды. Бұл шоттарды қолдан қолға беру емес.

Ешкімге сенуге болмайтын орталықтандырылмаған желі үшін бұл мәселе әсіресе өткір. Бір транзакцияның екіншісінен бұрын болғанына қалай көз жеткізесіз? Жіберушіден оған жіберу уақытын тігуін сұраңыз, солай ма? Бірақ есіңізде болсын - сіз ешкімге, тіпті жіберушіге де сене алмайсыз.

Барлық компьютерлердегі уақыт міндетті түрде әр түрлі болады және оларды синхрондаудың кепілдік берілген жолы жоқ. Блокчейннің көшірмесі желідегі әрбір компьютерде сақталады және әрбір қатысушы оған ғана сенеді.

Бір транзакция екіншісінен ертерек болғанына қалай көз жеткізуге болады?

Жауап қарапайым: бұл мүмкін емес. Орталықтандырылмаған желіде транзакция уақытын растау мүмкіндігі жоқ. Және бұл мәселенің шешімі - бұл Сатоши ойлап тапқан үшінші маңызды блокчейн идеясы және ол, таң қаларлықтай, оның атында жазылған - блоктар.

Блоктар блокчейннің негізі болып табылады

Желідегі әрбір жұмыс істейтін компьютер жалпы пулдан өзіне ұнайтын кез келген транзакцияларды таңдайды. Әдетте ол ең жоғары комиссия үшін ғана таба алады. Сондықтан ол транзакцияларды олардың жалпы мөлшері келісілген шекке жеткенше жинайды. Bitcoin-де бұл блок өлшемінің шегі 1 МБ (SegWit2x-тен кейін ол 2 МБ болады), ал Bitcoin Cash-те - 8 МБ.

Бүкіл блокчейн негізінен осындай блоктардың тізімі болып табылады, олардың әрқайсысы алдыңғысына сілтеме жасайды. Оны бүкіл тарихтағы кез келген транзакцияны қадағалау үшін пайдалануға болады, блокчейнді тіпті бірінші жазбаға дейін ашады.

Дәл осы тізім қазір жүздеген гигабайтты құрайды және желіге қатысқысы келетін барлық компьютерлерге толығымен жүктелуі керек (бірақ бұл жай ғана транзакциялар жасау және ақша аудару үшін қажет емес). Ол желідегі барлық жақын компьютерлерден дәл осылай жүктеледі, сіз торренттен серияларды жүктеп жатқандайсыз, онда әр 10 минут сайын тек жаңа жаңа эпизодтар шығады.

Пулдан транзакцияларды тергеннен кейін, компьютер олардан үйде тақтадағы жазбаның басында жасағандай ұмытылмайтын тізімді құра бастайды.

Тек ол оны ағаш түрінде жасайды - жазбаларды жұппен хэштейді, содан кейін нәтиже қайтадан жұппен болады және тек бір ғана хэш қалғанша - блокқа қосылатын ағаштың түбірі қалғанша жалғасады. Неліктен дәл ағашпен - жауап таба алмадым, бірақ менің ойымша, бұл жай ғана жылдамырақ. Толығырақ викиден оқыңыз: Merkle ағашы.

Ағымдағы блокчейн жүктеп алынғандықтан, біздің компьютер соңғы блоктың не екенін біледі. Ол блок тақырыбына оған сілтеме қосып, барлығын хэштеп, желідегі барлық басқа компьютерлерге «қараңыз, мен жаңа блок жасадым, оны блокчейнге қосамыз» деп айту керек.

Қалғандары блоктың барлық ережелерге сәйкес салынғанын және біз онда қажетсіз транзакцияларды қоспағанымызды тексеріп, содан кейін оларды біздің тізбектерге қосу керек. Енді ондағы барлық транзакциялар расталды, блокчейн бір блокқа ұлғайып, бәрі жақсы жүріп жатыр, солай емес пе?

Бірақ жоқ. Мыңдаған компьютерлер желіде бір уақытта жұмыс істейді және олар жаңа блокты жинай салысымен, олар бір уақытта дерлік барлығына олардың блогының бірінші жасалғаны туралы хабарлауға асығады. Алдыңғы бөлімнен біз орталықтандырылмаған желіде шынымен кім бірінші болғанын дәлелдеу мүмкін емес екенін білеміз.

Мектептегідей, барлығы қиын сынақты шешіп жатқанда, тіпті үздік студенттердің де бір уақытта жауап беруі сирек болатын.

Бірақ егер адам үшін мамыр айындағы мерекелерге бару үшін демалысты жоспарлау қиын болса және теңізге билеттер арзан болса, онда компьютер үшін бұл санның соңына осындай санды (бір рет емес) қосу керек. блоктаңыз, нәтижесінде бүкіл блок үшін SHA-256 хэш басталады, айталық 10 нөл. Бұл Bitcoin желісіне блок қосу үшін шешілуі керек мәселе. Басқа желілер үшін тапсырмалар әртүрлі болуы мүмкін.

Сонымен, біз соңғы жылдары жұрттың бәрі қатты әуестеніп кеткен тау-кен ісі ұғымына келдік.

Тау-кен

Биткоин өндіру - бұл қасиетті рәсім емес. Майнинг - бұл Интернеттің тереңдігінен жаңа биткоиндерді табу емес. Майнинг дегеніміз – бүкіл әлем бойынша мыңдаған компьютерлер жертөлелерде шуылдап, секундына миллиондаған сандарды аралап, 10 нөлден басталатын хэшті табуға тырысады. Мұны істеу үшін олар тіпті желіде болуының қажеті жоқ.

Жүздеген параллель ядролары бар бейне карталар бұл мәселені кез келген процессорға қарағанда тезірек шешеді.

Неліктен дәл 10 нөл? Және дәл солай, оның мағынасы жоқ. Осылайша Сатоси ойлап тапты. Өйткені бұл әрқашан шешімі бар мәселелердің бірі, бірақ оны опциялардың ұзақ монотонды санауынан тезірек табу мүмкін емес.

Тау-кен жұмыстарының күрделілігі тікелей желінің көлеміне, яғни оның жалпы қуатына байланысты. Егер сіз өзіңіздің блокчейніңізді жасасаңыз және оны үйде екі ноутбукте іске қоссаңыз, онда тапсырма оңайырақ болуы керек. Мысалы, хэш тек бір нөлден басталатындай немесе жұп сандардың қосындысы тақ сандардың қосындысына тең болатындай.

Бір компьютерге 10 нөлден басталатын хэшті табу үшін бірнеше ондаған жылдар қажет. Бірақ мыңдаған компьютерлерді бір желіге біріктіріп, параллельді іздестіретін болсаңыз, онда ықтималдық теориясына сәйкес бұл мәселе орта есеппен 10 минутта шешіледі. Бұл биткоин блокчейнінде жаңа блоктың пайда болатын уақыты.

Әрбір 8-12 минут сайын жер бетіндегі біреу осындай хэшті тауып, өзінің ашқан жаңалықтарын барлығына жариялау мәртебесіне ие болады, осылайша кім бірінші болды деген мәселеден аулақ болады.

Жауапты табу үшін компьютер (2017 жылғы жағдай бойынша) 12,5 BTC алады - бұл биткоин жүйесі «жұқа ауадан» пайда болатын және әр төрт жыл сайын азайып отыратын сыйақы сомасы.

Техникалық тұрғыдан алғанда, бұл әрбір кенші әрқашан өз блогына басқа транзакцияны қосатынын білдіреді - «12,5 BTC жасаңыз және оларды менің әмияныма жіберіңіз». «Әлемдегі биткоиндер саны 21 миллионмен шектелген, қазір олар 16 миллионды жалдап қойған» дегенді естігенде – бұл желі арқылы жасалған сыйақылар.

Арнайы сайттардың бірінде нақты тірі Bitcoin блогын көріңіз. Сондай-ақ кірістер мен шығыстармен транзакциялар бар және басында 18 нөл және жоғарыда сипатталған барлық хэштер бар.

Блокчейнге пайда болған транзакцияларды қосатындар - кеншілер. Сондықтан, егер біреу сізге «**** үшін блокчейн жасаймын» десе, ол жауап беруі керек бірінші сұрақ - оны кім және не үшін өндіреді. Көбінесе дұрыс жауап: «әркім болады, өйткені тау-кен өндіру үшін біз монеталарымызды береміз, ол өседі және бұл кеншілерге тиімді». Бірақ бұл барлық жобаларға қатысты емес.

Мысалы, кейбір Денсаулық сақтау министрлігі ертең дәрігерлер үшін өзінің жабық блокчейнін жасайды (және олар мұны қалайды), оны кім өндіреді? Демалыс терапевтері?

Бірақ кейін сыйақылар жоғалып немесе аз болған кезде кеншілерге қандай пайда болады?

Жаратушының идеясына сәйкес, сол уақытқа дейін адамдар биткоиннің шындығына сенуге мәжбүр болады және майнинг әр транзакцияға енгізілген комиссия сомасымен өтей бастайды. Мұнда бәрі жүреді: 2012 жылы барлық комиссиялар нөлге тең болды, кеншілер тек блоктардан сыйақы алу үшін өндірді. Бүгінгі күні нөлдік комиссиямен транзакция бассейнде бірнеше сағат бойы ілулі болуы мүмкін, өйткені бәсекелестік бар және адамдар жылдамдық үшін төлеуге дайын.

Яғни, кен өндірудің мәні мағынасыз мәселелерді шешуде. Осы күштің барлығын пайдалырақ нәрсеге – мысалы, қатерлі ісік ауруын емдеуге жұмсауға болмас па еді?

Тау-кен өнеркәсібінің мәні кез келген есептеу мәселесін шешу болып табылады. Бұл тапсырма желі қатысушыларының жауап табудың тұрақты ықтималдығы үшін жеткілікті қарапайым болуы керек - әйтпесе транзакциялар мәңгілікке расталады. Дүкенде кассада банк транзакцияңызды растау үшін жарты сағат күту керек екенін елестетіп көріңіз. Мұндай банкті ешкім пайдаланбайды.

Бірақ барлық желі қолданушылары жауапты бірден таппауы үшін тапсырма бір мезгілде қиын болуы керек. Өйткені бұл жағдайда олар желіге бірдей транзакциялары бар көптеген блоктарды жариялайды және мен айтқан «қос ысырап» мүмкіндігі пайда болады. Немесе одан да сорақысы – бір блокчейнді бірнеше тармаққа бөлу, онда қандай транзакция расталғанын және қайсысы расталмағанын ешкім анықтай алмайды.

Егер 12,5 BTC сыйақысы 10 минут сайын бір рет және блокты тапқан бір ғана адамға берілсе, мен бір күні 40 000 доллар түсіремін деген үмітпен бірнеше жыл бойы видеокарталарды ысырап етуім керек болды. ағымдағы валюта бағамы)?

Бұл биткоин үшін дәл солай. Бірақ әрқашан олай болған жоқ. Бұрын желі кішірек болды, күрделілігі төмен болды, яғни жаңа блок үшін хэшті жалғыз табу ықтималдығы жоғары. Бірақ ол кезде биткоин соншалықты қымбат емес еді.

Енді ешкім биткоиндерді жалғыз өндірмейді. Енді қатысушылар арнайы топтарға - тау-кен бассейндеріне біріктірілді, онда барлығы бірге дұрыс хэшті табуға тырысады.

Егер топтың ең болмағанда біреуі тапса, онда барлық сыйақы қатысушылар арасында ортақ жұмысқа қосқан үлесіне қарай бөлінеді. Сіз кен өндірумен айналысасыз және апта сайын жалпы үлестен бір тиын аласыз.

Бірақ соло майнинг басқа желілерде әбден мүмкін. Соңғы уақытқа дейін блоктар әр 10 секунд сайын табылатын Ethereum-ды өндіру оңай болды. Онда блок сыйлығы әлдеқайда төмен, бірақ әдемі пенни табу ықтималдығы жоғары.

Сондықтан біз мыңдаған видеокарталарды бекер өртеп жібереміз және одан шығудың жолы жоқ па?

Иә, бірақ идеялар бар. Мен сипаттаған тау-кен өндіру классикалық болып табылады және Proof-of-Work (жұмыс дәлелі) деп аталады. Яғни, әрбір машина берілген ықтималдықпен мағынасыз есептерді шығару арқылы желі игілігіне жұмыс істегенін дәлелдейді.

Бірақ кейбір жігіттер тау-кен өндірудің басқа түрлерімен блокчейндер жасай бастайды. Енді екінші ең танымал тұжырымдама Proof-of-Stake (proof of stake) болып табылады. Майнингтің бұл түрінде желі қатысушысының шотында неғұрлым көп «тиындар» болса, соғұрлым ол блокчейнге өз блогын енгізу ықтималдығы жоғары болады. Ауылдағы ең шулы жігіт сияқты.

Сіз тау-кен өндірудің басқа түрлерін ойлай аласыз. Жоғарыда айтылғандай, желідегі барлық компьютерлер қатерлі ісікке ем іздей алады, тек бұл жағдайда жүйеге өз үлесін қалай жазу керектігін анықтау керек. Өйткені, мен де қатысамын деп айта аламын, бірақ видео картамды өшіріп, ештеңені санамаймын.

Әр қатысушының ісік ауруын емдеуге қосқан үлесін қалай бағалайсыз? Егер сіз оны ойлап тапсаңыз - CancerCoin-ді кесуге батылыңыз, БАҚ-тағы хайп сізге кепілдік береді.

Блокчейн

Біздің барлық ықтималдық теориямызға қарамастан, екі кенші бір уақытта дұрыс жауапты таба алған жағдайды елестетіп көріңіз. Олар желі арқылы екі абсолютті дұрыс блокты жібере бастайды.

Бұл блоктардың әртүрлі болатынына кепілдік беріледі, өйткені олар керемет түрде бассейннен бірдей транзакцияларды таңдаса, мүлдем бірдей ағаштар жасаса және бірдей кездейсоқ санды тапса (бір рет емес), олардың хэштері әлі де әртүрлі болады, өйткені әрқайсысы өз әмиян нөмірін жазады. сыйлық үшін блок.

Енді бізде екі жарамды блок бар және қайтадан кім бірінші кезекте қарастырылуы керек деген мәселе туындайды. Бұл жағдайда желі қалай әрекет етеді?

Блокчейн алгоритмі желі қатысушылары оларға жеткен бірінші дұрыс жауапты ғана қабылдайтынын айтады. Содан кейін олар әлемнің өзіндік суреті негізінде өмір сүреді.

Екі кенші де өз сыйлығын алады, ал қалғандары жеке алған соңғы блокқа сүйене отырып, қалғандарының барлығын қайта түзетіп тастап, шахтаға кіріседі. Желіде дұрыс блокчейннің екі нұсқасы пайда болады. Парадокс осындай.

Бұл ықтималдық теориясы қайтадан көмектесетін әдеттегі жағдай. Желі осындай екіге бөлінген күйде кеншілердің бірі осы тізбектердің біріне келесі блокты тапқанша жұмыс істейді.

Мұндай блок табылып, тізбекке енгізілгеннен кейін ол ұзарады және блокчейн желісінің келісімдерінің бірі қосылады: кез келген жағдайда ең ұзын блокчейн бүкіл желі үшін жалғыз шынайы болып қабылданады.

Қысқа тізбек, оның барлық дұрыстығына қарамастан, желідегі барлық қатысушылардан бас тартады. Одан жасалған транзакциялар пулға қайтарылады (егер олар басқасында расталмаса) және оларды өңдеу жаңадан басталады. Шахтер сыйлығын жоғалтады, өйткені оның блогы енді жоқ.

Желінің өсуімен мұндай сәйкестіктер «өте екіталай» дегеннен «жақсы, кейде солай болады» санатына өтеді. Бұрынғылар төрт блоктан тұратын тізбекті бірден түсіріп алған жағдайлардың болғанын айтады.

Осыған байланысты, тізбектің үш соңында қауіпсіздік ережелері ойлап табылды:

1. Майнинг үшін сыйақыларды алғаннан кейін тағы 20 расталған блоктан кейін ғана пайдалануға болады. Bitcoin үшін бұл шамамен үш сағатты құрайды.

2. Егер сізге биткоиндер жіберілген болса, оларды 1-5 блоктан кейін ғана жаңа транзакцияларда кіріс ретінде пайдалануға болады.

3. 1 және 2 ережелер әр клиенттің параметрлерінде жай ғана жазылған. Олардың сақталуын ешкім қадағаламайды. Бірақ егер сіз жүйені оларды орындамау үшін алдауға тырыссаңыз, ең ұзын тізбекті заң әлі де сіздің барлық транзакцияларыңызды жояды.

Блокчейнді алдауға тырысу

Енді сіз тау-кен өнеркәсібі, блокчейн құрылғысы және ең ұзын тізбек ережесі туралы бәрін білетін болсаңыз, сізде сұрақ туындауы мүмкін: ең ұзын тізбекті өзіңіз жасап, жалған транзакцияларыңызды растай отырып, блокчейнді қандай да бір жолмен басып озу мүмкін бе?

Сізде жер бетіндегі ең қуатты компьютер бар делік. Google және Amazon деректер орталықтары сіздің қолыңызда және сіз желідегі ең ұзын блокчейнге айналатын осындай тізбекті есептеуге тырысасыз.

Сіз тізбектің бірнеше блогын алып, бірден есептей алмайсыз, өйткені әрбір келесі блок алдыңғыға байланысты. Содан кейін сіз өзіңіздің үлкен деректер орталықтарыңыздағы әрбір блокты басқа қатысушылардың негізгі блокчейнді қалай ұлғайтуын жалғастыруымен қатар санауды мүмкіндігінше тез шешесіз. Оларды басып озу мүмкін бе? Мүмкін иә.

Егер сіздің есептеу қуатыңыз барлық желі қатысушыларының қуатының 50%-дан астамын құраса, онда 50% ықтималдықпен сіз барлық басқаларға қарағанда ұзағырақ тізбекті тезірек құра аласыз. Бұл транзакциялардың ұзағырақ тізбегін есептеу арқылы блокчейнді алдаудың теориялық мүмкін әдісі. Содан кейін нақты желінің барлық транзакциялары жарамсыз деп есептеледі және сіз барлық сыйақыларды жинап, криптовалюта тарихындағы «блокчейнді бөлу» деп аталатын жаңа кезеңді бастайсыз. Бірде кодтағы қатеге байланысты бұл Ethereum-да болды.

Бірақ іс жүзінде ешбір деректер орталығын қуат жағынан әлемдегі барлық компьютерлермен салыстыруға болмайды. Бір жарым миллиард қытайлық icics, тағы бір жарым миллиард аш үндістер тау-кен фермалары мен арзан электр энергиясы - бұл үлкен есептеу қуаты. Әлемде әлі ешкім олармен жалғыз бәсекелесе алмайды, тіпті Google.

Бұл көшеге шығып, әлемдегі әрбір адамға доллардың қазір 1 рубль тұратынын және БАҚ сізді әшкерелегенше уақытында болатындығын сендіруге тырысу сияқты. Ал егер сіз барлығын сендіре алсаңыз, сіз әлемдік экономиканы күйрете аласыз. Теориялық тұрғыдан бұл мүмкін емес пе? Бірақ іс жүзінде, қандай да бір себептермен, ешкім табысқа жете алмады.

Блокчейн де осы ықтималдыққа сүйенеді. Қатысушылар-кеншілер неғұрлым көп болса, соғұрлым желіде қауіпсіздік пен сенім артады. Сондықтан, Қытайда тағы бір ірі тау-кен фермасы жабылған кезде, көрсеткіш құлдырады. Барлығы әлемнің бір жерінде ~ 49% сыйымдылықпен кеншілер пулын жинаған зұлым данышпан бар деп қорқады.

Қорытынды

Блокчейн - бұл қатаң анықталған алгоритмдер жиынтығы емес. Бұл қатысушылар арасында ешкім ешкімге сене алмайтын жалған желі құруға арналған құрылым. Оқыған кезде сізде «осылай істеуге болады және бұл одан да пайдалы болады» деген ой бірнеше рет болған шығар. Бұл сіз блокчейнді түсінгеніңізді білдіреді, құттықтаймыз.

Әлемдегі кейбір жігіттер де мұны түсінді және кейбір нақты тапсырмаларды жақсартуды немесе бейімдеуді қалады. Криптовалюталар бірдей емес, бірақ олардың көпшілігі бар. Мұнда блокчейн идеясын қайта қараудың арқасында белгілі бір танымалдыққа ие болған кейбір идеялар мен жобалардың қысқаша тізімі берілген.

Ethereum

«Эфирлер» - крипто-хайп жаңалықтарында Биткоиннан кейінгі екінші ең танымал сөз. Қарапайым адамдар үшін бұл тағы бір криптовалюта және ICO деп аталатын ең сәнді нәрсені жасау тәсілі. Сайттағы әзірлеушілер Ethereum-ды «сіздің қажеттіліктеріңізге арналған блокчейн құрастырушы» ретінде сипаттайды. Бұл да мүмкін, иә.

Бірақ егер сіз одан да тереңірек қазсаңыз, эфир тек монеталар желісі емес. Бұл үлкен ғаламдық есептеуіш машина, мұнда пайдаланушылар басқа адамдардың бағдарламаларының кодын (ақылды келісім-шарттар) орындайды, орындалған әрбір жол үшін сыйақы алады. Мұның бәрі орталықтандырылмаған, бұзылмайтын және блокчейннің барлық кепілдіктерімен.

Біз Ethereum және смарт келісімшарттар туралы ұзақ уақыт бойы сөйлесе аламыз, бұл басқа осындай пост үшін жеткілікті болады. Сондықтан, біз үздік блогерлер стилінде әрекет етеміз: егер бұл жазба белсенді түрде репост жасалып, ретвиттелсе және жұмаға дейін ол кем дегенде 1500 бірегей көрініске ие болса, мен Ethereum және смарт келісімшарттар туралы жалғасын жазамын.

Ұсынылған: