1. Практика

Как устроены блокчейны — база всех криптовалют

Биткоин растет, но как он вообще существует?

© Shutterstock AI // Shutterstock

В по­след­нее вре­мя о бит­ко­ине и тех­но­ло­гии блок­чей­на сно­ва го­во­рят очень мно­го: по­сле вы­бо­ров в США и по­бе­ды До­наль­да Трам­па, ко­то­рый под­дер­жи­ва­ет раз­ви­тие крип­то­эко­но­ми­ки, зна­ме­ни­тая ва­лю­та рва­ну­ла вверх. Те­перь во­прос «за­ку­пать­ся ли бит­ком» уже не сто­ит — слиш­ком до­ро­го. Зато дру­гие крип­то­ва­лю­ты все еще до­ступ­ны. Ин­ве­стор Крис Дик­сон в сво­ей кни­ге «Чи­тай, пиши, управ­ляй: блок­чейн как но­вая эра ин­тер­не­та», ко­то­рая вы­шла в из­да­тель­стве «Миф», объ­яс­ня­ет, как во­об­ще устро­ен блок­чейн. Пуб­ли­ку­ем от­ры­вок из нее.




Блок­чей­ны — но­вый вид ком­пью­те­ра

В опуб­ли­ко­ван­ной в 2008 году ста­тье Са­тоши На­ка­мо­то — это псев­до­ним изоб­ре­та­те­ля или кол­лек­ти­ва изоб­ре­та­те­лей (точ­но до сих пор ни­ко­му не из­вест­но) — пред­ста­вил миру пер­вый блок­чейн. На­ка­мо­то не на­зы­вал свое изоб­ре­те­ние так — он ис­поль­зо­вал тер­ми­ны block (блок) и chain (це­поч­ка) от­дель­но, — но со­об­ще­ство, сло­жив­ше­е­ся во­круг его идей, со вре­ме­нем «скле­и­ло» два сло­ва в одно. В той ста­тье но­вый вид циф­ро­вых де­нег, бит­койн, опи­сы­вал­ся как «элек­трон­ная пла­теж­ная си­сте­ма, ос­но­ван­ная на крип­то­гра­фи­че­ском до­ка­за­тель­стве, а не до­ве­рии, что поз­во­ля­ет лю­бым двум сто­ро­нам за­клю­чать сдел­ки на­пря­мую друг с дру­гом без по­треб­но­сти в до­ве­рен­ной тре­тьей сто­роне». Что­бы уда­лить из про­цес­са до­ве­рен­ную тре­тью сто­ро­ну, На­ка­мо­то ну­жен был ин­стру­мент, поз­во­ля­ю­щий си­сте­ме вы­пол­нять вы­чис­ле­ния неза­ви­си­мо. Для это­го он и пред­ла­гал ис­поль­зо­вать но­вый тип ком­пью­те­ра, блок­чейн.

Ком­пью­тер — кон­цеп­ция аб­стракт­ная, опре­де­ля­е­мая ско­рее тем, что он де­ла­ет, чем тем, из чего он сде­лан. Пер­во­на­чаль­но так на­зы­ва­ли лю­дей, за­ни­мав­ших­ся вы­чис­ле­ни­я­ми. В XIX и XX сто­ле­ти­ях это сло­во ста­ло от­но­сить­ся к ма­ши­нам, спо­соб­ным про­из­во­дить вы­чис­ле­ния. В зна­ме­ни­той ра­бо­те, на­пи­сан­ной в 1936 году и по­свя­щен­ной ма­те­ма­ти­че­ской ло­ги­ке, бри­тан­ский ма­те­ма­тик Алан Тью­ринг ис­сле­ду­ет при­ро­ду и пре­де­лы при­ме­не­ния ал­го­рит­мов и пред­ла­га­ет бо­лее чет­кое обос­но­ва­ние это­го яв­ле­ния. Ав­тор дал опре­де­ле­ние того, что се­го­дня уче­ные-ком­пью­тер­щи­ки на­зы­ва­ют ко­неч­ным ав­то­ма­том, а все осталь­ные — про­сто ком­пью­те­ром.

Ко­неч­ный ав­то­мат со­сто­ит из двух ча­стей: 1) ме­ста для хра­не­ния ин­фор­ма­ции и 2) средств из­ме­не­ния этой ин­фор­ма­ции. Хра­ня­ща­я­ся в ав­то­ма­те ин­фор­ма­ция — эк­ви­ва­лент ком­пью­тер­ной па­мя­ти. На­бо­ры ин­струк­ций, на­зы­ва­е­мые про­грам­ма­ми, опре­де­ля­ют, как при­нять на­чаль­ное со­сто­я­ние, вход­ные дан­ные, и вы­ве­сти но­вое со­сто­я­ние, ре­зуль­тат. По­сколь­ку в мире го­раз­до боль­ше лю­дей, ко­то­рые уме­ют чи­тать и пи­сать, чем тех, кто уме­ет про­грам­ми­ро­вать, я люб­лю опи­сы­вать вы­чис­ле­ния с ис­поль­зо­ва­ни­ем линг­ви­сти­че­ской тер­ми­но­ло­гии. Пред­ставь­те, что су­ще­стви­тель­ные пред­став­ля­ют со­бой со­сто­я­ние или па­мять — то, чем мы мо­жем ма­ни­пу­ли­ро­вать, гла­го­лы — код или про­грам­мы: дей­ствия, по­сред­ством ко­то­рых осу­ществ­ля­ет­ся это ма­ни­пу­ли­ро­ва­ние. Я еще не раз по­вто­рю: все, что вы спо­соб­ны на­ри­со­вать в сво­ем во­об­ра­же­нии, мож­но за­ко­ди­ро­вать. Имен­но по­это­му я срав­ни­ваю ко­ди­ро­ва­ние с твор­че­ской де­я­тель­но­стью, та- кой, на­при­мер, как на­пи­са­ние ху­до­же­ствен­ной ли­те­ра­ту­ры. В этом смыс­ле ком­пью­те­ры крайне раз­но­об­раз­ны и раз­но­сто­рон­ни.

Издательство «миф»

Ко­неч­ный ав­то­мат — са­мый чет­кий спо­соб пред­став­ле­ния о ком­пью­те­ре. Блок­чейн На­ка­мо­то — не фи­зи­че­ский ком­пью­тер, та­кой как ПК, но­ут­бук, те­ле­фон или сер­вер, а вир­ту­аль­ный: ком­пью­тер по функ­ци­ям, а не ма­те­ри­аль­но­му во­пло­ще­нию. Блок­чей­ны — про­грамм­ная аб­страк­ция, ко­то­рая на­кла­ды­ва­ет­ся по­верх фи­зи­че­ских устройств. Это ко­неч­ные ав­то­ма­ты. Ко­гда-то сло­во «ком­пью­тер» ста­ло вме­сто лю­дей обо­зна­чать ма­ши­ны; те­перь этот тер­мин охва­ты­ва­ет не толь­ко ап­па­рат­ное обес­пе­че­ние, но и про­грамм­ное.

Ком­пью­те­ры на базе ПО, или «вир­ту­аль­ные ма­ши­ны», су­ще­ству­ют с тех пор, как IBM в кон­це 1960-х раз­ра­бо­та­ла пер- вый ком­пью­тер и в на­ча­ле 1970-х вы­ве­ла его на ры­нок. Поз­же, в кон­це 1990-х, ИТ-ги­гант VMware сде­лал эту тех­но­ло­гию мас­со­вой и по­пу­ляр­ной. Се­го­дня лю­бой мо­жет за­пу­стить вир­ту­аль­ную ма­ши­ну, за­гру­зив на свой ПК так на­зы­ва­е­мую про­грам­му-ги­пер­ви­зор. Ком­па­нии обыч­но ис­поль­зу­ют та­кие ма­ши­ны для оп­ти­ми­за­ции управ­ле­ния кор­по­ра­тив­ны­ми цен­тра­ми об­ра­бот­ки дан­ных, и они иг­ра­ют клю­че­вую роль в ра­бо­те про­вай­де­ров об­лач­ных услуг. Блок­чей­ны рас­ши­ря­ют мо­дель про­грамм­ных вы­чис­ле­ний на но­вый кон­текст. Ком­пью­те­ры мо­гут быть по­стро­е­ны раз­ны­ми спо­со­ба­ми; они опре­де­ля­ют­ся сво­и­ми функ­ци­о­наль­ны­ми свой­ства­ми, а не внеш­ним ви­дом.

Как ра­бо­та­ют блок­чей­ны

Блок­чей­ны из­на­чаль­но, по сво­ей кон­струк­ции, устой­чи­вы к ма­ни­пу­ля­ци­ям. Они стро­ят­ся на базе сети фи­зи­че­ских ком­пью­те­ров, к ко­то­рой мо­жет под­клю­чить­ся каж­дый, но ко­то­рую чрез­вы­чай­но труд­но кон­тро­ли­ро­вать кому-то од­но­му. Эти фи­зи­че­ские ком­пью­те­ры под­дер­жи­ва­ют нуж­ное со­сто­я­ние ком­пью­те­ра вир­ту­аль­но­го и кон­тро­ли­ру­ют его пе­ре­хо­ды в но­вые со­сто­я­ния. В сети Bit­coin эти фи­зи­че­ские ком­пью­те­ры на­зы­ва­ют май­не­ра­ми, но се­го­дня боль­ше рас­про­стра­нен дру­гой тер­мин, «ва­ли­да­то­ры»: они и прав­да вы­пол­ня­ют имен­но функ­цию ва­ли­да­ции (пе­ре­хо­дов, или сме­ны) со­сто­я­ния.

Если кон­цеп­ция пе­ре­хо­да со­сто­я­ния ка­жет­ся вам из­лишне аб­стракт­ной, по­про­буй­те вос­поль­зо­вать­ся ана­ло­ги­ей. Ду­май­те о бит­койне как о стран­ной элек­трон­ной таб­ли­це или бух­гал­тер­ской кни­ге с дву­мя столб­ца­ми. (Все, ко­неч­но, го­раз­до слож­нее, но уж по­тер­пи­те.) Каж­дая стро­ка пер­во­го столб­ца име­ет уни­каль­ный ад­рес. В каж­дой стро­ке вто­ро­го столб­ца ука­за­но ко­ли­че­ство бит­кой­нов, хра­ня­щих­ся по это­му ад­ре­су. Пе­ре­хо­ды со­сто­я­ния об­нов­ля­ют стро­ки во вто­ром столб­це, от­ра­жая все пе­ре­во­ды бит­кой­нов, вы­пол­нен­ные в по­след­нем бло­ке тран­зак­ций. В этом вся суть.

Но как же вир­ту­аль­ный ком­пью­тер обес­пе­чи­ва­ет еди­ный ис­точ­ник ис­ти­ны о его со­сто­я­нии, если к сети мо­жет при­со­еди­нить­ся лю­бой же­ла­ю­щий? Про­ще го­во­ря, если элек­трон­ная таб­ли­ца от­кры­та и до­ступ­на всем, как мож­но до­ве­рять чис­лам, ко­то­рые ви­дишь в ее ячей­ках? От­вет: по­сред­ством ма­те­ма­ти­че­ских га­ран­тий, в част­но­сти крип­то­гра­фии (на­у­ка о без­опас­но­сти ком­му­ни­ка­ций) и тео­рии игр (на­у­ка о при­ня­тии стра­те­ги­че­ских ре­ше­ний).

Рас­смот­рим, как некое пред­ло­жен­ное со­сто­я­ние ста­но­вит­ся сле­ду­ю­щим со­сто­я­ни­ем ком­пью­те­ра. Во вре­мя каж­до­го пе­ре­хо­да со­сто­я­ния ва­ли­да­то­ры за­пус­ка­ют про­цесс для до­сти­же­ния кон­сен­су­са по сле­ду­ю­ще­му со­сто­я­нию сети. Во-пер­вых, они де­ла­ют то, что сле­ду­ет из их на­зва­ния: осу­ществ­ля­ют ва­ли­да­цию, про­ве­ряя, что каж­дая тран­зак­ция под­твер­жде­на на­деж­ной циф­ро­вой под­пи­сью. За­тем сеть слу­чай­ным об­ра­зом вы­би­ра­ет од­но­го ва­ли­да­то­ра, ко­то­рый объ­еди­ня­ет про­ве­рен­ные тран­зак­ции вме­сте для пе­ре­хо­да к сле­ду­ю­ще­му со­сто­я­нию сети. Дру­гие ва­ли­да­то­ры про­ве­ря­ют, что но­вое со­сто­я­ние от­ве­ча­ет тре­бо­ва­ни­ям сети, как и все тран­зак­ции в бло­ке, и что глав­ные обя­за­тель­ства блок­чейн-ком­пью­те­ра вы­пол­не­ны (на­при­мер, если го­во­рить кон­крет­но о бит­кой­нах, что их чис­ло ни­ко­гда не бу­дет пре­вы­шать 21 млн). Ва­ли­да­то­ры фак­ти­че­ски «го­ло­су­ют» за но­вое со­сто­я­ние, опи­ра­ясь на него при пе­ре­хо­де в сле­ду­ю­щие со­сто­я­ния.

Этот про­цесс по опре­де­ле­нию га­ран­ти­ру­ет, что все ра­бо­та­ют на базе од­ной и той же про­ве­рен­ной вер­сии ис­то­рии — что­бы до­стичь кон­сен­су­са. Если ка­кой-либо ва­ли­да­тор (или некое их под­мно­же­ство) по­пы­та­ет­ся смо­шен­ни­чать, осталь­ные име­ют все воз­мож­но­сти ули­чить его во лжи и про­го­ло­со­вать про­тив него. Пра­ви­ла это­го про­цес­са уста­нов­ле­ны так, что он не сра­бо­та­ет, кро­ме толь­ко того слу­чая, ко­гда боль­шин­ство ва­ли­да­то­ров всту­пит в пре­ступ­ный сго­вор.

Если вер­нуть­ся к на­ше­му упро­щен­но­му при­ме­ру с элек­трон­ной таб­ли­цей, но­вой ма­стер-ко­пи­ей бу­дет таб­ли­ца, пред­ло­жен­ная вы­иг­рав­шим ва­ли­да­то­ром. Ко­неч­но, в ре­аль­но­сти ни­ка­кой таб­ли­цы нет. Есть толь­ко пе­ре­хо­ды со­сто­я­ний — суть вы­чис­ле­ний. Каж­дый пе­ре­ход со­сто­я­ния на­зы­ва­ет­ся бло­ком, и все бло­ки со­еди­не­ны в це­поч­ку, в ре­зуль­та­те чего каж­дый мо­жет, про­смот­рев их, ве­ри­фи­ци­ро­вать пол­ную ис­то­рию дан­но­го ком­пью­те­ра. От­сю­да и на­зва­ние: блок­чейн — це­поч­ка бло­ков.

Пе­ре­хо­ды со­сто­я­ний мо­гут со­дер­жать не толь­ко чис­ла, отоб­ра­жа­ю­щие про­стые ба­лан­сы сче­тов, но и на­бо­ры вло­жен­ных ком­пью­тер­ных про­грамм. Бит­койн идет в паре с язы­ком Bit­coin Script, ко­то­рый мож­но ис­поль­зо­вать для на­пи­са­ния про­грамм, мо­ди­фи­ци­ру­ю­щих пе­ре­хо­ды со­сто­я­ний. Од­на­ко этот язык из­на­чаль­но огра­ни­чен, по за­дум­ке. Он в ос­нов­ном поз­во­ля­ет лю­дям пе­ре­во­дить сред­ства с од­ной учет­ной за­пи­си на дру­гую или со­зда­вать учет­ные за­пи­си, кон­тро­ли­ру­е­мые мно­го­чис­лен­ны­ми поль­зо­ва­те­ля­ми. Бо­лее но­вые блок­чей­ны — на­при­мер, Ethereum, пер­вый блок­чейн об­ще­го на­зна­че­ния, де­бю­ти­ро­вав­ший в 2015 году, — поз­во­ля­ют про­грам­ми­ро­вать, ис­поль­зуя го­раз­до бо­лее экс­прес­сив­ные язы­ки.

До­бав­ле­ние в блок­чей­ны про­дви­ну­тых язы­ков про­грам­ми­ро­ва­ния — про­рыв по­ис­ти­не ре­во­лю­ци­он­ный. В ито­ге мы по­лу­чи­ли что-то вро­де ма­га­зи­на при­ло­же­ний Ap­ple для iPhone (толь­ко они мо­де­ри­ру­ют­ся, а блок­чей­ны до­ступ­ны всем и не тре­бу­ют раз­ре­ше­ний). Лю­бой раз­ра­бот­чик в мире мо­жет на­пи­сать и за­пу­стить на базе блок­чей­нов вро­де Ethereum при­ло­же­ние, на­чи­ная от тор­го­вых пло­ща­док и за­кан­чи­вая ме­та­все­лен­ны­ми. Это чрез­вы­чай­но мощ­ное свой­ство. Оно де­ла­ет блок­чей­ны неиз­ме­ри­мо бо­лее экс­прес­сив­ны­ми и уни­вер­саль­ны­ми, чем вы­ше­упо­мя­ну­тая бух­гал­тер­ская кни­га из на­ше­го при­ме­ра. Ко­неч­но, блок­чей­ны — не про­сто гросс­бу­хи для та­бу­ли­ро­ва­ния дан­ных. Это не базы дан­ных, а пол­но­цен­ные ком­пью­те­ры.

Од­на­ко, как из­вест­но, для за­пус­ка при­ло­же­ний на ком­пью­те­рах нуж­ны ре­сур­сы. И блок­чей­ны, со­здан­ные под кон­крет­ные при­ло­же­ния, та­кие как Bit­coin, и уни­вер­саль­ные, на­при­мер Ethereum, нуж­да­ют­ся в лю­дях, ко­то­рые пла­тят за вы­чис­ли­тель­ные мощ­но­сти, рас­хо­ду­е­мые на ва­ли­да­цию пе­ре­хо­дов со­сто­я­ний, а зна­чит, они долж­ны да­вать лю­дям по­вод для ин­ве­сти­ро­ва­ния в них. На­ка­мо­то пред­ло­жил для это­го от­лич­ный при­ем: циф­ро­вая ва­лю­та си­сте­мы — в блок­чейне Bit­coin это бит­койн — сама по себе ста­но­вит­ся ис­точ­ни­ком фи­нан­си­ро­ва­ния ком­пью­те­ров, ко­то­рые ее ис­поль­зу­ют. Впо­след­ствии эту схе­му ско­пи­ро­ва­ли дру­гие блок­чей­ны.

У каж­до­го блок­чейна есть соб­ствен­ный на­бор внут­рен­них сти­му­лов для при­вле­че­ния лю­дей. В боль­шин­стве си­стем ва­ли­да­тор по­лу­ча­ет неболь­шое воз­на­граж­де­ние за каж­дый но­вый блок или пе­ре­ход со­сто­я­ния. (За­меть­те, что тер­мин «ва­ли­да­тор» мо­жет от­но­сить­ся к ком­пью­те­рам, ко­то­рые го­ло­су­ют за пе­ре­хо­ды со­сто­я­ний, или к фи­зи­че­ским ли­цам либо груп­пам лю­дей, эти­ми ком­пью­те­ра­ми управ­ля­ю­щим.) Воз­на­граж­да­ют­ся толь­ко чест­ные ва­ли­да­то­ры — те, ко­то­рые доб­ро­со­вест­но про­ве­ря­ют циф­ро­вые под­пи­си и пред­ла­га­ют толь­ко про­ве­рен­ные из­ме­не­ния в блок­чейне. Этот фи­нан­со­вый сти­мул по­буж­да­ет ва­ли­да­то­ров про­дол­жать под­дер­жи­вать сеть и ве­сти себя чест­но. (А еще день­ги в блок­чей­ны по­сту­па­ют за счет пла­ты, взи­ма­е­мой с поль­зо­ва­те­лей; по­дроб­нее о том, как это ра­бо­та­ет, и о то­ке­нах мы по­го­во­рим в гла­ве 10.)

Как уже го­во­ри­лось, блок­чей­ны не тре­бу­ют раз­ре­ше­ний; ис­поль­зо­вать эту сеть мо­жет каж­дый, у кого есть под­клю­че­ние к ин­тер­не­ту. На­ка­мо­то со­здал пер­вый блок­чейн, Bit­coin, имен­но та­ким по­то­му, что счи­тал все су­ще­ство­вав­шие на тот мо­мент фи­нан­со­вые си­сте­мы эли­тар­ны­ми, от­да­ю­щи­ми яв­ное пред­по­чте­ние при­ви­ле­ги­ро­ван­ным по­сред­ни­кам, на­при­мер бан­кам. А он хо­тел по­ста­вить всех в рав­ные усло­вия. Вклю­че­ние в схе­му тре­бо­ва­ния по­да­чи за­яв­ки или про­вер­ки кан­ди­да­тов при­ве­ло бы к по­яв­ле­нию но­вых при­ви­ле­ги­ро­ван­ных по­сред­ни­ков и непре­мен­но вос­со­зда­ло бы про­бле­мы су­ще­ство­вав­шей то­гда си­сте­мы, ко­то­рые На­ка­мо­то хо­тел ре­шить. Но и эта схе­ма была чре­ва­та од­ной весь­ма се­рьез­ной про­бле­мой: если лю­бой ком­пью­тер смо­жет го­ло­со­вать без огра­ни­че­ний, сеть на­вер­ня­ка на­вод­нят спам и зло­умыш­лен­ни­ки.

Ре­ше­ние этой про­бле­мы, пред­ло­жен­ное На­ка­мо­то, за­клю­ча­лось в том, что­бы взи­мать «пла­ту» за уча­стие. Что­бы про­го­ло­со­вать за сле­ду­ю­щее со­сто­я­ние, май­не­ру нуж­но вы­пол­нить вы­чис­ли­тель­ную ра­бо­ту, тре­бу­ю­щую за­трат энер­гии, и пред­ста­вить до­ка­за­тель­ства того, что она про­де­ла­на. Эта си­сте­ма, ост­ро­ум­но на­зван­ная «до­ка­за­тель­ством ра­бо­ты» (PoW — proof of work), сде­ла­ла воз­мож­ным от­кры­тое го­ло­со­ва­ние без раз­ре­ше­ний, обес­пе­чив при этом филь­тра­цию спа­ма и дру­гих нечест­ных схем. Дру­гие блок­чей­ны, в том чис­ле Ethereum, ис­поль­зу­ют бо­лее но­вую си­сте­му, ко­то­рую на­зва­ли «до­ка­за­тель­ством доли (вла­де­ния)» (PoS — proof of stake). Вме­сто того что­бы тре­бо­вать от ва­ли­да­то­ров тра­тить­ся на элек­тро­энер­гию, со­глас­но это­му ме­ха­низ­му, они долж­ны вно­сить за­лог, рискуя сво­и­ми день­га­ми (так на­зы­ва­е­мый стей­кинг). Если ва­ли­да­тор ра­бо­та­ет чест­но, он по­лу­ча­ет неболь­шое де­неж­ное воз­на­граж­де­ние. Если же его пой­ма­ют на лжи — на­при­мер, на го­ло­со­ва­нии за непра­виль­ное со­сто­я­ние или од­но­вре­мен­ном пред­ло­же­нии несколь­ких кон­флик­ту­ю­щих пе­ре­хо­дов со­сто­я­ний, — за­лог «уре­за­ет­ся» либо кон­фис­ку­ет­ся во­все.

Одно из ос­нов­ных кри­ти­че­ских за­ме­ча­ний в ад­рес сети Bit­coin за­клю­ча­ет­ся в том, что ее ра­бо­та тре­бу­ет по­треб­ле­ния огром­ных объ­е­мов энер­гии, а это мо­жет на­не­сти вред окру­жа­ю­щей сре­де. Без­услов­но, нега­тив­ные эко­ло­ги­че­ские по­след­ствия си­сте­мы PoW по­мог бы смяг­чить пе­ре­ход на «чи­стые» ис­точ­ни­ки энер­гии, ска­жем, на воз­об­нов­ля­е­мую энер­гию пло­тин и вет­ря­ных тур­бин, но, ду­маю, бо­лее эф­фек­тив­ным под­хо­дом была бы ее пол­ная за­ме­на ме­нее энер­го­ем­ки­ми си­сте­ма­ми, та­ки­ми как PoS, ко­то­рые пол­но­стью сня­ли бы воз­ра­же­ния эко­ло­ги­че­ско­го ха­рак­те­ра про­тив блок­чей­нов.

До­ка­за­тель­ство доли не ме­нее, а то и бо­лее на­деж­но, чем до­ка­за­тель­ство ра­бо­ты, а так­же де­шев­ле, быст­рее и го­раз­до энер­го­эф­фек­тив­нее. Ethereum за­вер­ши­ла пе­ре­ход на эту си­сте­му осе­нью 2022 года, и с весь­ма, надо при­знать, впе­чат­ля­ю­щи­ми ре­зуль­та­та­ми. Ниже пред­став­лен гра­фик, отоб­ра­жа­ю­щий энер­го­по­треб­ле­ние Ethereum, ко­то­рая ис­поль­зу­ет до­ка­за­тель­ство доли, по срав­не­нию с дру­ги­ми по­пу­ляр­ны­ми си­сте­ма­ми.

Мно­гие блок­чей­ны, упо­мя­ну­тые в этой кни­ге, — за од­ним су­ще­ствен­ным ис­клю­че­ни­ем, Bit­coin, — ис­поль­зу­ют до­ка­за­тель­ство доли. По моим ожи­да­ни­ям, в бу­ду­щем все по­пу­ляр­ней­шие блок­чей­ны бу­дут ис­поль­зо­вать эту си­сте­му. Так что тре­во­ги по по­во­ду чрез­мер­но­го по­треб­ле­ния энер­гии ни в коем слу­чае не долж­ны удер­жи­вать нас от при­ня­тия этой мощ­ной но­вой тех­но­ло­гии.

Как и весь­ма рас­про­стра­нен­ное ныне за­блуж­де­ние: что блок­чей­ны из­на­чаль­но со­пут­ству­ют сек­рет­но­сти и ано­ним­но­сти. Сло­во «крип­то» несет в себе кон­но­та­цию при­е­мов по­ли­ти­че­ско­го управ­ле­ния и ин­триг, но бук­валь­но оно озна­ча­ет «за­ко­ди­ро­ван­ный» или «скры­тый». Из-за того, что это сло­во ис­поль­зу­ет­ся для обо­зна­че­ния крип­то­ин­ду­стрии, мно­гие оши­боч­но по­ла­га­ют, что блок­чей­ны скры­ва­ют ин­фор­ма­цию и, сле­до­ва­тель­но, иде­аль­но под­хо­дят для непра­во­мер­ных и мо­шен­ни­че­ских дей­ствий. По­доб­ная трак­тов­ка ча­сто встре­ча­ет­ся, на­при­мер, в теле- и ки­но­филь­мах, где пре­ступ­ни­ки по­сто­ян­но ис­поль­зу­ют крип­то­ва­лю­ту для тай­ных пе­ре­во­дов неза­кон­но за­ра­бо­тан­ных де­нег. Это тоже не име­ет ни ма­лей­ше­го от­но­ше­ния к дей­стви­тель­но­сти.

Фак­ти­че­ски все, что про­ис­хо­дит в по­пу­ляр­ных блок­чей­нах, та­ких как Bit­coin и Ethereum, на­про­тив, об­ще­до­ступ­но и мо­жет быть от­сле­же­но. Как и в слу­чае с элек­трон­ной поч­той, в них мож­но соз­дать фей­ко­вую учет­ную за­пись, но се­го­дня су­ще­ству­ют ком­па­нии, спе­ци­а­ли­зи­ру­ю­щи­е­ся на де- ано­ни­ми­за­ции, и пра­во­охра­ни­тель­ные ор­га­ны без осо­бо­го тру­да рас­по­зна­ют под­лог. Блок­чей­ны на­столь­ко от­кры­ты и об­ще­до­ступ­ны по умол­ча­нию, что их врож­ден­ная про­зрач­ность, воз­мож­но, пре­пят­ству­ет их при­ня­тию. Вам мо­жет по­ка­зать­ся, что это про­ти­во­ре­чит здра­во­му смыс­лу, осо­бен­но учи­ты­вая оши­боч­ное вос­при­я­тие об­ще­ством крип­то­ва­лю­ты как сво­е­го рода «чер­но­го ящи­ка», но это дей­стви­тель­но так. Люди мо­гут не за­хо­теть ис­поль­зо­вать блок­чей­ны для опре­де­лен­ных дей­ствий, опа­са­ясь, что это при­ве­дет к рас­кры­тию кон­фи­ден­ци­аль­ной ин­фор­ма­ции: дан­ных о зар­пла­те и бан­ков­ских сче­тах, ме­ди­цин­ских све­де­ний и т. д. Се­го­дня ре­а­ли­зу­ет­ся ряд про­ек­тов, при­зван­ных ре­шить эту про­бле­му; в их рам­ках поль­зо­ва­те­лям на­пря­мую предо­став­ля­ют воз­мож­ность сде­лать тран­зак­ции кон­фи­ден­ци­аль­ны­ми. В са­мых пе­ре­до­вых про­ек­тах по­доб­но­го рода ис­поль­зу­ет­ся но­вей­шая про­дви­ну­тая крип­то­гра­фия, — в част­но­сти, та­кие ин­но­ва­ции, как «до­ка­за­тель­ства с ну­ле­вым раз­гла­ше­ни­ем», — что поз­во­ля­ет про­во­дить аудит за­шиф­ро­ван­ных дан­ных, со­от­вет­ствен­но, сни­жа­ет риск непра­во­мер­ной де­я­тель­но­сти и удо­вле­тво­ря­ет по­треб­ность об­ще­ства в чет­ком со­блю­де­нии тре­бо­ва­ний за­ко­на.

Блок­чейны «крип­то» не по­то­му, что они обес­пе­чи­ва­ют ано­ним­ность (они ее во­все не обес­пе­чи­ва­ют), а по­то­му, что они ос­но­ва­ны на ре­во­лю­ци­он­ном ма­те­ма­ти­че­ском от­кры­тии 1970-х, крип­то­гра­фии с от­кры­тым клю­чом. Глав­ное, что нуж­но знать об этой тех­но­ло­гии: она поз­во­ля­ет несколь­ким сто­ро­нам, ко­то­рые ни­ко­гда рань­ше не об­ща­лись, вы­пол­нять крип­то­гра­фи­че­ские опе­ра­ции друг с дру­гом. Две са­мые рас­про­стра­нен­ные опе­ра­ции та­ко­го типа: 1) шиф­ро­ва­ние (ко­ди­ро­ва­ние ин­фор­ма­ции, ко­то­рую смо­жет рас­шиф­ро­вать толь­ко кон­крет­ный по­лу­ча­тель) и 2) аутен­ти­фи­ка­ция (поз­во­ля­ет че­ло­ве­ку или ком­пью­те­ру под­пи­сы­вать ин­фор­ма­цию, под­твер­ждая ее под­лин­ность и то, что она га­ран­ти­ро­ван­но ис­хо­дит из кон­крет­но­го ис­точ­ни­ка). Так вот, ко­гда блок­чй­ны опи­сы­ва­ют как крип­то­тех­но­ло­гию, этот тер­мин ис­поль­зу­ет­ся во вто­ром смыс­ле: они не «за­шиф­ро­ван­ные», а «аутен­ти­фи­ци­ро­ван­ные».

Фун­да­мент без­опас­но­сти блок­чей­на — пары от­кры­тых (пуб­лич­ных) и за­кры­тых (сек­рет­ных) крип­то­гра­фи­че­ских клю­чей. Люди ис­поль­зу­ют за­кры­тые клю­чи — чис­ла, ко­то­рые хра­нят­ся в сек­ре­те, — для со­зда­ния тран­зак­ций в сети. А от­кры­тые клю­чи, на­про­тив, иден­ти­фи­ци­ру­ют пуб­лич­ные ад­ре­са, по ко­то­рым про­во­дят­ся тран­зак­ции. Ха­рак­тер ма­те­ма­ти­че­ской свя­зи, со­еди­ня­ю­щей пару клю­чей, та­ков, что из­влечь от­кры­тый ключ из за­кры­то­го не со­став­ля­ет тру­да, но из­вле­че­ние за­кры­то­го клю­ча из от­кры­то­го по­тре­бу­ет неимо­вер­ных уси­лий и огром­ных объ­е­мов вы­чис­ли­тель­ной мощ­но­сти. Это поз­во­ля­ет поль­зо­ва­те­лю блок­чей­на от­пра­вить день­ги дру­го­му че­ло­ве­ку, за­фик­си­ро­вав под­пи­сью тран­зак­цию, ко­то­рая, по сути, озна­ча­ет сле­ду­ю­щее: «Я даю тебе эти день­ги». Эта под­пись, по су­ще­ству, ана­ло­гич­на та­ко­вой на бан­ков­ском чеке или юри­ди­че­ском до­ку­мен­те в офлайн-мире, про­сто для предот­вра­ще­ния под­де­лок в ней вме­сто уни­каль­но­го по­чер­ка ис­поль­зу­ет­ся ма­те­ма­ти­ка.

Циф­ро­вые под­пи­си ши­ро­ко, но неглас­но ис­поль­зу­ют­ся в сфе­ре ком­пью­тер­ных вы­чис­ле­ний для ве­ри­фи­ка­ции под­лин­но­сти и до­сто­вер­но­сти дан­ных. Бра­у­зе­ры про­ве­ря­ют их, что­бы убе­дить­ся в за­кон­но­сти сай­тов. Сер­ве­ры и кли­ен­ты элек­трон­ной по­чты ис­поль­зу­ют та­кие под­пи­си в ка­че­стве га­ран­тии, что со­об­ще­ния не под­де­лы­ва­ют­ся и ими не ма­ни­пу­ли­ру­ют при пе­ре­да­че. Боль­шин­ство ком­пью­тер­ных си­стем пу­тем ве­ри­фи­ка­ции под­пи­сей про­ве­ря­ют, что ПО за­гру­жа­ет­ся из нуж­но­го ис­точ­ни­ка и оно не под­де­ла­но.

Блок­чей­ны тоже ис­поль­зу­ют циф­ро­вые под­пи­си — для обес­пе­че­ния функ­ци­о­ни­ро­ва­ния де­цен­тра­ли­зо­ван­ных се­тей «без до­ве­рия». Со­гла­сен, фра­за «без до­ве­рия» мо­жет сби­вать с тол­ку сво­ей дву­смыс­лен­но­стью, но в кон­тек­сте блок­чей­на она все­гда озна­ча­ет толь­ко одно: что для над­зо­ра над тран­зак­ци­я­ми ему не нуж­ны ни­ка­кие выс­шие ав­то­ри­те­ты, ни по­сред­ни­ки, ни цен­траль­ные кор­по­ра­ции. Бла­го­да­ря про­цес­сам до­сти­же­ния кон­сен­су­са блок­чей­ны спо­соб­ны са­мо­сто­я­тель­но и весь­ма на­деж­но ве­ри­фи­ци­ро­вать от­прав­ля­ю­щую сто­ро­ну тран­зак­ции, и ни­ка­кой ком­пью­тер не об­ла­да­ет вла­стью из­ме­нять эти пра­ви­ла.

Гра­мот­но спро­ек­ти­ро­ван­ные блок­чей­ны ис­поль­зу­ют сти­му­лы, по­буж­да­ю­щие ва­ли­да­то­ров к чест­но­сти. А неко­то­рые, на­при­мер Ethereum, еще и на­ка­зы­ва­ют их за непра­во­мер­ное по­ве­де­ние. Ос­но­вой га­ран­тий без­опас­но­сти блок­чей­нов, опять же, ста­но­вят­ся си­сте­мы кон­сен­су­са. Если за­тра­ты на ата­ку на блок­чейн до­ста­точ­но вы­со­ки, а боль­шин­ство ва­ли­да­то­ров дей­ству­ют чест­но, в со­от­вет­ствии со сво­и­ми ма­те­ри­аль­ны­ми ин­те­ре­са­ми (и имен­но так об­сто­ят дела в боль­шин­стве по­пу­ляр­ных блок­чей­нов), си­сте­ма без­опас­на. Но в слу­чае крайне ма­ло­ве­ро­ят­ной успеш­ной ата­ки участ­ни­ки сети мо­гут «рас­ще­пить» ее, сде­лав «хард­форк» (блок­чейн «рас­щеп­ля­ет­ся» на два от­дель­ных блок­чей­на, ра­бо­та­ю­щих па­рал­лель­но), и от­ка­тить блок­чейн к преды­ду­щей вер­ной точ­ке. Это со­зда­ет для зло­умыш­лен­ни­ков до­пол­ни­тель­ные пре­пят­ствия.

Даже если неко­то­рые нечест­ные и осо­бо азарт­ные поль­зо­ва­те­ли пы­та­ют­ся ис­поль­зо­вать блок­чейн ради на­жи­вы, эта си­сте­ма обес­пе­чи­ва­ет чест­ность всех и каж­до­го. В этом ее ге­ни­аль­ность — в на­бо­ре струк­тур сти­му­лов, поз­во­ля­ю­щем ей кон­тро­ли­ро­вать себя. Бла­го­да­ря тща­тель­но про­ду­ман­ным ма­те­ри­аль­ным воз­на­граж­де­ни­ям блок­чейны по­буж­да­ют поль­зо­ва­те­лей к вза­им­но­му кон­тро­лю. В ре­зуль­та­те, даже если поль­зо­ва­те­ли не ве­рят друг дру­гу, они мо­гут пол­но­стью до­ве­рять де­цен­тра­ли­зо­ван­но­му вир­ту­аль­но­му ком­пью­те­ру, без­опас­ность и за­щи­щен­ность ко­то­ро­го они сами кол­лек­тив­но обес­пе­чи­ва­ют.