Patent ID: 8001188

Claim:
A process execution method comprising: generating with a server device a first message comprising a plurality of client puzzles, each of said client puzzles requiring a different amount of computation to solve; collectively transmitting in said first message from said server device to a client device, said plurality of client puzzles, a request for computation of a solution to one of said client puzzles, and a request for transmission of said solution to said server; receiving said first message at said client device; said client device identifying, based on said different amount of computation of each of said client puzzles, an amount of computation to be performed for each of said client puzzles; said client device selecting a single client puzzle from among the plurality of client puzzles included in said first message based on a level of computational complexity of said selected client puzzle; said client device executing a computation at a corresponding level of complexity to solve said selected client puzzle; said client device generating and transmitting a second message comprising a request for execution of a predetermined process and a computed solution of said selected client puzzle; said server device receiving said second message; said server device confirming said computed solution is correct; said server device, when said computed solution is confirmed to be correct, identifying, based on said computed solution, an amount of computation executed by said client device to solve said selected client puzzle; and said server device executing said predetermined process according to a priority determined based on said amount of computation.