Виртуальная машина Ethereum [EVM]
Биткойн - это как базовая версия того, что может сделать блокчейн. У вас есть единица стоимости, Биткойн, и вы можете отправлять и получать BTC этой стоимости себе и другим пользователям.
Спустя время появился Ethereum и позволил людям создавать умные контракты и Dapps, используя технологию блокчейна.
Как только Ethereum позволил создавать умные контракты, следующим шагом было создание среды, в которой все эти умные контракты живут и взаимодействуют друг с другом. Вот где вступает в игру Виртуальная машина Эфира (EVM).
EVM лучше всего рассматривать как виртуальный компьютер в блокчейне, который превращает ваши идеи в код и запускает его в глобальной сети Ethereum.
Для чего нужен EVM?
Допустим, вы хотите создать способ для себя и своих друзей, живущих с вами в одной квартире покупать вещи для дома, в котором вы живете. По сути, вы создаете свой собственный умный контракт.
Есть ряд вещей, которые вы хотите, чтобы ваш умный контракт охватывал.
- Вы и ваши друзья должны создавать индивидуальные учетные записи.
- Все вы все согласны снимать часть этих денег с ваших индивидуальных счетов и ежемесячно вносить их на текущий счет.
- «Вы все согласны с тем, что никто не может снять деньги с этого счета, если все не согласятся.
- Все эти деньги могут быть сняты с этого счета только в том случае, если все из вас предоставят цифровую подпись.
Теперь все работает, но допустим, что вы хотите выделять определенное количество денег каждую неделю на покупку вещей для дома. Вы создаете отдельный умный контракт, который гласит:
- Тратим только 10$ в неделю на товары для дома.
- Покупаем только товары для дома в этом магазине.
- Убедитесь, что товары из этого магазина доставлены по этому адресу.
Тогда, к примеру, вы хотите купить телевизор, но некоторые из друзей хотят только внести определенную сумму денег на него. Здесь приходит еще один контракт. Этот контракт гласит:
- Человек А хочет потратить только 20 долларов
- Человек B готов потратить 40 долларов
- Человек С может потратить только 10 долларов
- Пользователь D может компенсировать разницу и приобрести телевизор, если выполнены вышеуказанные условия.
Можете ли вы увидеть, как все эти контракты зависят от созданных до этих контрактов? Это и есть виртуальная машина Ethereum. Среда, в которой все эти контракты живут, взаимодействуют и влияют друг на друга.
Это как служба обмена сообщениями для умных контрактов.
Преимущество EVM
Помимо того, что вы можете избежать подводных камней, от своих друзей, EVM может еще многое сделать:
- Вы можете создавать договоры, которые требуют выполнения нескольких условий: например, договоры страхования.
- Вы можете разрешить различным людям указывать свои собственные мини-контракты в более крупных контрактах. Представьте себе строителя, нанимающего подрядчиков для строительства дома. Он может заключить мини-контракты между своими сантехниками, штукатурами и электриками, которые платят каждому человеку только при соблюдении определенных условий.
- Вы можете создавать контракты, которые могут автоматически покупать или продавать вещи: скажем, вы работаете в сфере кондиционирования воздуха. Вы хотите покупать кондиционеры только тогда, когда температура поднимается выше определенной точки. Вы можете создать умный контракт, который может учитывать погоду и автоматически покупать нужную Вам вещь, когда это необходимо.
Язык виртуальной машины
Как и веб-сайт, на котором вы читаете эту статью, EVM построен на языке программирования.
Известные из них, которые уже существуют, это такие языки, как: Java, Python и Ruby.
У EVM есть свой, язык программирования, под называнием Solidity. Это язык, который позволяет людям создавать умные контракты, которые могут легко взаимодействовать с другими умными контрактами.