Ethereum смарт-контракты: Море и свинки

Ethereum смарт-контракты: Море и свинки

Среди современных криптовалют не так много тех, кто привнес реальные инновации. Но Ethereum, несомненно, входит в их число.

Появление на рынке криптовалют Ethereum сопровождалось немалой помпой, перечислялись достоинства новой системы, и среди них первое место занимали смарт-контракты. 

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

В чем же разница? 

Для начала - как мы ожидаем от технологии, называемой смарт-контракт (“умный договор”), как минимум, что это  - договор (контракт же), то есть нечто, что имеет юридическую силу. С "умным" - чуть сложнее, но тоже логично предположить, что это, как минимум, технология, при которой сам договор является не просто записью, а имеет какие-то интеллектуальные функции. Как пример приводится ситуация, когда выполнение условий, описанных в самрт-контракте автоматически вызывает перевод денег. 

На практике, по крайней мере в контексте Ethereum, все не совсем так. А если точнее - то это совсем не так. 

Во первых, сразу расстанемся со словом “контракт” - очевидно что смарт-контракты Ethereum не имеют и не могут иметь никакой юридической силы. И не только потому, что ни один нотариус или суд не признает их. А по самой своей природе.

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

Однако то, что в Ethereum принято называть контрактом - это не договор между субъектами. А некий набор программного кода. Если присмотреться к Ethereum, особенно к тому, как позиционируют его сами разработчики - это не криптовалюта в чистом виде. Сами разработчики  называют Ethereum “Распределенной виртуальной машиной на основе технологии блокчейн”. Даже определение Ethereum в википедии звучит так:

платформа для создания децентрализованных онлайн-сервисов на базе блокчейна (Đapps, Decentralized applications, децентрализованных приложений), работающих на базе умных контрактов.

Найдите тут слово “криптовалюта”. Так вот эти Đapps и называют чаще всего смарт-контрактами. В интернете часто возникает путаница и недопонимание, в чем между этими понятиями разница, однако для простоты я не буду вдаваться в дебри функционирования EVM (Ethereum Virtual Machine).

Cмарт-контрактом называют именно приложение для Ethereum - Đapps. Это небольшие программы, которые записываются разработчиками в blockchain в виде так называемого байт-кода. Самым распространенным языком програмирования, заточенным специально под Ethereum, является Solidity - развитие широко распространенного JavaScript с рядом серьезных ограничений и особенностей синтакса. 

Для того, чтобы ограничить нагрузку и не позволить недобросовестным разработчикам использовать слишком много ресурсов сети, выполнение смарт-контракта требует использование газа (gas) - своеобразной внутренней валюты. Ниже я привел типичный пример смарт-контакта.


А почему все же “Море и свинки?”. Потому что морская свинка не имеет отношения ни к морю ни к свиньям...


contract Mortal {
    address owner;
    function Mortal() { owner = msg.sender; }
    function kill() { if (msg.sender == owner) selfdestruct(owner); }
}

contract Greeter is Mortal {
    string greeting;
    function Greeter(string _greeting) public {
        greeting = _greeting;
    }
    function greet() constant returns (string) {
        return greeting;
    }
}

Читайте также

29502021-02-09

Обзор игрового мира Sandbox на основе блокчейна

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

Обучение
33042018-10-21

Сколько можно заработать на трейдинге начинающему инвестору. Часть 30. Трейдинг (продолжение)

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

Трейдинг, Обучение

Последние статьи из раздела Обучение

Свежее видео на канале

Выбор редакции

644542020-10-30

Топ 10 крипто кошельков в 2020 году

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

Кошельки
567602017-12-10

Bitcoin: пирамида или нет?

С января 2009 года, когда был сгенерирован первый генезиз-блок bitcoin-сети, прошло уже девять лет, но до сих пор всякого рода "эксперты" ломают копья в спорах: являются ли криптовалюты финансовой пирамидой или нет. Быстрый рост доходности bitcoin и прибыли тех, кто раньше стал участником этой системы, пугает схожестью с пирамидами 90-х.

Bitcoin
535312018-04-28

on-chain и off-chain управление: за и против

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

Blockchain
417402021-05-08

Какие альткоины принесут своим держателям доход в 2021 году?

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

Альткоины
380492018-05-12

Эволюция человека и денег

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

Это интересно
169612024-02-03

Сканер блоков (Blockchain explorer) своими руками: Зачем он нужен?

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

Обучение, Bitcoin, Ethereum, Технологии