TrustScore

Introduction

TrustScore aggregates the multiple on-chain social graphs acting as sources of reputation that count towards some points in building the overall TrustScore for any Ethereum Address. This score is continuously evolving. As more platforms get integrated, the weights and the score will update too.

Current Integrations and Score Weightage.

IntegrationFactors and Score
Proof of Humanity8 Points for Verification
Uniswap Sybil10 Points for Verification
BrightId37 Points for Verification
POAP1 Point for Each POAP Received
ENS10 Points for Reverse Resolution to your Address.
Idena1 Point for Verification
Gitcoin10 Points for funding a Grant.
CryptoScamDB-20 Points for being flagged
Unstoppable Domains10 Points for Reverse Resolution to your Address.
DeepDAO1 Point for Each DAO you are a member of. (Deeper Integration coming soon.)
RabbitHolePoints equal to the Levels you cross on RabbitHole.
Mirror10 Points for being a writer on Mirror
Coinvise- Tokens Created(a) : (a)^0.5 Points
- NFTs Created(b) : (b)^0.5 Points
- Total NFTs Sold(c): c Points
- Airdrops Sent(d): d Points
- Multisends(e): e Points
- Liquidity Pools Created(f): f Points
RaribleNFTs Sold, Average Sale Value
FoundationNFTs Sold, Average Sale Value
ZoraNFTs Sold, Average Sale Value
Async ArtNFTs Sold, Average Sale Value
KnownOriginNFTs Sold, Average Sale Value
SuperRareNFTs Sold, Average Sale Value
BoardroomNumber of Governance Proposals Accepted
CoordinapeNumber of teammates.

Integration

Querying TrustScore

API Request format,

https://theconvo.space/api/identity?address=<ethereum-address-or-ens>&apikey=CONVO

Example 1,

https://theconvo.space/api/identity?address=vitalik.eth&apikey=CONVO

Response,

{
"_id":"0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"_mod":1634607853663082200,
"asyncart":{
"totalAmountSold":0,
"totalCountSold":0
},
"brightId":false,
"coinvise":{
"airdropCount":0,
"multisendCount":0,
"nftsCreated":0,
"tokensCreated":0,
"totalAmountSold":0,
"totalCountSold":0,
"totalPoolCount":0,
"totalPoolTvl":0
},
"coordinape":{
"teammates":0
},
"cryptoScamDb":false,
"deepdao":{
"daos":0,
"proposals":0,
"rank":0,
"relativeScore":0,
"score":0,
"votes":0
},
"ens":"vitalik.eth",
"foundation":{
"totalAmountSold":0,
"totalCountSold":0
},
"gitcoin":{
"funder":true
},
"idena":false,
"knownorigin":{
"totalAmountSold":0,
"totalCountSold":0
},
"mirror":false,
"poap":39,
"poh":false,
"rabbitHole":0,
"rarible":{
"totalAmountSold":0,
"totalCountSold":0
},
"score":59,
"signature":"0x60532951c54d2133f9d569162f2e1a1c4c7a46806a961f941e2feb32152b9a4c3107e1d13cdae126a71280e02a268faebd2aaa7513473ca27fdbfe6ea0807d6a1c",
"signatureAddress":"0xccccA960A949eaa4d963f0cE29170AD55D4F5E49",
"success":true,
"superrare":{
"totalAmountSold":0,
"totalCountSold":0
},
"uniswapSybil":false,
"unstoppableDomains":false,
"zora":{
"totalAmountSold":0,
"totalCountSold":0
}
}

Example 2,

https://theconvo.space/api/identity?address=0xD665afb9A4019a8c482352aaa862567257Ed62CF&apikey=CONVO

Response,

{
"_id":"0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"_mod":1634607853663082200,
"asyncart":{
"totalAmountSold":0,
"totalCountSold":0
},
"brightId":false,
"coinvise":{
"airdropCount":0,
"multisendCount":0,
"nftsCreated":0,
"tokensCreated":0,
"totalAmountSold":0,
"totalCountSold":0,
"totalPoolCount":0,
"totalPoolTvl":0
},
"coordinape":{
"teammates":0
},
"cryptoScamDb":false,
"deepdao":{
"daos":0,
"proposals":0,
"rank":0,
"relativeScore":0,
"score":0,
"votes":0
},
"ens":"vitalik.eth",
"foundation":{
"totalAmountSold":0,
"totalCountSold":0
},
"gitcoin":{
"funder":true
},
"idena":false,
"knownorigin":{
"totalAmountSold":0,
"totalCountSold":0
},
"mirror":false,
"poap":39,
"poh":false,
"rabbitHole":0,
"rarible":{
"totalAmountSold":0,
"totalCountSold":0
},
"score":59,
"signature":"0x60532951c54d2133f9d569162f2e1a1c4c7a46806a961f941e2feb32152b9a4c3107e1d13cdae126a71280e02a268faebd2aaa7513473ca27fdbfe6ea0807d6a1c",
"signatureAddress":"0xccccA960A949eaa4d963f0cE29170AD55D4F5E49",
"success":true,
"superrare":{
"totalAmountSold":0,
"totalCountSold":0
},
"uniswapSybil":false,
"unstoppableDomains":false,
"zora":{
"totalAmountSold":0,
"totalCountSold":0
}
}

Verifying Response Signature

const { utils } = require('ethers');
let resp = await fetch('https://theconvo.space/api/identity?address=vitalik.eth&apikey=CONVO');
let { signature, signatureAddress, _mod, ...scoreData } = await resp.json();
let recoveredAddress = utils.verifyMessage(JSON.stringify(scoreData), signature);
console.log( recoveredAddress === signatureAddress );

Comments