So Ive been thinking of ideas for raising the integrity of PODC, and here is one I came up with that at least feels promising but its in its infancy still.
Just to be clear I dont propose we stop PODC testing and implement this; I would rather finish testing this version as a unit and ensure it works with no bad superblock amounts - and as we enter the CPID phase no bad syncing before we add anything else to PODC.
Also keep in mind, that I know there might be better ideas that come to mind, but this idea comes from what *can* be done technologically that is reasonable, that allows miners on PCs tablets and Phones to execute the idea, in contrast to ideas that might fathomably be possible but would either be too hard to implement or would potentially not work on that Carribean cell phone.
So here it is:
I was thinking of preventing SQL tampering and increasing PODC integrity. Possibly this way:
We make the controller wallet monitor your devices, those would be considered: CPIDHASH-MACHINEHASH devices, in laymans terms that means your CPID as a Researcher Plus your first PC for example is that machine hash of your first device, it would iterate through the list of your devices and gather your Rosetta tasks that you are to be crunching. It would be specifically interested in the starttime of the taskid, and would create a list of tasks that are unanounced to the network. We would then take one UTXO (thats an unspent coin), and broadcast the cpidhash-machinehash-taskhash-taskid-utxo to the network, and allow biblepay to track the starttime of the tasks. Then instead of rewarding you with RAC in the superblock we reward you with coin*age*rac, for each individual completed task that was provably started at a specific timestamp.
In this way, we can say that my machine asserts via signed CPID for this message that I own this task and I started it at Y unix timestamp. Other nodes would verify this timestamp to see if you really started the task at that time. (Boinc has that info live).
Then in addition when the task is completed, you receive coin*age * RAC , meaning that there will now be a relationship between your machine, its task, its owner cpid, and the coins spent, and the corresponding public key of the owners wallet.
This would give a level of integrity that would be hard to crack because if SQL tampering is to occur, lets say at gunpoint most likely the perpetrator would be updating many records at once, affecting hundreds of tasks timestamps. These boinc tasks fortunately are create before they are given out to researchers so if they do a mass update it would hose those records *after* our network said they were started (which would show tampering). Or, if they update many as validated at once, our report would detect timestamp altering (because now we are tracking info in real time).
Then we could add a report to the core wallet to show this info daily and have it so we can export the RPC report to Excel. Maybe we make our wallet export excel reports to the drive from the controller wallet.
Another way to look at this is, at the very least it brings PODC up and past the trust level of POS, because some communities already trust POS coin consensus, this way PODC would have not only cancer research in real time, but proof-of-utxo-spending as well, tying spent coins to RAC.
The small devices would still work, but this would require a controller wallet running to know when the small device starts hashing.
Thinking about this a little deeper, that might be a big boon for biblepay. This would mean to get paid you need to keep your controller wallet running so it can send messages that your devices are starting tasks. Thats a plus for our security , as that means our networking full node count is higher and the POW-heat side would not be virtually zero. So this is actually a reasonable and positive requirement....
Lets think about this.