Systems and methods for distinguishing among human users and software robots
First Claim
1. A system, comprising:
- at least one computer; and
at least one non-transitory computer-readable storage medium storing processor-executable instructions that, when executed by the at least one computer, cause the at least one computer to perform;
receiving, via at least one network, a first communication from a device different from the at least one computer;
identifying, from the first communication, a request to access a web resource;
generating an image comprising pixel values in a plurality of channels including a transparency channel, the generating comprising encoding a challenge text in the image at least in part by;
generating decoding information for displaying the challenge text, the decoding information including a plurality of saturation values for a respective plurality of pixels in the image; and
storing the decoding information, including the plurality of saturation values, in the transparency channel of the image;
transmitting, to the device and via the at least one network, the generated image and software code that, when executed by the device, uses the decoding information to facilitate displaying of the challenge text by the device;
receiving, via the at least one network, a second communication from the device;
identifying, from the second communication, a response text; and
providing the device with access to the web resource based on a comparison between the challenge text and the response text.
3 Assignments
0 Petitions
Accused Products
Abstract
A technique for distinguishing between a human user and a software robot. The technique includes: receiving a first communication from a device different from the at least one computer; identifying, from the first communication, a request to access a web resource; generating an image that encodes a challenge text, the image comprising data stored in a plurality of channels including a transparency channel, the generating comprising: generating decoding information representing the challenge text; and storing the decoding information in the transparency channel of the image; transmitting, via the at least one network, the generated image to the device; receiving a second communication from the device; identifying, from the second communication, a response text; and providing the device with access to the web resource based on a comparison between the challenge text and the response text.
127 Citations
30 Claims
-
1. A system, comprising:
-
at least one computer; and at least one non-transitory computer-readable storage medium storing processor-executable instructions that, when executed by the at least one computer, cause the at least one computer to perform; receiving, via at least one network, a first communication from a device different from the at least one computer; identifying, from the first communication, a request to access a web resource; generating an image comprising pixel values in a plurality of channels including a transparency channel, the generating comprising encoding a challenge text in the image at least in part by; generating decoding information for displaying the challenge text, the decoding information including a plurality of saturation values for a respective plurality of pixels in the image; and storing the decoding information, including the plurality of saturation values, in the transparency channel of the image; transmitting, to the device and via the at least one network, the generated image and software code that, when executed by the device, uses the decoding information to facilitate displaying of the challenge text by the device; receiving, via the at least one network, a second communication from the device; identifying, from the second communication, a response text; and providing the device with access to the web resource based on a comparison between the challenge text and the response text. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method, comprising:
-
receiving, via at least one network, a first communication from a device; identifying, from the first communication, a request to access a web resource; generating an image comprising pixel values in a plurality of channels including a transparency channel, the generating comprising encoding a challenge text in the image at least in part by; generating decoding information for displaying the challenge text, the decoding information including a plurality of saturation values for a respective plurality of pixels in the image; and storing the decoding information, including the plurality of saturation values, in the transparency channel of the image; transmitting, to the device and via the at least one network, the generated image and software code that, when executed by the device, uses the decoding information to facilitate displaying of the challenge text by the device; receiving, via the at least one network, a second communication from the device; identifying, from the second communication, a response text; and providing the device with access to the web resource based on a comparison between the challenge text and the response text. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. At least one non-transitory computer-readable storage medium storing processor-executable instructions that, when executed by at least one computer, cause the at least one computer to perform:
-
receiving, via at least one network, a first communication from a device different from the at least one computer; identifying, from the first communication, a request to access a web resource; generating an image comprising pixel values in a plurality of channels including a transparency channel, the generating comprising encoding a challenge text in the image at least in part by; generating decoding information for displaying the challenge text, the decoding information including a plurality of saturation values for a respective plurality of pixels in the image; and storing the decoding information, including the plurality of saturation values, in the transparency channel of the image; transmitting, to the device and via the at least one network, the generated image and software code that, when executed by the device, uses the decoding information to facilitate displaying of the challenge text by the device; receiving, via the at least one network, a second communication from the device; identifying, from the second communication, a response text; and providing the device with access to the web resource based on a comparison between the challenge text and the response text. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A device, comprising:
-
at least one hardware processor; and at least one non-transitory computer readable storage medium storing processor-executable instructions that, when executed by the at least one hardware processor, cause the at least one hardware processor to perform; transmitting, to at least one computer and via at least one network, a communication comprising a request to access a web resource; receiving, from the at least one computer and via the at least one network, an image that encodes a challenge text and software code, the image; comprising pixel values in a plurality of channels including a transparency channel, and storing decoding information for displaying the challenge text in the transparency channel, wherein the decoding information includes a plurality of saturation values for a respective plurality of pixels in the image; the software configured to use the decoding information to facilitate displaying of the challenge text by the device; executing the software code; displaying, to a user of the device, the challenge text using decoding information in the transparency channel of the image; receiving, from the user of the device, input specifying a response text; and transmitting, to the at least one computer and via the at least one network, a communication comprising the response text. - View Dependent Claims (29, 30)
-
Specification