Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Current »

Todo

  • Need to create a dapp to interact with erc20 contract. Currently using: https://oneclickdapp.com/matrix-second

    • The complexity of this depends on how we structure the ERC20 contract. If we update the contract with all of the fields needed (e.g., passing in a FIO Address to approve) we may be able to use a simple contract explorer.

  • Decide on how to pass in FIO Address (see below)

Use case

Unwrap FIO Token:

  1. Alice (dApp) executes ERC20 unwrap sending in a hashed FIO Address

  2. ERC20 calls burn from Alice’s account

  3. Oracle monitors unwrap

  4. Oracle calls fio.oracle unwraptokens which transfers FIO to Alice

    1. TBD: Oracle passes in FIO Address or FIO Pub Key?

Diagram link: https://app.diagrams.net/#G1ETfA3K6VTa-rhqcH7gJmRsFUIiGS2kDn

Discussion

Passing FIO Address into approve

  • Discussed using (hashed) FIO Address versus FIO Public Key.

    • A hashed address will generally be smaller and is a known fixed size.

    • To use a FIO Pub Key we would need to convert the pub key to a raw ecc pubkey so we can fit it in 32 bytes, otherwise it's 56 -> padded to 64 and we end up adding even more gas

    • The “standard” in FIO is to use FIO Pub Key

    • The oracle does a validation check on the FIO Address

    • Decision: We will pass in a (hashed) FIO Address to the ERC20 contract

    • TBD: Does the oracle pass a FIO pub key into unwrap tokens?

  • How to pass in FIO Address

  • No labels