Gridcoin's mandatory team requirement: Should it stay or should it go?

in gridcoin •  3 years ago  (edited)



Should we remove the mandatory team requirement? Have your say!
Original topic

Brief Intro

If you've never heard of Gridcoin, it's a cryptocurrency that securely rewards BOINC computation (31 supported projects such as attempting to solve Cancer/AIDS/Ebola/Malaria, mapping the milkyway, folding proteins, cracking enigma codes, etc) on top of Proof of Stake. BOINC statistics are gathered directly from the project servers & all nodes agree on a daily superblock containing verified team statistics. More info on Gridcoin.

The area of discussion that this topic will focus on is the mandatory team 'Gridcoin' requirement that has been enforced within the Gridcoin network since launch back in late 2013. Currently only team Gridcoin earns GRC, none of the other long established teams (the majority of the BOINC community) receive GRC nor are involved in the Gridcoin community.

My personal opinion is that we should remove the mandatory team requirement, however, I will try to cover the opposing argument's points (so as to not be entirely biased). Original thread.


Why was the requirement initially enforced?

1. It was an attempt to increase security

The mandatory team requirement was justified by two security concerns:

  • Users cheating the BOINC credit system
  • Preventing unauthorised BOINC reward claims.

How are BOINC users able to cheat the current BOINC credit system?

The current 3rd generation BOINC credit mechanism is not perfect, it has publicly documented issues regarding cheating.

  • PFC manipulation - By manipulating elapsed time or device attributes, users can manipulate their Peak Flop Count; By doing so, cheaters can inflate their BOINC RAC higher than it should be.
  • Cherry Picking - Discarding large work units in favour of smaller work units in order to increase RAC to the potential detriment of the BOINC project.
  • Wingman attack - Users who have submitted work units with an manipulated PFC value utilise secondary BOINC accounts/machines to search for the identical validation work unit and submit the work unit with a similarly manipulated PFC value to validate their fraudulently acquired high RAC.

How do we currently combat cheating?

Each BOINC project's team 'Gridcoin' has a 'team founder' administrator user account capable of kicking cheaters from the team. We rely on Gridcoin community members to report suspected cheaters to team founders.

Who are team Gridcoin's team founders?

I am the team founder for 4 projects, Rob Halford (Lead developer) is the team founder for the majority of projects, SETI/WCG and CSGrid have inactive team founders.

Does the team requirement prevent unauthorised neural network registration?

The team requirement does not prevent unauthorised neural network registrations; The only way that an individual can register on the neural network without your full user account credentials is if you provide them with your weak account key.

The weak account key can only be generated when fully logged into your BOINC account, if you've previously shared this key then it can be changed by simply changing your password.

Approximately 5400 inactive users and (2141-1777) 364 active users within team Gridcoin are currently not registered in the neural network despite meeting the mandatory team 'Gridcoin' requirement.

2. To prevent BOINC users from "Double-dipping"

During the early days of Gridcoin's existence (before the introduction of the team requirement), Ripple was distributing Ripple to BOINC users within their Ripple Labs team.

We found that several users crunching for the Ripple Labs team were also claiming Gridcoin rewards. This discovery was negatively perceived as "Double-dipping" (getting rewarded twice for their work done), and was leading motivation for the introduction of the mandatory team 'Gridcoin' requirement to prevent this occurring again in the future.

3. To promote Gridcoin on BOINC statistics websites

Since the introduction of the mandatory team requirement, we have seen team Gridcoin climb to the #1 leaderboard position based on RAC.

This is free advertising for team Gridcoin across all BOINC statistics websites and potentially encourages other teams to contribute more towards BOINC in order to reclaim the #1 position for themselves.

When asked how much computation has been completed and rewarded by the Gridcoin network, we can point them towards these BOINC statistics websites.

4. Afterthought: Limiting required blockchain/Neural-Network scalability

By limiting reward distribution to one team we have not had to consider scaling the neural network/block sizes - We currently have approx 1777 users on the neural network, if there was no team requirement and we had 10's of thousands of users we may run into scalability limits.


Negative consequences of the mandatory team 'Gridcoin' requirement

How we handle cheaters is flawed

  • Team founders kicking suspected cheaters is a slow reactive action rather than a permanent/long-term preventative solution. To date, I don't believe that a single user has been kicked from any whitelisted project's team Gridcoin.
  • Identifying cheaters is notoriously difficult in the first place:
    • Users can hide their hosts details (preventing identification of PFC manipulation).
    • Cheaters could be spreading their fraudulent BOINC computation efforts across multiple CPIDs to evade detection (one large RAC CPID is more noticable than 10 medium RAC CPIDs - we'd likely never spot such fraudulent activity)
    • Users kicked from our team can either immediately rejoin the team (there's no ban system) or create a new CPID to evade detection.
    • Several of the team founders aren't active enough to continuously monitor/detect/punish cheaters.

Team founders hold significant centralised power over Gridcoin's reward mechanism

Each BOINC project's team 'Gridcoin' team founder user account holds significant centralised power over Gridcoin's reward mechanism. By being able to kick users from the team, you can manipulate the DPOR reward mechanism for that individual project.

Power corrupts ultimately - imagine if bitcoin core community members had the ability to turn off XT/Classic/Unlimited user’s mining operations at will; it’d be chaos.

Even if we trust individuals with team founder privileges, these accounts could be compromised and used maliciously without the account owner’s knowledge/consent.

Any team member can attempt to seize control of these team founder privileges; if the team founder does not take action within 60 days the powers change hands and cannot be reversed without intervention from the BOINC project administrators.

The team requirement damages our network's reputation & impedes growth

  • Advertising/discussing Gridcoin is viewed as ‘team poaching’ and is met with hostility on the majority of BOINC sites/forums/communities.
    • Due to effectively being forbidden from discussing Gridcoin on many BOINC websites, we are limited to discussing gridcoin on team-neutral or dedicated Gridcoin websites (away from our target audience) limiting potential word-of-mouth marketing within the BOINC community.
    • We are repeatedly met with hostility on team-neutral forums, interrupting important BOINC development topics - potentially impeding both BOINC and Gridcoin's advancements.
  • Since the BOINC platform has existed since 2002, many long-term BOINC users have built-up significant loyalty to their teams; These users are our target user base yet they are entirely out of reach.
    • Instead of viewing Gridcoin as a benefit to BOINC, many long-term users in other teams view Gridcoin as a hostile entity to oppose instead of support. We may be missing out on significant investor support from BOINC users due to this negative perception of Gridcoin.
    • Boincstats advertisement effectiveness has begun to degrade, potentially due to the mandatory team requirement.
  • Because BOINC services & BOINC projects tend to attempt to remain team neutral, the rate of Gridcoin endorsements/partnerships in the BOINC community is low. In fact, only 4 projects are known to have ties with the Gridcoin community (YOYO/YAFU/Denis/GRCF).

Justification for removing the mandatory team 'Gridcoin' requirement

Removal of the requirement will accelerate growth

  • There are approximately 4 million total BOINC users, and 424.5k active BOINC users yet we only have 1777 users (0.42% of active BOINC users) in the Neural Network to which we distribute 48k GRC to on a daily basis. If we managed to recruit a few percent of all active BOINC users then newly gridcoin would become far more scarce due to a greater distribution scope. Likewise, with potentially tens of thousands of new users joining a proof of stake cryptocurrency we may see an increase in demand of Gridcoin on exchanges (not investment advice).
  • Freedom to talk openly about Gridcoin on all BOINC related forums without fear of backlash.
  • BOINC projects will be more likely to openly discuss/announce whitelist status with/to their users if the team requirement is removed.
  • BOINC projects may be more open to the idea of integrating Gridcoin directly into their projects without fear of backlash from other teams.
  • We will be more successful when approaching BOINC developers regarding Gridcoin when they do not have to worry about remaining team-neutral to the rest of the BOINC community.

Removal of the requirement will increase security & reduce centralisation

Removing the mandatory team requirement will eliminate the centralised power that team founders have over Gridcoin's reward mechanism, as kicking users from team 'Gridcoin' will no longer invalidate the affected user's neural network validity.

Statistics websites are obsolete, we have a Neural Network!

We now store all of the important statistics within the client (NN), so when asked how much BOINC computation is being rewarded by Gridcoin we can simply point them towards neural network statistics instead of towards our team statistic pages on Boincstats.

Advertisement effectiveness of a high team leader board position is negligible; when we are not advertising on Boincstats the traffic coming from Boincstats drops significantly. Word-of-mouth recruitment could theoretically have a higher recruitment potential than a high leader board position.

To reverse the illogical stance on "Double Dipping"

We should not concern ourselves with fear of "Double Dipping"; by fearing such a prospect we are cutting ourselves off from the rest of the BOINC community & impeding our own network's growth (shooting ourselves in the foot). Consequently, we are leaving the rest of the BOINC community open to recruitment by a competing cryptocurrency - we should try to become the BOINC cryptocurrency not just a BOINC team cryptocurrency.

At the moment, no other cryptocurrency network is rewarding BOINC computation (Ripple ended their BOINC distribution campaign years ago).

Even if other cryptocurrencies/cryptoassets begin rewarding BOINC users, that just means that they’ll be further encouraged to contribute towards BOINC & won’t have to sell their GRC to offset electricity costs.


Challenges without a mandatory team requirement

Security

  • Without the team requirement, we cannot kick users from the team nor the neural network. This means that if a cheater is identified we will need to communicate directly with the project administrators to seek immediate action, otherwise we'll remove the project from the whitelist via the voting mechanism.
  • We will need to make the neural network whitelist far more strict, there are talks of purging several projects from the whitelist. We may end up with a smaller quantity of whitelisted projects, but with the advantage of a secure reward distribution across a significantly larger scope of users.
  • We will need to continue collaborating with the BOINC development community to create a 4th generation BOINC credit system that is not vulnerable to cherry-picking/wingman attacks/PFC manipulation.

Scalability

  • Scalability of both the Neural Network (currently a couple thousand users, could it handle 100k users?) & the Gridcoin network (scaled down to cope with attackers/lag).
  • Porting the Neural Network to Linux will most likely be required if the NN stats begin scaling to 5 or 6 figure levels.
    • Currently only windows clients can stake a superblock & linux clients contact windows clients for their BOINC stats prior to staking a DPOR block.
  • Decreasing the minimum magnitude units tracked in the NN (0.001 mag for a quad core CPU isn’t out of the equation if the NN size inflates to 5 or 6 figures..).
  • Gridcoin web services requiring to track a significantly larger quantity of users across all teams. (I currently only track team gridcoin, grcnodes will need to start tracking a significantly larger quantity of stats).
  • Handling a significantly larger community (How will we handle having 1000+ users active in IRC/forums/etc - things could get overwhelming..).

TL;DR: I believe we should:

  • Remove the mandatory team 'Gridcoin' requirement in order to reduce centralisation/security risks introduced by team founder account powers.
  • Attempt to increase our target user base to the entirety of the BOINC community (424.5k - 4 million users).
  • Purge insecure projects from the whitelist & increase scrutiny of projects on the whitelist.
  • Work with the BOINC community to develop a 4th gen BOINC credit system to overcome the multiple shortcomings of the 3rd gen 'creditnew' BOINC credit system.

Please comment below regarding how you feel, and vote for either 'Agree' or 'Disagree' to express your views on this topic.

Best regards,
CM.



Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  
  ·  3 years ago Reveal Comment
  ·  3 years ago (edited)

giphy80073.gif

Fundamentally I believe Gridcoin should act as an incentive for people to do BOINC work. The more people it reaches the bigger incentive it has, the network effect increasing its value and utility, a feedback loop as it were.
It seems we may need a new and completely non-BOINC based team of some description, you must join that team to earn Gridcoin, but you can be a member of any BOINC team you like, so you can keep your stats. This super-team must have some kind of democratic leadership.

  ·  3 years ago (edited)

Surely the neural network could be this team? It's a list of verified CPIDs, if we threw a team id column in there we could filter stats by teams or project-rain on teams. I'm not sure about leadership, but democracy could be facilitated via the inbuilt voting mechanism.

We could potentially nominate delegates for each BOINC team that's tracked in the neural network & create some kind of BOINC crypto-consortium?

Yeah the thought crossed my mind that the NN was close to what I was suggesting but I didnt want to be too prescriptive.
Im not sure what type of democracy would work best, but for example if you wanted to ban a CPID for cheating then it should require some kind of multi-party consensus.

For GRC to grow it needs to be exposed to the widest possible group of users and therefore should have as few restrictions as possible. Your point on the scalability is critical as the worst case would be to open it up and have usability and community support issues.

  ·  3 years ago (edited)Reveal Comment

Upvote this post if you disagree, that the mandatory team requirement should remain.

  ·  3 years ago (edited)

UPvoted :)

I completely agree with the team mandatory requirement, we should abandon it.

But can we counter the negative aspects of it ? like the cheating?

Cheers mate!

To counter cheating, we will need to purge insecure projects from the whitelist, increase scrutiny of projects on the whitelist and work with the BOINC community to create a 4th gen BOINC credit system.

I completely agree with the team mandatory requirement removal. I believe that if the requirement is removed and other BOINC users receive rewards while still being in their current team could lead us to actually get more users in our team. At least that is the way I see it.

  ·  3 years ago (edited)

Yeah, we're getting more users in our team but we've only recruited 0.42% of the entire BOINC community to the gridcoin team at the expense of limited growth, increased centralisation, and damage to our network's image.

We've already reached the #1 world leader board position, we should look towards new achievements/goals.

Surely the goal is the maximum quantity of gridcoin network users rather than just team gridcoin members?

It can be both. We can get more active GRC users without being in the team but in a few days or months after they receiving their GRC rewards maybe some would change to the GRC Team. That's what I meant to say above ;)

Ah, I getcha. I had interpreted your post as supporting the existence of the mandatory team requirement rather than its removal.

Yeah, I think that users outside of team gridcoin receiving GRC could lead to them joining team Gridcoin to promote the crypto.

Sorry I just re-read my comment and you' re right that it seemed to support the team requirement. I just edited it to add the word "removal" at the end of team mandatory requirement. Thanks for catching up on that one ;)

  ·  3 years ago Reveal Comment

Upvote this post to agree that we should remove the mandatory team requirement.

There may be 4 million, but only about 425,537 area active. Still a decent amount though. Rob has expressed his dislike for removing the team requirements, so I'm not sure if this is even possible without his support.

We can't rely on Rob for everything, and he can't shutdown the idea without entirely justifying his position. We should be promoting democracy and consensus rather than reverting to a benevolent dictatorship.

I feel that I have covered the reasons for why it was enforced in the first place and I have expressed why I believe it is an unreasonable requirement to maintain.

Hey, very well written post. If the gridcoin client (especially the NN) is capable of handling the potentially large amount of new users the mandatory team requirement should be removed. As I am exclusively running linux I would appreciate to have a full functional client. Including the NN.

I think the team requirement should be conserved, it helps to promote Gridcoin inside the BOINC network and shows how powerful our community is.

The kicking system should be modified to let the users decide who to ban (a person decide to ban someone and then he explain the reason and broadcast a vote in the gridcoin client).

You cannot ban users from team Gridcoin, you can kick users but they can immediately rejoin the team. Additionally, they could double down efforts and split their CPID in order to evade detection.

Do you not think that by limiting our reward distribution scope to a single team we are limiting our cryptocurrency network's potential growth? I perceive this impedance of growth to negate the benefits of leader board position promotion.

  ·  3 years ago (edited)

The important thing to keep in mind is that the ability to distribute assets to BOINC users in a centralised manner is quite easy, if we don't seize the opportunity to be the base asset rewarded to all BOINC users then other cryptocurrencies will move in on BOINC users we could have recruited.

https://steemit.com/steem/@cm-steem/gauging-interest-would-you-be-interested-being-able-to-tip-boinc-users-your-crypto-asset-of-choice

I just came across this old thread because I was curious about the team limitation and find it to be one of the limiting factors in Gridcoin adoption. With that said, now I have a little better understanding and think the all or nothing extremes are not the best options, does the idea of of creating rules for adding teams that manage and meet the requirements listed above? Elements 1, 2 and 3 seem like a good start. Item 4 might need some clarification and does not seem to fit. Or maybe that could be another team class level?