The Open Dev Blog
741 subscribers
13 photos
1 video
49 links
Тон макаки.
Исследуем проекты на тоне так глубоко, как только можно.

Просим указывать нас как первоисточник.

Contact: @rends_east, @therealmaloleg or @bazrov
Download Telegram
Channel created
Channel name was changed to «The Open Dev Blog»
Условное выражение с отрицанием в Func выглядит как
ifnot () {

}


Николай Дуров великий
🙏61👍1
Немного забавных фактов - у ston.fi нет роутинга. Вообще. У них нельзя обменять токены, у которых нет своего общего пула ликвидности.

Более того, если ты ему пришлешь на обмен токен, пула для которого у ston.fi нет, то их роутер просто зажмет бабки и ничего тебе не вернет.

P.S у дедаста роутинг есть
😁5🐳2🤣2
The Open Dev Blog
Немного забавных фактов - у ston.fi нет роутинга. Вообще. У них нельзя обменять токены, у которых нет своего общего пула ликвидности. Более того, если ты ему пришлешь на обмен токен, пула для которого у ston.fi нет, то их роутер просто зажмет бабки и ничего…
С роутингом на тоне связана интересная особенность, присущая чисто тону.

У swap.coffee была история, когда при свапе условного $DUREV на $PLANE пользователю почему то приходил токен $DFC.
А дело вот в чем - swap.coffee подбирал наиболее выгодный пользователю роут свапа, и ребята из $DFC научились быть всегда самым выгодным посредником при свапе. Однако после свапа $DUREV в $DFC, при втором обмене уже токена $DFC на $PLANE, срабатывал слипадж, и пользователю возвращался его посредник — $DFC.
В эфире при такой ошибке отменился бы весь чейн транзакций, а в тоне это невозможно.

Поэтому может это осознанное решение ston.fi - отказаться от роутинга. Непонятно только, почему токены не возвращает.
5👍2😱2
Никто с этим ничего не сделает, в этом даже в среднем нет ничего плохого, но все же об этом я нигде не читал.

У ston.fi есть официальная опция обновления кода смарт контракта. Разумеется, ончейн проверить, сильно ли отличается новый код от старого, невозможно, поэтому чисто формально новый смарт контракт может быть любым, при этом оставаясь на том же адресе.

https://github.com/ston-fi/dex-core/blob/main/contracts/router/admin-calls.func#L76

В этом нет ничего особо страшного, многие блокчейн проекты этим грешат.

Только клубу 100 не показывайте
👍5🔥4👌4😁3
В публичном поле страшно не раскрыта тема того, к какому количеству, в том числе и приватных, чатов имеет доступ xRocket и другие кошельки наподобие его.

Я не удивлюсь, если на каком-то этапе своего развития основной заработок подобных проектов будет не с оборота средств внутри них, а с торговли по инсайдам, которые у них скапливаются, просто потому что их ботом пользуются в различных приватках/закрытых чатах.
😁102🐳2🤣2
Есть важный факт, о котором все забывают при предсказании курса Ton. Понятно, почему забывают - если принимать в расчет эту информацию, то попытки предсказания курса становятся бессмысленными.

БОльшая часть эмиссии Ton-а, скорее всего, находится в руках, под контролем или под влиянием маркетмейкера. Это означает, что DWF Labs способны сделать с графиком Ton вообще что угодно.
Поэтому рассуждать нужно не с позиции "а что у нас случится в ближайшее время на блокчейне?", а "к какому событию маркетмейкер должен будет сделать максимальный хайп?". Бычий рынок на Ton-е в начале весны был подготовкой к приходу Tether на Ton. Хочешь-не хочешь, но если стоимость актива (Ton-а) растет в 4 раза, хайп будет неизбежен, а именно это и нужно было, чтобы максимально осветить такую крупную новость. При всём этом, про приход Tether на Ton я слышал или слухи, или предположения, или всё вместе еще в феврале.
В ноябре состоится конференция The Gateway в Дубае (кстати пишите, пообщаемся там). Основной вопрос по курсу - будет ли на этой конференции, посвященной Ton-у, какой-то крупный анонс, под который нужно разгонять хайп.
Я предположу, что на конференции запустят L2 сеть для Ton. Анонс уже был, информации достаточно, главный вопрос - успеют ли доделать к конференции? Если решат, что успевают, то нас ждет бычка в следующие 2 месяца, а на конференции опять будет -10-15% от курса. И даже не потому, что "покупай на слухах, продавай на новостях", а потому что такая у DWF Labs стратегия маркетмейкинга Ton-а

Если я прав, то недавний дамп Ton-а был связан именно с началом искуственной бычки. Пампить легче с 5.5, чем с 8 )

Вот такая вот неприятная правда. (моё оценочное суждение, по моей непроверенной информации)

UPD: вчера написал пост, сегодня Ton подскочил, забавно
👍4🔥3🙏2🤔1🕊1🤨1
Почему ломается ликвидность на ston fi?

Во время бычки весной многие проекты столкнулись со "снайпингом ликвы" именно на ston fi. И это не тот снайпинг, где "купил пораньше, продал пораньше", как это часто было на dedust-е, а это была возможность под чистую сломать пул при заливе ликвидности, сделав невозможным обменивать токены друг на друга.

В отличие от dedust, залив ликвидности у ston fi очень простой - просто присылаешь токены и всё, можно менять. Однако есть нюанс: начальную ликвидность, присланную при самом первом заливе, вывести нельзя (код). Эдакое автосжигание прав на ликвидность, можно сказать.
Но авторы проектов нашли, как выкрутиться - они заливали как начальную ликвидность очень малое количество токенов, таким образом почти ничего не теряя. И уже второй транзакцией они досылали основную ликвидность.

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

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

Пример снайпа ликвы.
1👍64💯4🔥21
The Open Dev Blog
Почему ломается ликвидность на ston fi? Во время бычки весной многие проекты столкнулись со "снайпингом ликвы" именно на ston fi. И это не тот снайпинг, где "купил пораньше, продал пораньше", как это часто было на dedust-е, а это была возможность под чистую…
На подумать:
Когда какой-либо проект обещает сжечь права на ликвидность токена, но при этом заливает её в 2 транзакции на ston fi, у осознанной части сообщества должны появиться вопросы, ведь можно залить в 1 транзакцию без угрозы снайпа ликвы и со сразу сожжёнными правами.
То есть либо автор токена некомпетентен, либо нечист на руку.

Кстати ни одного токена, который бы так по честному сделал, я не видел.

Думайте.
2🤔963🤯2
Если у кого-либо при мыслях о том заливать ли ликвидность для фарма на ston fi возникало недоумение, почему в интерфейсе не пишется как долго ещё будет продолжаться буст пула - то есть небольшой лайфхак:

1. Заходите на страницу с пулов в браузере
2. Открываете инспектор в браузере на network, обновляете страницу
3. Ищите запрос на rpc.ston.fi с методом "farm.balance_list_by_pool"

В ответе будет куча инфы, которую по каким-то причинам решили не показывать в интерфейсе: сколько ликвы участвует в фарме, какой минимальный срок через который можно будет вывести ликву и самое главное какой рейт раздачи наград и сколько ещё осталось, удачного диора!
6👍6🤯6🔥5👌2
Как сайты-обозреватели блокчейна понимают, какой перед ними контракт?

Tonviewer часто пишет у себя так называемый "Сontract type" на странице с информацией о каком-либо адресе в блокчейне.
Пример, еще пример.

Никто без посторонней помощи не может напрямую прочитать код контракта из сети, как бы вас не убеждали в прозрачности всей системы. Обозреватели блокчейна просто ищут определенные get-методы в контракте, которые можно вызывать, зная название метода.
У разных контрактов есть разные ключевые get-методы, по которым обозреватели блокчейна его определяют. У кошелька с жеттонами это "get_wallet_data", у контракта токена - "get_jetton_data" и т.д

Таким образом, на самом деле если tonviewer или tonscan пишут, что перед вами jetton_wallet, то есть кошелек с жеттонами, это вовсе не означает, что вы в безопасности. Это может быть кошелек, с которого злоумышленник в любой момент может вывести все средства, это может быть вообще не кошелек, а какой-то совсем другой контракт.

И если кто-то убеждает вас, что tonviewer "аппрувнул" его контракт, подписав его тип - это либо некомпетентность, либо попытка обмана вас.

Для примера написал простенький контрактик, который определяется tonviewer-ом тремя разными типами. Судя по всему, больше трёх он не умеет отображать, а так бы сделал все типы сразу.
Вот его адрес:
https://testnet.tonviewer.com/kQDa7hIG0U4swiXmRJ6014vR8EDJQGFLcGEqr8Fxvoi_SCAM
2👍7🤯6👏53🔥3
Немногие знают, это в целом какая-то странно непопулярная информация, что на Ton можно взять себе адрес с красивым окончанием. Например, контракт к прошлому посту имеет окончание "_SCAM". Из известных контрактов можно ещё вспомнить адрес токена $SCALE - EQBlqsm144Dq6SjbPI4jjZvA1hqTIP3CvHovbIfW_t-SCALE.

Причём это не ещё один финансовый рычаг Дурова, их нигде не продают (хотя можно попробовать!). Эти адреса можно посчитать.

Вообще для этого есть репозиторий на github. Если вы разбираетесь, то пользуйтесь.

Красивый адрес контракта ничего, конечно, не означает. Любой скамер может намайнить себе адрес "..._CHECKED" (при наличии у него достаточной мощности, она нужна немалая), и занять его для своих будущих злодеяний. Поэтому не ведитесь на (иногда недешевый) понт.
1👍10🔥4👏31
Чекеры контрактов

Канал @skamshot попросил нас разобрать тему полезности и возможности нахождения ханипотов в контрактах в контексте блокчейна Ton.

Первое, что нужно понимать - код контракта, который вы можете найти на github и информация, которая хранится в блокчейне - это разные сущности. Это работает так и на Ton, и на EVM блокчейнах (Ethereum, Polygon, Avalanche).

Это происходит из-за того, что код, который программисты пишут, "компилируется", то есть перегоняется из человекочитаемого формата в машиночитаемый - нули и единицы, которые распознаются виртуальной машиной блокчейна как инструкции к работе. Именно поэтому просто взять и прочитать, что делает контракт, пользуясь только глазами, не получится.

На EVM блокчейнах для этого есть довольно развитая индустрия "декомпиляторов" - программ, которые из машиночитаемого формата пытаются сделать человекочитаемый. Это нетривиальная задача, причем ее нетривиальность довольно сложно объяснить, поэтому пропустим.

На Ton-е лично я видел что-то подобное, но страшно сырое, поэтому считаю, что декомпиляторов на Ton-е пока нет. При этом никакая архитектурная особенность не мешает им появиться в будущем.
1👍94🔥3🙏2
The Open Dev Blog
Чекеры контрактов Канал @skamshot попросил нас разобрать тему полезности и возможности нахождения ханипотов в контрактах в контексте блокчейна Ton. Первое, что нужно понимать - код контракта, который вы можете найти на github и информация, которая хранится…
Поэтому единственный способ проверить, что делает контракт - это "эмулировать" транзакцию, то есть имитировать работу контракта, основываясь на его машиночитаемой версии.

На Ton-e это возможно. Поэтому сделать проверку ханипотов вполне реально. Например, есть @ruton_checker_bot. Я не могу ручаться за его достоверность, но знаю нескольких людей, которые им пользуются. Создатель отказался выдавать нам, какие проверки его бот проводит. Это хороший знак. За сколько-то звёзд можем сделать стресс тест этого бота - определит ли он ханипоты, которые мы напишем?

Однако важно понимать несколько деталей. Что на Ton, что на EVM сетях, что на Solana невозможно программно полностью защититься от ханипотов или ошибок в написании контракта. Ситуаций, где у пользователей заберут все деньги, может быть неисчислимо много. Например, контракт даёт покупать и продавать до какого-то времени или блока, или имеет возможность накрутить владельцу количество токенов.

Более того, у Ton-а есть скам преимущество относительно других сетей. На FunC есть функция, позволяющая сменить код контракта на любой другой. На EVM сетях такого нет, чтобы изменить код там, нужно идти на ухищрения, которые легко заметить постороннему человеку. Таким образом, благодаря этому "преимуществу" Ton, любой из известных вам непубличных контрактов в сети в любой момент может сменить свой код и вывести все ваши деньги. Например, такая возможность есть у ston fi.

Но как же тогда доверять кому-либо? Для этого проекты открывают свой код и предлагают всем желающим найти в нём ошибки. Так сделал, например, тот же ston fi. На Ton-е эта культура пока что не развита, но мы обязательно к ней придём путём проб и ошибок.
60👍8🥰5💯42
Разработчики централизованных приложений (например, кликеров с последующим минтом токенов), работающих с блокчейном, всегда могут (и, по-моему, должны) снять с себя обязанность платить комиссию за админские действия, которые делаются для пользователя. Например, вывод средств или минт токенов, но при каком-то оффчейн условии.

Возникает вопрос - а как, например, сделать ончейн минт токенов при условии, что пользователь накликает 10к раз в оффчейн кликере?
Ответ прост. Пользователь сам может сообщать смарт-контрактам о выполненном условии, отправлять транзакции и выводить свои средства, исполняя при этом по сути админские функции.

Возникает второй вопрос - как помешать пользователю вывести все средства с контракта или сминтить себе весь саплай, если он исполняет обязанности админа и отправляет за него транзакции?
Для этого в Ton-е (и он в этом не одинок) существует механизм permit-а. Бэкенд приложения подписывает для пользователя сообщение, которое он отправляет в смарт-контракт (и выплачивает комиссию блокчейна). Пользователь не может изменить сообщение, поскольку оно подписано приватным ключом шифрования (грубо говоря, мнемоник фразой, как от вашего tonkeeper) на бэкенде. Нашей мнемоник фразы у пользователя нет, поэтому подписать другое сообщение за нас пользователь не может.

Это можно сравнить с банковскими чеками, которые использовались в 19-20 веках. Ваш друг брал свою чековую книжку и выписывал на ваше имя чек. Вы с этим чеком приходили в банк и получали деньги. Комиссией блокчейна в этой ситуации можно считать прогулку до банка).
В EVM блокчейнах по аналогии был даже придуман отдельный тип токена - ERC-2612. Что-то подобное хотел на досуге написать для Ton-а.
Бумажные чеки, конечно, было подделать очень легко. Permit-ы подделать с нынешними вычислительными мощностями фактически невозможно, поэтому можно быть спокойным.

Правда, в процессе внедрения подобного механизма в смарт-контракты можно накосячить примерно 350 раз. Но об этом расскажу из личного опыта как-нибудь в другой раз)
👍14🔥3🆒31🏆1👨‍💻1
🙏6🔥4👍32😁21
Нам стоит написать, если:

⚫️ Вам нужна разработка ончейн или частично ончейн решения для вашего продукта. Например, необычного токена с бэкендом, отвечающим за это.

⚫️ Вы хотите получить консультацию/аудит по проектировке или безопасности вашей архитектуры/готового решения.

⚫️ Вы админ канала/медиа и хотите получить комментарий, разбор по интересующей вас теме, связанной с глубоким пониманием работы блокчейна Ton или проектов на нём.

По всем этим вопросам можно написать контактам в био канала.
Please open Telegram to view this post
VIEW IN TELEGRAM
👏64👍4🤔4🔥2
The Open Dev Blog pinned «Нам стоит написать, если: ⚫️ Вам нужна разработка ончейн или частично ончейн решения для вашего продукта. Например, необычного токена с бэкендом, отвечающим за это. ⚫️ Вы хотите получить консультацию/аудит по проектировке или безопасности вашей архитектуры/готового…»