Распределенный конечный автомат
Эфириум пытается сделать что-то большее. Это не просто распределенный реестр, а нечто гораздо более сложное. Основной веб-сайт Ethereum описывает его как «распределенный конечный автомат». Ethereum хранит не только данные об учетных записях или балансах, но и все состояние машины.
Его состояние машины меняется с каждым блоком, поскольку машина переходит с каждым набором программ, которые она запускает, в соответствии с определенными фиксированными правилами. Что определяет эти конкретные изменения состояния на основе правил? Это виртуальная машина Ethereum.
Протокол Ethereum также использует смарт-контракты, которые представляют собой закодированные инструкции, взаимодействующие с виртуальной машиной Ethereum или EVM. Эти смарт-контракты представляют собой программы, которые охватывают множество различных аспектов человеческого соглашения или, по крайней мере, имитируют их. Благодаря этому вы можете понять, почему базовый дизайн Эфириума должен быть намного сложнее, чем Биткойн.
В то время как Ethereum адаптирует сложную структуру, его язык программирования, ориентированный на разработчиков, этого не делает. Чтобы привлечь больше участников в экосистему, команда основателей решила использовать более удобный язык программирования, который было относительно легко выучить. Solidity, язык, на котором написаны смарт-контракты Ethereum и децентрализованные приложения, был разработан относительно простым. Он имитирует модели человеческого общения. Он пытается быть более выразительным и удобным для пользователя в своем синтаксисе. Таким образом, у вас есть этот удобный для пользователя язык высокого уровня, который говорит машине, что делать.