Добро пожаловать в дикий дикий Web3

  • HLCS 

Источник · Перевод автора

Создайте свои собственные схемы стимулирования криптографии. Перенесите свой блокчейн-проект в «реальный мир»

Отказ от ответственности: у меня есть бесплатный Bootcamp с Elk.cc, я надеюсь, что этот пост вдохновит вас глубже погрузиться в изучение блокчейна и IoT со мной!

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

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

В Web3 есть несколько новых возможностей, давайте разберемся, что это значит:

Матрица новых способностей

Вместо множества фактов, давайте разберемся с этим практически. создав собственный крипто-токен на основе Ethereum и создавая потрясающие стимулы, разыгрывая офис Elk. Чтобы присоединиться к этому приключению, вам понадобятся:

  1. Ваш собственный кошелек Ethereum
  2. Немного эфира (валюта эфириума)
  3. 30 минут

Шаг первый — Получить кошелек

Получить кошелек, простой способ:

  • Установите плагин Meta Mask для Firefox, Chrome или используйте встроенный плагин в новом браузере Brave.
  • Для получения более подробной информации о том, как это сделать, следуйте этому замечательному руководству.

Получить кошелек математическим способом:

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

Для Ethereum вы используете функции красивого графа:

создать пару открытых / закрытых ключей. Пара ключей позволяет вам делиться секретными сообщениями с людьми в Интернете, а также доказывать, что вы намеревались подписывать цифровые файлы. Это лежит в основе децентрализованной технологии, и мы хотим быть уверены, что вы не пропустите ее понимание. Адреса Ethereum получаются путем взятия хэша открытого ключа. Хеш — это функция, которая создает уникальную строку фиксированной длины из различных входных данных.

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

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

Шаг второй — получить немного эфира.

Так что теперь у вас должна получиться забавная строка чисел, например: 0x21aB0B3527326dcA4469245654Cf881F5F7a8c5e

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

Нажмите на иконку Meta Mask, чтобы открыть плагин. Нажмите на верхнюю область с надписью «Основная сеть Эфириума» и измените ее на «Тестовая сеть Ропстена», затем можете перейти сюда: https://faucet.metamask.io/ и нажмите «запросить один эфир». Когда транзакция будет завершена, щелкните значок Meta Mask и проверьте свой новый блестящий эфир!

Шаг третий — опубликуйте свой контракт.

Удивительно! У вас есть кошелек, у вас есть эфир, теперь давайте заключим наш токен-контракт! Как мы упоминали ранее, Ethereum — это платформа, на которой есть своя собственная монета, которая идет от Ether. Эфир можно рассматривать как топливо, которое запускает код контракта, живущий на блокчейне. Так как мы используем вычислительные ресурсы с компьютеров других людей, используя произвольную длину кода, нам нужен способ взимать переменную сумму. Это количество называется «газ» — аналог газа, который вы можете положить в свою машину, чтобы он поехал.

Чтобы создать собственную схему стимулирования и валюту для офиса Elk, давайте рассмотрим, какие функции и функции могут быть необходимы:

  1. Ограниченная поставка токенов для создания дефицита
  2. Токены могут быть отправлены и получены
  3. Количество токенов в контракте можно посмотреть…

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

Open Zeppelin создала и провела аудит внедрения стандарта ERC20. Стандарт ERC20 ранее обсуждался Виталиком, основателем Ethereum, на github, на форуме сообщества reddit и в других местах, прежде чем он обрел свою нынешнюю форму. Причина, по которой я упоминаю эту историю, состоит в том, чтобы подчеркнуть, что проектный подход к стандартам генерируется совместно, и ваш голос имеет значение!

Итак, теперь, когда мы немного знаем об истории ERC20, давайте сделаем наш первый токен!

Сначала откройте редактор ремиксов на отдельной вкладке. Теперь, чтобы упростить задачу, я собрал код из всех различных модулей из реализации стандарта Zeppelin в один блок кода, чтобы упростить копирование и вставку. Вы можете найти этот шарик здесь, в этом бункере. Это весь код, необходимый для создания собственного токена. Скопируйте этот файл и вставьте его в ballot.sol в редакторе ремиксов, вы можете переименовать этот файл в exampleToken.sol или как вам угодно.

Чтобы избежать ошибок, лучше всего выбрать компилятор, который соответствует коду, вы можете увидеть это в самой первой строке: «pragma solidity ^ 0.5.2;» — выберите фиксацию 0.5.2 из выпадающего списка «Выбрать новый компилятор» вниз.

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

contract SimpleToken is ERC20, ERC20Detailed {
uint8 public constant DECIMALS = 2;
uint256 public constant INITIAL_SUPPLY = 1000 * (10 ** uint256(DECIMALS));
constructor () public ERC20Detailed(“SimpleToken”, “SIM”, DECIMALS) {
_mint(msg.sender, INITIAL_SUPPLY);
}

uint8 public constant DECIMALS = 2;
uint256 public constant INITIAL_SUPPLY = 1000 * (10 ** uint256(DECIMALS));
constructor () public ERC20Detailed(“SimpleToken”, “SIM”, DECIMALS) {
_mint(msg.sender, INITIAL_SUPPLY);
}

Вы можете изменить имя с SimpleToken и короткое имя SIM на любое другое. Затем вы можете изменить переменную INITIAL_SUPPLY таким образом, чтобы получить столько токенов, сколько вы хотите, а DECIMALS — столько десятичных разрядов, сколько вы хотите после нее. Например, если вы хотите 10000 токенов, которые можно разделить на «копейки», вы можете сказать 10000 для поставки и 2 для десятичных.

Таким образом, после того, как вы развернете свой контракт, ваша функция общего предложения вернется: «1000000», а ваша функция DECIMALS вернется: «2». Ура!

Теперь мы готовы опубликовать ваш контракт! Следуйте этим шагам внимательно:

Прямо под селектором компилятора вы увидите кнопку с надписью «начать компиляцию», если она еще не скомпилировала ваш код, нажмите эту кнопку.

Далее, нажмите вкладку «Выполнить» в правом верхнем углу окна. Выберите Injected Web3 (это означает мета-маску для наших целей) и, наконец, обязательно укажите имя своего токена в качестве контракта для публикации. Если вы не меняли код, он должен называться SimpleToken, если он у вас есть, вы увидите здесь имя вашего токена. Не беспокойтесь о других именах (ERC20, SafeMath и так далее), Которые будут ссылаться на другие скомпилированные контрактные модули по мере необходимости, нам нужно только запустить контракт нашего токена.

Теперь самое интересное! Играя со своим токеном и отправляя его своим друзьям!

Добавьте свой токен в Meta Mask!

После того, как вы нажмете на развертывание, оно будет развернуто с использованием учетной записи, выбранной в раскрывающемся списке выше. Это должна быть учетная запись, созданная вами и запущенная в Ropsten Ether. Плагин Meta Mask появится и попросит вас подтвердить. Теперь, поскольку это происходит и фактически будет находиться в живой тестовой сети, майнерам потребуется некоторое время для подтверждения вашей транзакции, пожалуйста, наберитесь терпения. Как только это будет подтверждено, это означает, что вы заплатили достаточно газа для майнеров, чтобы посчитать добавление вашего кода в блок достойным. Ура! Теперь вы должны увидеть подтверждение в окне отладки.

Прокрутите вниз на вкладке «Выполнить», и вы должны увидеть свой токен в списке «Развернутые контракты». Откройте его, и вы можете начать нажимать на кнопки синего цвета, чтобы взаимодействовать с вашим контрактом.

Чтобы убедиться, что ваш контракт доступен для просмотра, загляните внутрь экрана отладки для вашей ссылки Etherscan. Etherscan link — это программа просмотра контента, доступного для просмотра в блокчейне.

Hello Nur Token

Вот моя ссылка на мой недавно созданный токен Nur.

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

  1. Внутри редактора ремиксов справа от имени вашего развернутого контракта находится символ «копировать», нажатие на которое скопирует адрес контракта в ваш буфер обмена.
  2. Если вы перейдете на страницу Etherscan из консоли отладки, вы можете увидеть адрес контракта в этой форме: «[Contract 0xc84a29bf11934172131067503a5762aa19d18429 Created]»

Скопируйте свой адрес и нажмите на плагин Meta Mask. Нажмите на значок с тремя сэндвичами вверху слева и прокручивайте, пока не увидите «Добавить токен» внизу. Нажмите его, а затем в следующем окне выберите «Пользовательский токен» и добавьте адрес контракта, который вы скопировали с предыдущего шага. Он должен автоматически заполнить имя и количество десятичных знаков. Как только вы нажмете «Далее», вы увидите, что ваша учетная запись настроена для отправки токенов!

Итак, вот тут начинается самое интересное. Невероятная вещь в этих токенах заключается в том, что когда вы отправляете их другим, и когда они принадлежат им, вы больше не можете забрать их обратно. Они могут доказать миру, что они есть на etherscan, и все это без необходимости доверять центральному серверу, банку или даже человеку, который сделал токен! Это открывает возможности для изучения схем стимулирования и игр. Я использую токен ELK, который я создал в офисе, чтобы бросить вызов команде здесь, чтобы подняться по лестнице, решать головоломки и другие веселые задачи, и я отправляю им ELK взамен.

Следующие шаги:

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

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

Что наиболее важно, с этими новыми сверхспособностями, которые открывают технологии для Web3, что вы будете создавать? Что происходит, когда мы соединяем самодельный код с электронными системами? Проверка, которая может быть доказана на блокчейне, становится грязной, когда вы работаете со взломанной электроникой. Что мы можем сделать по этому поводу? Это открытые вопросы, и я настроил короткий буткемп, чтобы помочь людям, интересующимся Blockchain и IoT, разработать базовый набор навыков для начала исследования пространства.

Чтобы узнать больше и присоединиться к нашему бесплатному 3-недельному загрузочному лагерю, посетите сайт elk.cc/bootcamp

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

Расписание мероприятий, присоединяйтесь к нам бесплатно по адресу: elk.cc/bootcamp

Я надеюсь, что этот урок подстегнул ваш аппетит к обучению. Пересечение блокчейна в реальном мире, чтобы влиять на стимулы, создавать и распространять цифровую / физическую ценность и приводить к надежным транзакциям между человеком, человеком, компьютером и компьютером-компьютером, будет расти, как только блокчейн соединится со встроенными системами и IoT. Как выглядит этот мир, мы не знаем. Что я знаю, так это то, что ему нужно больше голосов от людей, желающих изучать, экспериментировать и создавать эти системы, и это то, о чем идет речь в этом руководстве и в bootcamp. Не могу дождаться, чтобы открыть банку работ с вами!