Путь к RPCh — часть 1

Bellamy Black
HOPR Russian
Published in
6 min readJan 21, 2023

--

(Оригинал статьи от 18.01.2023) Это история о том, как команда HOPR собралась вместе, чтобы определить важную недостающую частицу web3, и как родилась новая замечательная команда RPCh, чтобы превратить ее из идеи в реальный продукт.

Эта статья не будет посвящена технологии, лежащей в основе RPCh — вы услышите об этом гораздо больше по мере приближения к запуску. Вместо этого я хочу поделиться тем, о чем мы не так часто слышим в криптоиндустрии: опыт создания RPCh с точки зрения разработки продукта. Формирование идеи, проектирование продукта, создание и обучение команды, чтобы выпустить продукт с чертежной доски и представить его реальным пользователям.

Шаг 1: Формирование идеи

Первым шагом в создании продукта является определение потребности.

Мы строим конфиденциальность в HOPR уже три года. Я присоединился к этой миссии в самом начале, еще до того, как была основана Ассоциация HOPR. Я знаю, что все в крипте говорят, что их очень волнует приватность, но меня она действительно всегда волновала. Я рано почувствовал, что крипта и web3 дают инструменты, которые нам нужны, но не нужно долго работать в крипте, чтобы понять, как далеко нам нужно идти.

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

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

Создать полный набор конфиденциальности сложно, но без этого web3 не имеет смысла. Блокчейн силен настолько, насколько сильно его самое слабое звено.

И когда мы продолжали создавать протокол HOPR, стало ясно, что слабое звено web3 находится в самом основании: в инфраструктурном слое. Мы всегда думали, что добавляем дополнительный уровень конфиденциальности к тому, что уже было весьма неплохим, но оказалось, что инфраструктура web3 имеет еще больше проблем с конфиденциальностью, чем Web2.0.

Настоящим открытием для нас стал DERP, Dumb Ethereum RPC Provider. DERP не делает ровным счетом ничего особенного — он просто берет то, что скрыто, и делает это видимым, показывая все запросы RPC, которые делает ваш кошелек.

DERP-интерфейс

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

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

Но объяснение — это не оправдание. Было ясно, что мы обнаружили огромную проблему. И одна вещь действительно выделялась: все эти метаданные устройства, включая IP-адрес. Изначально мы создавали DERP как образовательный инструмент, способ объяснить пользователям и проектам реалии конфиденциальности. Но здесь было кое-что, что мы могли улучшить. Для этого и существует протокол HOPR.

Так родилась идея: служба на основе протокола HOPR, обеспечивающая действительно приватные запросы RPC.

Шаг 2: Баунти

Но что делать с этой идеей? HOPR быстро растет, но мы все еще небольшая команда. Все технические ресурсы направлены на создание основного протокола. А сам протокол — это лишь основа для создания других приложений.

“ Передавать запросы RPC через HOPR” — это хороший tl;dr решения, но с технической точки зрения это бессмысленно.

Первостепенная идея

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

Наша первая базовая схема того, как может работать архитектура RPCh

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

Но все это может подождать. Сейчас важно было определить ключевую проблему.

Нам нужно было привлечь больше специалистов.

Мы уже зарегистрировались в качестве соорганизаторов Genesis Edition Infinite Hackathon в Боготе в октябре 2022 года, за несколько дней до Devcon. У нас не было конкретного плана. У нас просто была общая стратегия по привлечению большего числа разработчиков к построению приложений на базе HOPR, и участие в мероприятии высокого уровня казалось хорошим способом достичь этого.

Эта новая идея использования приватного RPC казалась отличным вариантом для работы за награду: необычная, сложная, и достаточно отдельная от основного протокола HOPR, чтобы сторонний разработчик мог приступить к работе.

Отправляясь на хакатон, я знал, что нужно сделать поистине особенное баунти. У меня большой опыт охоты за баунти с обеих сторон: мои первые годы в крипте прошли в качестве охотника за баунти, и именно так я присоединился к HOPR. А совсем недавно я возглавил собственную баунти-программу HOPR. И постоянный урок заключается в том, что охотникам за вознаграждениями нужен очень четкий план действий, иначе они будут искать что-то другое для работы.

Поэтому мы сузили задачу настолько, насколько это было возможно, но при этом оставили охотникам за баунти место для творчества. То, что начиналось как “Создайте что-то крутое на базе HOPR”, превратилось в “Создайте решение для транзакций частных кошельков через HOPR”.

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

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

Шаг 3: Прототип

Очевидно, что это был правильный подход. Была только одна проблема: хакатон начинался 5 октября, а был уже конец сентября. На самом деле я уже начал свой путь в Боготу через Испанию с моим другом и коллегой Ричем, руководителем HOPR DAO.

Разработка прототипа круглосуточно и в любой точке мира

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

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

Это была тяжелая неделя с действительно долгими буднями, но мы создали систему, а также демонстрационный образец и понятную документацию. К концу у нас был прототип, руководство по интеграции кошелька и видео-демонстрация. Огромная благодарность Ричу за то, что он был рядом, подбрасывал идеи и помогал мне заниматься их настройкой.

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

Одна из лучших сторон работы в HOPR — это работа с международной командой и все те поездки, которые мы совершаем.

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

Но это было так: первый случай использования протокола HOPR для отправки реальной транзакции через кошелек. Это был всего лишь прототип в тестовой среде, но он сулил большие перспективы.

Steven Noni
Руководитель разработки RPCh

--

--