NFT Digital Signature

Summary

The objective of this project is to extend FIO Protocol functionality to enable NFT artists or provenance expert to digitally sign NFTs and for NFT collectors to fetch those signature.

This would be accomplished by:

  • Allowing a FIO Address owner to map their NFT to a FIO Address, similarly to how they can map public addresses.

  • Allowing anyone to fetch NFTs associated with a FIO Address.

Signing NFTs Use Cases

Artist creates a FIO Address for every NFT

  1. Artist registers a unique FIO Domain, e.g. @artist and promotes it to its followers as the true domain of the artist. The domain is kept private, so only the artist can register FIO Addresses on it.

  2. Artist mints an NFT on any blockchain as they do today.

  3. Artist registers a FIO Address for that NFT, e.g. newnft@artist.

  4. Artist maps NFT’s chain code, contract address, and optionally token id and sha-256 hash of the work to newnft@artist on the FIO Chain.

Artist uses single address for all NFTs

  1. Artist registers a unique FIO Address, e.g. artist@nftplatform and promotes it to its followers as the true address of the artist.

  2. Artist mints an NFT on any blockchain as they do today.

  3. Artist maps NFT’s chain code, contract address, and and optionally token id and sha-256 hash of the work to artist@nftplatform on the FIO Chain.

Trusted party verifies work

The model above could also be used by a trusted party, e.g. a gallery or provenance expert, to map work it has verified.

  1. Gallery registers a unique FIO Address, e.g. verifiednfts@gallery and promotes it to its followers as the address containing verified NFTs.

  2. Gallery maps NFT’s chain code, contract address, and optionally token id and sha-256 hash of the work to verifiednfts@galery on the FIO Chain.

Verifying NFTs Use Cases

Get all signed NFTs for FIO Address or Domain

  1. NFT collector gets the FIO Address or Domain, e.g. from artist’s or gallery’s website, and queries the FIO Chain for associated NFTs.

  2. FIO Chain returns FIO Address, chain code, contract address, and and optionally token id and sha-256 hash of the works.

Get all signatures for given NFT

  1. NFT collector gets NFT identifying data such as chain code, contract address, token id or hash, e.g. from an NFT marketplace, and queries the FIO Chain for associated signatures. Any available information can be passed. For example if the NFT collector only has a hash of the image associated with the NFT they can pass only that info.

  2. FIO Chain returns FIO Addresses which mapped the NFT to their FIO Address along with chain code, contract address, and optionally token id and sha-256 hash of the works.

  3. NFT collector trusts only FIO Addresses they know, e.g. addresses on artist website or gallery or provenance expert, and can also compare the hash returned to hash of the work. In the future Verified FIO Addresses concept may be used to identified trusted FIO Addresses.

Integrations

FIO Website

Foundation for Interwallet Operability will build tools into its upcoming dApp (aka Dashboard) to enable:

  • Signing of NFTs as defined above.

  • Verifying NFTs as defined above.

NFT marketplaces

NFT marketplaces can:

  • Enable artists using its platform to:

    • Register FIO Domains and Addresses.

    • Sign their NFTs by mapping them to their FIO Addresses.

  • Rely on FIO Protocol to:

    • Check NFTs being listed for any other trusted signatures to confirm provenance.

  • Act as a provenance expert by:

    • Mapping any verified NFTs to their own FIO Address.

  • Integrate:

Sample UX

https://xd.adobe.com/view/4ed48848-8442-411d-bbd8-ac8c189b7183-1b87/?fullscreen

Proposed Modification to FIO Chain

See FIP-27: https://github.com/fioprotocol/fips/blob/master/fip-0027.md