Automatic construction of human interaction proof engines
First Claim
1. One or more computer-readable storage media that store computer-executable instructions to generate human interaction proofs, wherein the computer-executable instructions, when executed by a computer, cause the computer to perform acts comprising:
- receiving, in a captcha specification language, a definition of a human interaction proof scheme that defines;
an alphabet from which multiple symbols are to be selected as answers to a human interaction proof,multiple complications that are selectable for use in generation of the human interaction proof, andmultiple values that individually defines extents to which respective complications of the multiple complications are to be applied to the symbols of the alphabet, wherein a first value of the multiple values defines a fixed extent for application of a first complication of the multiple complications, and wherein a second value of the multiple values defines a random extent for application of a second complication of the multiple complications;
generating a graphical representation of the human interaction proof in accordance with the alphabet and the multiple complications by applying at least the first complication by the fixed extent to a first symbol and applying the second complication by the random extent to a second symbol; and
employing the graphical representation to selectively control access to a service.
2 Assignments
0 Petitions
Accused Products
Abstract
Human Interaction Proofs (“HIPs”, sometimes referred to as “captchas”), may be generated automatically. An captcha specification language may be defined, which allows a captcha scheme to be defined in terms of how symbols are to be chosen and drawn, and how those symbols are obscured. The language may provide mechanisms to specify the various ways in which to obscure symbols. New captcha schemes may be generated from existing specifications, by using genetic algorithms that combine features from existing captcha schemes that have been successful. Moreover, the likelihood that a captcha scheme has been broken by attackers may be estimated by collecting data on the time that it takes existing captcha schemes to be broken, and using regression to estimate the time to breakage as a function of either the captcha'"'"'s features or its measured quality.
16 Citations
20 Claims
-
1. One or more computer-readable storage media that store computer-executable instructions to generate human interaction proofs, wherein the computer-executable instructions, when executed by a computer, cause the computer to perform acts comprising:
-
receiving, in a captcha specification language, a definition of a human interaction proof scheme that defines; an alphabet from which multiple symbols are to be selected as answers to a human interaction proof, multiple complications that are selectable for use in generation of the human interaction proof, and multiple values that individually defines extents to which respective complications of the multiple complications are to be applied to the symbols of the alphabet, wherein a first value of the multiple values defines a fixed extent for application of a first complication of the multiple complications, and wherein a second value of the multiple values defines a random extent for application of a second complication of the multiple complications; generating a graphical representation of the human interaction proof in accordance with the alphabet and the multiple complications by applying at least the first complication by the fixed extent to a first symbol and applying the second complication by the random extent to a second symbol; and employing the graphical representation to selectively control access to a service. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method of generating human interaction proofs, comprising:
-
receiving a captcha language specification of a human interaction proof scheme, wherein the captcha language specification defines; an alphabet of possible answers from which multiple symbols of human interaction proofs may be selected, a set of complications from which multiple complications for the human interaction proofs may be selected, and multiple values that individually define extents to which respective complications of the multiple complications are to be applied to the symbols of the alphabet, wherein a first value of the multiple values defines a fixed extent for application of a first complication of the multiple complications; and generating a graphical representation of a first human interaction proof in accordance with the alphabet and the multiple complications by applying at least the first complication by the fixed extent to a first symbol. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A system for generating captchas, comprising:
a memory and a processor that are respectively configured to store and execute instructions for; receiving a captcha language specification of a human interaction proof scheme, wherein the captcha language specification defines; an alphabet of possible answers from which multiple symbols of human interaction proofs may be selected, a set of complications from which multiple complications for the human interaction proofs may be selected, and multiple values that individually define extents to which respective complications of the multiple complications are to be applied to the symbols of the alphabet, wherein a first value of the multiple values defines a fixed extent for application of a first complication of the multiple complications; and generating a first human interaction proof in accordance with the alphabet and the multiple complications defined by the received captcha language specification, the human interaction proof used during a determination of whether a human is interacting with a service, and the generation of the first human interaction proof including; applying at least the first complication by the fixed extent to a first symbol. - View Dependent Claims (19, 20)
Specification