Community Membership verification

Recently there were discussions about introducing a new verification to BrightID which is more secure and decentralized compared to current verification which is achieved by only joining calls.

One of the possible approaches is verifying the membership of a known community. There are some communities (like 1hive, figment, and …) that have seed groups in BrightID. These communities should be able to verify their own members.

If we would be able to continuously detect and add new communities, many users can be verified by the communities to which they already belong, and this can help to make verifications more decentralized.

It seems we should divide current seed-connected verification into 2 distinct verifications.

  1. “StarConnected” or “CallJoined” which can be achieved by joining BrightID connection parties and making connections with the stars.

  2. “CommunityMembership” which can be achieved by having enough already known connections with the community members in a way that someone can be considered as a community member.

To be able to have these 2 kinds of verifications, current seeds should be divided into 2 distinct types (there may be more types in the future):

  1. Stars: These seeds should have an independent quota and can grant StarConnected (or CallJoind) verification in our regular connection parties. Such a seedness should be granted to users instead of groups. In this context, the quota is a limitation for the stars that SeedDAO grants based on the frequency and the crowdedness of the calls that stars manage.

  2. Community seeds: These seedness and corresponding quota should be granted to a group like before. In this context, the quota is in fact the initial estimate of SeedDAO about the size of the community.

“StarConnected” verification can be achieved by making connections with stars just like before, but what about “CommunityMembership”? Who is a member of a community?

Sample algorithm
A person is a member of a community if he/she is known by a significant number of the community members. To get this verification users should have at least one “Already known” or stronger level inbound connection from the community seeds. After that, these users will rank based on the number of “already known” or stronger inbound connections from users that passed the first condition.

It seems to be very helpful if the seed group members of the community play exactly the same role as SeedDAO members in monitoring the process of verifying users and consuming the quota by each other at a lower level. To achieve such a goal, we should provide the required tools to make the process transparent and controllable for all members. It would be better if the community quota is divided between the seeds equally and then if one needs more quota, she/he can ask his/her other existing community seeds for more quota actively instead of just monitoring passively. So the above rule will update to:
To get this verification users should

  1. Have at least one “Already known” or stronger level inbound connection from the community seeds which have a quota.
  2. Then will rank based on the number of “already known” or stronger inbound connections from users that passed the first condition.
4 Likes