You are on page 1of 15

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/264292176

Captcha as Graphical Passwords—A New Security Primitive Based on Hard AI


Problems

Article in IEEE Transactions on Information Forensics and Security · June 2014


DOI: 10.1109/TIFS.2014.2312547

CITATIONS READS
89 9,041

5 authors, including:

Bin B. Zhu Guanbo Bao


Microsoft Chinese Academy of Sciences
122 PUBLICATIONS 3,172 CITATIONS 15 PUBLICATIONS 262 CITATIONS

SEE PROFILE SEE PROFILE

Niu ren xu
Jilin University
563 PUBLICATIONS 38,918 CITATIONS

SEE PROFILE

All content following this page was uploaded by Bin B. Zhu on 13 September 2016.

The user has requested enhancement of the downloaded file.


IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY, VOL. 9, NO. 6, JUNE 2014 891

Captcha as Graphical Passwords—A New Security


Primitive Based on Hard AI Problems
Bin B. Zhu, Jeff Yan, Guanbo Bao, Maowei Yang, and Ning Xu

Abstract— Many security primitives are based on hard math- the capability of computers but easy for humans. Captcha is
ematical problems. Using hard AI problems for security is now a standard Internet security technique to protect online
emerging as an exciting new paradigm, but has been under- email and other services from being abused by bots.
explored. In this paper, we present a new security primitive
based on hard AI problems, namely, a novel family of graph- However, this new paradigm has achieved just a limited
ical password systems built on top of Captcha technology, success as compared with the cryptographic primitives based
which we call Captcha as graphical passwords (CaRP). CaRP on hard math problems and their wide applications. Is it
is both a Captcha and a graphical password scheme. CaRP possible to create any new security primitive based on hard
addresses a number of security problems altogether, such as AI problems? This is a challenging and interesting open prob-
online guessing attacks, relay attacks, and, if combined with
dual-view technologies, shoulder-surfing attacks. Notably, a CaRP lem. In this paper, we introduce a new security primitive based
password can be found only probabilistically by automatic online on hard AI problems, namely, a novel family of graphical pass-
guessing attacks even if the password is in the search set. word systems integrating Captcha technology, which we call
CaRP also offers a novel approach to address the well-known CaRP (Captcha as gRaphical Passwords). CaRP is click-based
image hotspot problem in popular graphical password systems, graphical passwords, where a sequence of clicks on an image is
such as PassPoints, that often leads to weak password choices.
CaRP is not a panacea, but it offers reasonable security and used to derive a password. Unlike other click-based graphical
usability and appears to fit well with some practical applications passwords, images used in CaRP are Captcha challenges, and
for improving online security. a new CaRP image is generated for every login attempt.
Index Terms— Graphical password, password, hotspots, CaRP, The notion of CaRP is simple but generic. CaRP can have
Captcha, dictionary attack, password guessing attack, security multiple instantiations. In theory, any Captcha scheme relying
primitive. on multiple-object classification can be converted to a CaRP
scheme. We present exemplary CaRPs built on both text
I. I NTRODUCTION Captcha and image-recognition Captcha. One of them is a text
CaRP wherein a password is a sequence of characters like
A FUNDAMENTAL task in security is to create crypto-
graphic primitives based on hard mathematical problems
that are computationally intractable. For example, the problem
a text password, but entered by clicking the right character
sequence on CaRP images.
of integer factorization is fundamental to the RSA public-key CaRP offers protection against online dictionary attacks on
cryptosystem and the Rabin encryption. The discrete logarithm passwords, which have been for long time a major security
problem is fundamental to the ElGamal encryption, the Diffie- threat for various online services. This threat is widespread
Hellman key exchange, the Digital Signature Algorithm, the and considered as a top cyber security risk [13]. Defense
elliptic curve cryptography and so on. against online dictionary attacks is a more subtle problem than
Using hard AI (Artificial Intelligence) problems for it might appear. Intuitive countermeasures such as throttling
security, initially proposed in [17], is an exciting new par- logon attempts do not work well for two reasons:
adigm. Under this paradigm, the most notable primitive 1) It causes denial-of-service attacks (which were exploited
invented is Captcha, which distinguishes human users from to lock highest bidders out in final minutes of eBay
computers by presenting a challenge, i.e., a puzzle, beyond auctions [12]) and incurs expensive helpdesk costs for
Manuscript received April 15, 2013; revised July 22, 2013 and
account reactivation.
October 14, 2013; accepted February 21, 2014. Date of publication March 2) It is vulnerable to global password attacks [14] whereby
19, 2014; date of current version April 21, 2014. This work was done when adversaries intend to break into any account rather than
G. Bao and M. Yang worked as interns at Microsoft Research Asia. The a specific one, and thus try each password candidate on
associate editor coordinating the review of this manuscript and approving it
for publication was Prof. Carlo Blundo. multiple accounts and ensure that the number of trials on
B. B. Zhu and N. Xu are with Microsoft Research Asia, Beijing 100080, each account is below the threshold to avoid triggering
China (e-mail: binzhu@microsoft.com; ningx@microsoft.com). account lockout.
J. Yan is with Newcastle University, Newcastle NE 1 7RU, U.K. (e-mail:
jeff.yan@ncl.ac.uk). CaRP also offers protection against relay attacks, an increas-
G. Bao is with the Institute of Automation, Chinese Academy of Sciences,
Beijing 100190, China (e-mail: guanbo.bao@gmail.com). ing threat to bypass Captchas protection, wherein Captcha
M. Yang is with Sichuan University, Chengdu 610207, China (e-mail: challenges are relayed to humans to solve. Koobface [33]
djyangmaowei@gmail.com). was a relay attack to bypass Facebook’s Captcha in creating
Color versions of one or more of the figures in this paper are available
online at http://ieeexplore.ieee.org. new accounts. CaRP is robust to shoulder-surfing attacks if
Digital Object Identifier 10.1109/TIFS.2014.2312547 combined with dual-view technologies.
1556-6013 © 2014 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.
See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
892 IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY, VOL. 9, NO. 6, JUNE 2014

CaRP requires solving a Captcha challenge in every login. This process is repeated, each time with a different panel.
This impact on usability can be mitigated by adapting the A successful login requires that the cumulative probability
CaRP image’s difficulty level based on the login history of that correct answers were not entered by chance exceeds a
the account and the machine used to log in. threshold within a given number of rounds.
Typical application scenarios for CaRP include: A recall-based scheme requires a user to regenerate
1) CaRP can be applied on touch-screen devices whereon the same interaction result without cueing. Draw-A-Secret
typing passwords is cumbersome, esp. for secure Internet (DAS) [3] was the first recall-based scheme proposed. A user
applications such as e-banks. Many e-banking systems draws her password on a 2D grid. The system encodes the
have applied Captchas in user logins [39]. For example, sequence of grid cells along the drawing path as a user-
ICBC (www.icbc.com.cn), the largest bank in the world, drawn password. Pass-Go [4] improves DAS’s usability by
requires solving a Captcha challenge for every online encoding the grid intersection points rather than the grid cells.
login attempt. BDAS [23] adds background images to DAS to encourage
2) CaRP increases spammer’s operating cost and thus helps users to create more complex passwords.
reduce spam emails. For an email service provider In a cued-recall scheme, an external cue is provided to help
that deploys CaRP, a spam bot cannot log into an memorize and enter a password. PassPoints [5] is a widely
email account even if it knows the password. Instead, studied click-based cued-recall scheme wherein a user clicks
human involvement is compulsory to access an account. a sequence of points anywhere on an image in creating a
If CaRP is combined with a policy to throttle the number password, and re-clicks the same sequence during authenti-
of emails sent to new recipients per login session, a spam cation. Cued Click Points (CCP) [18] is similar to PassPoints
bot can send only a limited number of emails before but uses one image per click, with the next image selected
asking human assistance for login, leading to reduced by a deterministic function. Persuasive Cued Click Points
outbound spam traffic. (PCCP) [19] extends CCP by requiring a user to select a
The remaining paper is organized as follows: Background point inside a randomly positioned viewport when creating a
and related work are presented in Section II. We outline CaRP password, resulting in more randomly distributed click-points
in Section III, and present a variety of CaRP schemes in in a password.
Sections IV and V. Security analysis is provided in Section VI. Among the three types, recognition is considered the easiest
A usability study on two CaRP schemes that we have imple- for human memory whereas pure recall is the hardest [1].
mented is reported in Section VII. Balance of security and Recognition is typically the weakest in resisting guessing
usability is discussed in Section VIII. We conclude the paper attacks. Many proposed recognition-based schemes practically
with Section IX. have a password space in the range of 213 to 216 passwords [1].
A study [6] reported that a significant portion of passwords of
DAS and Pass-Go [4] were successfully broken with guessing
II. BACKGROUND AND R ELATED W ORK
attacks using dictionaries of 231 to 241 entries, as compared to
A. Graphical Passwords the full password space of 258 entries. Images contain hotspots
A large number of graphical password schemes have been [7], [8], i.e., spots likely selected in creating passwords.
proposed. They can be classified into three categories accord- Hotspots were exploited to mount successful guessing attacks
ing to the task involved in memorizing and entering passwords: on PassPoints [8]–[11]: a significant portion of passwords were
recognition, recall, and cued recall. Each type will be briefly broken with dictionaries of 226 to 235 entries, as compared to
described here. More can be found in a recent review of the full space of 243 passwords.
graphical passwords [1].
A recognition-based scheme requires identifying among
decoys the visual objects belonging to a password portfolio. B. Captcha
A typical scheme is Passfaces [2] wherein a user selects a Captcha relies on the gap of capabilities between humans
portfolio of faces from a database in creating a password. and bots in solving certain hard AI problems. There are two
During authentication, a panel of candidate faces is presented types of visual Captcha: text Captcha and Image-Recognition
for the user to select the face belonging to her portfolio. This Captcha (IRC). The former relies on character recogni-
process is repeated several rounds, each round with a different tion while the latter relies on recognition of non-character
panel. A successful login requires correct selection in each objects. Security of text Captchas has been extensively studied
round. The set of images in a panel remains the same between [26]–[30]. The following principle has been established: text
logins, but their locations are permuted. Story [20] is similar Captcha should rely on the difficulty of character segmenta-
to Passfaces but the images in the portfolio are ordered, and tion, which is computationally expensive and combinatorially
a user must identify her portfolio images in the correct order. hard [30].
Déjà Vu [21] is also similar but uses a large set of computer- Machine recognition of non-character objects is far less
generated “random-art” images. Cognitive Authentication [22] capable than character recognition. IRCs rely on the difficulty
requires a user to generate a path through a panel of images as of object identification or classification, possibly combined
follows: starting from the top-left image, moving down if the with the difficulty of object segmentation. Asirra [31] relies on
image is in her portfolio, or right otherwise. The user identifies binary object classification: a user is asked to identify all the
among decoys the row or column label that the path ends. cats from a panel of 12 images of cats and dogs. Security of
ZHU et al.: NEW SECURITY PRIMITIVE BASED ON HARD AI PROBLEMS 893

IRCs has also been studied. Asirra was found to be susceptible a trial whereas Tn denote the n-th trial, and p(T = ρ) be
to machine-learning attacks [24]. IRCs based on binary object the probability that ρ is tested in trial T . Let E n be the set
classification or identification of one concrete type of objects of password guesses tested in trials up to (including) Tn . The
are likely insecure [25]. Multi-label classification problems are password guess to be tested in n-th trial Tn is from set S\E n−1 ,
considered much harder than binary classification problems. i.e., the relative complement of E n−1 in S. If ρ ∈ S, then we
Captcha can be circumvented through relay attacks whereby have
Captcha challenges are relayed to human solvers, whose
answers are fed back to the targeted application. p (T = ρ|T1 = ρ, . . . , Tn−1 = ρ) > p(T = ρ), (1)

C. Captcha in Authentication and


It was introduced in [14] to use both Captcha and password 
En → S
in a user authentication protocol, which we call Captcha-based with n → |S|, (2)
p(T = ρ|T1 = ρ, . . . , Tn−1 = ρ) → 1
Password Authentication (CbPA) protocol, to counter online
dictionary attacks. The CbPA-protocol in [14] requires solving where |S| denotes the cardinality of S. From Eq. (2), the
a Captcha challenge after inputting a valid pair of user ID and password is always found within |S| trials if it is in S;
password unless a valid browser cookie is received. For an otherwise S is exhausted after |S| trials. Each trial determines
invalid pair of user ID and password, the user has a certain if the tested password guess is the actual password or not, and
probability to solve a Captcha challenge before being denied the trial’s result is deterministic.
access. An improved CbPA-protocol is proposed in [15] by To counter guessing attacks, traditional approaches in
storing cookies only on user-trusted machines and applying designing graphical passwords aim at increasing the effective
a Captcha challenge only when the number of failed login password space to make passwords harder to guess and thus
attempts for the account has exceeded a threshold. It is further require more trials. No matter how secure a graphical password
improved in [16] by applying a small threshold for failed scheme is, the password can always be found by a brute force
login attempts from unknown machines but a large threshold attack. In this paper, we distinguish two types of guessing
for failed attempts from known machines with a previous attacks: automatic guessing attacks apply an automatic trial
successful login within a given time frame. and error process but S can be manually constructed whereas
Captcha was also used with recognition-based graphical human guessing attacks apply a manual trial and error process.
passwords to address spyware [40], [41], wherein a text CaRP adopts a completely different approach to counter
Captcha is displayed below each image; a user locates her own automatic guessing attacks. It aims at realizing the following
pass-images from decoy images, and enters the characters at equation:
specific locations of the Captcha below each pass-image as
her password during authentication. These specific locations p(T = ρ|T1 , . . . , Tn−1 ) = p(T = ρ), ∀n (3)
were selected for each pass-image during password creation
as a part of the password. in an automatic guessing attack. Eq. (3) means that each trial
In the above schemes, Captcha is an independent entity, used is computationally independent of other trials. Specifically,
together with a text or graphical password. On the contrary, no matter how many trials executed previously, the chance
a CaRP is both a Captcha and a graphical password scheme, of finding the password in the current trial always remains
which are intrinsically combined into a single entity. the same. That is, a password in S can be found only
probabilistically by automatic guessing (including brute-force)
D. Other Related Work attacks, in contrast to existing graphical password schemes
Captcha is used to protect sensitive user inputs on an where a password can be found within a fixed number of trials.
untrusted client [35]. This scheme protects the communication How to achieve the goal? If a new image is used for each
channel between user and Web server from keyloggers and trial, and images of different trials are independent of each
spyware, while CaRP is a family of graphical password other, then Eq. (3) holds. Independent images among different
schemes for user authentication. The paper [35] did not login attempts must contain invariant information so that the
introduce the notion of CaRP or explore its rich properties authentication server can verify claimants. By examining the
and the design space of a variety of CaRP instantiations. ecosystem of user authentication, we noticed that human users
enter passwords during authentication, whereas the trial and
error process in guessing attacks is executed automatically.
III. C APTCHA AS G RAPHICAL PASSWORDS
The capability gap between humans and machines can be
A. A New Way to Thwart Guessing Attacks exploited to generate images so that they are computationally-
In a guessing attack, a password guess tested in an unsuc- independent yet retain invariants that only humans can iden-
cessful trial is determined wrong and excluded from subse- tify, and thus use as passwords. The invariants among images
quent trials. The number of undetermined password guesses must be intractable to machines to thwart automatic guessing
decreases with more trials, leading to a better chance of finding attacks. This requirement is the same as that of an ideal
the password. Mathematically, let S be the set of password Captcha [25], leading to creation of CaRP, a new family of
guesses before any trial, ρ be the password to find, T denote graphical passwords robust to online guessing attacks.
894 IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY, VOL. 9, NO. 6, JUNE 2014

B. CaRP: An Overview
In CaRP, a new image is generated for every login attempt,
even for the same user. CaRP uses an alphabet of visual
objects (e.g., alphanumerical characters, similar animals) to
generate a CaRP image, which is also a Captcha challenge.
A major difference between CaRP images and Captcha images
is that all the visual objects in the alphabet should appear
in a CaRP image to allow a user to input any password but
not necessarily in a Captcha image. Many Captcha schemes
can be converted to CaRP schemes, as described in the next Fig. 1. Flowchart of basic CaRP authentication.
subsection.
CaRP schemes are clicked-based graphical passwords.
According to the memory tasks in memorizing and enter- with the user ID. AS maps the received coordinates onto the
ing a password, CaRP schemes can be classified into two CaRP image, and recovers a sequence of visual object IDs or
categories: recognition and a new category, recognition-recall, clickable points of visual objects, ρ  , that the user clicked on
which requires recognizing an image and using the recog- the image. Then AS retrieves salt s of the account, calculates
nized objects as cues to enter a password. Recognition-recall the hash value of ρ  with the salt, and compares the result
combines the tasks of both recognition and cued-recall, and with the hash value stored for the account. Authentication
retains both the recognition-based advantage of being easy succeeds only if the two hash values match. This process is
for human memory and the cued-recall advantage of a large called the basic CaRP authentication and shown in Fig. 1.
password space. Exemplary CaRP schemes of each type will Advanced authentication with CaRP, for example,
be presented later. challenge-response, will be presented in Section V-B. We
assume in the following that CaRP is used with the basic
CaRP authentication unless explicitly stated otherwise.
C. Converting Captcha to CaRP To recover a password successfully, each user-clicked point
In principle, any visual Captcha scheme relying on recogniz- must belong to a single object or a clickable-point of an
ing two or more predefined types of objects can be converted object. Objects in a CaRP image may overlap slightly with
to a CaRP. All text Captcha schemes and most IRCs meet this neighboring objects to resist segmentation. Users should not
requirement. Those IRCs that rely on recognizing a single click inside an overlapping region to avoid ambiguity in
predefined type of objects can also be converted to CaRPs identifying the clicked object. This is not a usability concern in
in general by adding more types of objects. In practice, practice since overlapping areas generally take a tiny portion
conversion of a specific Captcha scheme to a CaRP scheme of an object.
typically requires a case by case study, in order to ensure
both security and usability. We will present in Sections IV IV. R ECOGNITION -BASED CaRP
and V several CaRPs built on top of text and image-recognition For this type of CaRP, a password is a sequence of visual
Captcha schemes. objects in the alphabet. Per view of traditional recognition-
Some IRCs rely on identifying objects whose types are not based graphical passwords, recognition-based CaRP seems
predefined. A typical example is Cortcha [25] which relies to have access to an infinite number of different visual
on context-based object recognition wherein the object to be objects. We present two recognition-based CaRP schemes and
recognized can be of any type. These IRCs cannot be converted a variation next.
into CaRP since a set of pre-defined object types is essential
for constructing a password.
A. ClickText
ClickText is a recognition-based CaRP scheme built on top
D. User Authentication With CaRP Schemes of text Captcha. Its alphabet comprises characters without any
Like other graphical passwords, we assume that CaRP visually-confusing characters. For example, Letter “O” and
schemes are used with additional protection such as secure digit “0” may cause confusion in CaRP images, and thus one
channels between clients and the authentication server through character should be excluded from the alphabet. A ClickText
Transport Layer Security (TLS). A typical way to apply CaRP password is a sequence of characters in the alphabet, e.g.,
schemes in user authentication is as follows. The authentica- ρ =“AB#9CD87”, which is similar to a text password. A
tion server AS stores a salt s and a hash value H (ρ, s) for ClickText image is generated by the underlying Captcha
each user ID, where ρ is the password of the account and engine as if a Captcha image were generated except that all
not stored. A CaRP password is a sequence of visual object the alphabet characters should appear in the image. During
IDs or clickable-points of visual objects that the user selects. generation, each character’s location is tracked to produce
Upon receiving a login request, AS generates a CaRP image, ground truth for the location of the character in the generated
records the locations of the objects in the image, and sends image. The authentication server relies on the ground truth to
the image to the user to click her password. The coordinates identify the characters corresponding to user-clicked points.
of the clicked points are recorded and sent to AS along In ClickText images, characters can be arranged randomly
ZHU et al.: NEW SECURITY PRIMITIVE BASED ON HARD AI PROBLEMS 895

the following step, produce many different shapes for the same
animal’s instantiations in the generated images. Combined
with the additional anti-recognition mechanisms applied in the
mapping step, these make it hard for computers to recognize
animals in the generated image, yet humans can easily identify
different instantiations of animals.

C. AnimalGrid
Fig. 2. A ClickText image with 33 characters.
The number of similar animals is much less than the number
of available characters. ClickAnimal has a smaller alphabet,
and thus a smaller password space, than ClickText. CaRP
should have a sufficiently-large effective password space to
resist human guessing attacks. AnimalGrid’s password space
can be increased by combining it with a grid-based graphical
password, with the grid depending on the size of the selected
animal.
Fig. 3. Captcha Zoo with horses circled red. DAS [3] is a candidate but requires drawing on the grid.
To be consistent with ClickAnimal, we change from drawing
to clicking: Click-A-Secret (CAS) wherein a user clicks the
grid cells in her password. AnimalGrid is a combination of
ClickAnimal and CAS. The number of grid-cells in a grid
should be much larger than the alphabet size. Unlike DAS,
grids in our CAS are object-dependent, as we will see next.
It has the advantage that a correct animal should be clicked
in order for the clicked grid-cell(s) on the follow-up grid to
Fig. 4. A ClickAnimal image (left) and 6 × 6 grid (right) determined by be correct. If a wrong animal is clicked, the follow-up grid
red turkey’s bounding rectangle. is wrong. A click on the correctly labeled grid-cell of the
wrong grid would likely produce a wrong grid-cell at the
on 2D space. This is different from text Captcha challenges
authentication server side when the correct grid is used.
in which characters are typically ordered from left to right
To enter a password, a ClickAnimal image is displayed first.
in order for users to type them sequentially. Fig. 2 shows a
After an animal is selected, an image of n × n grid appears,
ClickText image with an alphabet of 33 characters. In entering
with the grid-cell size equaling the bounding rectangle of the
a password, the user clicks on this image the characters in her
selected animal. Each grid-cell is labeled to help users identify.
password, in the same order, for example “A”, “B”, “#”, “9”,
Fig. 4 shows a 6 × 6 grid when the red turkey in the left image
“C”, “D”, “8”, and then “7” for password ρ = “AB#9CD87”.
of Fig. 4 was selected. A user can select zero to multiple
grid-cells matching her password. Therefore a password is a
B. ClickAnimal sequence of animals interleaving with grid-cells, e.g., ρ =
Captcha Zoo [32] is a Captcha scheme which uses “Dog, Grid2, Grid1; Cat, Horse, Grid3”, where Grid1
3D models of horse and dog to generate 2D animals with means the grid-cell indexed as 1, and grid-cells after an animal
different textures, colors, lightings and poses, and arranges means that the grid is determined by the bounding rectangle
them on a cluttered background. A user clicks all the horses of the animal. A password must begin with an animal.
in a challenge image to pass the test. Fig. 3 shows a sample When a ClickAnimal image appears, the user clicks the
challenge wherein all the horses are circled red. animal on the image that matches the first animal in her
ClickAnimal is a recognition-based CaRP scheme built on password. The coordinates of the clicked point are recorded.
top of Captcha Zoo [32], with an alphabet of similar animals The bounding rectangle of the clicked animal is then found
such as dog, horse, pig, etc. Its password is a sequence of interactively as follows: a bounding rectangle is calculated and
animal names such as ρ = “Turkey, Cat, Horse, Dog,….” displayed, e.g., the white rectangle shown in Fig. 4. The user
For each animal, one or more 3D models are built. The checks the displayed rectangle and corrects inaccurate edges
Captcha generation process is applied to generate ClickAnimal by dragging if needed. This process is repeated until the user is
images: 3D models are used to generate 2D animals by satisfied with the accuracy of the bounding rectangle. In most
applying different views, textures, colors, lightning effects, cases, the calculated bounding rectangle is accurate enough
and optionally distortions. The resulting 2D animals are then without needing manual correction.
arranged on a cluttered background such as grassland. Some Once the bounding rectangle of the selected animal is
animals may be occluded by other animals in the image, but identified, an image of n × n grid with the identified bounding
their core parts are not occluded in order for humans to identify rectangle as its grid-cell size is generated and displayed. If the
each of them. Fig. 4 shows a ClickAnimal image with an grid image is too large or too small for a user to view, the
alphabet of 10 animals. Note that different views applied in grid image is scaled to a fitting size. The user then clicks
mapping 3D models to 2D animals, together with occlusion in a sequence of zero to multiple grid-cells that match the grid-
896 IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY, VOL. 9, NO. 6, JUNE 2014

cells following the first animals in her password, and then gets
back to the ClickAnimal image. For the example password ρ
given previously, she clicks a point inside grid-cell2, and
then a point inside grid-cell1 to select the two grid-cells.
The coordinates of user-clicked points on the grid image (the
original one before scaling if the grid image is scaled) are Fig. 5. Some invariant points (red crosses) of “A”.
recorded. The above process is repeated until the user has
finished entering her password. The resulting sequence
of coordinates of user-clicked points, e.g., “AP150,50, a different point from the stroke segment, e.g., a point at
GP30,66, GP89,160, AP135,97,…” where “APx,y” one-third length of the stroke segment to an end. This variation
denotes the point with coordinates x,y on a ClickAnimal in selecting clickable points ensures that a clickable point is
image, and “GPx,y” denotes the point with coordinates x,y context-dependent: a similarly structured point may or may not
on a grid image, is sent to the authentication server. be a clickable point, depending on the character that the point
Using the ground truth, the server recovers the first animal lies in. Character recognition is required in locating clickable
from the received sequence, regenerates the grid image from points on a TextPoints image although the clickable points
the animal’s bounding rectangle, and recovers the clicked are known for each character. This is a task beyond a bot’s
grid-cells. This process is repeated to recover the password capability.
the user clicked. Its hash is then calculated and compared with A password is a sequence of clickable points. A character
the stored hash. can typically contribute multiple clickable points. Therefore
TextPoints has a much larger password space than ClickText.
V. R ECOGNITION -R ECALL CaRP Image Generation. TextPoints images look identical to
ClickText images and are generated in the same way except
In recognition-recall CaRP, a password is a sequence of
that the locations of all the clickable points are checked to
some invariant points of objects. An invariant point of an
ensure that none of them is occluded or its tolerance region
object (e.g. letter “A”) is a point that has a fixed relative
overlaps another clickable point’s. We simply generate another
position in different incarnations (e.g., fonts) of the object,
image if the check fails. As such failures occur rarely due
and thus can be uniquely identified by humans no matter
to the fact that clickable points are all internal points, the
how the object appears in CaRP images. To enter a password,
restriction due to the check has a negligible impact on the
a user must identify the objects in a CaRP image, and then
security of generated images.
use the identified objects as cues to locate and click the
Authentication. When creating a password, all clickable
invariant points matching her password. Each password point
points are marked on corresponding characters in a CaRP
has a tolerance range that a click within the tolerance range
image for a user to select. During authentication, the user first
is acceptable as the password point. Most people have a click
identifies her chosen characters, and clicks the password points
variation of 3 pixels or less [18]. TextPoint, a recognition-
on the right characters. The authentication server maps each
recall CaRP scheme with an alphabet of characters,
user-clicked point on the image to find the closest clickable
is presented next, followed by a variation for challenge-
point. If their distance exceeds a tolerable range, login fails.
response authentication.
Otherwise a sequence of clickable points is recovered, and its
hash value is computed to compare with the stored value.
A. TextPoints It is worth comparing potential password points between
Characters contain invariant points. Fig. 5 shows some TextPoints and traditional click-based graphical passwords
invariant points of letter “A”, which offers a strong cue to such as PassPoints [5]. In PassPoints, salient points should
memorize and locate its invariant points. A point is said be avoided since they are readily picked up by adversaries
to be an internal point of an object if its distance to the to mount dictionary attacks, but avoiding salient points would
closest boundary of the object exceeds a threshold. A set of increase the burden to remember a password. This conflict
internal invariant points of characters is selected to form a does not exist in TextPoints. Clickable points in TextPoints
set of clickable points for TextPoints. The internality ensures are salient points of their characters and thus help remember
that a clickable point is unlikely occluded by a neighboring a password, but cannot be exploited by bots since they are both
character and that its tolerance region unlikely overlaps with dynamic (as compared to static points in traditional graphical
any tolerance region of a neighboring character’s clickable password schemes) and contextual:
points on the image generated by the underlying Captcha • Dynamic: locations of clickable points and their contexts
engine. In determining clickable points, the distance between (i.e., characters) vary from one image to another. The
any pair of clickable points in a character must exceed a clickable points in one image are computationally inde-
threshold so that they are perceptually distinguishable and pendent of the clickable points in another image, as we
their tolerance regions do not overlap on CaRP images. will see in Section VI-B.
In addition, variation should also be taken into consideration. • Contextual: Whether a similarly structured point is a
For example, if the center of a stroke segment in one character clickable point or not depends on its context. It is only
is selected, we should avoid selecting the center of a similar if within the right context, i.e., at the right location of a
stroke segment in another character. Instead, we should select right character.
ZHU et al.: NEW SECURITY PRIMITIVE BASED ON HARD AI PROBLEMS 897

These two features require recognizing the correct contexts, each user-clicked point falls into the same grid-cell as the
i.e., characters, first. By the very nature of Captcha, recogniz- original password point. Therefore the sequence of grid-cells
ing characters in a Captcha image is a task beyond computer’s generated from user-clicked points is identical to the one that
capability. Therefore, these salient points of characters cannot the authentication server generates from the stored password
be exploited to mount dictionary attacks on TextPoints. of the account. This sequence is used as if the shared secret
between the two parties in a challenge-response authentication
protocol.
B. TextPoints4CR Unlike other CaRP schemes presented in this paper, Text-
For the CaRP schemes presented up to now, the coordinates Points4CR requires the authentication server to store pass-
of user-clicked points are sent directly to the authentication words instead of their hash values. Stored passwords must be
server during authentication. For more complex protocols, say protected from insider attacks; for example, they are encrypted
a challenge-response authentication protocol, a response is sent with a master key that only the authentication server knows.
to the authentication server instead. TextPoints can be modified A password is decrypted only when its associated account
to fit challenge-response authentication. This variation is called attempts to log in.
TextPoints for Challenge-Response or TextPoints4CR.
Unlike TextPoints wherein the authentication server stores VI. S ECURITY A NALYSIS
a salt and a password hash value for each account, the
server in TextPoints4CR stores the password for each account. A. Security of Underlying Captcha
Another difference is that each character appears only once Computational intractability in recognizing objects in CaRP
in a TextPoints4CR image but may appear multiple times in images is fundamental to CaRP. Existing analyses on Captcha
a TextPoints image. This is because both server and client security were mostly case by case or used an approximate
in TextPoints4CR should generate the same sequence of process. No theoretic security model has been established
discretized grid-cells independently. That requires a unique yet. Object segmentation is considered as a computationally-
way to generate the sequence from the shared secret, expensive, combinatorially-hard problem [30], which modern
i.e., password. Repeated characters would lead to several pos- text Captcha schemes rely on. According to [30], the com-
sible sequences for the same password. This unique sequence plexity of object segmentation, C, is exponentially dependent
is used as if the shared secret in a conventional challenge- of the number M of objects contained in a challenge, and
response authentication protocol. polynomially dependent of the size N of the Captcha alphabet:
In TextPoints4CR, an image is partitioned into a fixed grid C = α M P(N), where α > 1 is a parameter, and P() is a
with the discretization grid-cell of size μ along both directions. polynomial function. A Captcha challenge typically contains
The minimal distance between any pair of clickable points 6 to 10 characters, whereas a CaRP image typically contains
should be larger than μ by a margin exceeding a threshold 30 or more characters. The complexity to break a Click-
to prevent two clickable points from falling into a single Text image is about α 30 P(N)/(α 10 P(N)) = α 20 times the
grid-cell in an image. Suppose that a guaranteed tolerance complexity to break a Captcha challenge generated by its
of click errors along both x-axis and y-axis is τ , we require underlying Captcha scheme. Therefore ClickText is much
that μ ≥ 4τ . harder to break than its underlying Captcha scheme. Fur-
Image Generation. To generate a TextPoints4CR image, thermore, characters in a CaRP scheme are arranged two-
the same procedure to generate a TextPoints image is applied. dimensionally, further increasing segmentation difficulty due
Then the following procedure is applied to make every click- to one more dimension to segment. As a result, we can
able point at least τ distance from the edges of the grid-cell it reduce distortions in ClickText images for improved usability
lies in. All the clickable points, denoted as set , are located yet maintain the same security level as the underlying text
on the image. For every point in , we calculate its distance Captcha. ClickAnimal relies on both object segmentation
along x-axis or y-axis to the center of the grid-cell it lies and multiple-label classification. Its security remains an open
in. A point is said to be an internal point if the distance is question.
less than 0.5μ−τ along both directions; otherwise a boundary As a framework of graphical passwords, CaRP does not rely
point. For each boundary point in , a nearby internal point on any specific Captcha scheme. If one Captcha scheme gets
in the same grid-cell is selected. The selected point is called broken, a new and more robust Captcha scheme may appear
a target point of the boundary point. After processing all the and be used to construct a new CaRP scheme. In the remaining
points in , we obtain a new set   comprising internal points; security analysis, we assume that it is intractable for computers
these are either internal clickable points or target points of to recognize any objects in any challenge image generated by
boundary clickable points. Mesh warping [36], widely used in the underlying Captcha of CaRP. More accurately, the Captcha
generating text Captcha challenges, is then used to warp the is assumed to be chosen-pixel attack (CPA)-secure defined
image so that  maps to   . The result is a TextPoint4CR with the following experiment: an adversary A first learns from
image wherein every clickable point would tolerate at least an arbitrary number of challenge images by querying a ground-
τ of click errors. Selection of target points should try to reduce truth oracle O as follows: A selects an arbitrary number of
warping distortion caused by mapping  to   . internal object-points and sends to O, which responds with the
Authentication. In entering a password, a user-clicked point object that each point lies in. Then A receives a new challenge
is replaced by the grid-cell it lies in. If click errors are within τ , image and selects an internal object-point to query O again.
898 IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY, VOL. 9, NO. 6, JUNE 2014

This time O chooses a random bit b ← {0, 1} to determine C. Human Guessing Attacks
what to return: It returns the true object if b = 1; otherwise In human guessing attacks, humans are used to enter
a false object selected with a certain strategy. A is asked to passwords in the trial and error process. Humans are much
determine whether the returned object is the true object that slower than computers in mounting guessing attacks. For
the internal object-point lies in or not. A Captcha scheme is 8-character passwords, the theoretical password space is
said to be CPA-secure if A cannot succeed with a probability 338 ≈ 240 for ClickText with an alphabet of 33 characters,
non-negligibly higher than ½, the probability of a random 108 ≈ 226 for ClickAnimal with an alphabet of 10 animals,
guess. and 10 × 467 ≈ 242 for AnimalGrid with the setting as
ClickAnimal plus 6 × 6 grids. If we assume that 1000 people
are employed to work 8 hours per day without any stop in a
B. Automatic Online Guessing Attacks human guessing attack, and that each person takes 30 seconds
In automatic online guessing attacks, the trial and error to finish one trial. It would take them on average 0.5 · 338 ·30/
process is executed automatically whereas dictionaries can be (3600 · 8 · 1000 · 365) ≈ 2007 years to break a ClickText
constructed manually. If we ignore negligible probabilities, password, 0.5 · 108 · 30/(3600 · 8 · 1000) ≈ 52 days to break
CaRP with underlying CPA-secure Captcha has the following a ClickAnimal password, or 0.5 · 10 · 467 · 30/(3600 · 8 ·
properties: 1000 · 365) ≈ 6219 years to break an AnimalGrid password.
Human guessing attacks on TextPoints require a much longer
1. Internal object-points on one CaRP image are
time than those on ClickText since TextPoints has a much
computationally-independent of internal object-points on
larger password space.
another CaRP image. Particularly, clickable points on
Just like any password scheme, a longitudinal evaluation
one image are computationally-independent of clickable
is needed to establish the effective password space for each
points on another image.
CaRP instantiation. This requires a separate study similar to
2. Eq. (3) holds, i.e., trials in guessing attacks are mutually
what Bonneau [42] did for text passwords.
independent.
A recent study on text passwords [42] indicates that users
The first property can be proved by contradiction. Assume tend to choose passwords of 6–8 characters and have a
that the property does not hold, i.e., there exists an inter- strong dislike of using non-alphanumeric characters, and that
nal object-point α on one image A that is non-negligibly an acceptable benchmark of effective password space is the
dependent of an internal object-point β on another image expected number of optimal guesses per account needed to
B. An adversary can exploit this dependency to launch the break 50% of accounts, which is equivalent to 21.6 bits for
following chosen-pixel attack. In the learning phase, image Yahoo! users. If we assume that ClickText has roughly the
A is used to learn the object that contains point α. In the same effective password space as text passwords, it requires
testing phase, point β on image B is used to query the oracle. on average 1000 people to work 1.65 days or one person to
Since point α is non-negligibly dependent of point β, this work 4.54 years to find a ClickText password.
CPA-experiment would result in a success probability non-
negligibly higher than a random guess, which contradicts the
CPA-secure assumption. We conclude that the first property D. Relay Attacks
holds. Relay attacks may be executed in several ways. Captcha
The second property is a consequence of the first challenges can be relayed to a high-volume Website hacked
property since user-clicked internal object-points in one or controlled by adversaries to have human surfers solve the
trial are computationally-independent of user-clicked internal challenges in order to continue surfing the Website, or relayed
object-points in another trial due to the first property. We have to sweatshops where humans are hired to solve Captcha
ignored background and boundary object-points since clicking challenges for small payments. Is CaRP vulnerable to relay
any of them would lead to authentication failure. attacks? We make the same assumption as Van Oorschot and
Eq. (3) indicates that automatic online guessing attacks Stubblebine [15] in discussing CbPA-protocol’s robustness to
can find a password only probabilistically no matter how relay attacks: a person will not deliberately participate in relay
many trials are executed. Even if the password guess to attacks unless paid for the task. The task to perform and the
be tested in a trial is the actual password, the trial has a image used in CaRP are very different from those used to
slim chance to succeed since a machine cannot recognize solve a Captcha challenge. This noticeable difference makes
the objects in the CaRP image to input the password cor- it hard for a person to mistakenly help test a password guess by
rectly. This is a great contrast to automatic online guessing attempting to solve a Captcha challenge. Therefore it would be
attacks on existing graphical passwords which are determin- unlikely to get a large number of unwitting people to mount
istic, i.e., that each trial in a guessing attack can always human guessing attacks on CaRP. In addition, human input
determine if the tested password guess is the actual password obtained by performing a Captcha task on a CaRP image is
or not, and all the password guesses can be determined by useless for testing a password guess.
a limited number of trials. Particularly, brute-force attacks If sweatshops are hired to mount human guessing attack, we
or dictionary attacks with the targeted password in the dic- can make a rough estimation of the cost. We assume that the
tionary would always succeed in attacking existing graphical cost to click one password on a CaRP image is the same as
passwords. solving a Captcha challenge. Using the lowest retail price, $1,
ZHU et al.: NEW SECURITY PRIMITIVE BASED ON HARD AI PROBLEMS 899

reported [34] to solve 1000 Captcha challenges, the average This Captcha engine accepts only capital letters. As a result,
cost to break a 26-bit password is 0.5 · 226 · 1/1000, or about we chose the following 33 characters in our usability studies:
33.6 thousand US dollars. capital letters except I, J, O, and Z, digits except 0 and 1,
and three special characters “#”, “@”, and “&”. The last three
E. Shoulder-Surfing Attacks special characters were chosen to balance security and users’
strong dislike of using non-alphanumeric characters in text
Shoulder-surfing attacks are a threat when graphical passwords [42]. Characters were arranged in 5 rows. Each
passwords are entered in a public place such as bank ATM character was randomly rotated from −30◦ to 30◦ and scaled
machines. CaRP is not robust to shoulder-surfing attacks from 60% to 120%. Neighboring characters could overlap up
by itself. However, combined with the following dual-view to 3 pixels. Warping effect was set to the light level. Each
technology, CaRP can thwart shoulder-surfing attacks. image was set to 400 by 400 pixels. Fig. 2 in Section IV-A
By exploiting the technical limitation that commonly-used shows an image generated with the above setting.
LCDs show varying brightness and color depending on the In our implementation of AnimalGrid, we used an alphabet
viewing angle, the dual-view technology can use software of 10 animals: bird, cow, horse, dog, giraffe, pig, rabbit, camel,
alone to display two images on a LCD screen concurrently, element, and dinosaur. Each animal had three 3D models. The
one public image viewable at most view-angles, and the other number of animals in a ClickAnimal image ranged randomly
private image viewable only at a specific view-angle [38]. from 10 to 12, with the extra animals randomly selected
When a CaRP image is displayed as the “private” image by the from the alphabet. In generating an animal object, one of
dual-view system, a shoulder-surfing attacker can capture user- the three 3D animal models was randomly selected, and
clicked points on the screen, but cannot capture the “private” posed at a random view in generating a 2D object. Each
CaRP image that only the user can see. However, the obtained animal was assigned a color randomly selected from a set
user-clicked points are useless for another login attempt, where of 12 colors. Generated 2D objects were placed randomly
a new, computationally-independent image will be used and on a grass background, with the main part of each animal
thus the captured points will not represent the correct password not occluded by other animals. Each ClickAnimal image was
on the new image anymore. also set to 400 by 400 pixels. A 6 × 6 grid was used for
To the contrary, common implementations of graphical CAS. Cells were labeled clockwise starting from cell 0. Fig. 4
password schemes such as PassPoints use a static input image in Section IV shows an example of generated ClickAnimal
in the same location of the screen for each login attempt. images and an example of grid images. There was a cross
Although this image can be hidden as the private image by icon on top of a grid image that a user could click to close
the dual-view technology from being captured by a shoulder- the grid image.
surfer, the user-clicked points captured in a successful login
are still the valid password for next login attempt. That is,
capturing the points alone is sufficient for an effective attack B. Usability Study
in this case. 1) Experimental Settings
In general, the higher the correlation of user-clicked points We conducted an in-lab usability study to compare Click-
between different login attempts is, the less effective protection Text, AnimalGrid, PassPoints, text password (Text), and text
the dual-view technology would provide to thwart shoulder- password combined with text Captcha (P + C). P + C was
surfing attacks. used to simulate a CbPA-protocol when a Captcha challenge
was used in login. In P + C, a user was asked to enter
F. Others a password and solve a Captcha challenge generated with
CaRP is not bulletproof to all possible attacks. CaRP is the same Captcha engine used in ClickText. Each Captcha
vulnerable if a client is compromised such that both the image challenge contained 6 to 8 random characters. Keyboard input
and user-clicked points can be captured. Like many other was used to create and enter passwords for Text and P + C
graphical passwords such as CCP and PCCP, CaRP schemes as well as to enter user IDs for all the schemes. As explained
using the basic CaRP authentication are vulnerable to phishing later, Text and P + C were conducted as if they were a single
since user-clicked points are sent to the authentication server. scheme to participants.
However, CaRP schemes such as TextPoints4CR used with We recruited 40 (30 males and 10 females) voluntary senior
challenge-response authentication are robust to phishing to and graduate students majoring in engineering and sciences,
a certain level: a phishing adversary has to mount offline with ages ranging from 20 to 28 years (the average age = 23.4
guessing attacks to find out the password using the verifiable and the standard deviation = 1.74). For pragmatic rea-
data obtained through a successful phishing attack. sons, they were recruited from interns working at Microsoft
Research Asia. None of them had studied security or was
involved in any security usability study before. They were
VII. E MPIRICAL E VALUATIONS
involved in this work solely as participants in our usability
A. Implementations study. All participants were trained to get familiar with each
ClickText and AnimalGrid were implemented using authentication scheme and their experimental tasks before our
ASP.NET. ClickText was implemented by calling a config- data collection. During the experiment, one of the authors got
urable text Captcha engine commercially used by Microsoft. each participant when it was time for the participant to take
900 IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY, VOL. 9, NO. 6, JUNE 2014

a test, which ensures that we could collect the required data process was repeated until the server received a correct answer
from every participant. to a challenge. Then the server recorded the time as the login
Each scheme was tested in the following setting: a partic- time for P + C, which included the time that the participant
ipant used a web browser to interact with an authentication failed to solve a challenge.
server, creating passwords or logging into the server. Once 2) Experimental Results
a participant submitted his/her credentials to the server, the Usability. Among all the recorded login attempts, 24.4%
browser would show the login result. failed. Tests after a larger interval tended to have more
The schemes were classified into two categories according failed attempts. Some participants contributed significantly
to their types of passwords: AnimalGrid and PassPoints in more failed attempts than others. At the end of tests, 40
the first category, and the remaining schemes in the second (100%) participants remembered their PassPoints passwords,
category. A password for the schemes in the second category 39 (97.5%) remembered their passwords of both ClickText and
was a string of characters. AnimalGrid, and 34 (85%) remembered their Text passwords.
Each participant was asked to create a new password never One participant forgot the AnimalGrid password at the one-
used previously for each scheme, 4 in total, and a user hour test, and another one forgot the ClickText password
ID for all the schemes. Each created password consisted of at the one-week test. For Text, two participants forgot their
8 characters or click-points. We also made it explicit that passwords at the one-week test, and four forgot at the three-
participants were not allowed to write down their passwords. week test. PassPoints scored the best in memorability whereas
Each password must meet the following minimum com- Text scored the worst. This may be partially due to the fact that
plexity requirements. A password must contain at least one hotspots were allowed for PassPoints passwords, and that Text
letter, one digit, and one non-alphanumerical character for passwords had a much larger alphabet than both ClickText and
both Text and ClickText, and at least three different animals AnimalGrid.
for AnimalGrid. No repeating patterns such as “A#A#…” or Table I shows the login time averaged over the
“Dog, Dog,…” were allowed. For PassPoints, click-points in 40 participants’ successful login attempts and the sample
a password must be distinct (i.e., no click-point was inside standard deviation as well as the maximum and minimum
another click-point’s tolerance range). Each password was login times for each scheme. ClickText, AnimalGrid and
verified immediately after creation. P + C had similar average login time whereas PassPoints had
The study was partitioned into two stages. Two schemes a little shorter average login time. Text had a much shorter
were tested in each stage. In the first stage, two schemes, one average login time than the other schemes. Each scheme
from each category, were randomly selected for a participant to had a large sample standard deviation relative to the average
test. One scheme had a string of text characters as a password login time, indicating large variations of login time for each
while the other had a string of animals and grid cells or click- scheme, which is confirmed by the great difference between
points as a password. the minimum and maximum login times in each column
During the study, each participant was asked to log in shown in Table I. This is mainly caused by large individual
with the following intervals between two consecutive login differences. We did not detect obvious patterns indicating that
tests: one hour after creation, one day, one week, and three a test with a longer interval had a larger login time than a test
weeks. In each test, a participant was allowed three tries to with a shorter interval. We did notice that some participants
log in. If he/she failed three attempts, his/her password was had a much larger login time when the preceding trial failed,
considered forgotten, and no more test would be conducted but many other participants didn’t follow this observation.
with the participant for that specific scheme. The passwords in our tests were used much less fre-
In the second stage, the remaining two schemes were tested quently than typical usage of a password in practice since we
in the same way as above. would like to test password memorability for each scheme.
In the end, each participant was required to fill a question- We expect improved results when a password is used more
naire to compare ClickText and AnimalGrid with PassPoints frequently.
and Text, and to compare ClickText with P+C, in terms of Table II shows the comparison results of different scheme
ease of use as a password system, taking both memorizing for ease of use as a password system. We assign a value
and entering a password into consideration. ranging from 1 to 5 to each category, indicating the spectrum
A participant’s login time in each trial was recorded by from “much more difficult” to “much easier”. ClickText has
the server. We define the login time as the duration from the a mean value of 3.2 and a median value of 3 as compared to
time when the server received a login request to the time PassPoints, and a mean of 2.85 and a median of 2 as compared
when the server gave its response to the login request, which to Text. AnimalGrid has a mean of 3.325 and a median of 4 as
includes the time to enter user ID and password, to generate compared to PassPoints, and a mean of 3.5 and a median of
a CaRP image, and to communicate between the server and a 4 as compared to Text. ClickText has a mean of 3.875 and a
participant’s browser. median of 4 as compared to P + C.
For Text and P + C, a participant was asked to enter a Security. We also analyzed the security of the passwords
password. If successful, the server recorded the time as the we collected for Text and ClickText, with a popular password-
login time for Text, and then generated a Captcha challenge cracking tool, John the Ripper version 1.7.9 [43]. Given our
and sent to the user to solve. If the participant failed with sample size of 40 users, the distribution of passwords will not
the challenge, another challenge was generated and used. This be as complete as a larger study with significantly more users,
ZHU et al.: NEW SECURITY PRIMITIVE BASED ON HARD AI PROBLEMS 901

TABLE I password complexity requirement described in the previous


L OGIN T IME FOR D IFFERENT S CHEMES : AVERAGE (T ), S AMPLE subsection.
S TANDARD D EVIATION (σ ), M AX . AND M IN . 3) Discussions
Wiedenbeck et al. [5] studied memorability of text pass-
words and PassPoints with 20 participants for each scheme:
their recall rate after one week was 65% and 70%, respectively.
Our memorability results are higher than theirs for both text
and PassPoints passwords.
The sample sizes in both [5] and our studies were too small
to explain conclusively the difference in the results. However,
this difference could probably be explained by the difference
of the subjects in both studies. First, although randomly
TABLE II
chosen, our participants were from the pool of interns working
C OMPARING D IFFERENT S CHEMES FOR E ASE OF U SE
at Microsoft Research Asia, who were selected typically from
leading universities. Second, our participants were used to
strong text passwords as their Microsoft accounts were strictly
enforced with strong password policies (e.g. each account must
use a complex password, and a password has to be changed
regularly, with the new password having to be significantly
different from previously used ones). Third, our participants
were much younger, with an average age of 23.4 years as
compared to the average of 32.9 years in Wiedenbeck et al.’s
experiment.
However, we do not think this sample bias introduced an
undue impact on the main goal of our experiment, namely,
comparing the performance of CaRP with other authentication
but such an analysis can provide at least an indication of their schemes. Nonetheless, user studies with a diverse sample pool
security. are needed for CaRP, which are our future work.
John the Ripper has three operation modes: “single crack”,
“wordlist”, and “incremental”. In the “single crack” mode, C. Computation Load on Server
login names and other account information as well as a Compared with many graphical password schemes, gener-
large set of mangling rules are used to generate password ation of CaRP images is an extra load on the server side.
guesses. In the “wordlist” mode, a list of words and word We tested our implementations of ClickText and AnimalGrid
mangling rules are used to generate password guesses. In the on the same HP Compaq Elite 8100 PC we used to run
“incremental” mode, a brute force attack is applied, with John the Ripper, as described in Section VII-B. For images
guesses being tested at the descending order of their likelihood of 400x400 pixels, the average speed was 10.68 images
to be a password. per second in generating a ClickText image with 33 characters
In our study, the default parameters and settings were used and 0.86 images/s in generating an AnimalGrid image with
for John the Ripper except that length of a password was set 10 to 12 animals. Our implementations were single-threaded
to 8 characters, and that the recommended wordlist “all.lst” without code optimization, and did not take any advantage
from [44] was used in the “wordlist” mode. When operat- of multi-core capability of the test machine. Much faster
ing in both “single crack” and “wordlist” modes, John the image generation should be viable by exploiting multi-core
Ripper didn’t find any password for either Text or ClickText. architecture of today’s servers and by optimizing the code.
When running in the “incremental” mode for 24 hours on a
HP Compaq Elite 8100 PC with Intel Core i7-870 CPU, 8GB VIII. BALANCE OF S ECURITY AND U SABILITY
RAM and 64-bit Windows 7 OS, John the Ripper found two
of 40 (i.e., 5.0%) passwords for Text but didn’t find any Some configurations of CaRP offer acceptable usability
password for ClickText. The small difference in the results across common device types, e.g. our usability studies used
of the “incremental” mode is probably because the unusual 400 × 400 images, which fit displays of smart phones, iPads,
alphabet set in ClickText increased a user’s chance to choose and PCs. While CaRP may take a similar time to enter
more random passwords in order to meet the same password a password as other graphical password schemes, it takes
complexity requirement applied to both Text and ClickText. a longer time to enter a password than widely used text
A separate longitudinal study is needed to fully understand passwords. We discuss two approaches for balancing CaRP’s
the distribution and security of ClickText passwords that users security and usability.
would select.
We conclude from the cracking results that the pass- A. Alphabet Size
words the participants selected for Text and ClickText were Increasing alphabet size produces a larger password space,
reasonably strong, which matches our expectation of the and thus is more secure, but also leads to more complex CaRP
902 IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY, VOL. 9, NO. 6, JUNE 2014

images. When the complexity of CaRP images gets beyond a for every login attempt to make trials of an online guessing
certain point, humans may need a significant amount of time attack computationally independent of each other. A password
to recognize the characters in a CaRP image and may get of CaRP can be found only probabilistically by automatic
frustrated. The optimal alphabet size for a CaRP scheme such online guessing attacks including brute-force attacks, a desired
as ClickText remains an open question. security property that other graphical password schemes lack.
It is possible to use a fixed subset of the alphabet to generate Hotspots in CaRP images can no longer be exploited to mount
CaRP images for a user if the server receives her user ID automatic online guessing attacks, an inherent vulnerability in
before sending an image. In this case, the authentication server many graphical password systems. CaRP forces adversaries
allows a user to create her password from the full alphabet. to resort to significantly less efficient and much more costly
Once the password is created, the server finds a suitable subset human-based attacks. In addition to offering protection from
of a reasonable size, which contains all the symbols in the online guessing attacks, CaRP is also resistant to Captcha
password. The server stores the subset or its index for the relay attacks, and, if combined with dual-view technologies,
account, and retrieves it later when the account attempts to shoulder-surfing attacks. CaRP can also help reduce spam
log in to generate a CaRP image. This scheme is suitable emails sent from a Web email service.
when the alphabet must be large while some people would Our usability study of two CaRP schemes we have
log in on small-screen devices for which an image using the implemented is encouraging. For example, more participants
full alphabet would be too complex to quickly identify the considered AnimalGrid and ClickText easier to use than
objects in the image. PassPoints and a combination of text password and Captcha.
Both AnimalGrid and ClickText had better password memora-
B. Advanced Mechanisms bility than the conventional text passwords. On the other hand,
the usability of CaRP can be further improved by using images
The CbPA-protocols described in Section II-C require a
of different levels of difficulty based on the login history of
user to solve a Captcha challenge in addition to inputting a
the user and the machine used to log in. The optimal tradeoff
password under certain conditions. For example, the scheme
between security and usability remains an open question for
described in [16] applies a Captcha challenge when the number
CaRP, and further studies are needed to refine CaRP for actual
of failed login attempts has reached a threshold for an account.
deployments.
A small threshold is applied for failed login attempts from
Like Captcha, CaRP utilizes unsolved AI problems.
unknown machines but a large threshold is applied for failed
However, a password is much more valuable to attackers than
attempts from known machines on which a successful login
a free email account that Captcha is typically used to protect.
occurred within a given time frame. This technique can be
Therefore there are more incentives for attackers to hack CaRP
integrated into CaRP to enhance usability:
than Captcha. That is, more efforts will be attracted to the
1. A regular CaRP image is applied when an account has following win-win game by CaRP than ordinary Captcha:
reached a threshold of failed login attempts. As in [16], If attackers succeed, they contribute to improving AI by
different thresholds are applied for logins from known providing solutions to open problems such as segmenting
and unknown machines. 2D texts. Otherwise, our system stays secure, contributing
2. Otherwise an “easy” CaRP image is applied. to practical security. As a framework, CaRP does not rely
An “easy” CaRP image may take several forms depending on any specific Captcha scheme. When one Captcha scheme
on the application requirements. It can be an image generated is broken, a new and more secure one may appear and be
by the underlying Captcha generator with less distortion or converted to a CaRP scheme.
overlapping, a permuted “keypad” wherein undistorted visual Overall, our work is one step forward in the paradigm of
objects (e.g. characters) are permuted, or even a regular using hard AI problems for security. Of reasonable security
“keypad” wherein each visual object (e.g., character) is always and usability and practical applications, CaRP has good
located at a fixed position. These different forms of “easy” potential for refinements, which call for useful future work.
CaRP images allow a system to adjust the level of difficulty More importantly, we expect CaRP to inspire new inventions
to fit its needs. of such AI based security primitives.
With such a modified CaRP, a user would always enter a
password on an image for both cases listed above. No extra R EFERENCES
task is required. The only difference between the two cases
[1] R. Biddle, S. Chiasson, and P. C. van Oorschot, “Graphical passwords:
is that a hard image is used in the first case whereas an easy Learning from the first twelve years,” ACM Comput. Surveys, vol. 44,
image is used in the second case. no. 4, 2012.
[2] (2012, Feb.). The Science Behind Passfaces [Online]. Available:
http://www.realuser.com/published/ScienceBehindPassfaces.pdf
IX. C ONCLUSION [3] I. Jermyn, A. Mayer, F. Monrose, M. Reiter, and A. Rubin, “The design
We have proposed CaRP, a new security primitive relying and analysis of graphical passwords,” in Proc. 8th USENIX Security
Symp., 1999, pp. 1–15.
on unsolved hard AI problems. CaRP is both a Captcha and [4] H. Tao and C. Adams, “Pass-Go: A proposal to improve the usability of
a graphical password scheme. The notion of CaRP intro- graphical passwords,” Int. J. Netw. Security, vol. 7, no. 2, pp. 273–292,
duces a new family of graphical passwords, which adopts 2008.
[5] S. Wiedenbeck, J. Waters, J. C. Birget, A. Brodskiy, and N. Memon,
a new approach to counter online guessing attacks: a new “PassPoints: Design and longitudinal evaluation of a graphical password
CaRP image, which is also a Captcha challenge, is used system,” Int. J. HCI, vol. 63, pp. 102–127, Jul. 2005.
ZHU et al.: NEW SECURITY PRIMITIVE BASED ON HARD AI PROBLEMS 903

[6] P. C. van Oorschot and J. Thorpe, “On predictive models and user- [33] N. Joshi. (2009, Nov. 29). Koobface Worm Asks for CAPTCHA [Online].
drawn graphical passwords,” ACM Trans. Inf. Syst. Security, vol. 10, Available: http://blogs.mcafee.com/mcafee-labs/koobface-worm-asks-
no. 4, pp. 1–33, 2008. for-CAPTCHA
[7] K. Golofit, “Click passwords under investigation,” in Proc. ESORICS, [34] M. Motoyama, K. Levchenko, C. Kanich, D. McCoy, G. M. Voelker,
2007, pp. 343–358. and S. Savage, “Re: CAPTCHAs—Understanding CAPTCHA-Solving
[8] A. E. Dirik, N. Memon, and J.-C. Birget, “Modeling user choice in the Services in an Economic Context,” in Proc. USENIX Security, 2010,
passpoints graphical password scheme,” in Proc. Symp. Usable Privacy pp. 435–452.
Security, 2007, pp. 20–28. [35] M. Szydlowski, C. Kruegel, and E. Kirda, “Secure input for web
[9] J. Thorpe and P. C. van Oorschot, “Human-seeded attacks and exploiting applications,” in Proc. ACSAC, 2007, pp. 375–384.
hot spots in graphical passwords,” in Proc. USENIX Security, 2007,
[36] G. Wolberg, “2-pass mesh warping,” in Digital Image Warping.
pp. 103–118.
Hoboken, NJ, USA: Wiley, 1990.
[10] P. C. van Oorschot, A. Salehi-Abari, and J. Thorpe, “Purely automated
attacks on passpoints-style graphical passwords,” IEEE Trans. Inf. [37] HP TippingPoint DVLabs, New York, NY, USA. (2011). The
Forensics Security, vol. 5, no. 3, pp. 393–405, Sep. 2010. Mid-Year Top Cyber Security Risks Report [Online]. Available:
[11] P. C. van Oorschot and J. Thorpe, “Exploiting predictability in click- http://h20195.www2.hp.com/v2/GetPDF.aspx/4AA3-7045ENW.pdf
based graphical passwords,” J. Comput. Security, vol. 19, no. 4, [38] S. Kim, X. Cao, H. Zhang, and D. Tan, “Enabling concurrent dual views
pp. 669–702, 2011. on common LCD screens,” in Proc. ACM Annu. Conf. Human Factors
[12] T. Wolverton. (2002, Mar. 26). Hackers Attack eBay Accounts Comput. Syst., 2012, pp. 2175–2184.
[Online]. Available: http://www.zdnet.co.uk/news/networking/2002/03/ [39] S. Li, S. A. H. Shah, M. A. U. Khan, S. A. Khayam, A.-R. Sadeghi,
26/hackers-attack-ebay-accounts-2107350/ and R. Schmitz, “Breaking e-banking CAPTCHAs,” in Proc. ACSAC,
[13] HP TippingPoint DVLabs, Vienna, Austria. (2010). Top Cyber Security 2010, pp. 1–10.
Risks Report, SANS Institute and Qualys Research Labs [Online]. [40] H. Gao, X. Liu, S. Wang, and R. Dai, “A new graphical password scheme
Available: http://dvlabs.tippingpoint.com/toprisks2010 against spyware by using CAPTCHA,” in Proc. Symp. Usable Privacy
[14] B. Pinkas and T. Sander, “Securing passwords against dictionary Security, 2009, pp. 760–767.
attacks,” in Proc. ACM CCS, 2002, pp. 161–170. [41] L. Wang, X. Chang, Z. Ren, H. Gao, X. Liu, and U. Aickelin, “Against
[15] P. C. van Oorschot and S. Stubblebine, “On countering online dictionary spyware using CAPTCHA in graphical password scheme,” in Proc. IEEE
attacks with login histories and humans-in-the-loop,” ACM Trans. Inf. Int. Conf. Adv. Inf. Netw. Appl., Jun. 2010, pp. 1–9.
Syst. Security, vol. 9, no. 3, pp. 235–258, 2006. [42] J. Bonneau, “The science of guessing: Analyzing an anonymized corpus
[16] M. Alsaleh, M. Mannan, and P. C. van Oorschot, “Revisiting of 70 million passwords,” in Proc. IEEE Symp. Security Privacy,
defenses against large-scale online password guessing attacks,” IEEE Jun. 2012, pp. 20–25.
Trans. Dependable Secure Comput., vol. 9, no. 1, pp. 128–141,
Jan./Feb. 2012. [43] John the Ripper Password Cracker [Online]. Available: http://www.
[17] L. von Ahn, M. Blum, N. J. Hopper, and J. Langford, “CAPTCHA: openwall.com/john/
Using hard AI problems for security,” in Proc. Eurocrypt, 2003, [44] Openwall Wordlists Collection [Online]. Available: http://www.
pp. 294–311. openwall.com/wordlists/
[18] S. Chiasson, P. C. van Oorschot, and R. Biddle, “Graphical password
authentication using cued click points,” in Proc. ESORICS, 2007,
pp. 359–374. Bin B. Zhu received the B.S. degree in physics
[19] S. Chiasson, A. Forget, R. Biddle, and P. C. van Oorschot, “Influencing from the University of Science and Technology
users towards better passwords: Persuasive cued click-points,” in Proc. of China, Hefei, China, and the M.S. and Ph.D.
Brit. HCI Group Annu. Conf. People Comput., Culture, Creativity, degrees in electrical engineering from the University
Interaction, vol. 1. 2008, pp. 121–130. of Minnesota, Minneapolis, MN, in 1986, 1993,
and 1998, respectively. From 1997 to 2001, he
[20] D. Davis, F. Monrose, and M. Reiter, “On user choice in graphical was a Lead Scientist with Cognicity, Inc., a startup
password schemes,” in Proc. USENIX Security, 2004, pp. 1–11. company he cofounded with his dissertation Advisor
[21] R. Dhamija and A. Perrig, “Déjà Vu: A user study using images for and a Colleague in 1997. Since 2001, he has been a
authentication,” in Proc. 9th USENIX Security, 2000, pp. 1–4. Researcher with Microsoft Research Asia, Beijing,
[22] D. Weinshall, “Cognitive authentication schemes safe against spyware,” China. He has published four book chapters and
in Proc. IEEE Symp. Security Privacy, May 2006, pp. 300–306. more than 60 journal and conference papers. He has also received 38 U.S.
[23] P. Dunphy and J. Yan, “Do background images improve ‘Draw a Secret’ patents. His research interests include Internet security, applied cryptography,
graphical passwords,” in Proc. ACM CCS, 2007, pp. 1–12. data security and privacy, and multimedia processing.
[24] P. Golle, “Machine learning attacks against the Asirra CAPTCHA,” in
Proc. ACM CCS, 2008, pp. 535–542.
Jeff Yan received the Ph.D. degree in computer
[25] B. B. Zhu et al., “Attacks and design of image recognition CAPTCHAs,”
security from Cambridge University. He is on the
in Proc. ACM CCS, 2010, pp. 187–200.
faculty of computer science, Newcastle Univer-
[26] J. Yan and A. S. El Ahmad, “A low-cost attack on a microsoft sity, England. His recent research includes breaking
CAPTCHA,” in Proc. ACM CCS, 2008, pp. 543–554. various graphical passwords and CAPTCHAs, and
[27] G. Mori and J. Malik, “Recognizing objects in adversarial clutter,” inventing new ones. He has published novel attacks
in Proc. IEEE Comput. Society Conf. Comput. Vis. Pattern Recognit., that broke reCAPTCHA, and CAPTCHAs designed
Jun. 2003, pp. 134–141. by Microsoft, Yahoo, and Google. A variant of
[28] G. Moy, N. Jones, C. Harkless, and R. Potter, “Distortion estimation his graphical password design, Background Draw a
techniques in solving visual CAPTCHAs,” in Proc. IEEE Comput. Soc. Secret, is deployed in Microsoft Windows 8.
Conf. Comput. Vis. Pattern Recognit., Jul. 2004, pp. 23–28.
[29] K. Chellapilla, K. Larson, P. Simard, and M. Czerwinski, “Computers
beat humans at single character recognition in reading-based human
interaction proofs,” in Proc. 2nd Conf. Email Anti-Spam, 2005, pp. 1–3. Guanbo Bao received the Ph.D. degree in computer
[30] K. Chellapilla, K. Larson, P. Simard, and M. Czerwinski, “Building science from the Institute of Automation, Chinese
segmentation based human-friendly human interaction proofs,” in Proc. Academy of Sciences, in 2012, where he is an
2nd Int. Workshop Human Interaction Proofs, 2005, pp. 1–10. Assistant Professor. His research interests include
high performance rendering and image editing.
[31] J. Elson, J. R. Douceur, J. Howell, and J. Saul, “Asirra: A CAPTCHA
that exploits interest-aligned manual image categorization,” in Proc.
ACM CCS, 2007, pp. 366–374.
[32] R. Lin, S.-Y. Huang, G. B. Bell, and Y.-K. Lee, “A new CAPTCHA
interface design for mobile devices,” in Proc. 12th Austral. User Inter.
Conf., 2011, pp. 3–8.
904 IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY, VOL. 9, NO. 6, JUNE 2014

Maowei Yang was born in Chongqing in 1986. He Ning Xu received the B.S. degree from the Nanjing
received the B.S. and M.S. degrees in computer University of Science and Technology and the M.S.
science and technology from Sichuan University, degree from Shanghai Jiao Tong University, both in
China, in 2009 and 2012, respectively. He joined automation, in 2005 and 2008, respectively. He is a
Tencent, Guangzhou, China, in 2012, and is cur- Research Software Development Engineer with the
rently working on mobile Internet applications. Innovation Engineering Group, Microsoft Research
Asia. He is currently working on image processing
and computer vision related projects.

View publication stats

You might also like