Лондонский небоскрёб называется The Shard («Осколок»), поэтому он вылезает, когда пытаешься найти иллюстрацию про sharding
Лондонский небоскрёб называется The Shard («Осколок»), поэтому он вылезает, когда пытаешься найти иллюстрацию про sharding

В массовом восприятии TON — это просто «дуровская криптовалюта», которая отличается от сотен других только связью с Telegram. И если после решения SEC проект стал развиваться вне Telegram, чем он вообще интересен? Но такой подход упускает ключевую техническую особенность TON, от которой зависит, может ли наконец криптокошелёк оказаться в каждом кармане.

Предыстория

Когда биткоин впервые громко заявил о себе, было много дискуссий о будущем. Произошла революция сродни появлению интернета, и этим скоро будет пользоваться каждый? Или это очередная глупая мода, которая вскоре будет забыта?

Спустя десять лет не сбылся ни один из этих двух прогнозов. Большинство людей спокойно обходится без криптовалют. Но блокчейны не оказались забыты, а наоборот, развивались все эти десять лет, и число транзакций росло. Вслед за биткоином возникли и Ethereum, и стейблкойны, и многое другое.

Теперь вопрос в другом. Криптовалюты навсегда останутся в статусе «нишевого решения», которое успешно решает свои задачи, но большинству людей не нужно? Или же они просто пока не дозрели до массового использования, так что ещё покорят планету?

Гарантировать ответ не может никто. Но думая об этом, надо учитывать вот что: исходные реализации Bitcoin и Ethereum попросту технически не подходили для массового использования. Bitcoin мог обрабатывать менее 7 транзакций в секунду, Ethereum — менее 30. Для сравнения: у Visa счёт идёт на тысячи. Блокчейны тут уступают из-за своей децентрализации: в них требуется, чтобы независимые узлы постоянно «договаривались» друг с другом по поводу внесения новых транзакций, а вот Visa так договариваться не приходится.

Что происходит, когда транзакций появляется больше, чем блокчейн успевает обработать? Для таких ситуаций существует схема «чтобы твою транзакцию обработали побыстрее, заплати комиссию больше других». Эти суммы могут взлетать до небес, что резко ограничивает пользу всей затеи для массового рынка. Если Вася, которому надо вернуть Пете долг в тысячу рублей, обнаружит, что на блокчейне для этого требуется заплатить ещё комиссию в две тысячи, то смысла в этом для него будет немного.

Для всемирной популярности денежной системы необходимо, чтобы она выдерживала миллиарды пользователей, обрабатывала все транзакции гарантированно и быстро, а комиссии были низкими. И оказывается, что сама концепция блокчейна технически плохо этому соответствует. Ну и как тогда покорять планету?

Разумеется, об этих проблемах много думали (в Википедии есть даже отдельная статья «Bitcoin Scalability Problem»). И возникли некоторые решения, зачастую относящиеся к категории «L2». Идея этой категории в том, что исходный блокчейн считается «первым слоем» («layer 1»), а поверх него можно создать дополнительные компоненты, которые выносят часть активности «офф-чейн» и разгружают L1. У Bitcoin возник Lightning Network, у Ethereum — так называемые «роллапы».

Это в некоторой степени помогает. Но если выносить критическую функциональность в «надстройки», это может выглядеть как‑то так:

При решении одной проблемы возникают другие. В июне Виталик Бутерин написал, что для развития Ethereum необходим массовый переход пользователей к роллапам. Однако он сам ранее признавал, что этот переход вынужденный и чреват сложностями. Обычному человеку и так не слишком легко пользоваться криптовалютой, а когда впридачу к Ethereum требуется разбираться ещё и в зоопарке L2-решений, всё становится ещё запутаннее.

Когда пользователям сложно, это тоже мешает массовой популярности. При этом роллапы не решают проблему полностью: комиссии там оказываются меньше, чем непосредственно на Ethereum, но для микротранзакций всё ещё могут быть слишком высоки, а потолок пропускной способности резко возрастает, но всё-таки не в бесконечность.

Подход TON

На вопрос «покорят ли криптовалюты планету» у TON категоричный ответ: да, в этом и есть цель проекта. В этом отношении он амбициозен донельзя. Ключевой разработчик Анатолий Макосов впрямую заявлял:

Криптовалютой пользуются 4.2% мирового населения. Это по-прежнему мало, у интернета такая аудитория была в 1998 году. Поэтому мы в большей степени ориентируемся не на существующую криптоаудиторию, а на оставшиеся 95.8% населения планеты Земля.

<...> Если в конечном счете в TON будет столько же пользователей, сколько в блокчейне Ethereum или на бирже Binance, — лично я не буду считать это успехом, я буду считать это провалом.

Насколько эти гигантские амбиции обоснованы, каждый может решать сам. Но само их наличие означает, что для TON изначально не подходил путь Bitcoin и Ethereum. Если ориентируешься на всё население Земли, то не станешь создавать систему всего лишь на 7 транзакций в секунду, чтобы затем исправлять ситуацию «надстройками». Вместо этого о необходимой пропускной способности будешь думать сразу, чтобы заложить её прямо в фундамент.

Кроме этого, важным отличием TON от Bitcoin и Ethereum стало то, что он появился позже и мог учиться на их опыте. Ведь на момент запуска биткоина никто даже не мог сказать, станет его пропускная способность проблемой или человечество никогда не упрётся в ограничения. Тогда было куда важнее разобраться с основополагающими принципами блокчейна, и с этой задачей Сатоши Накамото справился отлично.

Ethereum тоже решал более насущную для того времени задачу. Посмотрев на биткоин, Виталик Бутерин взял его наработки и добавил возможность запуска на блокчейне произвольного кода. Это стало громадным шагом вперёд, открыв дорогу целому миру блокчейн-приложений.

А в TON решили сделать следующий шаг: использовать достижения обоих предшественников (блокчейн и смарт-контракты), но добавить настоящую масштабируемость, чтобы воспользоваться этими достижениями смогли все жители планеты, а не кучка гиков.

Поэтому whitepaper проекта, описывающий идеи Николая Дурова, во многом сосредоточен именно на вопросах масштабирования. Они стали ключевыми ещё на этапе проектирования, задолго до запуска. Что и позволило внедрить в TON по-настоящему радикальную концепцию — добавить подобную в уже готовый проект вряд ли возможно. А что именно за концепция?

Парадигма бесконечного шардинга

Шардинг (sharding, «шардирование», «сегментирование») основан на простой идее: «если что-то стало слишком большим, можно разделить его на сегменты поменьше». Если надо быстро съесть большой торт, то делать это одной-единственной чайной ложечкой будет неэффективно, зато если разрезать на много частей, снабдить каждую ложечкой и раздать их разным людям, дело пойдёт куда быстрее. Идея проста, но вот её реализации бывают непростыми.

Сама концепция существовала и до блокчейнов. В мире традиционных баз данных люди давно задумались «как масштабировать базу, если один компьютер уже плохо справляется». И пришли к варианту «делить её на части и хранить на разных».

И когда возникла проблема «как обрабатывать много криптовалютных транзакций», эта идея тоже оказалась актуальна. Если разделить блокчейн на ряд взаимосвязанных «шардов», через них можно суммарно пропускать куда больше транзакций, чем в привычном варианте, когда все транзакции проходят через одно «узкое бутылочное горлышко».

Конечно, TON — не единственный блокчейн, где задумались об этом. О шардинге писали самые разные люди, включая того же Виталика Бутерина, который видел в этом будущее Ethereum (но пока что сосредоточился на роллапах). Однако «парадигма бесконечного шардинга» (Infinite Sharding Paradigm), описанная в вайтпейпере TON, отличается от большинства других проектов.

Прямолинейный подход к шардингу — это «разделить на N частей». Не так важно, чему именно будет равняться N, принципиальнее, что это конкретное число. «Разрежем торт на 16 частей».

Да, это помогает увеличить пропускную способность. Но что, если однажды и этого не хватит, а значение уже зафиксировано? Сделать сразу «миллион шардов про запас» тоже плохой вариант (ещё даже не знаешь размер торта, а уже нужны миллион ложечек и миллион едоков). А точно предсказать заранее нагрузку невозможно. Что тогда делать?

При проектировании TON было принято два ключевых решения. Во-первых, этот блокчейн может шардироваться динамически, в зависимости от нагрузки сети. Если транзакций становится слишком много, он делится пополам на два «шардчейна». Если позже и в одной из половин активности становится слишком много, она тоже делится пополам, и так далее. А если число транзакций падает, части снова «склеиваются» обратно. В итоге их столько, сколько требуется при текущей загрузке.

Иллюстрация Дениса Ольшина, показывающая, что принципом разделения становятся бинарные адреса аккаунтов: все с ноликом в начале идут в одну половину, все с единичкой — в другую
Иллюстрация Дениса Ольшина, показывающая, что принципом разделения становятся бинарные адреса аккаунтов: все с ноликом в начале идут в одну половину, все с единичкой — в другую

Но даже если число частей меняется на ходу, всё равно ведь должно существовать какое-то максимальное? Какой предел тут установили? Как его выбирали? Точно ли его хватит? И вот тут подключается второе решение: привычный подход к шардингу в TON вообще вывернули наизнанку.

Привычный заключается в том, чтобы изначально рассматривать блокчейн как цельную сущность: «вот у нас торт, на сколько частей его разрежем, чтобы было достаточно?» А в TON изначально подходят ко всему иначе: как к гигантскому набору минимальных частиц (отдельных блокчейн-адресов), которые могут «склеиваться» вместе. Это как видеть торт не единым лакомством, а набором атомов. На сколько частей можно поделить набор атомов? В общем-то, на сколько угодно. Теоретически где-то есть предел, когда каждый атом окажется отдельно и дальше уже не поделишь. Но в реальной жизни при практической задаче с этим пределом не столкнёшься.

Такой подход — не «сверху вниз», а «снизу вверх» — приводит к тому, что подобное деление можно считать «бесконечным». Отсюда и название «парадигма бесконечного шардинга».

В итоге, пока «классические» блокчейны решают вопрос масштабирования «L2-надстройками», TON может масштабироваться и без них.

Выводы

Помимо шардирования, стоит упомянуть, что у TON небольшое время формирования блока (несколько секунд, а не 10 минут, как в биткоине) и низкие комиссии. А для микротранзакций, которым требуется быть ещё быстрее и дешевле, в whitepaper описан свой аналог «Lightning Network» — «TON Payments».

Как выше уже говорилось, чтобы вся планета начала пользоваться блокчейном, необходимо, чтобы он выдерживал эту нагрузку, обрабатывал все транзакции гарантированно, быстро и дёшево. И TON как раз про это.

Конечно, это не означает автоматически, что вся планета непременно начнёт им пользоваться. Успех проекта зависит от множества разных факторов. Но, по крайней мере, тут воплощён важный технический фактор, без которого прийти к массовому успеху было бы заведомо затруднительно.

Конечно, это не означает, что TON идеален во всём. Подобное масштабирование неизбежно влечёт другие сложности: например, из-за него писать смарт-контракты для TON оказывается более хитрой задачей.

И конечно, это не означает, что все другие блокчейны плохие. У них есть свои преимущества и свои подходы к масштабируемости.

Но вот что это всё означает: неправильно воспринимать TON просто как «Дуров увидел успех биткоина и решил сделать в Telegram то же самое». Не то же самое. Здесь была проведена большая техническая работа над решением ключевых проблем блокчейнов. И получился технически уникальный проект, который уникален даже в отрыве от Telegram.

А покорит ли он дальше планету — зависит в том числе от нас с вами.

Автор: Евгений Трифонов


О TON

TON — это ультрабыстрый и удобный в использовании блокчейн для пользователей и компаний. Проект был создан в 2017 году основателями Telegram Павлом и Николаем Дуровыми, но через три года Telegram прекратил свое участие в проекте.

Сейчас TON развивает открытое сообщество опытных разработчиков, куда входят одни из лучших программистов мира, включая многократных победителей конкурсов Telegram по блокчейн-разработке.

https://ton.org/

О The Daily TON

The Daily TON — это новостной Telegram-канал, обозревающий последние новости и обновления в рамках экосистемы TON. Подписывайтесь на The Daily TON, чтобы всегда оставаться в курсе актуальной и своевременной информации о блокчейне, который меняет мир.

https://t.me/thedailytonrus

Комментарии (0)