Виртуальная машина (EVM)

Физический экземпляр EVM не может быть описан так, как можно указывать на облако или океанскую волну;Это реальная сущность, которая существует и поддерживается тысячами компьютеров, использующих клиенты Ethernet вместе.

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

От бухгалтерской машины до государственной машины

Аналогия «распределенной книги» часто используется для описания такого блокчейна, как Биткойн, который использует основные инструменты криптографии для реализации децентрализованной валюты.Криптовалюты ведут себя как «нормальные» валюты, потому что существуют правила, которые регулируют то, что люди могут и не могут сделать, чтобы изменить бухгалтерскую книгу.Например, адрес биткойна не может тратить больше биткойнов, чем он ранее получил.Эти правила являются основой для всех транзакций на биткойнах и многих других блокчейнах.

В то время как Polysmartchain обладает собственной собственной криптовалютой (PSCeth), которая следует почти точно таким же интуитивно понятным правилам, она также поддерживает более мощную функцию: интеллектуальные контракты.Для этой более сложной функциональности требуется более сложная аналогия.PolySmartChain не является распределенной книгой, а распределенным состоянием.произвольный машинный код.Конкретные правила изменения состояния в блоке определены EVM.

Функция Polysmatchain Государственная переходная функция

EVM ведет себя как математическая функция: для данного ввода он дает детерминированный выход.Поэтому очень полезно описывать эфир более формально как функцию перехода состояния:

    Y(S, T)= S'

Учитывая старые действительные состояния (ы)> и новый набор действительных транзакций (T), функция y (S, t) состояния Ether-State (T) дает новое допустимое выходное положение S '

Статус

В контексте Polysmartchain это состояние представляет собой огромную структуру данных, называемую скорректированной Merkle Patricia Trie, которая позволяет связывать все учетные записи HASH и может быть отслежена до одного корневого хэша, хранящегося на блокчейне.

Сделка

Транзакция - это криптографически подписанная инструкция из учетной записи.Существует два типа транзакций: один - это транзакция по вызову сообщения, а другой - контракт создать транзакцию.

Контракт создает транзакцию создает новый контрактный счет, который содержит скомпилированный умного контракта Bytecode.Всякий раз, когда другой счет делает сообщение об этом договоре к этому договору, он выполняет свой байт-код.

EVM Объяснение

EVM работает как машина стека с глубиной стека 1024 элемента.Каждый элемент представляет собой 256-битное слово, и для простоты использования выбирается 256-битная криптография (такая как хеширование Keccak-256 или подписание SECP256K1).

Во время выполнения EVM поддерживает переходную память (как массив адресуемых слов байтов), который не сохраняется между транзакциями.

Тем не менее, контракт содержит Trie Merkle Patricia Storage Trie (как множество слов, подлежащих обращению), которые связаны с учетной записью и частью глобального государства.

Скомпилированный Smart Contrage Bytecode выполняется как можно больше EVM Opcodes, которые выполняют стандартные операции стека, такие как Xor 、 и 、 Add 、 subetc.EVM также реализует некоторые операции с конкретными блоками, такие как адрес 、 Баланс 、 Blockhash и т. Д.

EVM реализация

Все реализации EVM следуют спецификациям, описанным в желтой книге Ethernet, благодаря взносу, сделанному Ethernet.

Last updated