ID

ID


Abstract

ID-project aims to provide decentralized unique IDs by relying on individuals and their social relations and providing them with native ID-coins as incentives for their contributions to securing the network against sybil attacks.


Introduction

Our first and most important gift after our parents’ kiss is our IDs that are issued by the government. We use our IDs in important occasions like voting, getting insurance, and going to school. The lack of decentralized unique IDs in early initiatives using the blockchain technology made the founders seek other tools for reaching consensus for verifying blocks. This gap was initially filled with processing power and theconsensus based on them, with the assumption that every individual owns almost the same amount of processor units. This evidently shows that IDs for humanity are more significant than money. The functions of IDs are not limited to financial matters though, they are also essential parts of other social phenomenons such as governance, elections, etc.


The ID project does not rely on complex algorithms to determine sybils (fake accounts), instead, it invests on recruiting honest nodes (real individuals), because, even typical sybil-detection algorithms can have satisfactory results if they have enough honest nodes.


In decentralized environments, however, IDs should be able to let go of traditional and centralized methods like creating accounts on google, facebook etc. Registering fingerprints or iris scans do not work either. So many projects are trying to implement these traditional methods into their smart contracts and blockchain systems, yet, there is a great potential in social relations which allows us depend less on the tools borrowed from the centralized era in assigning unique IDs.


Trust score

Uniqueness for all individuals in ID is measured by an index called trust score which shows their social relations. Users gain higher trust scores when other users vouch for them. Vouching implies the vouchers certainty of uniqueness of the users they vouch for. Users with higher trust scores improve other users trust scores more when they vouch for them. So trust scores are fluid numbers which may vary every time algorithms calculate them.


Initial seeds

At the point of initiation, a certain number of users with enough trust scores are needed to activate the network, because, users can not vouch for others if their own trust scores are zero. The anti sybil attack algorithms also need honest nodes to function. Therefore, by relying on the potentials we see in prominent social networks such as twitter, facebook, etc. a number of users will initially be elected based on the number of their followers and the amount of their influence. These users will be the only ones receiving a relatively fixed amount of trust score without others vouching for them. They can then flourish trust rapidly all through the network and prepare it to work out in a decentralized manner. These initial seeds need to be selected from all regions worldwide so that all users throughout the world have the same chance of getting trust scores.


Activity score

In order to defend double-spending attacks in Bitcoin, Satoshi designed and awarded incentives to those who contributed in preventing them. Similarly, in ID where we work on decentralized unique IDs, incentives need to be designed and awarded to those who help securing the network against sybil attacks. Prevention of sybil attacks has always been sought through improvement of complicated algorithms that function only with high numbers of trusted nodes and their connections.

Subsequently, there should be incentives for trusted nodes that flourish trust in the network by vouching others. The ID founders recognize this essential requirement for incentives and aim to create and distribute its native tokens called ID-Coins to those who prevent sybil attacks to ID, and, pave the path towards creating a decentralized unique ID network in the world of blockchain.

The incentives in ID should be paid to users according to their activity in making connections or vouching for others. Trust scores can not represent activity, because, they result from connections made by others or receiving vouches. Vouching increases trust score for the vouchees. However, activity is not receiving a vouch, it is rather vouching for others.

Therefore, unlike trust score which increases when users receive a vouch, activity score increases when users actively vouch for others. In other words, trust scores represent uniqueness of IDs, while their activity scores are representations of their active contribution to expanding the network and securing it against sybil attacks. These activity scores deserve receiving incentives indefinitely. Subsequently, trust scores have a limited range of zero to a full hundred percent, while, activity score do not.

Moreover, different vouches receive altered amounts of activity scores. Vouchers gain more activity scores if they vouch for individuals earlier than others. So they are incentivised to vouch as soon as possible and recruiting new members to network. Vouches for fake IDs result in fines and exponential loss of activity score.

Incentives And Responsibilities

ID users gain incentives called ID-coins for securing the network by acting as a trust spring that flourishes trust in the environment.

In order to join the ID network and gain ID-coins, users have to provide a certain amount of collateral along with their headshot photo hash to the smart contract that creates awards. These two requirements are utilized when and if users are reported as sybil by others. Reported users provide the actual picture behind their registered hash and a structured video to a limited number of users who are randomly selected and highly trusted, to have their IDs verified. Collaterals on the other hand, secure the network by being used as a fine for dishonest activities and also as an incentive for others who actively search for them.

In order to report a user, one has to make a certain amount of deposit in the smart contract to support his claim. If the reported user turns out to be sybil, his whole collateral plus a part of the collateral owned by his vouchees are transferred to the reporter. Vice versa, If the report turns out to be false and the user proves to be honest, the reporter’s deposit is transferred to the user.

This report mechanism makes it costly enough for casual users to report others inattentively. Gaining the collateral of sybil accounts, on the other hand is encouraging enough even for large companies to design and implement highly sophisticated algorithms to find out and report fake IDs.

Unlike the open source algorithm that calculates trust scores, new algorithms that are developed by these companies are neither public, nor open source. Consequently, sybil nodes that usually review the public algorithm and figure ways to get around them, have no access to these sophisticated algorithms. This process provides the network with a security on a higher level.

Blockchain

An open source algorithm runs periodically to observe all connections made and calculate activity scores for all users. The algorithm tends to be too heavy and expensive to be run on blockchain since it processes all data regarding users, their connections, and their scores. Therefore, it is inevitable to have the algorithm run off-chain and then register the results on the blockchain. It is worth mentioning that all willing users are welcome to run the open source algorithm. A lot of companies and individuals are also probable to find it beneficial for themselves to run algorithms and announce sound and trustworthy activity score data for casual users.


Users are required to register their data on the blockchain themselves. This way, the heavy expenditures of saving data will be scattered over all users. Moreover, lack of a central entity who is responsible to gather and register the data will improve the decentralized nature of the project.


In order to prevent false data, users are encouraged to review the data input from all members and win their collateral in case they find any false data entry. These reports are valid if and only if a consensus of users verifies them. This mechanism makes sure that all registered data is sound. The time for saving data and reporting other users’ false data input is strictly limited. Consequently, in order to be eligible for receiving  tokens, users have to successfully register their activity score, and resolve all claims that might be reported against them in time. ID-coins are then awarded to all members according to their activity scores.


It seems to be beneficial if a team of delegates are designated and voted in by users to run the algorithms, announce and verify the results, and resolve the reports, the process will be simpler and more fluent.


The Verification process

Every time a user is reported to be fake, his public key and a random number is sent to a randomly selected willing users as jury. The reported user has to reveal to the jury the photo behind his photo hash and a short video scene depicting him as showing the random number. If all the information adds up, the report is proved wrong.


Every time two IDs are reported to be duplicate, both users need to attend a brief video conference, if the randomly selected jury of willing users with high trust scores are convinced that the people behind those IDs are two separate individuals and match their photo hash, the report is proved wrong.


Jury members are incentivised with a fixed amount of reporters’ deposits. The minority of jury members who misjudge reports in their vote for consensus will suffer consequences. Reported users will receive a part of the reporters deposit or collateral in case reports against them are proved wrong. Users can make a handsome amount of deposit if they want to make objections to jury decisions. Their report will then be reviewed by a larger number of users as a new jury.


Other reports concern registering false activity scores. If a user’s activity score is reported as false by a number of users, and true by some others, the winning consensus will be incentivized by a percent of the tokens created each time. There are time limits for saving activity scores and for reporting false ones. Users who are proven to have added false activity scores will lose their eligibility for receiving coins in that turn and their collateral will be awarded to the reporters.


FAQ

What if a user runs out collateral?

In case users’ collateral falls below the minimum amount, they are no longer eligible for receiving coins, and their IDs will be deactivated, yet they are still able to reactivate their IDs by providing the required collateral. The activity score, however, is not affected by collateral.


What reduces collateral?

Reports that claim a user is either fake or duplicate, or has registered false activity score on the smart contract will put collateral at jeopardy. Unless the user provides essential evidence to prove the reports wrong, collateral will be at stake. Furthermore, vouching for fake IDs results in losing a part of the collateral for the voucher.


How does vouching take place?

Every vouch is executed by users as a transaction. Transactions gas expenditures can be reduced if users buffer their vouches and then submit them all in one transaction so that they do not have to pay gas for every single vouch.




Report Page