Читаем Больше денег: что такое Ethereum и как блокчейн меняет мир полностью

Например, ADD достает два элемента из стека и возвращает туда их сумму, после чего уменьшает gas на 1 и увеличивает pc на 1; а SSTORE берет верхние два элемента стека и помещает второй элемент в хранилище контракта под адресом, равным первому элементу. Хотя есть много способов оптимизировать выполнение EVM посредством динамической компиляции, простейшая реализация Ethereum может занять всего пару сотен строк кода.

<p>БЛОКЧЕЙН И МАЙНИНГ</p>

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

1. Убедиться, что блок, который определяется как предыдущий, существует и валиден.

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

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

4. Проверить валидность proof-of-work.

5. Пусть S[0] – состояние на конец предыдущего блока.

6. Пусть TX – список транзакций в блоке, а всего транзакций n. Для всех 0…n–1 установим S[i+1] = APPLY(S[i],TX[i]). Если при применении некоторых транзакций возникает ошибка или если общее количество потребленного газа к этому моменту превышает GASLIMIT, выдать ошибку.

7. Пусть S_FINAL будет S[n], но с выплатой майнеру награды за нахождение блока.

8. Проверить, совпадает ли корень дерева Меркла состояния S_FINAL с корнем финального состояния из заголовка блока. Если да, блок валиден; в противном случае – нет.

На первый взгляд такой подход может показаться крайне неэффективным, поскольку предполагает хранение текущего состояния в каждом блоке, но на самом деле его эффективность сопоставима с эффективностью Bitcoin. Причина в том, что состояния хранятся в древовидной структуре и с нахождением нового блока изменяется лишь малая часть дерева. Два смежных блока имеют по большей части одинаковые деревья, а значит, данные можно записать один раз, а потом на них ссылаться (например, через хеши поддеревьев). Для этого используется особая модификация дерева Меркла – «дерево Патрисии», которое позволяет эффективно добавлять и удалять ноды, а не просто менять их. Наконец, поскольку вся информация о состояниях содержится в последнем блоке, нет необходимости хранить всю историю блокчейна – в Bitcoin такая стратегия помогла бы сохранить в 5–20 раз больше пространства.

Часто возникает вопрос о том, «где» выполняется код контракта с точки зрения физического оборудования. На это есть простой ответ: процесс выполнения кода контракта – часть определения функции перехода состояния, которая, в свою очередь, является частью алгоритма валидации блока. Поэтому, если транзакция добавлена в блок B, выполнение кода, порожденного этой транзакцией, будет выполняться всеми нодами (и сейчас, и в будущем) при загрузке и валидации блока B.

<p>ПРИЛОЖЕНИЯ</p>

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

<p>СИСТЕМЫ ТОКЕНОВ</p>

Системы токенов внутри блокчейна можно применять самыми разными способами: как подвалюты, представляющие активы вроде доллара США или золота; акции компаний; умную собственность; безопасные неподдельные купоны и даже системы токенов без привязки к какой-либо стоимости в ее привычном понимании, например мотивирующие системы оценки постов. Встроить системы токенов в Ethereum на удивление просто. Тут важно понимать, что и валюта, и система токенов – база данных с одной операцией: отнять х единиц от A и прибавить х единиц к B при условии, что, во-первых, сторона A имеет как минимум х единиц перед началом транзакции и, во-вторых, сторона A подтверждает транзакцию. Все, что нужно для реализации системы токенов, – встроить эту логику в контракт.

Простейший Serpent-код для осуществления системы токенов выглядит так:

def send(to, value):

if self.storage[msg.sender] >= value:

self.storage[msg.sender] = self.storage[msg.sender] – value

self.storage[to] = self.storage[to] + value

Перейти на страницу:

Все книги серии Individuum

Больше денег: что такое Ethereum и как блокчейн меняет мир
Больше денег: что такое Ethereum и как блокчейн меняет мир

В 2013 году девятнадцатилетний программист Виталик Бутерин опубликовал концепцию новой платформы для создания онлайн-сервисов на базе блокчейна. За десять лет Ethereum стал не только второй по популярности криптовалютой, но и основой для целого мира децентрализованных приложений, смарт-контрактов и NFT-искусства. В своих статьях Бутерин размышляет о развитии криптоэкономики и о ключевых идеях, которые за ней стоят, – от особенностей протокола Ethereum до теории игр, финансирования общественных благ и создания автономных сетевых организаций. Как блокчейн-сервисы могут помочь людям добиваться общих целей? Могут ли криптовалюты заменить традиционные финансовые инструменты? Ведут ли они к построению прекрасного нового мира, в котором власть будет принадлежать не правительствам и корпорациям, а людям, объединенным общими ценностями и интересами, или служат источником неравенства и циничных финансовых спекуляций? В этой книге Бутерин предстает увлеченным мыслителем, глубоким социальным теоретиком и активистом, который рассуждает о том, что гораздо больше денег, не боится задавать сложные вопросы и предлагать решения противоречивых проблем.

Виталий Дмитриевич Бутерин

Публицистика
Инцелы. Как девственники становятся террористами
Инцелы. Как девственники становятся террористами

В современном мире, зацикленном на успехе, многие одинокие люди чувствуют себя неудачниками. «Не целовался, не прикасался, не обнимался, за руку не держался, друзей нет, девственник» – так описывают себя завсегдатаи форумов инцелов, сообществ мужчин, отчаявшихся найти пару. Тысячи инцелов горько иронизируют над обществом, мечутся между попытками улучшить внешность и принятием вечного (как им кажется) целибата и рассуждают, кого ненавидят больше: женщин или самих себя. А некоторые решают отомстить – и берутся за оружие.В книге «Инцелы» практикующий шведский психиатр Стефан Краковски приоткрывает дверь в этот мир. Он интервьюирует инцелов, анализирует кризис мужественности и исследует связи радикальных одиночек с ультраправыми движениями, чтобы ответить на важные вопросы: как становятся инцелами? Насколько они опасны? И что мы можем сделать, чтобы облегчить их бремя, пока еще не поздно?В формате PDF A4 сохранен издательский макет книги.

Стефан Краковски

Психология и психотерапия
Отец шатунов. Жизнь Юрия Мамлеева до гроба и после
Отец шатунов. Жизнь Юрия Мамлеева до гроба и после

Биографии недавно покинувших нас классиков пишутся, как правило, их апологетами, щедрыми на елей и крайне сдержанными там, где требуется расчистка завалов из мифов и клише. Однако Юрию Витальевичу Мамлееву в этом смысле повезло: сам он, как и его сподвижники, не довольствовался поверхностным уровнем реальности и всегда стремился за него заглянуть – и так же действовал Эдуард Лукоянов, автор первого критического жизнеописания Мамлеева. Поэтому главный герой «Отца шатунов» предстает перед нами не как памятник самому себе, но как живой человек со всеми своими недостатками, навязчивыми идеями и творческими прорывами, а его странная свита – как общность жутковатых существ, которые, нравится нам это или нет, во многом определили черты и характер современной русской культуры.В формате PDF A4 сохранен издательский макет книги.

Эдуард Лукоянов

Биографии и Мемуары / Критика / Литературоведение / Документальное
Новые боги. Как онлайн-платформы манипулируют нашим выбором и что вернет нам свободу
Новые боги. Как онлайн-платформы манипулируют нашим выбором и что вернет нам свободу

IT-корпорации успешно конкурируют с государствами в том, что касается управления людьми. Наши данные — новая нефть, и, чтобы эффективно добывать их, IT-гиганты идут на многочисленные ухищрения. Вы не считаете себя зависимым от соцсетей, мессенджеров и видеоплатформ человеком? «Новые боги» откроют глаза на природу ваших отношений с технологиями. Немецкий профессор, психолог Кристиан Монтаг подробно показывает, как интернет стал машиной слежки и манипуляций для корпораций Кремниевой долины и компартии КНР, какие свойства человеческой натуры технологические гиганты используют для контроля над пользователями — и что мы можем сделать, чтобы перестать быть рабами экрана.В формате PDF A4 сохранён издательский дизайн.

Кристиан Монтаг

ОС и Сети, интернет / Обществознание, социология / Психология и психотерапия

Похожие книги

Дальний остров
Дальний остров

Джонатан Франзен — популярный американский писатель, автор многочисленных книг и эссе. Его роман «Поправки» (2001) имел невероятный успех и завоевал национальную литературную премию «National Book Award» и награду «James Tait Black Memorial Prize». В 2002 году Франзен номинировался на Пулитцеровскую премию. Второй бестселлер Франзена «Свобода» (2011) критики почти единогласно провозгласили первым большим романом XXI века, достойным ответом литературы на вызов 11 сентября и возвращением надежды на то, что жанр романа не умер. Значительное место в творчестве писателя занимают также эссе и мемуары. В книге «Дальний остров» представлены очерки, опубликованные Франзеном в период 2002–2011 гг. Эти тексты — своего рода апология чтения, размышления автора о месте литературы среди ценностей современного общества, а также яркие воспоминания детства и юности.

Джонатан Франзен

Публицистика / Критика / Документальное