Сегодня в эфире. Краткий экскурс в Ethereum
Ethereum можно смело называть самым амбициозным последователем Bitcoin. Тот был попыткой создать децентрализованную финансовую систему, в которой правила игры задают не государственные органы и банки, а бесстрастные алгоритмы. Ethereum идет дальше и вводит альтернативную правовую cистему, которая не нуждается в судах, юристах и принуждении.
- Сегодня в эфире. Краткий экскурс в Ethereum
- Интервью: Виталик Бутерин о себе и о создании Ethereum
- Внимание, это розыгрыш! Пишем простой смарт-контракт
- Ставим Ethereum на Raspberry Pi
- Распределенное автономное ограбление. Как хакер разорил автоматическую корпорацию DAO
Придумал Ethereum канадский программист с российскими корнями Виталик Бутерин. Когда Ethereum только появился, на дворе был 2013 год, а Бутерину исполнилось всего восемнадцать лет. Тем не мeнее его идея нашла живейший отклик в сообществе. Нашелся человек — Гэвин Вуд, который доказал возможность создания придуманной Бутериным системы и описал основные принципы ее работы в Ethereum Yellow Paper. Вместе с первыми участниками команды Ethereum они запустили краудфандинг и собрали инвестиций на 18 миллионов долларов в биткойнах — в обмен на 60 миллионов эфиров.
Чем же уникален Ethereum?
Каждая транзакция (сделка) в нем сопровождается так называемым умным контрактом — компьютерной программой, которая автоматически проверяет условия договора и выполняет прописанные в нем обязательства. Поскольку умный контракт, в отличие от обычного, исполняют не люди, а машины, его невозможно нарушить, обойти или отменить. В блокчейне «Этереума» хранятся не только состояния счетов, но и состояния программ после их выполнения в распределенной сети.
В рудиментарной форме умные контракты присутствуют и в Bitcoin, но создатель криптовалюты Сатоси Накамото намеренно ограничил их возможнoсти. Для описания условий сделок в Bitcoin встроен язык программирования под названием Script. Он напоминает Forth, но не позволяет устраивать циклы, не сохраняет состояние между вызовами и лишен доступа к данным транзакции или блокчейна. Этого хватает только на самые простые задачи.
В Ethereum контракты чаще всего описывают на полноценном объектно ориентировaнном динамическом языке, который напоминает JavaScript. Код контракта исполняется при получении сообщений от пользователя или другого контракта. Он может принимать и отправлять деньги и работать с данными в постоянном хранилище, которое прилагается к каждой транзакции. В финале скрипт возвращает вычисленный результат отправителю сообщения.
Чтобы избежать злоупотребления ресурсами — проблемы, которая вынудила Сатоси лишить Script полноты по Тьюрингу, — в Ethereum предусмотрено «горючее» (gas). Его количество у создателя транзакции ограничивает максимальное число исполняемых команд. Это не дает создавать вредоносные контракты, которые погружают машины майнеров в бесконечный цикл.
Извини, но продолжение статьи доступно только подписчикам
Подписка позволит тебе читать ВСЕ платные материалы сайта, включая эту статью, без каких-либо ограничений. Мы принимаем банковские карты, Яндекс.Деньги и оплату со счетов мобильных операторов. Подробнее о проекте
1 год3400 Р Экономия 1400 рублей! |
1 месяц400 Р |
Уже подписан?
Читайте также
- Ошибка в API Facebook предоставляла доступ к фото 6,8 млн пользователей
- Одного ноутбука оказалось достаточно для компрометации всей корпоративной сети
- Депутаты Госдумы разработали план по обеспечению работы Рунета на случай отключения от Сети
- Морские суда часто подвергаются кибератакам
- 25 декабря состоится встреча сообщества специалистов по кибербезопасности АСУ ТП / RUSCADASEC
- Уязвимость в приложении Logitech позволяла удаленно инициировать нажатие клавиш