1. A system comprising: a memory configured to store computer-executable instructions; a communication component circuitry for communicating over a communication network with a client computing device; and at least one processor, wherein the computer-executable instructions, when executed, configure the at least one processor to: receive a request from the client computing device through the communication network; assign a confidence level to the client computing device based at least in part on identification information associated with at least one of the client computing device or a user account associated with the request; determine a target amount of computations for the client computing device to compute a response based at least in part on the confidence level assigned to the client computing device, and wherein the system selects parameters used to generate a cryptographic challenge based at least in part on the target amount of computations for the client computing device; generate an ordered plurality of secret keys; generate an ordered plurality of messages; generate a first ordered plurality of message authentication codes, wherein each message authentication code is generated from a corresponding key of the ordered plurality of secret keys and a corresponding message of the ordered plurality of messages, wherein each message after a first message of the ordered plurality of messages is generated based at least in part on a secret key of the ordered plurality of secret keys used to generate a previous message authentication code of the ordered plurality of message authentication codes; generate the cryptographic challenge, wherein the cryptographic challenge comprises the first message and the ordered plurality of message authentication codes; transmit the cryptographic challenge to the client computing device through the communication network; receive a challenge response to the cryptographic challenge from the client computing device through the communication network; determine whether the challenge response includes at least a determined secret key of the ordered plurality of secret keys used to generate a determined message authentication code of the ordered plurality of message authentication codes; and transmit a request response to the request to the client computing device through the communication network based, at least in part, on a result of the determination.