Overview
FIO Attestations is a new FIO Chain functionality that evolved out of and further refines Verified FIO Address and FIO Identity concepts. It enables an Attester to attach an Attestation to a FIO Crypto Handle on the FIO Chain. This document describes the required FIO Chain modifications, which will be detailed in a FIO Improvement Proposal (FIP) as well as proposed got-to-market strategy.
Attester
An Attester can be the FIO Crypto Handle owner (self attestation) or any other FIO Crypto Handle (3rd-party attestation) as long as it was previously authorized by the owner of the FIO Crypto Handle receiving the attestation (Attestee).
Attestation
Attestation can be any statement following a common standard, which would be published in a FIP akin to token/chain code standard in FIP-15. This will allow for easy expansion of types of attestations without having to modify the FIO Chain.
Example
type | Description | data |
---|---|---|
twitter_handle | Twitter handle belonging to the owner of the FIO Crypto Handle. | Twitter handle without @ sign |
email_address | Email address belonging to the owner of the FIO Crypto Handle. | Valid email address |
verified_pub_address | Public address which was verified with a signature of a corresponding private key. | JSON including:
|
avatar | Link to image representing FIO Crypto Handle avatar | URL |
Chain functionality
attest
Records attestation on FIO Chain
{ "attestee_fio_address": "bob@crypto", "attester_fio_address": "alice@crypto", "type": "twitter_handle", "data": "bob", "max_fee": 1000000000, "actor": "aftyershcu22" }
allow_attester
Records permission of FIO Crypto Handle to receive Attestations from a specific Attester.
{ "attestee_fio_address": "bob@crypto", "attester_fio_address": "alice@crypto", "max_fee": 1000000000, "actor": "aftyershcu22" }
disallow_attester
Records revocation of permission of FIO Crypto Handle to receive Attestations from a specific Attester.
{ "attestee_fio_address": "bob@crypto", "attester_fio_address": "alice@crypto", "max_fee": 1000000000, "actor": "aftyershcu22" }
get_attestations
Request
{ "fio_address": "bob@crypto", "type": "*", "limit": 1000, "offset": 0 }
Response
{ "attestations": [ { "type": "twitter_handle", "data": "bob", "attester_fio_address": "alice@crypto", "time_stamp": "2020-09-11T18:30:56" }, { "type": "email_address", "data": "bob@gmail.com", "attester_fio_address": "alice@crypto", "time_stamp": "2020-09-11T18:30:56" }, { "type": "verified_pub_address", "data": { "chain_code": "ETH", "token_code": "ETH", "pub_address": "0x9361ee0e658cc75474df019c58cfbc7d400e65b2", "nonce": "ghs66557s878a98h", "signature": "d73bd2484a758edc2af4ef1a8708899589766febd17f667414fc736ebe6dcdcd2318cc385cdbdcaf75ad275a9fe858a19a3db2cda9d3e2fcf6a170e67e32a0b01b" }, "attester_fio_address": "alice@crypto", "time_stamp": "2020-09-11T18:30:56" } ], "more": 0 }
Go-to-market strategy
cryptobadge.art
A brand new website, cryptobadge.art, will be set-up. It will allow users to mint a Crypto Badge NFT which will reflect the attestations they have attached to their FIO Crypto Handle.
High-level functionality
Register a free FIO crypto handle on cryptobadge domain.
Add attestations to their FIO Crypto Handle.
Mint an NFT, which will contain an auto generated art representing the attestations they have added.
Option to mint on Ethereum or Polygon
Gas fees will be free on Polygon and subsidized on Ethereum based on whale status
Crypto Badge NFT
The NFT will be based on:
Amount of crypto on verified public addresses or otherwise verified, e.g. Coinbase OAUTH login
Number of followers of their verified twitter handle
The age of the oldest verified public address
Example
No-coiner with no followers | >1000 BTC with lots of followers |
---|---|
Tech stack
Fork of Dashboard code
Branding
It will carry its own brand not FIO brand, but will reference FIO Crypto Handle.