- Open Access
Smart card based time efficient authentication scheme for global grid computing
Human-centric Computing and Information Sciences volume 3, Article number: 16 (2013)
Decentralization in every walk of life has resulted in the development of Global Grid networking. Data sharing and access depends on their availability, capability, cost and user requirements. One of the needs for a secure Grid Environment is a strong authentication for users. Since Authentication is the entry point into every network, a novel smart card based authentication scheme has been proposed. The proposed authentication scheme utilizes the biometric data embedded in a smart card along with the ID and password of the user. The Time efficient performance of the proposed scheme in comparison with the existing Secure Socket Layer based authentication scheme is discussed. The attacks which the proposed scheme is able to withstand are also discussed.
Grid computing involves sharing heterogeneous resources which are located in geographically distributed places belonging to different administrative domains . Grid data sharing is not file exchange but rather access to computers, software, data and other resources. Grid involves the creation of a dynamic Virtual Organization (VO). Each virtual organization comprises of users and their resources and any other services (S) joined by a common goal . Each of the user or resource is available from different administrative domains (DO). Each user/resource have their own trust policy which requires a local to global and global to local mapping of the access policies as discussed in .
The basic security for the Globus Toolkit (GT 4) is the Grid Security Infrastructure (GSI) [4, 5]. It depends on the Public Key Infrastructure (PKI), X.509 Proxy certificates and Transport Layer Security (TLS) for authentication. GSI involves third party verification for authorization. The GT framework is based on the Open Grid Services Architecture (OGSA) which uses the Secure Socket Layer (SSL) based on TLS. The GSI security is secure enough but has scalability problems .
The existing authentication schemes are based on the user name and the password and certificates which are generated by a secure Certificate Authority (CA) . The existing authentication schemes belong to two factor authentication scheme which involves user name/password and some cards like those used in Banks. The Security for the Grid Environment is deployed in the middleware which is used to access the grid network. Examples of Grid middleware are UNICORE (Uniform Interface to Computing Resources) , Globus , Legion  and Gridbus .
In  a Four-Factor based Biometric Authentication has been proposed. But the addition of location does not guarantee the avoidance of insider attack. The proposed authentication scheme optimizes the security of a grid environment by adding more features like biometric data in a smart card for optimal authentication.
User authentication has been in discussion for a long time to enhance the security of any system at the entry level itself. Many methods such as password based systems, ID based systems, and etc. have been used. A hash-chain based remote user authentication in which all the passwords are encoded is given in . In all the initial remote based authentication systems, a verifier table is to be placed in the server side which becomes a problem if the server is compromised.
In this paper the remote based authentication system which is very much suited for the Grid Environment is considered. Based on the existing remote authentication systems, an enhanced system is designed. In order to avoid maintaining a verifier table Hwang et al., proposed a non-interactive smart card based scheme without verifier tables . A finger print based remote user authentication scheme was proposed in . This scheme was found to be vulnerable to masquerade attacks and many other attacks [13, 14]. In [15–17], the biometric data itself is taken as a key for encryption/decryption. The secret data is extracted by using the biometric template as the key. The biometric data is to be stored in the server side and used for comparison. But for effective Biometric authentication, the process is to be done in the client side  to avoid any problem due to the server being compromised . In , the method has been optimized with the matching being done in the server side. But the server does not store any biometric data in its database thereby protecting the privacy of the user.
The method in  provides a three factor authentication which is password – something the user knows; smart card – something the user has; biometrics – something the user is. A further enhancement to this type of authentication is to add a fourth factor thereby providing a four factor authentication . The fourth factor can be the addition of location of the user – someplace the user is. The military data sharing requirements take into consideration the place in which the user is positioned so as to find the location of any valid/invalid user. So, the sensitive areas of application require security with some amount of privacy preservation. Section three gives an overview of the existing authentication systems in grid computing. Section four discusses the proposed security framework with reduced stages for authentication of a grid user.
Existing security framework for grid
A Grid Environment is created by means of using general-purpose grid software libraries known as middle ware. The Grid environment is based on a layered architecture as shown in Figure 1.
From the Figure 1, the security features are seen in the middleware portion of the grid layer. The existing security solution uses Open Grid Services Architecture (OGSA) architecture . This security feature used in GT is also used in Virtual Organization Membership Services (VOMS)  for the purpose of authorization also. The OGSA architecture uses GSI which in turn depends on the certificate based SSL for authentication and WS-Secure Conversation message transport and confidentiality. The existing system based on OGSA and GSI have some basic security solutions for solving the authentication and authorization criteria. The scalability, heterogeneity and increase in attacks have led to the need of a new security framework which is based on the existing architecture with additional features to tackle the day to day attacks. The next section discusses about the proposed authentication scheme.
Proposed authentication system
The proposed authentication scheme has three phases such as the Registration phase, the Login phase and the Mutual Authentication phase. An additional password change phase is added to ensure that the user can change his/her password when required. In each phase distinct operations are defined for the user and the server. The proposed authentication methodology is shown in Figure 2.
In the Registration phase, based on the details provided by the user along with the inputs given by the server, the smart card data is stored and given to the user through a secure medium. Only during the Login and the mutual authentication phase is the user and the server authenticated to each other. Once the mutual authentication is a success, then the user can go on to the next operation involved in the data transaction. The triple DES along with any other light-weight encryption algorithm can be used. The process flow of the proposed authentication scheme is shown in Figure 3.
During the initialization phase, the server stores both the asymmetric and symmetric key in its database. Once a user requests for registration, the server accepts the user’s hashed password in a secure way. This way assures that the server does not know the actual data and neither is data stored openly in any database within the server. The validity of the user is checked based on the comparison of the hashed data rather than the original data. This method of storage makes sure that the user’s data is not lost under any circumstance.
All the hashed data are stored in the Registration/Authentication server’s database and the encrypted data required for the further use of the user is stored in the smart card and sent to the user. The user then uses the smart card for further access to the Grid environment. The smart card does the initial validation of the user and then forwards the user data to the server, where further authentication is the done. In the proposed scheme, both the user and the server validate each other and hence it is complete mutual authentication. Only when the user and the server both satisfy the validation criteria then the data transfer occurs. If the user validation does not succeed it is rejected or the user is requested to start the authentication from the beginning of the login phase. The next section gives the detailed explanation of each phase of the proposed authentication system.
Details of the authentication scheme
This authentication scheme involves three factors, using a smart card which holds the data of what the user is i.e., the biometric data (B), what the user knows i.e., the password (PW), Identifier (ID) and the data that the user has i.e., smart card. This scheme has three phases such as Registration Phase, Login phase and a mutual authentication phase. The added features are the dynamic User ID (CID) and the dynamic server ID (SID). The Registration/Authentication server is configured to support symmetric and asymmetric encryption and decryption. In grid a client at one scenario can be the server at the next instant since it has to satisfy a need. Hence this system should be in such a way that each user is able to identify the requestor of the resource by his/her credentials. The notations used in this paper are given in Table 1.
During the registration phase, the user tries to register for a grid membership within a Virtual Organization (VO). During the membership registration, the user is given a particular Identifier (IDi). The user registers his/her biometric data (Bi) which maybe a fingerprint or an iris template. The user also selects a random number r and a password (PWi).
The following are the series of steps done in the server:
Server generates public-private key pair (pk, sk) for asymmetric encryption/decryption.
Server generates a secret key x for symmetric encryption/decryption.
Both (x, sk) are kept secure in the server.
The operations done at the user side are:
The user records his/her user Identifier (IDi)
The user records the biometric template (Bi)
The user selects a random string r and password (PWi)
The user computes SBi = δ (Bi) = h(r ⊕ h(Bi)).The value of SBi is sent to the server securely along with the one-way hash function h(.) of the Password and the identifier (IDi) of the user. The server receives (IDi , h(PWi),SBi) through a secure channel. By using the values sent by the user, the server computes, yi such that,
where Ex (.) represents the symmetric encryption using the secret key x The server stores the user’s password (PWi) and the related identifier (IDi) of the user and the calculated yi. The operations continued in the server side are:
Server computes K = h(IDi ‖ x)
Server stores (K, h(.), pk) in the smart card.
Server sends smart card to the user securely.
Once the user receives the smart card, a few entries are to be stored in it along with the data already available in the smart card i.e., yi.
The following operations are done to confirm the registration:
The user enters the biometric data which can be an iris data /fingerprint Bi
The user encrypts the random number r with PWi such that is obtained.c. is stored in the smart card.
SBi = δ (Bi) = h(r ⊕ h(Bi)) is stored in the smart card.
A user Ui is allowed to enter the grid environment using his/her smart card. The user enters his/her Password (PW)’ and does a biometric scan denoted by . The user’s smart card retrieves the random value “r” from by using the password (PW)’ entered by the user Ui. The smart card computes This value is compared with the already stored value of SBi = δ (Bi) = h(r ⊕ h(Bi)) to confirm if the user is the same. Then the smart card generates a nonce value “nu” and computes M = (K ⊕ nu). Then CIDi is calculated such that, CIDi = h (IDi ‖ nu).
Then value of C0 is computed such that,
Where denotes the encryption function using the server’s public key. “u” is the random value selected by the user during login time. To ensure the liveliness of the user, a nonce value is added in the value of C0 along with the already existing random values to add more security. C0 is sent to the server.
Mutual authentication phase
Once C0 is received by the server, the server does the following operations,
Server decrypts C0 using its private key sk
Server computes “” such that where K = h(IDi ‖ x). The server uses the IDi obtained from yi.
The validity of the user is checked by using the Identifier IDi to the one received by the server. By using the value of the value of is calculated.
Then the value of is compared with the value of CIDi to check if .
Also the value of IDi can be verified with the ID stored in the ID table for the users at the server end. A comparison of ID’s is done to make sure that verification is done correctly even when the Server ID table is corrupted.
The remaining terms of C0 i.e., (h (PWi) ‖ SBi) is retained for future reference.
Server computes a values of C1 such that
Where SID = Server’s identity and v is the random number chosen by the server and u is the random number selected by the user and sent in C0. The server generates a nonce value “ns” and computes N = (K ⊕ ns). From the value of ns, the value of the symmetric key u is generated. Server ID SED = h(SID ‖ ns). The dynamic ID and ns is used to make sure that the data was not tampered during transmission. Server sends C1 to the user Ui.
In the User Side, the following operations are done,
The smart card decrypts C1 using the random value of u.
The value of SID is checked for valid server ID. The smart card computes using its nonce value . Smart Card computes “” such that where K = h(IDi ‖ x).
Then SED* is calculated by using the value of the generated and IDi., i.e., If SED* = SED, then the server is valid and the data has not been tampered with.
The smart card calculates the following value
The server decrypts C2 using v and calculates the value of from the values sent in C2. If , the server matches the values of the password and the biometric template to confirm the authenticity of the user.
If an attacker is to attack, he/she has to deduce the random and the nonce values which makes the attack much difficult. The value of in C2 is compared with SBi of yi. If the value match is within a threshold range then the user is confirmed valid. The three phases are considered for computing the cost since they will be used repeatedly. Once all the steps have been completed successfully, it is clear that mutual authentication of both the user and the server is done for login of the user. The server secret number v can be used as a session key material and h (v) can be used as a session key which is shared with the server.
Password change phase
The user Ui is authenticated by using the Password (PW’) used initially for login process. Once authenticated, the user is prompted to enter the new password. Once the new password (PW”) is entered, the yi = Ex (IDi ‖ h(PWi) ‖ SBi) value of h(PWi) is replaced with the value of h(PWi”). An intimation of the password change is given to the server and it replaces the old password for the user identifier with the new password. Thereby the user is allowed to further login by using the new password.
Implementation of the proposed authentication scheme
In this section, the performance and functionality of the proposed authentication scheme is analysed and comparison has been made with the existing SSL based Authentication used in the OGSA framework of Globus Toolkit.
The biometric matching is not done mostly in the smart card in proposed scheme but rather in the remote server without losing the privacy of the biometric data. Any light-weight public-key cryptosystem can be used for the encryption and decryption process. The total time taken for the execution of the proposed algorithm is purely based on the crypto-algorithm selected for the process of encryption and decryption.
In our proposed Scheme, Advanced Encryption Standard (AES) based on block cipher is used. Also Rivest Cipher 4(RC4) algorithm which uses stream cipher can be used. RSA of 1024 bits  is used for the Asymmetric Encryption. The AES algorithm used here has a key length of 128 bits and RC4 algorithm of 128 bit key length can be used. The time taken for execution of the SSL based authentication in milliseconds (ms) is shown in Table 2. The algorithm is executed for an input of 10 users each of a 26 kB biometric finger print image. MD5 scheme has been used for hashing.
Performance analysis of initial/registration phase
A simple Grid environment was created and the security algorithm was implemented for 10 users. A simple hosting environment has been created as presented by . In a Microsoft .NET platform and J2EE application server as an administrative server, the hosting environment has been implemented for 10 connected users. The time taken for execution of the Initial/Registration phase and the login and mutual phases were calculated. The resistance of the security algorithm to attacks has been analysed in the next section through the equations. Based on the time factor criteria, the implementation of the proposed algorithm is based on the following system configuration of Processor Speed – 2.13 GHz, RAM size 3.00 GB, System Type – 32-bit OS. The implementation has been done in Java. The time taken for the Initial process and authentication of each user is shown in Table 2.
The Table 2 gives the time taken for each user for the initial registration and access in to the grid environment. The Figure 4 is the corresponding chart for Table 2. From the graph it is clear that the time taken for initial registration of a user using smart card is marginally more than the existing SSL based scheme. The Table 3 shows the time for each user login and authentication. It is the time taken for a single access into the grid network. The corresponding graph is shown in Figure 5. From the graph it is clear that the time for each access is very less when compared to the time taken for the SSL based authentication. Table 4 gives the total time taken for the users as they increase in entering into the grid environment. The Figure 6 gives the corresponding graph for the Table 4. From Table 4 it is clear that the time for the combined registration and access is more in the initial phase due to the collection of biometric data and the smart card distribution. The Figure 6 is the graph for Table 4.
In Table 5, the time taken for each access of user login is given. The Figure 7 is the corresponding graph for Table 5. The Figure 7 shows that the total time for each user login is very less when compared to that of the SSL based authentication scheme. It is clear from the collected data, that though the time for initial operation is more for from the Figures 5 and 7, it is clear that even though the registration phase of each user is more, the time taken for each access is much lesser than the time taken for execution of the SSL scheme. This increase in time during initial stages is very much compensated during each user access. It is clear from the data collected that the selection of the encryption algorithm used for encryption influences the time taken for completion of the execution of the process. Lightweight algorithms like Camellia  in place of AES algorithm and Elliptic Curve Cryptography in place of RSA algorithm can also be considered for usage.
The next section gives a brief discussion on the security analysis of the proposed authentication scheme.
Security analysis of the proposed authentication scheme
In this section, the security and performance analysis of the proposed authentication scheme are presented. The attacks which are withstood by the proposed scheme of authentication are explained.
As in equation , a dynamic user ID named as CIDi is created by the smart card based on the nonce value nu instead of using the user’s own ID. This helps to withstand the ID-theft attack and also preserves the privacy of the user.
Clock synchronization and replay attack problem
In , the problem in timestamp based authentication is given as replay attack due to the transmission delays in an unpredictable network. Even though the networks are fast the speed may vary based on the geographical and political distribution. To avoid using of timestamps, a nonce value nu is used each time the user sends his/her data and a nonce value ns is also used by the sever to proclaim the server’s validity. Since a nonce value such as nu and ns in equations where M = (K ⊕ nu) and C1 = Eu (N ‖ SED ‖ SID ‖ v ‖ poss) where N = (K ⊕ ns) can be used only once, and not repeated, the user/server can be safeguard themselves from replay attacks.
Each authentication message in from equation (1), (2), (3) and (4) include a one-way hash function along with an encryption algorithm. The hash value in each equation requires a nonce value or a random value. Even if the attacker gets hold of each of these equations the decryption part and breaking the hash function is not possible. If the attacker has the value of h(PWi), to find the password, the attacker needs find an equivalent of the hash function by trying each password. This attack is difficult because the attacker has to first break into the encrypted data . The attacker then needs to send the correct dynamic ID using the nonce. For an attacker to get all the values correct is impossible which makes modification attack difficult. Without knowing the actual data of these two values, the original data cannot be modified. Modification of the equations will be noted by the legitimate user and server and since all the messages are linked, it makes modification attack harder.
At the end of the mutual authentication phase, both the server and the client authenticate each other thereby establishing mutual authentication. During each phase, of the equations C0, C1 and C3, the user and server check the validity of each other using the values of CID, SED, M, N. If the server has any doubt in the validity of the user, the message C2 can be asked to be resent.
An attacker A who tries to do a man-in-the middle attack needs to know the decryption keys u, v and r in each message signal else its message will be discarded by the server or the client.
Security of the stored data on the smart card
The smart card holds the value of (IDi, yi, h(.), pk) where, yi = Ex (IDi ‖ h(PWi) ‖ SBi). If the smart card is compromised, the data it provides is not easily accessible to the attacker. Without knowing the matching password and the ID of the user, the attacker cannot move further along the authentication phase. Knowing the public key of the server complicates matters since the attacker has to find the encryption algorithm and a matching value of C0 to send to the server. Furthermore, the hash function has to be broken in order to get the secret data. The biometric data is stored in the open for anyone to copy it. It is stored in the form of a template combined with a random string which needs to be found to get the data. Thus the data stored in the smart card is secure.
Conclusion and future work
The proposed authentication scheme has provided an enhanced security with an optimal overall time taken for the operation. The authentication scheme can be made more secure by using a triple DES algorithm but it increases the security criteria and also increases the overall time taken for authentication. By increasing the security during the authentication phase itself we can try to minimize any other malicious insider attacks and also reduce external attacks. The increase in time during registration is one-time value and hence it is not considered as a disadvantage. The biometric data used for authentication can also be used in the consecutive authorization process thereby lessening the database space utilized by reusing the data used in authentication. The AES, RC4 algorithm can be replaced by any other light weight encryption algorithm like camellia. Further study has to be done by using different combination of algorithms. The data’s used for authentication can also be used for authorizing the user for a resource access.
Foster I: A three point checklist. GridToday 2002, 1(6):1–4. July publication
Foster I, Kesselman C, Tuecke S: The anatomy of the grid: enabling scalable virtual organizations. Int J High Perform Comput Appl 2001, 15(3):200–222. 10.1177/109434200101500302
Zhou Q, Yang G, Shen J, Rong C Sixth International Conference on Parallel and Distributed Computing, Applications and Technologies. A scalable security architecture for grid 2005, 89–93.
Bendahmane , Essaaidi M, El Moussaoui A, Younes A International Conference on Multimedia Computing and systems ICMS ’09. Grid computing security mechanisms: state-of-the-art 2009, 535–540.
Von W: Globus toolkit version 4 grid security infrastructure: a standards perspective. 2005. Available at: , Accessed: January 2011 http://www.globus.org/toolkit/docs/4.0/security/GT4-GSI-Overview.pdf
Almond J, Snelling D: UNICORE: uniform access to supercomputing as an element of electronic commerce. Future Generat Comput Syst 1999, 613: 1–10.
Andrew S, Grimshaw W, Wulf A: The legion vision of a worldwide virtual computer. Commun ACM 1997, 40(1):39–45. 10.1145/242857.242867
Buyya R, Venugopal S Proceedings of the first IEEE International Workshop on Grid Economics and Business Models. The gridbus toolkit for service oriented grid and utility computing: an overview and status report 2004, 19–66. ISBN 0–7803–8525-X ISBN 0-7803-8525-X
Jaspher Willsie Kathrine G, Kirubakaran E: Four-factor based privacy preserving biometric authentication and authorization scheme for enhancing grid security. Int J Comput Appl 2011, 30(5):13–20.
Lamport L: Password authentication with insecure communication. Comm ACM 1981, 24(11):770–772. 10.1145/358790.358797
Hwang T, Chen Y, Laih CS: Non-interactive password authentication without password tables. IEEE Conference on Computer and Communication Systems 1990, 1: 429–431.
Lee JK, Ryu SR, Yoo KY: Fingerprint-based remote user authentication scheme using smart cards. Electron Lett 2002, 38(12):554–555. 10.1049/el:20020380
Chang CC, Lin IC: Remarks on fingerprint-based remote user authentication scheme using smart cards. ACM SIGOPS Operating System Rev 2004, 38(4):91–96. 10.1145/1031154.1031165
Lin CH, Lai YY: A flexible biometrics remote user authentication scheme. Comput Stand Interfac 2004, 27(1):19–23. 10.1016/j.csi.2004.03.003
Uludag U, Pankanti S, Prabhakar S, Jain AK: Biometric cryptosystems: issues and challenges. Proc IEEE Special Issue on Multimedia Security for Digital Rights Management 2004, 92(6):948–960.
Dodis Y, Ostrovsky R, Reyzin L, Smith A: Fuzzy extractors: how to generate strong keys from biometrics and other noisy data. Advances in cryptology-eurocrypt 2004. Lect Notes Comput Sci 2004, 3027: 523–540. 10.1007/978-3-540-24676-3_31
Juels A, Wattenberg M: A fuzzy commitment scheme. Proceedings of the 6th ACM Conference on Computer and Communications Security 1999, 28–36.
Sutcu Y, Li Q, Memon N: Protecting biometric templates with sketch: theory and practice. IEEE Transactions on Information Forensics and Security 2007, 2(3):503–512.
Chen CM, Ku WC: Stolen-verifier attack on two new strong-password authentication protocol. IEICE Transactions on Communications 2002, E85-B(11):2519–2521.
Fan C-I, Lin Y-H: Provably secure remote truly three-factor authentication scheme with privacy protection on biometrics. IEEE Transactions on Information Forensic and Security 2009, 4(4):933–945.
Trammell DD: Four-factor authentication. 2008. Available at: , Accessed: January 2011 http://blog.dustintrammell.com/2008/11/21/four-factor-authentication/#more-160
Foster I, et al.: The open grid services architecture, version 1.5. Available at: , 2006, Accessed: January 2011 http://www.ogf.org/documents/GFD.80.pdf
Alfieria R, et al.: From gridmap-file to VOMS: managing authorization in a grid environment. Futur Gener Comput Syst 2005, 21: 549–558. 10.1016/j.future.2004.10.006
Coffey N: Comparison of ciphers. 2012. Available at: , Accessed: January 2012 http://www.javamex.com/tutorials/cryptography/ciphers.shtml
Foster I, Kesselman C, Nick JM, Tuecke S: Grid services for distributed system integration. Journal Computer 2002, 35(6):37–46. 10.1109/MC.2002.1009167
Moriai S, Kato A, Kanda M: Addition of camellia cipher suites to transport layer security. 2005. Available at: , Accessed: January 2012 http://tools.ietf.org/pdf/rfc4132.pdf
Gong L: Security risk of depending on synchronized clocks. ACM Operating System Review 1991, 26(1):49–53.
The authors wish to thank Karunya University for the support by providing infrastructure for carrying out the simulation. The authors thank the senior professors and the industrial experts for providing valuable suggestions to improve the quality of the research paper.
The authors declare that they have no competing interests.
GJWK, analyzed the requirement of the security for Grid Computing, designed the framework, conducted the experiment and drafted the manuscript. EK gave full support in conducting the experiment and assisted in draft work and revised the manuscript. EBR contributed by reviewing the work done and in revising the content of the manuscript. All authors read and approved the final manuscript.
Authors’ original submitted files for images
Below are the links to the authors’ original submitted files for images.