An Improved Approach to Secure Authentication and Signing

advertisement
An Improved Approach to Secure Authentication and Signing
David Argles, Alex Pease and Robert John Walters
University of Southampton,
Southampton, UK
{da,ap1803,rjw1}@ecs.soton.ac.uk
Abstract
We know how to build secure systems but for security
measures to be truly effective it is necessary to use keys which
are far too large for people to commit to memory. The
consequence is that people avoid using security measures or
they resort to recording their key information somewhere
which they find convenient to access. If any kind of barrier to
unauthorised access to this store is used, it is invariably a
username and short password or PIN combination. This
compromises the effectiveness of primary schemes by
presenting an intruder with a weak point to attack.
This paper describes a hybrid scheme incorporating an
electronic token and biometric verification. The scheme
eliminates the need to rely on the user’s memory so it can use
keys which are long enough to be effective, yet it is also quick
and convenient in use and could be adopted anywhere that
presently uses username-password arrangements.
1. Introduction
The effectiveness of any security scheme (encryption, signing,
access control) depends on the length of the keys which are
used. Advances in techniques and widespread availability of
powerful computers means that today these keys must be
considerably longer than people are able or willing to commit
to memory. The result is that many security systems use keys
which are too short to be effective because users have to be
capable and willing to memorise them. Where the keys used
are big enough to be effective, users resort to recording this
vital information because they can’t remember it.
Unfortunately the methods they use are rarely secure and
present ideal opportunities for intruders to attack.
We
need
an
alternative
to
the
ubiquitous
username-password style of access control which will permit
the adoption of much larger encryption keys without imposing
excessive load on the users. There are number of possibilities
but none in isolation provides a satisfactory solution. We
describe a composite system which uses a combination of a
biometric and an electronic token to provide a system which
avoids the problems of using either alone and is much more
secure that a typical username-password system.
The
approach is easy to implement, non-intrusive and uses cheap
and widely available technologies. It could be implemented
on a wide scale basis to improve the security of web-based
transactions such as e-Banking and e-Commerce.
2. Weaknesses of Current approaches
How to build secure systems and applications is well
understood and documented. For example, Triple DES, RSA
or Blowfish can be highly effective for secure communication
[5]. However, none of these schemes is effective unless the
keys used are long enough. As computers and computing
techniques have progressed the keys used have needed to grow
to the point where 128bit numbers are common. Such
numbers are far beyond what people could reasonably be
expected to commit to memory so they are often stored in a
repository. Access to this repository is typically controlled by
another means of user authentication, and this is where the
problem lies: despite significant developments in alternative
systems, the username-password approach to authentication
remains widely used [2]. The same applies to access control
whether it be for gaining access to a particular item of
equipment such as a computer workstation or a secure system
such as online trading or banking. The control mechanism is
invariably some variation of username-password.
Unfortunately the protection offered by name-password
systems is generally very poor, especially when compared with
the systems they seek to protect. The root of the problem is
that the main discriminant in the selection of the size of the
password(s) is what the users will accept rather than what is
necessary to achieve an acceptable level of security. In
practice, users insist on very short, and hence weak,
passwords. The problem is exacerbated by widespread abuse
of the systems by users who select passwords which are easily
guessed, write down and share passwords [1]. Despite the
known weaknesses, few users change their passwords until
they are know to have been compromised [4] – when it is
already too late. The PIN system being widely adopted for
credit card authorisations is a good example but the same
applies for all kinds of secure access arrangements, including
online banking and other secure services. In the case of credit
cards, the PIN is a four digit number so there are at most
10,000 possibilities and now that card holders are able to self
select their PIN, it is likely that a few hundreds of numbers
account for the huge majority of PINs in use.
To address this issue, we need to break the link between
the size of the key and the ability of users to remember: we
need a form of user identification and authentication which
doesn’t rely on the user’s memory. One possibility is
electronic tokens. These can be stored on removable media
such as a smart cards (or USB “pendrives”) [11] and operate
just like everyday physical keys. Authentication is achieved
by the user being able to produce the necessary token. This
technique imposes a physical barrier to intruders: access is
denied unless the user can produce the token. The user doesn’t
need to remember anything and the level of security available
is determined by the nature of the token. Making such a
system more secure requires more sophisticated tokens and
(software) locks but has no impact on the user. However it has
weaknesses of its own. Notably, nothing links the user to their
token so an intruder who is able to steal a token (i.e., the media
on which it is stored) is immediately afforded the same level of
access as the rightful user of the key. Unfortunately, it is a
feature of human users that they do lose such tokens from time
to time in the same way that they lose other keys and valuable
items.
We are all unique so another alternative to the
user-password system is biometrics. A biometric is a measure
of any of the many features which can be used to identify a
person. Well known examples include finger prints and iris
recognition but there are many others and there are established
criteria by which biological measurements qualify as a
biometric [8]. Systems which use biometrics operate in two
phases. First, the distinguishing features of a user’s biometric
are extracted and a template created. Then, or verification, the
biometric data is captured again and compared with one or
more stored templates to find a match [6]. It has been
suggested that a user’s key could be derived from a biometric
[3].
Using biometrics has many attractions and they enjoy
advantages which arise from the fact that they are a feature of
who we are, not what we know or what we have in our
possession. They are difficult to forge, there is nothing for the
user to remember and there is no simple way to borrow or steal
a biometric. However, they have weaknesses too. The
extraction of biometric data using commonly available systems
is not exact. As a result, if a user’s key were derived from
their biometric data it is unlikely the user would be able to
recreate their key reliably. Ironically too, the very fact that
they are an intrinsic part of who we are also leads to their
biggest problem: should a biometric or a key which is derived
from it be compromised, there is no equivalent of renewing
passwords or changing locks.
afforded to anyone who is able to produce a valid token (at
least until the loss is discovered). For biometrics, problems
arise from the difficulty of dealing with compromise because
of the very feature which makes them so attractive: a biometric
is a property of the individual. You can’t change or replace a
user’s biometric.
Our system combines these two systems in a way which
addresses these drawbacks. The template against which the
user’s biometric is validated is encrypted. It is then divided
into two parts. One is recorded on electronic media as part of
the user’s token and the other is retained inside the secured
system. In place of a key generated directly from the user’s
biometric we use a key which is generated independently.
This is also encrypted, split and stored in the same two
locations.
The division and separate storage of the encrypted
biometric template and user key mean that an intruder who
steals the media is unable to extract either the user’s key or the
template for their biometric as they only have part of the
information. The same is true for an intruder who manages to
compromise the repository of the secured system.
In the event of loss of the token, it can be invalidated by
removal of the matching records within the secured system and
a replacement generated for the user. The replacement token
will again be tied to the user. As before it will comprise parts
of the users encrypted biometric template and their new key
but, not only will the users key itself be different, the key used
to encrypt it and the template will also have changed.
4. Operation of the system
There are two distinct activities involved in using the system.
The first is enrolment which involves the capture of the user’s
biometric and generation of their electronic token. Once a
user has been enrolled, they may then present their token and
biometric when authorisation is required.
4.1. Enrolment
The user performs an enrolment similar to that of a standard
biometric system: they present their biometric data a number
of times from which a standard commercial system generates a
template against which later reading of the biometric may be
validated.
Biometric read
from user
3. Constructing a hybrid approach
A replacement for current username-password systems is
needed and two possible alternatives have been described
above but each has drawbacks. In the case of electronic
tokens, they are not tied to the user so the obligation for a user
to remember their password and keep it safe is transformed
into an obligation to keep the token safe since system access is
Creation of
Biometric
Template
Part encrypted key
data stored on
computer or server
Encryption
Key generated
by system
Division of
encrypted data
Part encrypted key
data stored on
removable media
Figure 1: Enrolment procedure
The system then secures this data and creates the user’s
electronic key. The user’s biometric template is encrypted
using a key derived from a variety of factors, including the
serial number of the media onto which it will be placed. The
user’s key is then encrypted using a key which is again derived
from a number of factors which include the cipher text of the
user’s biometric template. The resulting two pieces of cipher
text are then divided. One portion of each is saved onto the
removable media as user’s electronic token and the remainder
is stored in a secure location within the protected system. See
Figure 1.
The algorithms selected to generate the encryption keys
and the division of the cipher should ensure that an intruder
cannot regenerate the keys easily and that neither portion of
the divided text contains all of the information required to
decode the template or key. Ideally these algorithms should be
kept secret.
The user key used will depend on the details of how the
system is being used. For example, if the system is used for
signing onto an online system (such as online banking), the
key will be provided by or negotiated with the secured system
as part of the user sign-up procedure. It will take the form
demanded by the online system and be communicated in full
or in part at authorisation as demanded by the system. The key
can be made as long as the online system deems necessary and
the user need never see it.
Alternatively, as in the
demonstration system, the key could be used to unlock
encrypted data held for the user by the system (such as
encryption keys allocated to them).
With this process complete, the user now has an electronic
token/key which has been created for them on which part of
their encrypted biometric template and part of their encrypted
personal key is stored. Without this electronic key, the system
cannot match their biometric, nor regenerate their personal
key.
4.2. Authentication
When the user wishes to gain access to the secured system,
they need to produce their electronic key and the right
biometric. See Figure 2.
The process works as follows:
1. The system reads the serial number of the key media
and uses the algorithm to reconstruct the key used to encrypt
the biometric template.
2. The encrypted biometric template is then reassembled
from the part recovered from the key and the part already held
within the system. This template is then presented to the
biometric software.
3. The software is then able to read the biometric
presented and decide whether it is a match to the template and
so whether to accept or reject the user.
4. Assuming the user’s biometric is accepted, the key
used to encrypt the user’s personal key can be regenerated
from the cipher text of the template. Using this key, the user’s
personal key can then be extracted from the cipher text which
is again reassembled from parts held on the electronic key and
within the system.
5. Now the secure system has the user’s personal key
which, depending on the application, may be used directly by
being presented to another system or indirectly to encode or
extract other sensitive data.
User Biometric
Media Serial no.
Part template
from system or
server
Part template
from removable
media
Part key from
system or server
Key regeneration
Combination of
encrypted data
parts
Matching by
commercial
software
Authorised or
Denied
Template
Decryption
Key regeneration
Extraction of User
Key
Part key from
removable
media
Figure 2: The authorization and key extraction process
5. A prototype implementation
To build a prototype, the first decision is to select an
appropriate biometric (and hardware) and an appropriate
technology for the electronic key.
For the biometric we selected a finger print system for the
following reasons:
 Fingerprints can be read quickly and reliably using
inexpensive equipment.
 It is not invasive.
 It is familiar and accepted by users.
The actual system used was ‘Griaule Fingerprint
Recognition SDK’ [7] in conjunction with the Microsoft
Fingerprint reader.
An inexpensive USB “pendrive” was used as a carrier for
the electronic key.
The user interface of the authentication process is shown in
Figure 3. This program uses our authentication scheme to
decide whether to disclose (previously encrypted) data to a
user or not. In the demonstration, a string previously
encrypted using the users key is extracted and displayed if the
users electronic token and biometric are accepted. The
application also displays trace output, including the graphic of
the fingerprint and output from the fingerprint software.
In a practical application, much of the interface shown here
would be concealed and only the outcome would be
communicated to the user. We also anticipate the user being
prompted to insert their electronic key and place their finger
on the reader in similar style to the familiar request for user
name and password and prompted again to remove both before
the authentication process is completed. The outcome (in the
form of allowing or denying access) would also be
communicated in the way that systems currently respond to the
input of the username-password pair.
Figure 3: User interface of prototype system
This software was developed as a proof of concept
application. It uses simple schemes for the separation of the
cipher strings into parts, the derivation of the key for
encrypting the template from the media serial number and the
derivation of the key for the encryption of the user key from
the template cipher text. Much more sophisticated techniques
which use additional factors could be applied in a full
implementation. However, this software has demonstrated that
the system works and provided some useful insight into the use
of this type of system. In particular it has confirmed that the
system is easy to use in practice. Enrolment is not difficult nor
time consuming. Also, although it does depend on the
biometric and hardware, authentication is quick and reliable.
Even taking into account time for user to insert their electronic
token, we believe this system is at least as quick in use as
eliciting a username-password pair from the user.
6. Discussion
We used an inexpensive fingerprint reader and a free SDK so
we expected the reliability of the fingerprint verification to be
problematic. We were confident that the integration of the
electronic key would eliminate “false positives” allowing
access to unauthorised users but we did expect that genuine
users would suffer significant numbers of “false negatives”.
However, several hundred tests revealed false negatives at
around 7% of verifications (and not one false positive) from
the fingerprint software which matches findings of other
studies [10]. Of the false negatives, a significant proportion
can be attributed to improper or careless finger placement on
the reader by users. It seems reasonable to expect that this
would improve as users become more familiar with the
procedure.
For the electronic key, our prototype system uses a USB
pendrive and merely requires that it be present whenever it is
needed. It might be preferable to replace this with a form of
media which isn’t so readily accessed by users and other
applications such as a smart card, but this would necessitate
the addition of suitable hardware. The system should also
insist that the user remove the key (and finger) after
authentication, thus minimizing the opportunity for an intruder
who has achieved some access to the system to read the
contents of the key.
The important issue here was that we were able to establish
that our system is no less usable and at least as quick in use as
conventional username-password authorization systems.
However, it is significantly more secure because it uses a
combination of a biometric and an electronic token and the
keys used to encrypt sensitive data (notably the user’s key) can
be as long as necessary. None of the keys used in our
implementation is less than 128bits which is far in excess of
anything which the user could be expected to commit to
memory. The split of the encrypted information between the
removable token and the system means that an intruder who
steals the key or gains access to the system is not able to
access users’ keys or biometric templates. Should the key be
lost or compromised, a user can be re-enrolled into the system
with a replacement key which is different from the lost item;
the encryption of the template depends on the physical key so,
even it the replacement template generated by the biometric
software were to be exactly the same as the original, the newly
created token will be different from the one that is lost. The
lost media can be rendered useless by deletion of the
corresponding portions of the template and user key cipher
text from the secured system.
We have used the system to control access to a laptop (and
to give demonstrations using a word or phrase of a user’s
choosing) but it could be applied equally well to any situation
where users username-password schemes are currently
employed. In online situations, the parts of the encrypted
cipher texts could be stored on removable media in the exactly
the manner described above with the user’s personal computer
merely acting as go-between reading the key and biometric
data and passing this on to the secured system using secure
communications techniques. Alternatively, the user’s personal
computer which could then stand in for (store the data of) the
removable media. In this way, user’s access to a secure online
system could be restricted to logons in which the correct
biometric is presented from the authorised machine. Loss of
the machine would amount to the loss of the token and would
necessitate re-enrolment. A user wishing to use more than one
machine would need to enrol from each.
7. Conclusion and future work
Username-password is a poor method for securing access
to valuable systems or data because the length of names and
passwords is severely limited by the necessity for them to be
committed to memory by users. Although this and other
weaknesses and widespread abuses are well documented, it is
almost universally used and it presents a vulnerability for
attack by intruders.
This work has taken widely available, proven technologies
and combined them to produce an alternative authorisation
system which uses an electronic key and a biometric in
combination. The system proposed eliminates the need for the
user to commit important access information to memory.
Instead access is controlled by a combination of the user being
able to satisfy a biometric measurement and produce a
matching electronic token. We used fingerprints for a proof of
concept implementation because the technology involved is
widely available and inexpensive but any biometric could be
used.
Features of our system mean that in the event of the loss of
an electronic key, the system and data it protects remains safe
and the key can be replaced.
We believe this system could provide a very acceptable
and convenient alternative to the current de-facto standard of
username-password (or PIN) systems which is in use to secure
all kinds of system access, including personal workstations and
online transactions.
8. References
[1] A. Adams and M. A. Sasse, "Users Are Not The Enemy,"
Communications of the ACM, vol. 42, pp. 40-46, 1999.
[2] E. Bardram, "The trouble with login: on usability and computer
security in ubiquitous computing," Personal and Ubiquitous
Computing, vol. 9, 2005.
[3] A. Bodo, "Method for producing a digital signature with aid of
a Biometric," 1994.
[4] A. M. DeAlvare, "A Framework for Password Selection," in
Unix Security Workshop II, Portland, 1998.
[5] D. Denning, "Protecting Public Keys and Signature Keys,"
IEEE Computer, vol. 16, pp. 17-35, Feb 1983.
[6] D. Dunlap, "Biometric Technology," Western Carolina
University 2001.
[7] Griaule, "Griaule Fingerprint Recognition SDK."
[8] A. K. Jain, "Biometric Recognition: How Do I Know Who You
Are?," Department of Computer Science and Engineering, Michigan
State University 2004.
[9] D. Kresimir and M. Grgic, "A Survey of Biometric Recognition
Methods," in 46th International Symposium Electronics, Marine,
Zadar, Croatia, 2004.
[10] T. Matsumoto, H. Matsumoto, K. Yamada, and S. Hoshino,
"Impact of artificial gummy fingers on fingerprint systems," in SPIE Optical Security and Counterfeit Deterrence Techniques IV, 2002.
[11] SafeNet Inc, "Disk Encryption Belcamp, MD," 2006.
[12] Y. Sutcu, H. T. Sencar, and N. Memon, "Authentication
protocols: A secure biometric authentication scheme based on robust
hashing," in 7th Workshop on Multimedia and Security at ACM
Multimedia, New York, USA, 2005.
[13] Q. Xiao, "Security Issues in Biometric Authentication," in IEEE
Workshop in Information Assurance and Security, U.S. Military
Academy, West Point, NY, 2005.
[14] N. Yoshiura, Y. Onozato, and H. Kimura, "Application of one
way function to biometric authentication," Transactions of the
Institute of Electical Engeineers of Japan, vol. 124-C, 2004.
Download