Telegram Open Network глазами валидатора
{"images":[{"id":3723},{"id":3724,"alt":"Блокчейн TON глазами валидатора"}]}
Всем привет, на связи CAT. На днях Telegram в первый раз публично объявил о своей причастности к разработке блокчейна, запустив конкурс на разработку смарт-контрактов, а вчера в альфа-версии мессенджера был добавлен минималистичный кошелек для криптовалюты GRAM. Все это вызывает рост интереса к Telegram Open Network в целом, поэтому сегодня мы решили рассказать подробнее о новом проекте братьев Дуровых с точки зрения валидатора.
Зачатки нашей работы с TON появились в декабре 2017 года, когда в сети опубликовали документ с описанием глобального блокчейн-проекта, это стало пищей для размышлений на протяжении следующих месяцев, в 2018 году они привели нас в проект Minter, который по своей концепции был схож с TON, мы решили использовать это как преимущество.
Кстати, блокчейны Minter и Telegram Open Network находятся в разработке примерно одинаковое количество времени, с начала 2017 года. Сразу после запуска в мае этого года, мы запустили свою первую мастерноду в Minter Network. Она помогла нам выявить слабые места в нашей инфраструктуре, научила избегать распространенных ошибок и в целом дала бесценный опыт, который впоследствии мы использовали в других сетях.
Как работает тестовая сеть TON сегодня
Вернемся к TON. На данный момент у нас есть несколько рабочих фуллнод [то же, что и мастернода в сети Minter — прим. редакции] в публичной тестовой сети Telegram Open Network для попадания в нужные периоды валидирования. Пожалуй, здесь стоит подробнее остановиться на этом моменте, ведь система выборов в блокчейне TON заслуживает отдельного внимания.
В тестовой сети валидаторы выбираются блокчейном на основании имеющихся средств на балансе сроком на 4000 секунд (~1 час). За 2000 секунд (~30 минут) до завершения периода валидирования начинаются новые выборы, заканчиваются они за 500 секунд (~8 минут) до окончания первого периода, затем начинается второй период — благодаря такой системе в него попадают новые валидаторы. Средства валидаторов из первого периода возвращаются через дополнительные 1000 секунд (~15 минут) вместе с вознаграждением.
В основной сети запланировано 100 слотов для валидаторов в каждом периоде, это позволит принять участие в процессе валидирования большому числу независимых команд, а хорошо продуманная система голосования исключит централизацию силы в руках «китов».
На данный момент в тестовой сети работает более 100 валидаторов, при этом блоки блоки создаются достаточно быстро (5 секунд), транзакции выполняются корректно и всё работает отлично. Даже во время тестовых нагрузок и несмотря на раннюю версию, сеть держится на удивление стабильно.
Правда, попасть в список валидаторов — непростая задача, для этого нужно не меньше 100 тысяч тестовых GRAM, которые сейчас можно получить только через специальный смарт-контракт. Но судя по всему, он предназначен для получения небольших сумм, и для того чтобы добыть из него более 100 тысяч монет, нам пришлось автоматизировать процесс и проявить немного смекалки. Сейчас сделать это невозможно и вовсе, монет на адресе «гивера» не осталось, но переодически его пополняют незначительными суммами.
Преимущества TON
Кроме того хочется рассказать подробнее о важных преимуществах TON, которые редко упоминают в статьях о проекте.
1. TON обладает незаурядной внутренней структурой, в ней есть несколько ролей: валидатор, фишермен и коллатор. Рассмотрим каждую из них подробнее:
Валидаторы занимаются созданием и подтверждением новых блоков. Фактически, любая нода может стать валидатором. Валидаторы получают награду за свою работу и штрафуются за попытку обмана, долгий простой также наказывается штрафами и отчуждением из списка валидаторов. Все это побуждает валидаторов серьезнее относится к своей работе.
Фишермен (Fisherman) занимается контролем работы валидаторов. Это нода, которая может запросить проверку блока и, если большинство валидаторов подтвердят невалидность блока, подписавший его валидатор будет наказан. За это фишермен получает часть суммы, на которую был оштрафован валидатор.
Коллатор (Collator) — еще один участник формирования новых блоков. Это ноды, которые могут формировать блоки и отправлять их валидатору, тем самым облегчая его работу — ему остается только проверить блок. За это валидатор может наградить коллатора частью полученного вознаграждения.
2. Шардинг и концепция блокчейна блокчейнов. Шардинг — одна из самых сложных в реализации и при этом невероятно полезных особенностей Telegram Open Network. О том, что это такое, можно прочитать здесь. В целом TON скорее будет представлять из себя нечто большее, чем просто блокчейн, скорее это станет некой платформой для блокчейнов. Павел Дуров — визионер и человек строящий глобальные проекты с заделом на будущее. Об этом говорит даже название сети, которое в будущем планируют заменить на The Open Network.
3. Вертикальное строение блоков. Блок, содержащий ошибку, с большой долей вероятности может стать смертельным приговором для блокчейна. В таком случае зачастую принимают решение совершить форк для того, чтобы откатить и исправить ошибку. Мы все видели, как это происходило в блокчейне Ethereum несколько лет назад. Очевидно, это не самый изящный подход. В TON решение этой проблемы происходит иначе — после обнаружения «неправильного» блока формируется его «правильная» версия, которая добавляется «поверх» него. После этого для каждого блока, который ссылается на исправленный, также формируется исправленная версия, затем исправляются блоки, ссылающиеся на исправленные блоки, и так далее. Такой подход позволяет исправлять любые проблемы «на лету», не прибегая к форкам и остановке работы блокчейна.
4. Hypercube routing — система, которая позволяет выстроить оптимальную и надежную сеть обмена между шардчейнами. Этот алгоритм гарантирует доставку данных по всей сети TON независимо от количества существующих шардчейнов. При 250 шардчейнах понадобится всего 1 промежуточное звено, чтобы передать сообщение из одного шарда в другой. При 4000 — максимум 2. С 4 промежуточными нодами блокчейн TON может поддерживать до 1 миллиона шардчейнов, что позволяет масштабировать его практически бесконечно.
5. TON один из первых больших блокчейнов, совмещающий смарт-контракты и лучший на сегодняшний день алгоритм консенсуса — Proof of Stake. Это говорит о большом потенциале проекта, как «универсального» блокчейна, содержащего в себе весь необходимый функционал для разработки вкупе с высокой надежностью сети.
6. Также стоит отметить непрерывную работу разработчиков по обновлению документации на официальном сайте test.ton.org и высокую активность разработчиков на странице GitHub.
7. То, как Telegram Open Network планирует внедрять сервисы в свою экосистему, заслуживает отдельного пункта в этом списке. TON позволит пользователям запускать полностью автономные сервисы, основанные на смарт-контрактах, внутри блокчейна (DApps), причем их внедрение не будет стоить ровным счетом ни копейки, благодаря протоколам ADNL и RLDP. Это позволит приложению работать внутри блокчейна, практически не используя саму цепочку блоков. Одним из таких сервисов может стать непосредственно Telegram Messenger, что уже отмечалось в техническом WP.
Комьюнити тоже активно начинает подключаться к процессу разработки, уже сейчас сделаны:
– API для Python;
– API для Rust;
– Инструментарий Node SE;
– Dockerfile for FullNode.
Уверен, мы стоим на пороге чего-то большого, что сильно изменит интернет и вместе с тем наше будущее.
Присоединяйтесь к нашему каналу — @CATnodeRU в Telegram и каналу для разработчиков с обновлениями блокчейна и документации — @catchain.