Patent ID: 8412952

Claim:
A computer-implemented method for authenticating requests from a client running trialware through a proof of work protocol, comprising: analyzing, by a hardware processor, a request received from a client running trialware; determining, by the hardware processor, whether the request is successfully authenticated using an authentication token; upon determining that the authentication of the request is unsuccessful, generating, by the hardware processor, a cryptographic puzzle; transmitting the cryptographic puzzle to the client; receiving state information as at least a part of a solution to the cryptographic puzzle to determine whether a state has been maintained since the cryptographic puzzle was generated; upon determining that the state has altered since the cryptographic puzzle was generated, recomputing a hash function to validate the received solution to the puzzle; analyzing, by the hardware processor, the solution to the cryptographic puzzle received from the client; and generating, by the hardware processor, a response to the request if the received solution to the puzzle is validated.