Часть 1 и 2.
Советую перед прочтением этого поста изучить сначала этот, в нем мы размышляли о использовании прокси. В этом посте поговорим подробнее про UI. Пост получится длинный, но я постарался объяснить все максимально человеческим языком:
UI касание - это обычное взаимодействие с любым сайтом через его интерфейс. Любой сайт состоит из двух составляющих: из фронта (интерфейса) и бекэнда, в котором лежит вся логика сайта и это то, что обрабатывает все взаимодействия.
Если говорить про web3 протоколы, у которых при нажатии на какую-либо кнопку срабатывает вызов контракта, т.е нажатие на кнопку в интерфейсе триггерит вызов контракта и тут уже открывается ваш метамаск и вы в нем подписываете транзакцию.
Как работает любой софт: он минуя интерфейс обращается сразу бекэнду или в случае с web3 протоколами - к контракту, спрятанному за этой кнопкой и отправляет всю нужную для транзакции информацию контракту напрямую.
Есть одно большое отличие любого "web2" сайта от "web3" протоколов - web3 протоколы построены вокруг контрактов, фронт таких сайтов служит для одной цели - упрощение взаимодействий с блокчейном обычным пользователям и работать напрямую с контрактами никто не запрещает. Такая возможность есть и необязательно делать это через софт - вы можете делать эти взаимодействия даже руками через тот же Еtherscan. Блокчейну не нужен интерфейс для взаимодействия с ним.
Многие мосты и даппки создают свои SDK и API, которые упрощают разработчикам сторонних приложений взаимодействие с первоначальным протоколом. Если такие возможности дают - никто не против, чтобы вы пользовались этим протоколом через SDK или API.
Итак, что имеем:
• Есть сайт, при нажатии кнопок на котором можно тригернуть вызов контракта;• Есть контракт, который по сути существует обособлено от сайта, но он привязан к определенным кнопке на сайте.С этим понятно. Теперь главный вопрос - можно ли быть сбритым с дропа за использование дапок/мостов напрямую, минуя интерфейс?
Вопрос этот сугубо философский и все доводы об этом - это всего лишь догадки, теории и игра с вероятностью. Ведь реального прецедента массового акцента на UI в истории раздачи дропов не было, но давайте чуть подискутируем.
Мы уже поняли, что блокчейну не нужен интерфейс и разработчики не против, чтобы люди использовали возможности их проекта как им удобно. Но какие есть возможности у разработчиков при желании сбрить сибилов?
• Во-первых - чтобы была возможность собирать данные и потом их обрабатывать нужно иметь прямой доступ к сайту, с которым проводится взаимодействие. Если говорить о блокчейнах, то зачастую их личные сайты - это офф мосты, все остальные даппки в основном разрабатываются сторонними командами.• Во-вторых - даже если даппка от сторонних разработчиков, мы никогда не узнаем какие договорености у разработчиков дапки могут быть с командой блокчейна. Почти все дапки строятся с надеждой на получение гранта и одним из условий для его получения может быть передача данных о пользователях.• В-третьих - сбор данных о пользователях на уровне RPC/Нод.Самое простое:
Вешаем аналитику на кнопки и собираем в этой аналитике адреса кошельков, IP адреса и отпечатки браузеров, с которых нажималась кнопка для тригера контракта и совершалась транзакция. Такую аналитики мы нашли на офф. мосте Starknet. Они собирают адреса кошельков для каких-то целей. Для каких именно - знает только команда Starknet.
В теории, он могут дать мультипликатор "использование офф. моста" только тем, чьи адреса были записаны в эту аналитику, сопоставив их с адресами, которые действительно отправили транзакцию в блокчейн. Это очень маловероятно, но такой шанс есть.
В любом случае эти данные нужно собирать с самого первого дня работы протокола/даппки, т.к брить всех, кто использовал их сайт до момента, когда на него повесили аналитику, никто не будет.