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.
Add attestations to their FIO Crypto Handle.
Mint an NFT, which will contain an auto generated art representing the attestations they have added.
Crypto Badge NFT
The basis for the NFT will be the amount of crypto held in the verified public addresses