Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Scopelift

View file
nameFIO-Addresses-On-Ethereum-Proposal_ScopeLift.pdf

...

LiquidApps

...

...

Chainlink

...

Band Protocol

...

Tasks

Components

  • Getting data

    • Hyperion

    • Geth

  • Consensus

    • TBD: 7 oracles?

    • TBD: on chain?

    • TBD: p2p component?

  • Transactions

    • Dependency on interface definition from FIO/Ethereum contracts

    • TBD: What is a valid transaction?

  • Governance?

  • Signing?

Data Flow Diagram

(Not all functionality here will be in MVP.)

...

Research

  • etc.

Third-party applications

...

Technology

...

Overview

...

Notes

...

See Other Options Considered section on wiki page

Overview

  • Oracles will:

    • On the FIO Chain

      • Monitor specific account by inspecting every block and looking for wraptokens action

      • MINT WFIO ERC-20 token to the designated account

    • On the Ethereum Chain

      • Monitor Ethereum smart contract for inbound transfers of ERC-20 WFIO

      • Burn the inbound WFIO

      • Transfer FIO to the designated account

  • Oracle code will be run by designated FIO Chain BPs with access to:

    • FIO Chain: BPs already run FIO nodes.

    • Ethereum Chain: local Ethereum node is preferred, but Infura or Etherscan can also be used.

Wrap

See the following page for an overview of the Wrap use case: Wrap

  • Once Oracles detect that a user on FIO Chain wants to wrap FIO Tokens, they will submit their observation to this Ethereum smart contract.

  • Once all Oracles have submitted their observation, the wrapped FIO Tokens will be minted and transferred to designated Ethereum public address.

Unwrap

See the following page for an overview of the Unwrap use case: Unwrap

  • Once Oracles detect that a user on wants to unwrap WFIO Tokens, they will submit their observation to this FIO smart contract.

  • Once all Oracles have submitted their observation, the wrapped FIO Tokens will be transferred to the designated FIO Address

Possible exceptions

  • FIO Chain

    • Chain passed to wrapdomain or wraptokens actions is not Ethereum (this restriction is not enforced on the FIO Chain level to allow for wrapping chain expansion without deployment of code)

      • Oracles can trigger unwrapdomain or unwraptokens actions to originating address

    • Public address passed to wrapdomain or wraptokens actions is not a valid Ethereum address (this restriction is not enforced on the FIO Chain level to allow for wrapping chain expansion without deployment of code)

      • Oracles can trigger unwrapdomain or unwraptokens actions to originating address

  • Ethereum Chain

    • FIO Address passed in with ERC-20 is not valid or does not exist

      • Oracles can trigger a refund deducting amount to cover gas

    • FIO Address passed in with ERC-721 is not valid or does not exist

      • Oracle can at their discretion trigger a refund or manually resolve the issue with sender

Oracle Components

...