How can SAFE Network do a proof of resource in case of CPU?

I have read the document and also the whitepaper, yet I didn’t find where they mention how can proof of resource work on other kinds of resources aside from storage.

In case of storage, it is understandable that by trying to ask for a part of the storage, it can form a game which the cheater will be punished beyond the point of profitability.

In the other hand, CPU or computing power is another story, I cannot see a way to achieve the proof of CPU resource without using all the CPU itself.

Thanks !


It’s more subtle really. Proof of resource (data availability etc.) is an umbrella measure. So to stay in a group, a node must pass messages, process requests and store data (to be able to process some requests). Neighbour nodes know the node is behaving and not found unable to process requests (including Get). The ultimate measure is not a number or figure, but ensuring nodes are doing enough and to do enough they need to have enough cpu, disk space, bandwidth etc.

tl;dr The proof is almost proof of ability to perform by ensuring a node does perform and the measure is as simple as this node is good enough.

Hope this makes sense.


So how does ‘good enough’ not have some number attached to it? There must be some defined cutoff point, even if it varies according to current circumstances, where the other nodes in a group say ‘Oi, you’re not pulling your weight. Get out!’

So, you suggest the proof of resource is in a sense “the proof of minimum resource requirement” ?

But, it seems not to be the case for storage I think ? It is more like the real proof to me.

The principle is more “proof of doing what the network requires of you” which includes resources, reliability, availability, integrity.


It’s dynamic and if you can do what the network needs at the time it needs it at the speed it requires it, then you are doing the right thing. We still have some magic numbers around, but this is the 10,000 mile view.