Hello, I apologize for coming late to the discussion. I am one of the main developers at Folding@home. Vijay Pande (Folding@home project leader) and I have been talking and he has given me permission to make some comments in this forum regarding F@H's position on CureCoin. I can confirm that the CureCoin developers have spoken with Dr. Pande but we are not working closely with them at this point. I do not profess to know precisely Dr. Pande's opinion so much of this is my own and I will take the blame.
I am very excited about the idea of finding a way for people to contribute to F@H while at the same time earning crypto coin, however, I am skeptical about CureCoin's implementation for a number of reasons and I urge the CureCoin devs to attempt to provide clear answers to the following questions:
1. Precisely how will CureCoin guarantee that people are fairly credited CureCoin for valid F@H work? CureCoin devs have repeatedly asserted that we have solved this problem for them but I disagree.
I still don't think I understand why one can't just fake folding work and submit it? Will peers be performing duplicate work to confirm?
Yup, there is some work duplication to be submitted, over the years Stanford has developed quite a good system for work validation.
The truth is, our system is not rock solid. We depend on the users to mostly act in our interest and on some manual intervention. This is also the sole reason that some of Folding@home is not Open-Source. We have Open-Sourced several parts of F@H and are working on Open-Sourcing more. We rely on obfuscated detection of tampering as well as the goodwill of our users to protect the scientific results and the point system. We would like to be fully Open-Source but as of yet no one has figured out how to efficiently execute arbitrary code in an untrusted environment with hard guarantees of security. BitCoin provides hard guarantees through cryptography and by relying on very specific code, i.e. SHA256 hashes.
We are currently only dealing with points which have no monetary value. Regardless, some of our users still get very upset when we get it wrong, which does happen on occasion and people still do occasionally cheat. We are quite worried about what would happen if the points had real value.
2. Why do the CureCoin devs get 10%? This seems excessive. The money expended by Stanford over the last decade far exceeds anything CureCoin could have committed thus far and CureCoin is largely using the reputation of Folding@home to launch itself. This seems unfair. In addition, I understand that CureCoin has already received a substantial sum in donations.
3. The bigger question is do we also have to trust CureCoin to fairly deal out the 45% share that is to go to those contributing to Folding@home and presumably other disease related projects in the future? How will you guarantee that points issued by Folding@home will equal coins in CureCoin? I am assuming that some central server at CureCoin will query Folding@home's servers and allocate the funds. I am also assuming that in the future CureCoin will decide how to share these funds among different scientific projects. Who decides what projects are worthy?
Don't get me wrong, I love the idea and think you guys have come a long way towards an actual implementation of something people have been asking for since the early days of BitCoin but I feel there are important questions to be answered before moving forward. Many people are working on this and there are a lot of ideas out there but I'm not convinced we've yet found the solution. When we do find a solid solution I pledge my support. I believe Folding@home has a big role to play in this and I will do what is in my power to help.
Hey jcoffland!
There are certainly a few issues we have yet to address:
1. Precisely how will CureCoin guarantee that people are fairly credited CureCoin for valid F@H work?
It appears you are referring to your system and people's ability to falsify reported data and get credited points, correct? This has been one of the main issues, probably the largest, that have impeded the release of CureCoin. Other things that have impeded the release have mostly been new ideas and services/programs to have available at or near launch. However, for dealing with cheating on F@H submissions, we don't truly have a way to prevent against this, as we don't have access to Folding@Home's servers, work validation, etc. Our hope is that we can work with Stanford to find a way to improve work validity checks, perhaps for simply having a system that double-checks work by giving the same work unit out to two different people, and makes sure that the submitted results match. If they don't, it would be sent to a third. We understand that the F@H project needs work units submitted back quickly to create the next batch of work (from what I presume to be a genetic algorithm for taking the best/most promising results and creating new test scenarios based off of those 'parents', please correct me if this is wrong), which may cause this duplicity/redundancy to be a problem. However, if the workunit was returned, it could be used in the next pool of workunits, and then if upon checking (other people send in different results for that job) the workunit is found to be forged, the effect that that incorrect data has on the next generation of tests should be fairly small, and that person would be awarded no points, so there would be no incentive for someone to submit false work results.
The other problem that this duplicity brings up is that suddenly your computational power from the CureCoin team is cut in half, which would be unfortunate. There may be a better way to perhaps only duplicate results of a, say, sixth of the workunits, and if a person was found to have above a certain threshold of invalid results they are banned, their points are wiped, etc. This way, you would only lose around 14% of the computational power, but would still make cheating very difficult. Perhaps only award points once an account crosses 10 submitted valid workunits (and when they cross that threshold they get full points for all of those Work Units automatically). In this case, a person would be very unlikely to have 10 forged workunits pass the filter, and if they were to do the first 10 workunits correctly their incorrect work would quickly be revealed and they would waste a lot of time doing correct units only to not get a payout. If we utilized some form of PPLNWU (Pay Per Last N Work Units) similar to the PPLNS system cryptocurrency pools use normally, people wouldn't get much of a payout until say 20 or 30 workunits in...
Either way, this solution still has a way to come, and most likely will require Stanford to implement something on their end for the CureCoin team, we would love to help and get Stanford's input on this issue.
Why do the CureCoin devs get 10%?This seems to be a common issue people raise with the coin, unfortunately. Not only is the 10% not set in stone, but the 10% is a Dev Fund, not funds for Devs
We plan to use the majority of dev funds for giving away folding hardware, purchasing infrastructure (for ourselves, and for Stanford), hiring freelance programming/design/advertising talent, donating to charities, etc. While some of it will, certainly, go to core developers, this amount is much smaller. As far as I know, part of that 10% is for Stanford for hardware, bandwidth, etc. Most of the donation money we receive is either being held for an in-case-of-emergency or being spent on development costs, such as purchasing servers, etc. Some may be put towards community events, some may be put towards folding hardware.
The bigger question: Do we have to trust CureCoin to fairly deal out the 45% share to computational contributors? Yes, there is a level of trust involved, certainly. However, it's important to note that we will not be holding that 45% (we were throwing around ideas, perhaps Stanford could hold the 45% and just send the amount we need week to week or even on a daily basis to the wallet for the payouts for the folding pool). We are planning to determine which other projects are worthwhile through a semi-democratic structure. Most likely (though again this isn't set in stone!) we will choose the projects that we personally feel are valuable, and then either let people vote on a one-vote-per-person, or a weighted vote depending on a person's average daily folding/computation rate. This would eliminate people being able to just create a ton of sockpuppet accounts on either these or the CureCoin forums, while also allowing the people contributing the most computational power to choose which other projects they would be interested in supporting. We will also take community suggestions, in case we miss an awesome project by accident.
Thanks for the interest! You're completely correct, there are some hurdles to overcome, but considering the possible benefits of this project once it is successfully launched, I'm confident there's a myriad of valid solutions, though it's going to take some brainpower. What are your feelings on the above proposed quick-fixes to work submission? I don't fully understand what the returned work exactly contains (I'm assuming the end-result of a proposed protein fold, but beyond that...) but it appears to be something that isn't easily-verifiable, so I feel that work duplicity/redundancy is probably the most likely way to determine whether a workunit is valid or invalid.