You are on page 1of 6

Color Pass: An Intelligent User Interface to Resist

Shoulder Surfing Attack

Nilesh Chakraborty Samrat Mondal


Department of Computer Science & Engineering Department of Computer Science & Engineering
Indian Institute of Technology, Patna Indian Institute of Technology, Patna
Patna, India 800013 Patna, India 800013
Email: nilesh.pcs13@iitp.ac.in Email: samrat@iitp.ac.in

Abstract—Classical PIN entry mechanism is widely used for respect to each challenge. The main objective of Color Pass
authenticating a user. It is a popular scheme because it nicely scheme is that it is easy to use and does not require any
balances the usability and security aspects of a system. However, special prerequisite knowledge. In addition to the resistance
if this scheme is to be used in a public system then the scheme against shoulder surfing attack, it also provides equal password
may suffer from shoulder surfing attack. In this attack, an strength as compared with the conventional PIN entry scheme.
unauthorized user can fully or partially observe the login session.
Even the activities of the login session can be recorded which the The rest of the paper is organized as follows- Section II
attacker can use it later to get the actual PIN. In this paper, is about some existing methodologies proposed for partially
we propose an intelligent user interface, known as Color Pass observable system. In Section III, the proposed Color Pass
to resist the shoulder surfing attack so that any genuine user
scheme has been discussed in detail. The user interface for
can enter the session PIN without disclosing the actual PIN. The
Color Pass is based on a partially observable attacker model. The Color Pass has been described in Section IV. Some of the
experimental analysis shows that the Color Pass interface is safe important features and usability analysis of Color Pass have
and easy to use even for novice users. been illustrated in Section V. Finally we conclude in Section
VI and give future direction of our work.
Keywords—Color PIN, Shoulder Surfing Attack, User Interface,
Password, Partially Observable.
II. R ELATED W ORK
I. I NTRODUCTION Shoulder surfing attack is not new. In literature, we find
many graphics based techniques [4] [5] [6] [7] [8] to resist such
In a recent report [1], the number of Internet users has been attacks. However, we will discuss here some of the partially
reported as approximately 2.4 billion world wide, and from observable schemes which have motivated us to propose the
2000 to 2012, it is a staggering 566.4% increase. This huge Color Pass scheme.
number of users consists of both genuine users and malicious
users. So software applications which deal with sensitive and
private information, must provide a sound protection to the A. Mod 10 method
system so that genuine and malicious users can be identified In this work G.T Wilfong [9] proposed a methodology
properly. In computer security, authentication is such a tech- where user has to perform a simple mathematical operation.
nique by which the system identifies the genuine users. Among User remembers a four digit PIN number from the set {0,
several authentication schemes, password based authentication 1,..., 9}. User receives a challenge from the set {0, 1,..., 9}
is still one of the widely accepted solution for its ease of via a protected media. User will add the challenge digit with
use and cost effectiveness [2]. Though conventional PIN entry the corresponding PIN digit and will perform a modulo 10
mechanism is widely famous for ease of usability, but it is operation. Finally he will enter back the obtained digit using a
prone to shoulder surfing attack [3] in which an attacker can public keyboard. Suppose the first digit of the user chosen PIN
record the login procedure of a user for an entire session and is 5. User now securely receives a challenge 7 from the system.
can retrieve the user original PIN. So the valid response by user will be (5+7) modulo 10 (which
Based on the information available to the attacker, secure is equal to 2). Though this method is easy to execute for math-
login methods can be classified into two broad categories- oriented people and gives good security against guessing the
fully observable and partially observable. In the first one, the password but for non-math-oriented people this methodology
attacker can fully observe the entire login procedure for a par- is difficult to adopt.
ticular session and in the second one, the attacker can partially
observe the login procedure. Our proposed methodology falls B. Mod 10 table method:
into second category and users are required to remember four 

colors instead of conventional four digit PINs. In this method Perkovic et.al. [10] proposed a concept of
lookup table. If user chosen PIN digit is 5 and the system
The proposed Color Pass methodology implements one- generated challenge is 7 then the user first goes to the row
time pass paradigm. Thus corresponding to four color PINs, number 5 in the lookup table and subsequently goes to the
the user gets four challenges and enters four responses with digit 7 in that row. After that user will see the corresponding

TS14HMI01 270 978-1-4799-2608-4/14/$31.00 ©2019 IEEE 13


6 3 9 4 8 1 7 2 5 0
0 0 1 2 3 4 5 6 7 8 9 under the value 9 in Fig.1(a) so the user will press the down
1 9 0 1 2 3 4 5 6 7 8 arrow. When the PIN digit is 6 and the challenge is also 6 then
2 8 9 0 1 2 3 4 5 6 7 the response is press ◦ key. The valid responses is shown in
3 7 8 9 0 1 2 3 4 5 6
4 6 7 8 9 0 1 2 3 4 5
TABLE II which is clearly understandable from Fig.1(a). SSSL
5 5 6 7 8 9 0 1 2 3 4 gives a robust solution to the shoulder surfing attack. Also the
6 4 5 6 7 8 9 0 1 2 3 scheme is easy for non-math oriented users. However,in SSSL
7 3 4 5 6 7 8 9 0 1 2
8 2 3 4 5 6 7 8 9 0 1
the existence of co-relation between digits can be observed by
9 1 2 3 4 5 6 7 8 9 0 a clever attacker and he may use it to guess the PIN.
TABLE I: User Lookup Table
III. P ROPOSED M ETHODOLOGY
PIN Challenge Response
9 3 ↓ The proposed Color Pass interface is based on partially
6 6 ◦ observable attacker model in which an attacker cannot see the
9 5  challenge values generated by the system but can only see the
7 7 ◦
8 1  response given by the user. Thus it is assumed that the media
through which user gets the challenge should ensure security
TABLE II: User response table of SSSL against man-in-middle attack [12]. In this section we first
discuss about the characteristic of user chosen PIN followed by
user login procedure for a session. Then we give details about
the structure and characteristics of tables used in implementing
column number where 7 is placed (here 9) and enter back 9 Color Pass. And then we discuss about PIN entry mechanism
as response corresponding to the first challenge. using our proposed methodology.
If the digits in the top row of Table I is arranged in
ascending order from 0 to 9 then it will be equivalent as
modulo 10 addition. Hence the name of the table is justified. A. Characteristic of user chosen PIN
But one of the drawback of this procedure is login time in this
method goes high with respect to modulo 10 method. The other In the conventional schemes it is required to remember
drawback we observed that the error rate does not improve either few digits or few characters as user PIN. But in our
much with the number of attempts. scheme the color is used to form a PIN. User can choose four
colors from a set of ten different colors represented as {C0 ,
C2 , · · · , C9 }. User has the flexibility to choose one color more
C. Shoulder Surfing Safe login than once. So one possible instance of user chosen PIN might
Unlike the previous two schemes, in SSSL, proposed by be C1 C2 C1 C4 . Each Ci denotes a specific color (say yellow
Perkovic et al. [11], user does not provide any number as or brown). As user chosen PIN is comprised of four colors so
response rather enters some direction to the system. probability of guessing the PIN will be 1/104 .

9 7 8 9 7
B. Steps of Login Procedure
3 1 2 3 1
In this subsection we will discuss about how user will
6 4 5 6 4
interact with system during entire session.
9 7 8 9 7

3 1 2 3 1
• User enters his login id.

(a) (b) • Once system checks that the login id exists then it
will generate Feature Tables using Algorithm 1.
Fig. 1: (a)Orientation of digits (b) Keypad structure for SSSL
• System then generates four random challenge values
ranges from 1 · · · 10.
In this scheme a user remembers a five digits PIN. In
terms of authenticate himself the user has to answer to the • Next user will have to give response to those challenge
challenge values throws to him with respect to the table and values (User response ranges from 0 to 9).
keypad consist of arrows shown in Fig.1. The table in SSSL
method constructed in such a way that every digit i is an • User response will be evaluated by system using
immediate neighbor to other 8 digits from the set {1, 2, ...9} Algorithm 2.
(see Fig.1(a)). User locate the relative position of their original
• Finally system will decide whether the user is legiti-
PIN digits and the challenge values via keypad shown in
mate or not using Algorithm 3.
Fig.1(b). The following example will give a clear idea about
SSSL methodology.
User interface for login has been given in Section IV. Algo-
Suppose user chosen a five digit pin 96978, and the rithms used in the above procedure, have been described in
corresponding challenge value is 36571. As digit 3 is placed Section III-E.

TS14HMI01 270 978-1-4799-2608-4/14/$31.00 ©2019 IEEE 14


C0 (0) C0 (1)
C. Characteristic of Feature Tables C1 (1) C2 (2) C3 (3) C1 (2) C2 (3) C3 (4)
C4 (4) C5 (5) C6 (6) C4 (5) C5 (6) C6 (7)
Color Pass interface consists of 10 different Feature Tables C7 (7) C8 (8) C9 (9) C7 (8) C8 (9) C9 (0)
which are numbered from 1 to 10. Each cell of a table is 1 2
represented by a pair < Ci , Vi >. Here Ci denotes the color
of the cell i and Vi indicates the digit corresponding to cell i. TABLE IV: First feature TABLE V: Second feature
table of Color Pass table of Color Pass
Ci is unique with respect to a Feature Table. Thus no color
occupies in more than one cell. So for a particular table there C0 (2) C0 (3)
C1 (3) C2 (4) C3 (5) C1 (4) C2 (5) C3 (6)
will be ten different color cells. The positions of color cells C4 (6) C5 (7) C6 (8) C4 (7) C5 (8) C6 (9)
is shown in Table III and this is fixed for every table. So if C7 (9) C8 (0) C9 (1) C7 (0) C8 (1) C9 (2)
first cell of a table is filled with C1 then first cell of all other 3 4
tables are also filled with C1 .
TABLE VI: Third feature TABLE VII: Fourth fea-
0 table of Color Pass ture table of Color Pass
1 2 3
4 5 6 C0 (4) C0 (5)
7 8 9 C1 (5) C2 (6) C3 (7) C1 (6) C2 (7) C3 (8)
k C4 (8) C5 (9) C6 (0) C4 (9) C5 (0) C6 (1)
C7 (1) C8 (2) C9 (3) C7 (2) C8 (3) C9 (4)
TABLE III: Identifying Each Cells in k th table 5 6

TABLE VIII: Fifth feature TABLE IX: Sixth feature


All cells in a table also contain a unique value Vi from the table of Color Pass table of Color Pass
set {0,1,...,9}. Another important characteristics is that in each C0 (6) C0 (7)
cell i, the pair < Ci , Vi > is unique with respect to all the cells C1 (7) C2 (8) C3 (9) C1 (8) C2 (9) C3 (0)
in all the ten tables. Thus if first cell of First Feature Table C4 (0) C5 (1) C6 (2) C4 (1) C5 (2) C6 (3)
C7 (3) C8 (4) C9 (5) C7 (4) C8 (5) C9 (6)
contains < C1 , 0 > then first cell of any other Feature Table 7 8
will not contain < C1 , 0 >. The orientation of these colors
and digits in those cells are also fixed for every session. All TABLE X: Seventh feature TABLE XI: Eighth feature
the ten Feature Tables are shown in Table IV to Table XIII. table of Color Pass table of Color Pass
The numbers written in bold denotes the table number of each
C0 (8) C0 (9)
Feature Table. The empty cells in the tables denote nothing. C1 (9) C2 (0) C3 (1) C1 (0) C2 (1) C3 (2)
C4 (2) C5 (3) C6 (4) C4 (3) C5 (4) C6 (5)
D. Algorithm for Generating Tables C7 (5) C8 (6) C9 (7) C7 (6) C8 (7) C9 (8)
9 10
Suppose ten different colors {C0 , C2 ,...,C9 } are stored in
an array Color[] (index ranges from 0 to 9). This array is TABLE XII: Ninth feature TABLE XIII: Tenth feature table
required as an input to the Algorithm 1. Now let’s assume table of Color Pass of Color Pass
that each Feature Table is denoted as F T (i) and each cell is
represented by CELL(j). So to refer a cell of a table we
use the operator F T (i).CELL(j). Now each cell has two
E. PIN Entry Mechanism in Color Pass
dimensions - Color and Value. So to access the color of 5th
cell of 8th Feature Table, we can use the following notation In this scheme, the user chosen PIN is four colors. During
F T (7).CELL(4).Color the login procedure, when the Feature Tables appear in the
screen then the system throws some challenge values to the
and to access the corresponding value we have to use the user. The challenge is passed via a secured media and so only
following the user can access it. In our scheme, the user can receive the
F T (7).CELL(4).V alue challenge via a headphone.
Challenge values range from 1 to 10. Based on the chal-
Algorithm 1 Generating tables in Color Pass lenge value the user has to select the corresponding Feature
Table. For example, challenge value 4 indicates that the user
Input: This algorithm will take array Color [0,1,...9] as has to look in the Fourth Feature Table. The challenge values
input. will be generated using psudo-random function [13]. User will
Output: It will generate Feature Tables F T (0) · · · F T (9) receive challenge corresponding to each color of his PIN.
for i = 0 to 9 do
for j = 0 to 9 do After listening to each challenge value, user selects a
FT(i).CELL(j).Color ← Color[j] Feature Table. Then corresponding to the chosen color PIN,
FT(i).CELL(j).Value ← (i+j) mod 10; he locates the color cell in that table. The user then finds the
end for digit in that color cell and enters that digit as response to
end for the challenge. Similarly user will respond to the other three
challenge values and will complete the login process. Valid
Thus using Algorithm 1, all the cells of ten Feature response to the challenge values will authenticate the user.
Tables will be initialized with some unique color and digit Methodology of evaluating user successfully response is given
combination. below.

TS14HMI01 270 978-1-4799-2608-4/14/$31.00 ©2019 IEEE 15


Color Index Assigned Values Assigned Colors User Chosen Color Challenge Response
C0 0 Yellow C2 5 6
C1 1 Pink C3 7 9
C2 2 White C4 2 5
C3 3 Violate C1 5 5
C4 4 DarkGreen
C5 5 Orange TABLE XV: User Response table for a given challenge
C6 6 Sky
C7 7 Grey
C8 8 PeachPuff
C9 9 GreenYellow
Feature Table (see TABLE VIII) and enter the digit written on
TABLE XIV: Used colors for implementing feature tables color C2 (i.e. 6). For the second challenge value 7 user will go
to the 7th table (see TABLE X) and will enter the digit written
on color C3 (i.e. 9). Valid response for each of the challenge
values has shown in TABLE XV.
Each color has been assigned a number from 0 to 9 by the
system as shown in TABLE XIV. If user chooses four colors
IV. U SER I NTERFACE FOR C OLOR PASS
(say) C2 C3 C4 C1 , the system database stores user PIN as 2341.
We have stored this user PIN in an array UCOL (indexed from While implementing user interface we have assigned
0 to 3). The four random numbers (challenge values) generated unique colors to each Ci (i varies from 0 to 9) (shown in
by system has been stored in array RAN (indexed from 0 to TABLE XIV). Ten colors is chosen in such a way so that each
3). User response to the challenge has been stored in array color is clearly distinguishable from other. The actual interface
CLICK (indexed from 0 to 3). Array EVAL (indexed from 0 is shown in Fig. 2. For convenience we have marked each table
to 3) has been initialized by 0 initially. All these arrays have number by white font to distinguish it from other digits (which
been used for implementing Algorithm 2. are marked using black font) in the table. As the color cell’s
position in each table is fixed so user can locate the desired
Algorithm 2 Evaluating User Response in Color Pass colored cell quite quickly. This contributes in getting faster
login time. The tables are designed in such a way so that the
Input: This algorithm will take array UCOL, array CLICK
user interface does not look too clumsy and also the screen
and array RAN as input.
space is used in an optimum manner.
Output: This algorithm will update value of array EVAL
by 1 for each valid response. Similarities between keypads in Color Pass, as shown in
for i = 0 to 3 do Fig. 3 and classical PIN entry method makes our methodology
K ← RAN[i] − 1 more user friendly. Only the two extreme keys at the bottom
Valid ← (UCOL[i] + K) mod 10 row are kept unused. If user chooses Yellow Pink Violate Grey
if CLICK[i] := Valid then and receives challenge values 6 3 5 6 then seeing the interface
EVAL[i] ← 1 in Fig. 2 user will enter 5 3 7 2 using the key board showing
end if at Fig. 3.
end for
V. S ECURITY AND E VALUATION S TUDY OF C OLOR PASS
In the above algorithm Valid holds the correct response
Some of the salient features of the proposed Color Pass
value for each challenge.
scheme is described in the followings. Mainly two broad
aspects - security and usability are discussed next.
Algorithm 3 User Authentication
Input: This algorithm will take array EVAL as input after A. Security Analysis
executing Algorithm 2.
Output: Decides whether user is allowed to Login. As the scheme is partially observable so the attacker
Initialize X := 0 cannot see the challenge values received by the user. Only the
for i = 0 to 3 do responses by the user are visible to the attacker. Thus to ensure
if EVAL[i] := 1 then security, the attacker should not able to guess the PIN just by
X ←1 seeing the responses. Suppose user has chosen color C5 as one
else of his secrete PIN and he gets a challenge 4 corresponding to
X ←0 that PIN digit. So a valid response from user will be 8 as
break per the Feature Tables described earlier. Now as attacker does
end if not know the challenge value 4 and as digit 8 is printed upon
end for all ten colors of all ten tables so attacker will not be able to
if X := 1 then retrieve the original color chosen by user. This makes Color
Allow user to Login Pass robust against shoulder surfing attack.
else In terms of guessing attack, it has equal strength compared
Disallow the user to a 4 digit PIN scheme. The probability of guessing during a
end if session is 1/104 as for each color there are ten possibilities.
The co-relation between user chosen color can not be guessed
Suppose user has chosen PIN C2 C3 C4 C1 and he gets the by an attacker which is an obvious advantage of Color Pass
challenge values 5, 7, 2, 5. So first user will go to the 5th over SSSL.

TS14HMI01 270 978-1-4799-2608-4/14/$31.00 ©2019 IEEE 16


Fig. 2: User Interface On Screen

Fig. 3: User Interface for Entering Response

Number of users Lesson Periods


Side channel attack [14] is another possible attack where 8 1
human users are involved. Some variation of this attack is 8 2
found in [15]. In this attack, the attacker tries to guess from 2 3
2 more than 3
the time the user takes to execute a particular operation. If
the attacker can record the user’s reaction time, then SSSL TABLE XVI: Time taken during learning
is sensitive for such an attack. In the proposed Color Pass
scheme, the user response time is expected to improve with
each session as the orientation of the Feature Tables are fixed. Number of users Feedback
16 Easy to understand
So with each session user gradually gets familiar with the 3 Fairly Understandable
system and thus response time also improves. This makes side 1 Not complicated
channel attack quite challenging for the Color Pass scheme.
TABLE XVII: User Feedback
B. Usability Evaluation
System implemented for use in public domain requires user
friendliness along with mechanism to protect sensitive details compatibility of Color Pass in terms of use. After a discussion
of the users. In our proposed methodology, we have found it with users we give users about 30 mins to chose their password
efficient against attack like Shoulder Surfing or guessing the and for memorizing it. Then we asked the users to login with
password. Our evaluation of usability and feedback from users their password. We have performed our experiment in three
also appears satisfactory. We have performed our experiment phases. In Phase 1, number of trials is five or less. In Phase
using the following work station with configuration 4 GB 2, number of trials considered is between 5 to 10. Number of
RAM, i3 core processor and processing speed of 2.40 GHz. trials greater than 10 times is considered under Phase 3. The
We took help of 20 users to perform our experiment. First we login time is the duration of time taken by user to listen to
give a broad overview about how the methodology works. The 4 challenge values and give response to the challenge values
average time taken by users to understand our methodology during a session. Login time obtained from our experiment is
is about 10 minutes (mins). And the feedback we got from shown in Figure 4. The percentage of error during login time
most of the users is that − our methodology is very easy to is significantly low (less than 6%) as the users get habituated
understand. It should be noted that we only give the users (after 5 − 10 trails) with the system. The error rate for our
lesson about how to use the system. Our lesson does not experiment is shown in Figure 5.
include security analysis of our proposed scheme. Each lesson
The average login time is marginally improved (12 secs) in
period is about 5 mins. We chose the users from the students
Color Pass compared to modulo 10 table method (12.5 secs).
(12 students) and other persons from the society (8 people).
However, the percentage of error during login process is much
TABLE XVI and TABLE XVII show an evaluation of less (only 2%) in Color Pass compared to modulo 10 table

TS14HMI01 270 978-1-4799-2608-4/14/$31.00 ©2019 IEEE 17


R EFERENCES
[1] M. M. Group, “http://www.internetworldstats.com/stats.htm,” June
20 2012.
Login Time (secs)

[2] C. Herley, P. C. Oorschot, and A. S. Patrick, “Passwords: If were


15 so smart, why are we still using them?,” in Financial Cryptography,
pp. 230–237, 2009.
12 [3] “www.webeopdia.com/term/s/shoulder−surfing.html (last access octe-
ber, 2013).”
0
0 <5 5−10 >10
[4] A. Paivio, “Mind and its evaluation: A dual coding theoretical ap-
proach,” 2006.
No. of trials
[5] H. Tao and C. Adams, “Pass-Go: A proposal to improve the usability of
Fig. 4: Evaluation of user response graphical passwords,” International Journal of Network Security, vol. 7,
no. 2, pp. 273–292, 2008.
[6] S. Wiedenbeck, J. Waters, J.-C. Birget, A. Brodskiy, and N. D. Memon,
“Passpoints: Design and longitudinal evaluation of a graphical password
system,” International Journal of Man-Machine Studies, vol. 63, no. 1-
10 2, pp. 102–127, 2005.
Percentage of error

[7] H. Zhao and X. Li, “S3PAS: A scalable shoulder-surfing resistant


6 textual-graphical password authentication scheme,” in 21st International
Conference on Advanced Information Networking and Applications
2 Workshops, pp. 467–472, 2007.
[8] G. E. Blonder, “Graphical passwords. in lucent technologies, inc.,
0
murray hill, nj, u. s. patent, ed. united states,” June 1996.
0 <5 5−10 >10
[9] G. Wilfong, “Method and appartus for secure pin entry.” US Patent No.
No. of trials
5,940,511, In Lucent Technologies, Inc., Murray Hill, NJ, U. S. Patent,
Fig. 5: Error during login Ed. United States, 1997.

[10] T.Perkovic , M.C̋agalj, and N.Saxena, “Shouldr-surfing safe login in a
partially observable attacker model,” in Sion, R.(eds.) FC 2010. LNCS,
pp. 351–358, 2010.
[11] T. Perkovic, M. Cagali, and N. Rakic, “SSSL: Shoulder surfing
method which was approximately 15%. safe login,” in Software Telecommunications and Computer Networks,
pp. 270–275, 2009.
No special mathematical knowledge is required to use our
[12] “searchsecurity.techtarget.com/definition/man-in-the-middle-attack (last
scheme. Thus the scheme can be easily used by any type of access october, 2013).”
users which widens the scope of applicability of our scheme.
[13] L. Blum, M. Blum, and M. Shub, “A simple unpredictable pseudo-
However one problem associated with our scheme is that random number generator,” SIAM Journal on Computing, vol. 15,
scheme cannot be used by color blind people. As the scheme is pp. 364–383, may 1986.
based on colors only. Except this limitation our methodology is [14] P. C. Kocher, “Timing attacks on implementations of diffie-hellman,
quite powerful against attacks such as guessing PIN, shoulder rsa, dss, and other systems,” in CRYPTO, pp. 104–113, 1996.
surfing attack, side channel attack and yet provides a simple [15] L. Zhuang, F. Zhou, and J. D. Tygar, “Keyboard acoustic emanations
to use interface which consumes a very low login time. revisited,” in ACM Conference on Computer and Communications
Security, pp. 373–382, 2005.

VI. C ONCLUSION AND F UTURE W ORK


In this paper we have proposed a novel scheme to authen-
ticate a user using color PINS. The scheme is known as Color
Pass scheme which provides an intelligent interface for users
to login into system in a public domain. In this scheme, the
user remembers four colors as his PIN. The scheme works on
the framework of partially observable attacker model. From
security point of view the scheme is quite robust against some
possible attacks such as shoulder surfing, guessing password,
side channel attack, etc. And from usability point of view the
scheme is user friendly and takes very less time for login. Also
the scheme can be used by both math and non-math oriented
people. The proposed methodology shows significant low error
rate during login procedure. In future we will explore how to
extend this scheme for fully observable attacker model.

ACKNOWLEDGEMENT
This work is partially supported by a research grant
from the Science and Engineering Research Board (SERB),
Government of India, under sanction letter no. SB/FTP/ETA-
226/2012.

TS14HMI01 270 978-1-4799-2608-4/14/$31.00 ©2019 IEEE 18

You might also like