Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
maxLevel2

Overview

Dynamic Oracle Approach

FIO is automatically converted to ETH to cover gas costs

...

NFT Redemption Approach

The NFT is not actually minted until there is an action on the Ethereum chain where Bob can pay the gas fee

...

Notes on FIO Domain Expiration as an ETH NFT

-BASIC NFT-

This design assumes the expiration is an attribute of the NFT

  • Attribute does not change

  • New expiration date means new NFT

  • The old expired NFT can still be traded, but it will never unwrap on the FIO chain

  • Expired NFT while wrapped on ETH cannot be redeemed for FIO DomainExpiration is not stored on the minted eth NFT

  • The oracle will enact actions on the NFT after checking the FIO chain for validity

    • if unwrapped and expired

      • Cannot be placed in escrow

      • Cannot be wrapped

    • If held in escrow and expired

      • Can be released back to the FIO owner

      • Can be renewed on FIO chain

        • Once valid, can be transferred

      • Can not be approved by new owner (when ETH gas is paid)

        • wrapping process is not completed, NFT does not yet exist on ETH chain

    • if wrapped and not expired

      • Can be released from escrow to new owner

The FIO Domain can be wrapped assuming it has not expired or about to expire.

  • Do not wrap tokens that will expire in about 2 weeks?

  • An FIO domain NFT that has been wrapped on Ethereum chain does not need to be used on the Ethereum chain, so the resolvers used in ENS are not necessary.

NFTs as tradable assets have images associated with them via a uri string

  • The image of the NFT is not pertinent to FIO domains.

  • NFTs minted for trade on OpenSea use their own servers to store the image uri

  • More universal approach will require an IPFS node

    • 1 image stored on a few trusted existing nodes should suffice

  • Is is possible to just hex encode a small bitmap and store it instead, or perhaps nothing at all ?

Image Removed

IRC-1948 - Data NFT (extension) - This is NOT universally supported

  • Trading of "expired" domain NFTs can still happen with this implemented

...

  • Can make FIO endpoint available to retrieve string from FIO state.

    • Can be configured by block producers

...

v1/chain/get_nft_image example

POST:
'{“url”:”https://fio.eosrio.io/v1/chain/get_nft_image”}'

RESPONSE:
'{“image”:”https://imgur.com/exampleimage.png”}'

IPFS Url formatting:
'{“image”:”https://{gatewayURL}/ipfs/{content ID}/{optional path to resource}”}'

Image Added