👋
Vision Network
  • Vision Basics
    • Vision Network
    • VS and VRC
    • The GitBook editor
    • Token Issuance
    • Minting Mechanism
  • Protocol
    • Account
    • Resource Model
    • Economic model
    • Multi-Signature
    • Transaction
    • Validator
      • First Validator & Reward Mechanism
      • To be Validated Candidate
      • Proposal and Committee
  • SMART CONTRACTS
    • Introduction
    • Deployment Cost
    • DevOps Flow
    • Key considerations
    • Security considerations
    • Features
      • Protobuf
      • Function Usage
      • Contract Address
      • Different Form Ethereum
  • VIRTUAL MACHINE
    • Introduction
    • Event
    • Entropy Costs Calculation
    • VM Exception Handling
    • Features between Ethereum
  • HTTP API
  • Signature and Broadcast Steps
  • Infragrid guide
  • Vtimes chrome integration
  • Introduction
  • Getting Started
  • Group 1
    • Introduction
    • GUI and Usage
  • VISION-WEB
    • Introduction
  • VISION WALLET
    • Vtimes Chrome Plugin
    • Visionscan
    • Metamask
  • DECENTRALIZED EXCHANGES
    • Operating principle
    • Trading pairs
    • Liquidity pool
  • Others
    • Term
Powered by GitBook
On this page
  1. VIRTUAL MACHINE

Features between Ethereum

Vision virtual machine (VVM) is based on Ethereum solidity language, it also has Vision's own features.

VVM uses the concept of entropy instead of gas.

  • No concept of gasprice. VVM has a stable entropy price or floating rate from freezing VS.

  • There is no concept of block.difficulty. It is a constant 0.

  • There is no concept of block.gaslimit. It is always 0.

  • The selfbalance, chianid opcode is not supported.

  • Most instructions consume almost the same amount of EVM, memory operation instructions consume less than EVM.

  • COINBASE opcode returns a 21-byte address

  • The contract address created by the CREATE2 instruction is calculated with a prefix of 0x41, not 0xff for EVM.

  • The CREATE instruction creates a contract address calculated as keccak256(transaction root hash + nonce), where nonce is the index of the current internal transaction, starting from 0.

  • Adding VRC10 token function and related opcodes

  • Adding opcodes for bulk signature verification and multisig validation

  • Adding shielded VRC20 contracts and several librustzcash instructions

  • Internal Transaction has No data information.

  • An extra error type TransactionException is introduced, it interrupts VM execution without consuming all entropy.

PreviousVM Exception HandlingNextHTTP API

Last updated 3 years ago