Methods and apparatuses for presenting challenges to tell humans and computers apart
First Claim
1. A method performed by a data processing system, comprising:
- detecting, with a processor, a condition indicative of abuses of a communication channel;
in response to the condition, providing, with the processor, a challenge through the communication channel, the challenge being solvable to human user of the communication channel, wherein the challenge is based on position of content within in a message;
receiving, with the processor, a response to the challenge; and
determining, with the processor, whether or not the response is correct.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatuses to tell humans and machines apart. In one embodiment, automated determination of whether a human or machine is at the other end of a communication channel is based on whether the correct response to a challenge/question is received from the other end of the communication channel. The challenge is provided in a non-image format, such as a text based questions or a sound clip, to prevent abuses of the communication system by computer software robots. The communication system may be primarily for text and/or voice communications, or be such that the rendering image-based challenges can cause significant disruption in normal flow of usage. In one example, the challenge includes deliberately generated random misspelling. In one example, the challenge is context sensitive, factual based, and/or instructive of an operation in a natural language to obtain a result.
147 Citations
33 Claims
-
1. A method performed by a data processing system, comprising:
-
detecting, with a processor, a condition indicative of abuses of a communication channel; in response to the condition, providing, with the processor, a challenge through the communication channel, the challenge being solvable to human user of the communication channel, wherein the challenge is based on position of content within in a message; receiving, with the processor, a response to the challenge; and determining, with the processor, whether or not the response is correct. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A non-transitory machine readable storage medium containing instructions stored therein, which when executed causes a machine to perform a method, comprising:
-
detecting a condition indicative of abuses of a communication channel; in response to the condition, providing a challenge through the communication channel, the challenge being solvable to human user of the communication channel, wherein the challenge is based on position of content within in a message; receiving a response to the challenge; and determining whether or not the response is correct.
-
-
22. A data processing system, comprising:
-
a processor; a memory; means for detecting a condition indicative of abuses of a communication channel; means for, in response to the condition, providing a challenge through the communication channel, the challenge being solvable to human user of the communication channel, wherein the challenge is based on position of content within in a message; means for receiving a response to the challenge; and means for determining whether or not the response is correct.
-
-
23. A method performed by a data processing system, comprising:
-
detecting, with a processor, a condition indicative of abuses of a communication channel primarily for voice and/or text communications; in response to the condition; obtaining, with the processor, a text message; transforming, with the processor, the text message to generate misspelling; providing, with the processor, a text message in a non-image format in a challenge through the communication channel, the challenge being solvable to an human user of the communication channel and being based on identifying the misspelling; receiving, with the processor, a response to the challenge; and determining, with the processor, whether or not the response is correct.
-
-
24. A method performed by a data processing system, comprising:
-
detecting, with a processor, a condition indicative of abuses of a communication channel; in response to the condition, providing, with the processor, a challenge through the communication channel, wherein the challenge is based on position of content within in a message; receiving, with the processor, a response to the challenge; and determining, with the processor, whether or not the response is correct. - View Dependent Claims (25)
-
-
26. A method performed by a data processing system, comprising:
-
detecting, with a processor, a condition indicative of abuses of a communication channel; in response to the condition, providing, with the processor, a challenge through the communication channel, the challenge being solvable to a human user of the communication channel, wherein the challenge is based on identifying a misspelling in the message; receiving, with the processor, a response to the challenge; and determining, with the processor, whether or not the response is correct.
-
-
27. A method performed by a data processing system, comprising:
-
detecting, with a processor, a condition indicative of abuses of a communication channel; in response to the condition, providing, with the processor, a challenge through the communication channel, the challenge being solvable to a human user of the communication channel, wherein the challenge is based on solving a mathematical problem; receiving, with the processor, a response to the challenge; and determining, with the processor, whether or not the response is correct.
-
-
28. A non-transitory machine readable storage medium containing instructions stored therein, which when executed causes a machine to perform a method, comprising:
-
detecting a condition indicative of abuses of a communication channel; in response to the condition, providing a challenge through the communication channel, the challenge being solvable to a human user of the communication channel, wherein the challenge is based on identifying a misspelling in the message; receiving a response to the challenge; and determining whether or not the response is correct.
-
-
29. A non-transitory machine readable storage medium containing instructions stored therein, which when executed causes a machine to perform a method, comprising:
-
detecting a condition indicative of abuses of a communication channel; in response to the condition, providing a challenge through the communication channel, the challenge being solvable to a human user of the communication channel, wherein the challenge is based on solving a mathematical problem; receiving a response to the challenge; and determining whether or not the response is correct.
-
-
30. A data processing system, comprising:
-
a processor; a memory; means for detecting a condition indicative of abuses of a communication channel; means for, in response to the condition, providing a challenge through the communication channel, the challenge being solvable to a human user of the communication channel, wherein the challenge is based on identifying a misspelling in the message; means for receiving a response to the challenge; and means for determining whether or not the response is correct.
-
-
31. A data processing system, comprising:
-
a processor; a memory; means for detecting a condition indicative of abuses of a communication channel; means for, in response to the condition, providing a challenge through the communication channel, the challenge being solvable to a human user of the communication channel, wherein the challenge is based on solving a mathematical problem; means for receiving a response to the challenge; and means for determining whether or not the response is correct.
-
-
32. A method performed by a data processing system, comprising:
-
detecting, with a processor, a condition indicative of abuses of a communication channel; in response to the condition, providing, with the processor, a challenge through the communication channel, wherein the challenge is based on identifying a misspelling in the message; receiving, with the processor, a response to the challenge; and determining, with the processor, whether or not the response is correct.
-
-
33. A method performed by a data processing system, comprising:
-
detecting, with a processor, a condition indicative of abuses of a communication channel; in response to the condition, providing, with the processor, a challenge through the communication channel, wherein the challenge is based on solving a mathematical problem; receiving, with the processor, a response to the challenge; and determining, with the processor, whether or not the response is correct.
-
Specification