Почему Эфириум не просто еще одна криптовалюта? Попробуем на пальцах объяснить его преимущества и принцип действия.
Хотя Биткоин и Эфириум часто упоминаются вместе, на самом деле они очень разные. Их общая черта — то, что оба могут выступать как платежные средства и построены на технологии blockchain. Однако помимо роли криптовалюты (как биткоин), Ethereum имеет свойства, превращающие его в огромный децентрализованный компьютер.
Для того, чтобы понять принцип работы Эфириума, нужно понять принцип работы блокчейна.
Что такое блокчейн?
В двух словах, это распределенный реестр. Это вечно растущая база данных, заполненная определенной информацией и имеющая следующие свойства:
— Если данные заносятся в блокчейн, они не могут быть изменены или удалены. Каждая запись остается в базе навсегда.
— Нет единой организации, поддерживающей и администрирующей блокчейн. Этим занимаются тысячи пользователей, у каждого из которых хранится своя копия реестра.
Чтобы понять механизм синхронизации тысяч версий блокчейна, прибегнем к упрощенной аналогии. Представьте коллектив из 10 человек. Все они сидят за одним столом, и у каждого перед собой файловая папка и чистый лист. Каждый раз, когда кто-то совершает любую важную операцию (например, переводит деньги другому человеку), он говорит об этом всем остальным.Каждый сидящий записывает озвученные объявления на своем листе, пока лист не заполнится. Как только лист заполнен, человек кладет его в папку, предварительно решив математическую задачу. Законченное решение гарантирует, что записи на всех листах были одинаковы и не могут быть изменены. Тот, кто решил задачу первым, получает бонус в криптовалюте. На лист же ставится печать, гарантирующая, что он не будет изменен в будущем.
После того как страница занесена в папку, участники достают новые листы, и процесс продолжается.С течением времени листы (блоки), содержащие важную информацию (транзакции), добавляются в папку (цепочку), формируя базу данных (блокчейн).
Что хранится в блокчейне?
Блокчейн может использоваться для хранения любого типа данных.
В блокчейне биткоина хранятся данные о финансовых транзакциях, позволяя биткоину выполнять роль обычных валют, таких как доллары и рубли. Биткойн по замыслу ничем не отличается от доллара, чего нельзя сказать об эфире.
Эфир – это не просто валюта наподобие долларов, рублей или биткоинов.
Фактически это огромный компьютер, хотя и очень медленный – где-то в 100 раз медленнее нынешних ПК. К тому же, очень дорогой. “Компьютер Ethereum” по параметрам сравним с мобильником из девяностых; он способен лишь на очень тривиальные и нетребовательные операции.
Многим такое описание не покажется захватывающим, так почему же так много шумихи вокруг Эфириума? Именно потому что это первый децентрализованный компьютер, распределенный по всему земному шару. Разберемся в принципах работы блокчейна Ethereum.
Как же работает Эфириум?
Как и любому другому блокчейн-продукту, Эфириуму необходимо, чтобы его ПО непрерывно работало на тысячах компьютеров. На каждом компьютере (узле) сети запущена Ethereum Virtual Machine (EVM – виртуальная машина Эфириума). Фактически EVM – это операционная система, использующая специальный язык программирования и исполняющая специфические программы. Эти программы носят названия «смарт контрактов». Чтобы этот огромный компьютер выполнил какую-либо операцию, нужно заплатить, но не долларами, а криптовалютой данной системы, то есть эфиром.
И человек, и смарт-контракт являются пользователями сети Ethereum, так как и тот и другой способны выполнять одну и ту же функцию.Смарт-контракты ведут себя точно так же, как живые пользователи: они могут посылать и получать эфир.
Однако в отличие от людей, смарт-контракты могут при необходимости еще и исполнять определенные программы. Рассмотрим пример, чтобы понять, в чем заключается сила смарт-контрактов.
Сила смарт-контрактов
Представьте, что вы заключаете спор на $100 о завтрашней погоде с другом по переписке: он считает, что завтра будет солнце, а вы – что будет дождь. Проигравший должен отдать победившему $100. Как гарантировать, что проигравший сдержит слово? На ум приходят 3 способа:
1. Взаимное доверие
Проще всего было бы положиться на честность друг друга. Однако, так как вы не знаете друг друга и никогда не встречались лично, а сумма немаленькая, лучше прибегнуть к более надежному методу.
2. Подписание формального договора
Казалось бы, решение найдено: вы подписываете официальное соглашение, обязывающее проигравшего выплатить заявленную сумму победившему. Мы заверяем его и спокойно делаем свои ставки. На практике же в случае конфликта сторон вы потратите немало времени на суд и кучу денег на юристов, что сделает весь процесс слишком затянутым и дорогостоящим.
3. Помощь доверенного лица
Ну и третий вариант — мы могли бы найти "общего друга", надежного гаранта, которому вы оба доверяете. На следующий день он посмотрел бы в окно и отдал бы $200 выигравшему спор. Все легко и просто. Но только что, если гарант все-таки украдет деньги?
При рассмотрении трех возможных способов заключения сделки о споре, становится очевидно, что зачастую главным недостатком является проблема доверия между людьми, особенно если это два незнакомца, никогда ни видевших друг друга в реальной жизни.
Именно здесь вам на помощь придет смарт-контракт Ethereum. Смарт-контракт — это "общий друг", гарант сделки в лице исполняемого кода. Эфириум позволяет воспользоваться программой, которая возьмет с вас обоих по 100 долларов, а на следующий день проверит погоду и переведет 200 долларов победителю спора.
Смарт-контракт не может быть изменен или дополнен после того, как он был запрограммирован. Следовательно, можно быть уверенным в том, что он в любом сработает по заранее установленным правилам.
Однако, возникает еще один вопрос: как выполняется смарт-контракт и как он интегрирован в блокчейн?
Каким образом смарт-контракт интегрирован в блокчейн?
Каждый раз когда смарт-контракт исполнен, информация об этом записывается на лист (блок) как транзакция. На высоком уровне процесс выглядит так:Процесс записи информации о смарт-контракте как транзакции является уникальным, и именно эта функция отличает Эфириум от других платформ.
В Эфириуме встречаются три типа транзакций:
1. Перевод от человека человеку
Перевод эфира по типу "human sender - human recipient" ничем не отличается от перевода Bitcoin. В этом случае поле данных остается пустым.
2. Перевод эфира без получателя
Цель транзакции без получателя - создать в сети смарт-контракт, используя записи в поле данных. В этом случает оно содержит исполняемый код, превращающий смарт-контракт в обычного пользователя Эфириума.
3. Перевод эфира смарт-контракту от пользователя сети
Если человеку (или смарт-контракту) нужно запустить исполнение смарт-контракта, по адресу последнего нужно направить транзакцию и прописать условия его исполнения в поле данных.
Как и в любой блокчейн-сети, при выполнении одного из трех вышеупомянутых действий, все участники узнают об этом и "делают свою запись". К тому же, каждый узел выполняет код смарт-контракта для синхронизации со всей сетью.
Каждый узел исполняет код смарт-контракта, что и делает Ethereum гигантской распределенной вычислительной машиной. Впоследствии запись о каждом действии навсегда остается в блокчейне.
А что такое "газ"? О нём я что-то слышал
Как было сказано ранее, человек, использующий смарт-контракт, должен заплатить системе за операцию. Получатель этого платежа – узел, использующий свою память и электричество для выполнения смарт-контракта.
Каждое действие внутри смарт-контракта имеет свою цену. Например, определенную цену придется заплатить, если вы хотите занять какой-то объем памяти узла.
Средство оплаты всех подобных операций и есть так называемый gas, переведенный русскоязычным сообществом как «газ» (хотя оригинальное название – явная отсылка к автомобильному топливу, что станет понятно ниже).
Впоследствии газ конвертируется в эфир по определенному курсу.
Для исполнения смарт-контракта, необходимо заранее определить максимально возможное количество уплачиваемого газа. Есть два условия остановки исполнения контракта:
— Доведение его до конца и завершение алгоритма;
— Нехватка газа.
Заключение
Итак, Эфириум не просто еще одна криптовалюта. Это огромный распределенный компьютер, состоящий из тысяч согласованно работающих узлов.
Он не может похвастаться высокими скоростями, потому что малейшая операция должна быть согласована с каждым его узлом. К тому же, информация из него не стирается, что делает его больше, дороже и медленнее.
Полагаясь на централизованный сервер и доверяя ему свои данные, мы становимся уязвимыми к независящим от нас факторам – хакерским атакам, перебоям в электричестве, рискам катастроф. Децентрализованный же компьютер будет держаться «до последнего узла», в этом и есть его главное преимущество.