Мой путь к тому, чтобы стать валидатором на Ethereum 2.0

блог 1НовостиДля разработчиковПредприятиеБлокчейн РазъяснениеМероприятия и конференцииПрессаИнформационные бюллетени

Подписывайтесь на нашу новостную рассылку.

Адрес электронной почты

Мы уважаем вашу конфиденциальность

ГлавнаяБлогБлокчейн объяснил

Мой путь к тому, чтобы стать валидатором на Ethereum 2.0

Это первая из серии статей, описывающих, как человек с ~ 32 ETH и техническими знаниями может участвовать в запуске цепочки маяков Ethereum от Кугана Бреннана 25 ноября 2020 г.Опубликовано 25 ноября 2020 г.

поток валидатора teku

Изображение: изображение выше, Бена Эджингтона из Teku (который также пишет основные Eth2.news информационный бюллетень), описывает шаги, которые мы предпримем в следующих трех публикациях в блоге.. 

Примечание: хотя истек крайний срок для включения валидаторов в событие Genesis для цепочки маяков, люди все еще могут внести 32 ETH в депозитный контракт, выполнив следующие шаги. По словам Алекса Тудораша из Eth2stats, как только цепочка начнется 1 декабря в 12:00 UTC, 2020 г., лица, внесшие депозит с 12:00 24 ноября 2020 г. в Genesis, будут поставлены в очередь и будут следовать обычной процедуре активации.. 

  1. Вступление
  2. Отказ от ответственности
  3. Материалы и требования
  4. Получение 32 ETH на MetaMask
  5. Обзор панели запуска
  6. Генерация ключей
  7. Связывание Ethereum 1.0 и 2.0 и фиксация 32 ETH
  8. Вывод

1. Введение

Это первая из серии статей, описывающих, как человек с ~ 32 ETH и техническими знаниями может участвовать в запуске цепочки маяков Ethereum, Фаза 0 проекта Ethereum 2.0. Прежде чем мы перейдем к первому этапу отправки ETH на депозитный контракт и получения ключей валидатора, я хотел бы обсудить некоторые мотивы, лежащие в основе Ethereum 2.0..

Ethereum собирается отправиться в новое захватывающее путешествие на неизведанную территорию для любой сети блокчейнов. Переход от Proof of Work к Proof of Stake является наиболее значительным изменением протокола за короткую историю публичных блокчейнов. Ближайшим эквивалентом будет Изолированный свидетель (или SegWit) хард-форк Биткойна – корректировка способа обработки размеров блоков в сети Биткойн. Это изменение, относительно незначительное по сравнению с Ethereum 2.0, привело к ожесточенным спорам и, в конечном итоге, к фрагментации сообщества Биткойн..  

Запуск Ethereum 2.0 делает SegWit похожим на смену шин. Есть две основные причины, по которым это сообщество предприняло бы такую ​​значительную переработку.. Во-первых, сообщество Ethereum – это сообщество разработчиков.. Разработчики не запускают продукт и больше не трогают его. Мы постоянно внедряем, наблюдаем, обсуждаем и повторяем идеи и работы, которые мы производим. Этот цикл сопровождается высоким уровнем планирования, моделирования и координации многих команд, которые в других условиях могут считаться конкурентами. Когда есть ошибки, сообщество объединяется, чтобы исправить их наилучшим образом..

Вторая причина, по которой мы предпринимаем это новое усилие, заключается в том, что мы считаем, что публичные блокчейны далеки от своего полного потенциала. Доказательство работы было непроверенной гипотезой, когда Биткойн был запущен в 2009 году. Подавляющее большинство людей не верили, что можно решить проблему двойных расходов, кроме как с помощью надежных посредников. Биткойн и другие сети Proof of Work теперь доказали, что мы можем реализовать денежную систему как одноранговый протокол (я отправляю вам деньги) без третьей стороны..

Доказательство этого было только началом. Эфириум получил в сообществе прозвище Биткойн 2.0, когда он впервые разрабатывался: он признал недостатки операционной системы Биткойн и был запущен для расширения возможностей одноранговых протоколов. Ethereum 1.0 будет продолжать добиваться больших успехов на протяжении многих лет по мере того, как мы создаем 2.0 вместе с ним, но, как сказал Виталик Бутерин в недавней AMA Reddit:

«Если вы сегодня находитесь здесь, в Ethereum, вам следует быть здесь не потому, что вы считаете, что текущие правила (экономические или технические) заслуживают защиты и стабилизации любой ценой, а потому, что вы верите в то, куда движется экосистема. […] Участие в Ethereum отчасти неизбежно является предсказанием того, что дорожная карта является хорошей, и что как только этот процесс обновления закончится, мы фактически доберемся до места, где сеть будет эффективной, стабильной и мощной и сможет стать основой для значительных части мировой экономики »


Proof of Stake на этом этапе Ethereum 2.0 – это на самом деле ставка на способность разработчиков и сообщества Ethereum, которые уже так много построили, предоставить еще больше для большего мира.. Вам следует ожидать блокировки любых средств, которые вы вкладываете в этот депозитный договор, для по меньшей мере два года, скорее всего, больше. Пожалуйста, не недооценивайте риски и инвестируйте только то, что можете позволить себе потерять.. Однако, внося свой вклад в этот первый шаг, вы участвуете в потенциально историческом моменте, который подтолкнет общедоступные блокчейны к следующему этапу разработки..

Давайте начнем.

2. Заявление об ограничении ответственности

Это сообщение, которое я пишу как сотрудник ConsenSys и кто-то, кто планирует сделать ставку на цепочку маяков. Первое утверждение означает, что я отдаю приоритет продуктам ConsenSys (продукты ConsenSys обычно являются лучшими в своем классе для Ethereum, и у меня также есть доступ к командам инженеров, которые могут помочь мне ответить на вопросы и устранить неполадки). Последнее утверждение означает, что я оптимизирую расходы и простоту использования: у меня нет тысяч ETH для получения существенного вознаграждения, поэтому я выбираю несколько сокращений. Я также не хочу содержать сервер в своей квартире для финансовых и логистических целей, поэтому я использую Amazon Web Services (AWS) для размещения узла валидатора. Это услуга, с которой я знаком как разработчик, и она виртуальная, поэтому я могу получить к ней доступ из любого места для обслуживания. (Первоначально я рассматривал возможность использования моего 8 ГБ ОЗУ Raspberry Pi, но не хотел беспокоиться о подключении к Интернету, о том, что питание сайта все еще включено, о перегреве и скорости, или о том, что моя собака пинает мой ноутбук, когда меня нет . Это вариант и Ethereum на ARM группа, которая предоставляет материалы для размещения Ethereum 2.0 на Raspberry Pi) 

Многие люди в криптосообществе не согласны с использованием конечной точки Infura вместо локального клиента Ethereum 1.0 и хостинга на AWS (часть Amazon goliath). Это решения, которые я принял, чтобы сделать ставку на Ethereum 2.0 как можно более простым и доступным для отдельных лиц, но с компромиссом в отношении децентрализации и конфиденциальности. Однако вы можете следовать приведенному ниже руководству в общих чертах и ​​выбрать локальный запуск собственного клиента Ethereum 1.0 и хостинг. На самом деле, если вы можете это сделать, я бы посоветовал вам! 

3. Материалы и требования

Вот материалы, которые нам понадобятся, и общие шаги, которые мы предпримем в течение трех публикаций:

Материалы

  • Трехлетнее обязательство по размещению 32 ETH и поддержке узла валидатора
  • 32 ETH (плюс <1 ETH на газ)
  • 717,12 доллара США (цена за трехлетний зарезервированный инстанс для инстанса m5.xlarge) + 120 (годовая стоимость 100 ГБ хранилища, консервативно предполагая почти полную емкость хранилища) = 837,12 доллара США, выплачиваемых AWS в течение года.
  • Расширение MetaMask (бесплатная установка
  • Учетная запись Infura (бесплатный уровень)

Шаги

  1. Получите 32 ETH на MetaMask, Walkthrough Launchpad
  2. Настроить экземпляр AWS (трехлетнее обязательство, может быть меньше, но вы сэкономите деньги с большим количеством времени, и вы заблокированы), усиление функций безопасности
  3. Импортируйте ключи проверки, запустите Teku, настройте мониторинг 

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

4. Получение 32 ETH на MetaMask

И самый простой, и самый сложный этап этого урока. Пока я пишу это, Ethereum переживает скачок цен, который резко увеличивает стоимость стекинга (Эван Ван Несс сказал, что восхитительный пост который отслеживает стоимость проверки в течение многих месяцев, начиная с марта 2019 года, когда покупка 32 ETH стоила 3100 долларов США, до октября 2020 года, когда это стоит 12000 долларов США). Есть несколько человек, которые купили и, кстати, HODLed Ethereum довольно долгое время.. Если вы не потратили криптовалюту на пиццу в 2010 году, считайте себя счастливчиком – эээ – стратегическим инвестором.

Зачем нам нужен браузерный кошелек, такой как MetaMask? Процесс блокировки ETH в депозитном контракте в Mainnet Ethereum 1.0 и подключение его к цепочке Ethereum 2.0 Beacon требует своего рода деликатного танца. Две цепочки используют разные классы криптографии, поэтому нам нужно генерировать совершенно новые типы криптографических ключей. Однако эти ключи должны быть связаны с нашими адресами Ethereum 1.0 с 32 ETH. Это было бы очень сложно сделать самостоятельно, поэтому Ethereum Foundation и ConsenSys создали веб-сайт, который обрабатывает процесс, называемый Панель запуска. Однако для взаимодействия с этим веб-сайтом нам нужен кошелек на основе браузера с ключами Ethereum 1.0, связанными с нашим балансом в 32 ETH. Мы поговорим об этом позже, но я хотел, чтобы люди знали, почему мы это делаем.

Если у вас нет эфира (базовая валюта сети Ethereum): Вы можете купить прямо на MetaMask. Вы также можете купить ETH на сертифицированных биржах, таких как Близнецы, но имейте в виду, что существует обширный процесс KYC, и Близнецы будут хранить и могут отправлять записи в местные, государственные и национальные государственные органы.. Если у вас есть токены ERC-20, но нет эфира: Я рекомендую использовать новую функцию свопов MetaMask прямо в вашем кошельке MetaMask, который сочетает в себе децентрализованные агрегаторы обмена, такие как Uniswap и AirSwap, для получения лучших цен и самых низких сетевых комиссий. Если ваш ETH находится на аппаратном кошельке Trezor или Ledger, Я рекомендую вам выполнить следующие действия, чтобы подключить этот кошелек к MetaMask.. Я использую MetaMask, но Ethereum Foundation также рекомендует браузерные кошельки, например Портис или же Fortmatic

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

5. Обзор панели запуска

Изображение: Launchpad.ethereum.org

Теперь, когда у нас есть 32 ETH для стекинга, мы можем перейти к Launchpad.ethereum.org, веб-сайт Launchpad, о котором мы упоминали ранее. Путеводитель Мары и Коллина о безналичных расчетах проходит через начальную страницу (показанную ниже) очень хорошо, и многое из нее не требует пояснений, но я хотел дать свою собственную интерпретацию по некоторым вопросам:

Первые четыре шага (Обзор, Подписаться, Обязанности, и Рубящий) являются основным синопсисом Ethereum 2.0, стекинга и ваших обязанностей как валидатора. По сути, механизм консенсуса Proof of Stake полагается на то, что «майнеры» (на языке Proof of Work) вкладывают свои деньги туда, где есть их рот, а не тратят огромное количество ресурсов ЦП на решение головоломок Proof of Work. Это 32 ETH, ставки стола для участия в консенсусе Proof of Stake.. 

А поскольку сеть все еще находится в стадии разработки, для валидаторов еще нет выхода (что, если вы обнаружите взлом DAO в новой сети? Мы не можем позволить вам уйти…). Так что всем предстоит долгий путь. (это покрывает Задержка передачи и Обязательство)

Наконец, если вы «плохо себя ведете» в качестве валидатора в сети (по злому умыслу, по незнанию или по случайности), вы будете наказаны. В Ethereum 2.0 это называется рубящий. С положительной стороны, если вы правильно ведете себя как валидатор, вы получаете «награды за майнинг», связанные с сетью (мы обсудим это позже). Вкратце, баланс сдерживания / стимулирования отличается от Proof of Work, где есть только стимулы чтобы майнеры не саботировали сеть и вели себя корректно. 

Далее следует упомянутая мною ключевая система. Система подписи ключей, которую будет использовать Ethereum 2.0, – это BLS. Я не специалист по криптографии, но вывод из BLS заключается в том, что он позволяет объединить несколько цифровых подписей в одну, которую можно проверить. Это полезно при сборе свидетельств радиобуя («Голосование относительно действительности блока шарда или маяка»). Наиболее уместно для нас то, что схема BLS отличается от схемы, используемой для Ethereum 1.0..

Для получения дополнительной информации о BLS см. эта ветка от Джеффа Коулмана или же это сообщение Reddit об истории разработки BLS для Ethereum 2.0

Как правило, изменить схему закрытого ключа для большой общедоступной сети практически невозможно. Однако, поскольку Ethereum 2.0 будет работать вместе с Ethereum 1.0, основные разработчики придумали умное решение, которое представляет собой классическое рукопожатие:

Панель запуска

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

Транзакция, представленная в депозитном контракте на Ethereum 1.0, должна быть подписана закрытым ключом Ethereum 1.0 (как и любая транзакция, отправляемая в Mainnet). Однако эта транзакция обернута вокруг другой подписи закрытого ключа, закрытого ключа Ethereum 2.0. Цепочка маяков наблюдает за депозитным контрактом на Ethereum 1.0, если действительная транзакция передается в контракт с правильным балансом, цепочка маяков затем разворачивает первый уровень шифрования и получает доступ ко второму уровню, цифровой подписи Ethereum 2.0. Это используется для подтверждения адреса валидатора Ethereum 2.0 и подключения его к адресу Ethereum 1.0..

Для людей, знакомых с Solidity, вот транзакция, которая входит в контракт Ethereum 1.0, с параметром подписи BLS в кружке:

Здесь есть еще один параметр (учетные данные для вывода), который мы не обсуждали, который, по сути, является одноразовым ключом для вывода 32 ETH, если нам это разрешено. Мы также создадим это с помощью Launchpad..

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

Следующие три раздела (Обязательство, Риск раннего усыновления и Подтверждение) являются последним напоминанием о рискованном и долгосрочном участии в Ethereum 2.0. 

Подробнее о терминологии Ethereum 2.0 и понимании роли валидатора см. В двух замечательных статьях Алекса Тудораша. Демистификация терминов Ethereum 2.0 и Путешествие валидатора по сигнальной цепи.

6. Генерация ключей

Теперь, когда у нас есть общий обзор нашей роли в Ethereum 2.0 в качестве валидатора, мы продолжим основную часть процесса: создание ключей валидатора и связывание их с Ethereum 1.0 с переводом 32 ETH на депозитный контракт основной сети Ethereum 1.0..

После подтверждения того, что вы прочитали раскрытие информации, Launchpad рассмотрит имеющиеся у вас варианты выбора клиента Ethereum 1.0 и 2.0. Мы вернемся к ним в другом посте, и это не является обязательным требованием для дальнейшего продвижения.. 

Затем вы перейдете в раздел «Сгенерировать ключи», показанный ниже:

Я выбрал 1 валидатор, и он показывает мне мою стоимость. Затем он просит мою текущую операционную систему помочь мне загрузить небольшую часть программного обеспечения для генерации пар ключей валидатора. Это сложно, потому что, хотя мой клиент-валидатор будет работать в Linux, я использую Mac изо дня в день. Поэтому я выбираю Mac, и мы переходим к следующему шагу, спрашивая, как мы хотим настроить программное обеспечение:

Я выбираю для загрузки приложение CLI, и оно переводит меня на страницу загрузки на странице Ethereum Foundation на Github (версия выпуска может выглядеть для вас иначе, просто убедитесь, что это последняя версия):

Прокрутите вниз, чтобы увидеть раздел загрузки:

Загрузите файл tar.gz для своей операционной системы и распакуйте его..

Теперь нам нужно открыть терминал командной строки и перейти в каталог нашего распакованного файла с именем eth2deposit-cli. Ярлык для некоторых машин – ввести cd, а затем перетащить каталог в терминал, что даст вам путь к каталогу. Нажмите Enter и в каталоге eth2deposit-cli выполните следующую команду, предоставленную Launchpad:

./ deposit new-mnemonic –chain mainnet

Постоянное напоминание о включении –chain mainnet, потому что в предыдущих руководствах были разные цепочки для разных тестовых сетей. Поэтому обязательно добавьте основную сеть, иначе информация о вашей транзакции будет недействительной.!

Введите количество валидаторов, которые вы хотите запустить, и следуйте инструкциям..

Я не собираюсь делиться снимками экрана для следующих нескольких шагов, поскольку это связано с созданием конфиденциальных ключей и паролей. Однако две основные вещи: 1) Сделайте резервную копию мнемонической фразы, которую вы получите, поскольку это единственный способ вывести ETH, который вы поставили, когда это разрешено 2) Этот шаг предназначен только для пользователей Teku: Создайте текстовый файл, содержащий пароль, который вы ввели для ключей валидатора. Сохраните его с тем же именем, что и ваш файл keystore.json, но с суффиксом .txt в том же каталоге, что и ваши ключи и информация о депозите. Например, если ваш файл хранилища ключей – KEYSTORE-M_123456_789_ABCD.json, текстовый файл с вашим паролем должен называться KEYSTORE-M_123456_789_ABCD.текст. Это будет использоваться позже при запуске Teku..

После успешного запуска eth2deposit-cli из вашего терминала и добавления файла паролей ваш каталог должен выглядеть так:

eth2deposit-cli /

└── validator_key_info /

   ├── KEYSTORE-M_123456_789_ABCD.json

   ├── KEYSTORE-M_123456_789_ABCD.текст

   └── DEPOSIT_DATA_YOUR_TIMESTAMP_HERE.json

└── MNEMONIC_BACKUP.txt

7. Связывание Ethereum 1.0 и 2.0 и фиксация 32 ETH

Последним шагом в этом руководстве будет отправка информации о нашем валидаторе в контракт на депозит в основной сети Ethereum 1.0 с правильной информацией, которую цепочка маяков также сможет распознать (рукопожатие, о котором мы упоминали ранее)..

На вкладке «Загрузить валидатор» есть место, куда можно перетащить другой файл, созданный eth2deposit-cli: файл данных вашего депозита (DEPOSIT_DATA_YOUR_TIMESTAMP_HERE.json в примере каталога выше). Перетащите этот файл со своего компьютера на место на странице Launchpad:

Если данные о депозите отформатированы правильно, вы увидите следующее:

Теперь Launchpad попросит нас подключить программный кошелек к учетной записи, на которую мы отправили наши 32 ETH ранее:

Как только вы это сделаете успешно, вы увидите следующее:

Новые функции безопасности от MetaMask требуют, чтобы веб-сайт запрашивал соединение с каждой учетной записью отдельно – если учетная запись с 32 ETH не выбрана при подключении, просто откройте MetaMask, щелкните учетную запись, у которой есть 32 ETH, и подключите ее к Launchpad.

Нажав “Продолжить”, вы увидите сводную информацию с дополнительным акцентом на риск и долгосрочную приверженность тому, что вы собираетесь делать:

Как только вы внимательно изучите эти разоблачения и предупреждения, наступит момент истины:

Как только вы нажмете «Инициировать транзакцию», вы столкнетесь с одним из самых захватывающих окон подтверждения в ВАШЕЙ (крипто) ЖИЗНИ! Сделайте глубокий вдох и убедитесь, что вы готовы, потому что после того, как вы нажмете “Подтвердить”, пути назад не будет! (Что ж, в MetaMask есть функция «Отмена транзакции», чувствительная ко времени, потому что это отличный кошелек, но сделайте вид, будто у вас его нет!)

Как только все будет подтверждено и добыто, вы увидите такой экран:

8. Заключение

Поздравляю! Вы участвовали в одном из самых захватывающих событий в истории общественной координации.!!

Но работа только началась. В следующих двух публикациях мы расскажем о настройке экземпляра сервера AWS Ubuntu 20.04 для нашего узла валидатора Teku с использованием Infura в качестве конечной точки Ethereum 1.0. Затем мы будем работать над усилением безопасности и мониторингом узлов с помощью такого инструмента, как Grafana.. 

Для следующей части все, что нам понадобится из этого поста, – это содержимое каталога eth2deposit-cli / validator_key_info, примеры приведены ниже:

eth2deposit-cli /

└── validator_key_info /

   ├── KEYSTORE-M_123456_789_ABCD.json

   ├── KEYSTORE-M_123456_789_ABCD.текст

   └── DEPOSIT_DATA_YOUR_TIMESTAMP_HERE.json

Будьте на связи!

Спасибо Джеймсу Беку, Мередит Бакстер, Чаминде Дивитотавела, Бену Эджингтону, Темному Шуту, Сомеру Эсату, Джозефу Любину, Коллину Мейерсу, Нику Нельсону, Маре Шмидт, Адриану Саттону и Алексу Тудораче за поддержку и техническую помощь..

BlockchainCryptoEthereumEthereum 2.0Новостная рассылкаПодпишитесь на нашу рассылку, чтобы получать последние новости Ethereum, корпоративные решения, ресурсы для разработчиков и многое другое.Адрес электронной почтыЭксклюзивный контентОтчет DeFi по Ethereum за 3 квартал 2020 г.Отчет

Отчет DeFi по Ethereum за 3 квартал 2020 г.

Отчет DeFi по Ethereum за 2 квартал 2020 г.Отчет

Отчет DeFi по Ethereum за 2 квартал 2020 г.

Полное руководство по бизнес-сетям с блокчейномГид

Полное руководство по бизнес-сетям с блокчейном

Как создать успешный блокчейн-продуктВебинар

Как создать успешный блокчейн-продукт

Введение в токенизациюВебинар

Введение в токенизацию

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
Adblock
detector
map