A human interactive proof (HIP) service is described. In response to a
request from a web server, the HIP service generates a HIP challenge and
an associated attestation. The web server can then embed the generated
HIP challenge in a requested web page. The attestation is used to
determine whether or not a user response to the HIP challenge is correct.