Next Article in Journal
An Off-Body Narrowband and Ultra-Wide Band Channel Model for Body Area Networks in a Ferryboat Environment
Next Article in Special Issue
Economic Evaluation of Smart PV Inverters with a Three-Operation-Phase Watt-Var Control Scheme for Enhancing PV Penetration in Distribution Systems in Taiwan
Previous Article in Journal
Anamorphic and Local Characterization of a Holographic Data Storage System with a Liquid-Crystal on Silicon Microdisplay as Data Pager
Previous Article in Special Issue
A Modified Polynomial Expansion Algorithm for Solving the Steady-State Allen-Cahn Equation for Heat Transfer in Thin Films
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Lattice-Based Group Authentication Scheme

1
Department of Computer Science and Engineering, National Sun Yat-sen University, Kaohsiung 804, Taiwan
2
Intelligent Electronic Commerce Research Center, National Sun Yat-sen University, Kaohsiung 804, Taiwan
*
Author to whom correspondence should be addressed.
Appl. Sci. 2018, 8(6), 987; https://doi.org/10.3390/app8060987
Submission received: 19 May 2018 / Revised: 10 June 2018 / Accepted: 11 June 2018 / Published: 15 June 2018
(This article belongs to the Special Issue Selected Papers from the 2017 International Conference on Inventions)

Abstract

:
Authentication has been adopted in many areas, but most of these authentication schemes are built using traditional cryptographic primitives. It is widely believed that such primitives are not resistant to quantum algorithms. To deal with those quantum attacks, lattice-based cryptography was introduced by Ajtai in 1996. To the best of our knowledge, the existing lattice-based authentication schemes are based on a lattice-based public key encryption called NTRU: a ring-based public key cryptosystem, proposed by Hoffstein, Pipher, and Silverman in 1998. However, these schemes only support the case of a single user. In view of the aforementioned issue, we propose the first lattice-based group authentication scheme. The proposed scheme is secure against replay attacks and man-in-the-middle attacks. Moreover, compared with the existing lattice-based authentication schemes, ours provides the most efficient method to agree upon a session key among a group of users after mutual authentication.

1. Introduction

Nowadays, authentication has been adopted in many areas, such as radio frequency identification (RFID), cloud computing, wireless sensor networks, internet of things (IoT), etc. Authentication schemes can be separated into two types: one is individual-oriented authentication, and another is group-oriented authentication. The scenario of individual-oriented authentication is one-to-one communication. There are only two users needing to authenticate each other. In group-oriented authentication, there are more than two users in a group. They build a private network and share messages among the group. Such a cryptographic primitive can be applied heavily to many-to-many network environments, e.g., Internet of Things or RFID.
However, most of these authentication schemes are built on traditional cryptographic primitives, e.g., RSA and ElGamal, where the cryptosystems are constructed based on discrete logarithm or factorization. It is widely believed that such primitives are not resistant to quantum algorithms. For instance, the algorithm proposed by Shor [1] in 1994 is a quantum algorithm that solves discrete logarithm problems and factorization problems in subexponential time complexity. To deal with those quantum attacks, lattice-based cryptography was introduced by Ajtai [2] in 1996. A lattice can be represented as a matrix which has a periodic structure in dimensional space. There are two central hard problems in lattice-based cryptography: the shortest vector problem (SVP) and the closest vector problem (CVP). The shortest vector problem (SVP) is, given a base of a lattice, to find the smallest possible nonzero vector of the lattice. The closest vector problem (CVP) is, given a base of a lattice and a vector which does not belong to the lattice, to find a vector belonging to the lattice that is the closest vector to the given vector. Both SVP and CVP are believed to be invulnerable to quantum attacks such as Shor’s algorithm. As a powerful and promising quantum-resistant primitive, it has been adopted in lots of applications, such as public key cryptosystems and sieve algorithms.
To the best of our knowledge, the existing lattice-based authentication schemes [3,4] are based on a lattice-based public key encryption called NTRU encryption [5], proposed by Hoffstein, Pipher, and Silverman in 1998. However, these two schemes support only the case of a single user. Another intuitive way to achieve group authentication is by using a lattice-based group signature. Nevertheless, a signature scheme is an asymmetric cryptographic primitive, which is usually more costly than a symmetric one. Besides this, group signatures support additional but unnecessary properties, such as the anonymity of signers, which may not be a desired property in RFID or IoT. Therefore, in view of the aforementioned issues, we will propose a new construction for lattice-based authentication. The proposed scheme also supports group authentication.

Contributions

In this manuscript, we propose a lattice-based authentication scheme supporting group authentication. Compared with the existing lattice-based authentication schemes, our scheme provides the most efficient authentication protocol in terms of the total cost to generate a session key among a group of users after mutual authentication.

2. Preliminaries

In this section, we review some preliminaries, including the definition of lattices, two standard worst-case approximation problems on lattices, the SampleD algorithm, and the BasisDel algorithm.

2.1. Notation

We denote the set of integers modulo q by q . Column vectors are represented by lower-case bold letters and matrices by upper-case bold letters. For a matrix S m 1 × m 2 , we say the norm of S is S = max 1 i m 2 s i , where s i denotes the 2 -norm (Euclidean norm) of the column vector s i . We let S ˜ m 1 × m 2 denote the matrix whose columns s ˜ 1 , …, s ˜ m 2 represent the Gram–Schmidt orthogonalization of the vectors s 1 , …, s m 2 taken in the same order. Let S ˜ denote the Gram–Schmidt norm of S . Let f(n) and g ( n ) denote two positive real-valued functions. We say that f = O( g ) if there exist two constants c 1 , c 2 such that f ( n ) < c 1 · g ( n ) for all n c 2 ; f = Ω ( g ) if g = O ( f ) ; and f = Θ ( g ) if f = Ο ( g ) and g = O ( f ) . We say f = O ˜ ( g ) if f = O ( g · p o l y ( log g ) ) and f = Θ ˜ ( g ) if f = Θ ( g · p o l y ( log g ) ) .

2.2. Lattices

Based on [6], the definitions are shown as following:
Definition 1.
Let m be the m-dimensional Euclidean space. A lattice Λ m is a set
Λ = { i = 1 k c i b i | c i     and   b 1 ,   ,     b k m }
of all integral combinations of k linearly independent vectors b 1 , , b k in m   ( m > k ) . The integers k and m are called the rank and dimension of the lattice, respectively. The vector set { b 1 , ,   b k } is called a basis of the lattice.
Definition 2.
Let A   ( A m × n ) be a basis. The integers m and n are called the dimension and rank; y and t are column vectors; and q is a prime number.
Λ ( A ) = { y m |   y = A t   mod   q , t n }
Λ ( A ) = { y m |   A y = 0   mod   q }
Definition 3
(TrapGen( 1 ) [7,8]). There is a probabilistic polynomial-time (PPT) algorithm that, on input of a security parameter 1 , an odd prime q = poly( ), and two integers n = Θ ( ) and m 6 n log q , outputs a matrix A q n × m statistically close to uniform, and a basis T A for Λ ( A ) with overwhelming probability such that T ˜ A Θ ˜ ( m ) .
Definition 4
(The Shortest Vector Problem (SVP) [3]). Given a base B (a set of vectors linearly independent) of a lattice L, find the smallest possible nonzero vector of L.
Definition 5
(The Closest Vector Problem (CVP) [3]). Given a base B of a lattice L and a vector 𝔃 L , find a vector υ L that is the closest to 𝔃 .

2.3. The Gaussian Sampling Algorithm: SampleD(B, s, c, t)

Based on [9], the definitions are shown as following:
Definition 6.
There is a PPT algorithm that, given a basis B of an m-dimensional lattice Λ , a parameter s B ˜ ·   ω ( log m ) , and a center c m , outputs a sample from a distribution that is statistically close to D Λ , s , c , where D Λ , s , c is a discrete Gaussian distribution with Gaussian parameter s and center c.
Definition 7.
The Gaussian Sampling Algorithm: SampleD(B, s, c, t) (B is a trapdoor basis of the lattice. A is also a basis of the lattice but not a trapdoor).
  • Input:
    1. 
    A basis B of a lattice Λ m ;
    2. 
    A positive real parameter s B ˜ · ω ( log m ) ;
    3. 
    A center vector c n ;
    4. 
    A vector t q n .
  • Output:
    A fresh random lattice vector x Λ drawn from a distribution statistically close to D Λ , s, c, such that A x = t mod q.
Definition 8
([10]). SampleD is said to be one-way if, given (s, c, t), there is no polynomial-time adversary that outputs x such that x D Λ , s, c and A x = t mod q (where A is a basis).

2.4. The Basis Delegation Algorithm: BasisDel ( T A , A , A ¯ )

Definition 9
([11]). The Basis Delegation Algorithm: BasisDel ( T A ,   A ,   A ¯ )
  • Input:
    1. 
    An arbitrary A q n × m such that A is primitive;
    2. 
    An arbitrary basis T A of Λ ( A ) ;
    3. 
    An arbitrary A ¯ q n × m ¯ .
  • Output:
    A basis T A of Λ ( A = A A ¯ ) m + m ¯ such that T ˜ A = T ˜ A .

3. Our Construction

In this section, we present a lattice-based authentication scheme. The proposed scheme consists of four phases: Setup, Registration, Group Joining, and Authentication. The notation used in the proposed scheme is defined in Table 1.

3.1. The Proposed Scheme

3.1.1. Setup

Key generation center (KGC) performs the following operations [2]:
  • Choose a security parameter 1 λ ( λ ) .
  • Choose integers n and q ( a   prime ) , q = p o l y ( n ) .
  • Choose dimension m 6 n log q and a bound L = O ( m ) .
  • Choose a Gaussian parameter s L · ω ( log ( m + m ) ) , where m =   p o l y ( λ ) .
  • Choose a set M = { B 1 , , B Q   ϵ   n × m } , where Q =   p o l y ( λ ) and B i is independently chosen with uniform distribution. Note that B i is the public parameter for user i .
  • Let H (   ) denote the function which converts a vector into a key of symmetric encryption.
  • Let E k denote the symmetric encryption.
  • Publish system parameters chosen as above.

3.1.2. Registration

KGC performs the algorithm TrapGen ( 1 λ ) [7,8] to generate ( A ,   T A ) (where A n × m and T A is a short basis of Λ ( A ) ).

3.1.3. Group Joining

Let group X = { B 1 , , B Q } for some Q   [ Q ] ( X M ) .
  • A u s e r i sends B i via a security channel to a group manager.
  • After receiving B i , the manager computes A c c x = [ B i   X B i ] n × m , F B i = [ A | | 1 j ( i ) Q B j ] n × ( m + m ) , and ω B i = T F B i = BasisDel ( T A ,   A ,   1 j ( i ) Q B j ) .
  • Then, the manager sends ω B i via a secure channel to u s e r i .

3.1.4. Authentication

  • First, the manager sends t i q n to u s e r i .
  • After receiving t i , u s e r i computes d B i = SampleD ( ω B i ,   s ,   0 ,   t i ) , and then chooses a number r i randomly, and computes k i = H ( ω B i ) , a i = E k i ( d B i ,   r i ) .
  • The u s e r i sends a i to the manager.
  • After receiving a i from each user, the manager performs the following: for i = 1 to Q , the manager computes ( d B i ,   r i ) = D H ( ω B i ) ( a i ) and F B i = [ A | | ( A c c x B i ) ] n × ( m + m ) , then checks if F B i d B i = t i mod q . If the check passes, the user is authenticated; otherwise, the manager aborts the session.
  • Next, the manager performs as follows according to Q .
Case 1 ( Q > 1 ) :
  • First, the manager computes R i = r 1 r 2 r i 1 r i + 1 r Q for i = 1 to Q , s k = r 1 r 2 r Q , k i = H ( ω B i ) , and b i = E k i ( s k   ,   R i ) .
  • The manager sends b i to each u s e r i .
  • After receiving b i , u s e r i computes ( s k   ,   R i ) = D k i ( b i ) , and then checks if s k = R i r i . If it is true, the manager is authenticated. Then, u s e r i sets the session key s k =   s k .
Case 2 ( Q = 1 ) :
  • First, the manager chooses a number r randomly.
  • Then, the manager computes k i = H ( ω B i ) , b = E k i ( r   ,   H ( r i ) ) and the manager sends b to u s e r i .
  • After receiving b , u s e r i computes ( r ,   h ) = D k i ( b ) . The u s e r i checks if h =   H ( r i ) . If it is true, the manager is authenticated. Then, u s e r i sets the session key s k = r r i .

4. Security Analysis

  • In this section, we provide the security analyses, which include the analyses on the replay attacks, the man-in-the-middle attacks, and the secure mutual authentication, where the detailed security proofs are shown in Appendix A. Replay Attacks:
In the proposed scheme, each user chooses a number r i randomly and sends r i to the manager. The random number r i is different in every authentication round. Hence, there is no chance that an attacker can succeed in replay attacks in the proposed scheme.
  • Man-in-the-Middle Attacks:
In the proposed scheme, we use a secure symmetric encryption algorithm to encrypt data in every data flow of the authentication phase. If there is an attacker wanting to intercept messages a i or b , there is no chance that the attacker can obtain the plaintext without the symmetric key. In Steps 1–4 of the authentication phase, d B i and r i are protected by the secret key k i , and in Step 5 of the authentication phase, s k , R i , r , and H ( r i ) are protected by the secret key k i , too.
The comparisons of features and security between the proposed scheme and [3,4] are summarized in Table 2.
  • Secure Mutual Authentication:
In the Group Joining phase, a group manager will share a long-term secret ω B i with user i , which is also a trapdoor to function SampleD. In the Authentication phase, the group manager first sends t i to user i as a challenge, then user i returns with a i = E k i ( d B i ,   r i ) , where k i = H ( ω B i ) . Note that it is necessary to compute d B i using SampleD with ω B i . Therefore, if the check in Step 4 passes, user i is authenticated. On the other hand, if the check in Case 1 (Case 2) passes, then we can assure that the group manager decrypts the ciphertext a i with k i = H ( ω B i ) to obtain the correct r i for user i . By the security of the underlying symmetric encryption scheme, we are sure that the group manager is authenticated. If the two entities are both authenticated by each other, then we know that the session key s k can be securely established by the security of SampleD and the underlying symmetric encryption scheme.

5. Performance Comparisons

In this section, our proposed scheme is compared with some existing lattice-based authentication schemes [3,4]. Table 3 and Table 4 summarize the comparisons between the proposed scheme and those schemes in performance.
In the authentication phase of the proposed scheme, when there is only one user ( Q = 1 ) , the manager uses one symmetric encryption operation, one symmetric decryption operation, and n × ( m + m ) module multiplications. The user performs one SampleD operation, two hashing operations, one symmetric encryption operation, one symmetric decryption operation, and one exclusive-or operation. We adopt AES 256 as the symmetric encryption operation. The cost of AES 256 is 15.875 ms [12]. The cost of SampleD is 0.00045 ms [13]. We take SHA-3 256 bits as our hashing operation. According to [14], the time taken to hash a 100-byte message is 0.001295 ms . We use the Montgomery algorithm with 256 bits as our modular multiplication. The time of a modular multiplication is 0.137 ms [15]. According to [16], we set n × ( m + m ) = 192   ×   417 = 80,064 . Hence, the computation time of n × ( m + m ) module multiplications is 0.137 ms × 80,064 = 10,968.77   ms . In conclusion, the total computation cost of the manager is 15.875   ×   2   + 10,968.77 11,000.52   ms . The total cost of the user is 0.00045   +   0.001295   ×   2   +   15.875   ×   2 31.753   ms . When there is more than one user ( Q   >   1 ) , the manager uses one symmetric encryption operation, one symmetric decryption operation, one hashing operation, and n × ( m + m ) module multiplications. Each user uses one SampleD operation, one hashing operation, one symmetric encryption operation, and one symmetric decryption operation. The total computation cost of the manager is 15.875   ×   2   +   0.001295   +   22,446.08 22,477.83   ms . The total computation cost of each user is 31.753   ms .
In the authentication phase of Moustaine et al.’s Scheme [3], the reader/back-end executes one NTRU decryption operation, two rotation operations, two exclusive-or operations, one hashing operation, one subtraction, and 2 N 2 multiplications. The tag performs four addition operations, three rotation operations, one hashing operation, and two exclusive-or operations. According to [17], H M A C ( K , m ) =   H ( ( K o p a d )   | |   H ( ( k i p a d )   | |   m ) ) 2 × SHA-3 hashing operations. Thus, the running time of HMAC is 0.001295   ×   2   =   0.00259   ms . According to [3], the cost of an NTRU decryption is 2 N 2 modular multiplications ( N = 167 ) . Hence, the cost of an NTRU decryption is 2   ×   167   ×   167   ×   0.137 7641.586   ms . In summary, the cost of the reader/back-end is 7641.586   ×   2   +   0.00259 15,283.1746   ms . The cost of the tag is 0.00259   ms .
In the authentication phase of Park et al.’s Scheme [4], the user performs 2 N 2 multiplication operations, one hashing operation, two rotation operations, one exclusive-or operation, and two addition operations. The bank executes N 2 multiplication operations, one exclusive-or operation, one rotation operation, and one hashing operation. In conclusion, the cost of the bank is 167   ×   167   ×   0.137   +   0.001295 3820.79   ms . The cost of the user is 2   ×   167   ×   167   ×   0.137   +   0.001295 7641.59   ms .
Note that for a single-user situation, the computation cost of the server side is 28% faster than [3], and the computation cost of the user side is 99% faster than [4]. As for the computation cost of the group authentication scenario, we can see that the total cost of the server side and the user side is less than those of [3,4].

6. Conclusions

Most authentication schemes are built on traditional cryptographic primitives. It is widely believed that traditional cryptographic primitives are not resistant to quantum attacks. In 1994, Shor proposed a quantum algorithm that can solve discrete logarithm problems and factorization problems. To deal with those quantum attacks, Ajtai presented lattice-based cryptography in 1996. To the best of our knowledge, there is no lattice-based group mutual authentication scheme which is based on symmetric encryption. There are two lattice-based authentication schemes which use the NTRU asymmetric encryption algorithm in the literature. Usually, the cost of an asymmetric encryption is higher than that of a symmetric encryption. In this manuscript, we have proposed a lattice-based authentication scheme based on symmetric encryption. Additionally, not only does the proposed scheme provide group authentication, but also it resists replay attacks and man-in-the-middle attacks. In the proposed scheme, after making sure of the total number of users in a group, the manager can choose any of them to create an authentication procedure for any subgroups. Besides this, we give a cost comparison between our scheme and the other two NTRU-based mutual authentication schemes in terms of authentication and establishing a session key. Our scheme provides the lowest cost in generating a session key among a group of users after mutual authentication.

Author Contributions

All of the authors worked collaboratively in the design of the scheme, proofs of its security, and analyses of its performance.

Funding

This research received no external funding.

Acknowledgments

This work was partially supported by the Ministry of Science and Technology of Taiwan under grants MOST 105-2923-E-110-001-MY3, MOST 105-2221-E-110-053-MY2, MOST 106-3114-E-110-001, and financially supported by the Intelligent Electronic Commerce Research Center from The Featured Areas Research Center Program within the framework of the Higher Education Sprout Project by the Ministry of Education (MOE) in Taiwan.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A

Appendix A.1. Security Proofs

In this section, there is no security model suited for the proposed scheme, so we give the security models at first. Then, we prove that the proposed scheme achieves mutual authentication security and session key security.

Appendix A.1.1. Security Models

Definition A1
(Group Mutual Authentication). An attacker interacts with a simulator in the following game (Figure A1).
Setup. The KGC publishes the system parameters to the attacker.
Training Phase. The attacker is allowed to query the following oracles:
  • Registration oracle: The outputs of this oracle are the public key A and the secret key T A .
  • Group-joining oracle: The input of this oracle is B i and the output is w B i .
  • Authentication oracle: The inputs of the oracle are a group manager name, the group name, and the user of the group. The outputs of the oracle are t i ,   a i , and b i .
Challenge. There are two parts of this phase, depending on the entity that the attacker impersonates.
Part I: (The Authenticity of the Manager)
i. 
The attacker sends t i to the simulator. After receiving t i , the simulator computes d B i .
ii. 
The simulator chooses a number r i randomly, computes k i ,   a i , and sends a i to the attacker.
iii. 
The attacker sends b to the simulator. If the attacker is authenticated, the attacker wins the game.
Part II: (The Authenticity of the User)
i. 
The attacker sends a i to the simulator. After receiving a i , the simulator computes d B i and F B i .
ii. 
The simulator checks if F B i d B i = t i   m o d   q . If it is true, the attacker is authenticated and wins the game.
A scheme is said to achieve secure group mutual authentication if there is no polynomial-time adversary winning the above game with non-negligible advantage.
Figure A1. The security model of group mutual authentication.
Figure A1. The security model of group mutual authentication.
Applsci 08 00987 g0a1
Definition A2.
(Session Key Security). An attacker interacts with a simulator in the following game (Figure A2).
Setup. The KGC publishes the system parameters to the attacker.
Training Phase. The attacker is allowed to query the following oracles:
  • Registration oracle: The outputs of this oracle are the public key A and the secret key T A .
  • Group joining oracle: The input of this oracle is B i and the output is w B i .
  • Authentication oracle: The inputs of the oracle are a group manager name, the group name, and the user of the group. The outputs of the oracle are t i ,   a i and b i .
Challenge. First, the simulator runs the authentication protocol and generates a valid session key s k , and chooses another random session key s k . Then, the simulator chooses a bit β and sets s k β = s k ,   s k 1 β = s k . Next, the simulator sends s k 0 ,   s k 1 to the attacker. After receiving s k 0 ,   s k 1 , the attacker outputs a bit β , and wins the game if β = β .
A scheme is said to achieve a secure session key if there is no polynomial-time adversary winning the above game with non-negligible advantage.
Figure A2. The security model of a secure session key.
Figure A2. The security model of a secure session key.
Applsci 08 00987 g0a2

Appendix A.1.2. Security Proof

Lemma A1
(Group Mutual Authentication Security). If the underlying symmetric encryption scheme used in our authentication scheme is secure against adaptive chosen ciphertext attacks (IND-CCA2) and the SampleD function used in our scheme achieves one-way-ness, then our authentication scheme can achieve secure mutual authentication between the manager and the users.
Proof. 
 
Part I (The Authenticity of the Manager):
Assume that an attacker interacts with a simulator via the game defined in Definition A1. The simulator simulates the Setup Phase and Training Phase like those in the proposed scheme.
Then, the simulator simulates the Challenge Phase as follows. First, the attacker sends t i to the simulator. Then, the simulator computes d B i = S a m p l e D ( w B i , s , 0 , t i ) and chooses two numbers r i 0 , r i 1 . Next, the simulator sets m 0 = ( d B i ,   r i 0 ) and m 1 = ( d B i ,   r i 1 ) , and sends m 0 ,   m 1 to the IND-CCA2 game for symmetric encryption as the challenge messages. After receiving the challenge ciphertext c from the IND-CCA2 game, the simulator sends c to the attacker. Then, the simulator receives b from the attacker, and the simulator sends b to the decryption oracle of the IND-CCA2 game. In the case that Q > 1 (Figure A3), the simulator parses the returned plaintext as ( s k ,   R i ) . Then the simulator outputs 0 if s k R i = r i 0 , and outputs 1 if s k R i = r i 1 . In the case that Q = 1 (Figure A4), the simulator parses the returned plaintext as ( r ,   h ) . Then the simulator outputs 0 if h = H ( r i 0 ) , and outputs 1 if h = H ( r i 1 ) .
If the attacker is able to pass the authentication with non-negligible advantage, then the plaintext in b should be correct. Therefore, the simulator is able to make a correct guess based on the decryption result of b , and win the IND-CCA2 game with the same advantage as the attacker.
Part II (The Authenticity of the User, Figure A5):
Assume that an attacker interacts with a simulator via the game defined in Definition A1, and the attacker sends a user set U { 1 ,   , Q } ( | U | = Q ) to the simulator. To simulate the Setup Phase, the simulator chooses B i such that A = { A i = 1 Q ( B i B i ) } , where i U and B i is the target user that the attacker wants to impersonate. Other system parameters are set the same as in the proposed scheme. The simulator then simulates the Training Phase as in the proposed scheme. In the Challenge Phase, the simulator first outputs t i to the attackers, and obtains a i from the attacker. Then, the simulator performs as in the proposed scheme to obtain d B i , and check whether F B i d B i = t i   m o d   q . If the formula holds—which means that the attacker passes the authentication and thus wins the game—then the attacker can be viewed as an inverter for the function SampleD. Therefore, we are able to break the one-way-ness of SampleD with the same advantage as the attacker. □
Figure A3. The authenticity of the manager ( Q > 1 ) .
Figure A3. The authenticity of the manager ( Q > 1 ) .
Applsci 08 00987 g0a3
Figure A4. The authenticity of the manager ( Q = 1 ) .
Figure A4. The authenticity of the manager ( Q = 1 ) .
Applsci 08 00987 g0a4
Figure A5. The authenticity of the user.
Figure A5. The authenticity of the user.
Applsci 08 00987 g0a5
Lemma A2
(Session Key Security). If the symmetric encryption used in our authentication scheme is secure against adaptive chosen ciphertext attacks (IND-CCA2), then our scheme is a secure key exchange scheme.
Proof. 
Assume that an attacker interacts with a simulator via the game defined in Definition A2. The simulator simulates the Setup Phase and Training Phase as in the proposed scheme. □
Then, the simulator simulates the Challenge Phase as follows.
Case I ( Q > 1 , Figure A6): First, the simulator chooses j [ 1 , Q ] . Then, for i = 1 to Q , the simulator chooses t i Z q and sends t i to the attacker. Next, for i [ 1 , Q ] / { j } , the simulator computes w B i ,   d B i , and a i like in the proposed scheme. For user j , the simulator chooses two random numbers r j 0 , r j 1 and sets m 0 = ( d B j , r j 0 ) ,   m 1 = ( d B j , r j 1 ) . Then, the simulator sends m 0 , m 1 to the IND-CCA2 game to invoke the challenge phase. After receiving the challenge ciphertext c , the simulator sends a j = c to the attacker. Then, the simulator sets r j = r j 0 and computes s k and b i for i [ 1 , Q ] as in the proposed scheme. Next, the simulator sends all b i to the attacker. Finally, the simulator outputs s k 0 = s k ,   s k 1 = r 1 r j 1 r Q to the attacker. After receiving s k 0 ,   s k 1 , the attacker outputs a bit β to the simulator. Then, the simulator outputs 0 if β = 0 to the IND-CCA2 game. Otherwise, the simulator outputs a random bit β . Let ϵ be the advantage that the attacker wins the game. If the IND-CCA2 game chooses m 0 , the simulator makes a correct guess with probability ϵ . If the IND-CCA2 game chooses m 1 , then the simulator makes a correct guess with probability 1 2 . Therefore, the simulator’s advantage in winning the IND-CCA2 game is | ( ϵ + 1 2 ) 1 2 | = ϵ , which is non-negligible.
Case II ( Q = 1 , Figure A7): First, the simulator sends t i to the attacker. Then, the simulator chooses r i 0 , r i 1 and sets m 0 = ( d B j , r j 0 ) ,   m 1 = ( d B j , r j 1 ) . Next, the simulator sends m 0 , m 1 to the IND-CCA2 game to invoke the challenge phase. After receiving the chllenge ciphertext c , the simulator sends a j = c to the attacker. Then, then simulator sends ( r , H ( r i 0 ) ) to the encryption oracle of the IND-CCA2 game and receives the ciphertext c . Next, the simulator sets b = c and sends b to the attacker. Finally, the simulator computes s k 0 = r r i 0 ,   s k 1 = r r i 1 , and sends s k 0 , s k 1 to the attacker. After receiving s k 0 ,   s k 1 , the attacker outputs a bit β to the simulator. Then, the simulator outputs 0 if β = 0 to the IND-CCA2 game. Otherwise, the simulator outputs a random bit β . Let ϵ be the advantage that the attacker wins the game. If the IND-CCA2 game chooses m 0 , the simulator makes a correct guess with probability ϵ . If the IND-CCA2 game chooses m 1 , then the simulator makes a correct guess with probability 1 2 . Therefore, the simulator’s advantage in winning the IND-CCA2 game is | ( ϵ + 1 2 ) 1 2 | = ϵ , which is non-negligible.
Figure A6. The session key security ( Q > 1 ) .
Figure A6. The session key security ( Q > 1 ) .
Applsci 08 00987 g0a6
Figure A7. The session key security ( Q = 1 ) .
Figure A7. The session key security ( Q = 1 ) .
Applsci 08 00987 g0a7
Theorem A1.
If the underlying symmetric encryption is secure against adaptive chosen ciphertext attacks (IND-CCA2) and the function Sample D achieves one-way-ness, then, according to Lemma A1, our authentication scheme is a secure group mutual authentication protocol. If the underlying symmetric encryption is secure against adaptive chosen ciphertext attacks (IND-CCA2), then, according to Lemma A2, our authentication scheme is a secure key exchange protocol.

References

  1. Shor, P.W. Algorithms for quantum computation: Discrete logarithms and factoring. In Proceedings of the 35th Annual Symposium on Foundations of Computer Science, Santa Fe, NM, USA, 20–22 November 1994; pp. 124–134. [Google Scholar]
  2. Ajtai, M. Generating hard instances of lattice problems. In Proceedings of the Twenty-Eighth Annual ACM Symposium on Theory of Computing, Philadelphia, PA, USA, 22–24 May 1996; pp. 99–108. [Google Scholar]
  3. Moustaine, E.E.; Laurent, M. A lattice-based authentication for low-cost RFID. In Proceedings of the 2012 IEEE International Conference on RFID-Technologies and Applications (RFID-TA), Nice, France, 5–7 November 2012; pp. 68–73. [Google Scholar]
  4. Park, S.-W.; Lee, I.-Y. Mutual authentication scheme based on lattice for NFC-PCM payment service environment. Int. J. Distrib. Sens. Netw. 2016, 12. [Google Scholar] [CrossRef]
  5. Hoffstein, J.; Pipher, J.; Silverman, J.H. NTRU: A ring-based public key cryptosystem. In International Algorithmic Number Theory Symposium; Springer: Berlin, Germany, 1998; pp. 267–288. [Google Scholar]
  6. Mahabir, P.J.; Reihaneh, S.N. Compact accumulator using lattices. In Proceedings of the International Conference on Security, Privacy, and Applied Cryptography Engineering, Jaipur, India, 3–7 October 2015; Springer: Berlin, Germany, 2015; pp. 347–358. [Google Scholar]
  7. Alwen, J. Generating shorter bases for hard random lattices. Theory Comput. Syst. 2011, 48, 535–553. [Google Scholar] [CrossRef]
  8. Micciancio, D. Trapdoors for lattices: Simpler, tighter, faster, smaller. EuroCrypt 2012, 7237, 700–718. [Google Scholar]
  9. Gentry, C.; Peikert, C.; Vaikuntanathan, V. Trapdoors for hard lattices and new cryptographic constructions. In Proceedings of the Fortieth Annual ACM Symposium on Theory of Computing, Victoria, BC, Canada, 17–20 May 2008; ACM: New York, NY, USA, 2008; pp. 197–206. [Google Scholar]
  10. Bellare, M.; Rogaway, P. Entity authentication and key distribution. Crypto 1993, 93, 232–249. [Google Scholar]
  11. Cash, D.; Hofheinz, D.; Kiltz, E.; Peikert, C. Bonsai trees, or how to delegate a lattice basis. Eurocrypt 2010, 6110, 523–552. [Google Scholar]
  12. Sahu, S.K.; Kushwaha, A. Performance analysis of symmetric encryption algorithms for mobile ad hoc network. Int. J. Emerg. Technol. Adv. Eng. 2014, 4, 619–624. [Google Scholar]
  13. Follath, J. Gaussian sampling in lattice based cryptography. Tatra Mt. Math. Publ. 2014, 60, 1–23. [Google Scholar] [CrossRef]
  14. Gaj, K.; Homsirikamol, E.; Rogawski, M. Fair and comprehensive methodology for comparing hardware performance of fourteen round two SHA-3 candidates using FPGAs. In Proceedings of the International Workshop on Cryptographic Hardware and Embedded Systems, Santa Barbara, CA, USA, 17–20 August 2010; pp. 264–278. [Google Scholar]
  15. Min, H.S.; Yeop, O.S.; Hyunsoo, Y. New modular multiplication algorithms for fast modular exponentiation. EuroCrypt 1996, 1070, 166–177. [Google Scholar]
  16. Micciancio, D.; Regev, O. Lattice-based cryptography. In Post-Quantum Cryptography; Springer: Berlin, Germany, 2009; pp. 147–191. [Google Scholar]
  17. Krawczyk, H.; Bellare, M.; Canetti, R. HMAC: Keyed-Hashing for Message Authentication; ACM: New York, NY, USA, 1997; Available online: https://tools.ietf.org/html/rfc2104 (accessed on 10 July 2017).
Table 1. The notation.
Table 1. The notation.
NotationsMeaning
B ˜ The Gram–Schmidt norm
1 λ Security parameter
n An integer
q Prime q = p o l y ( n )
m Dimension m 6 n log q
m m =   p o l y ( λ ) ϵ  
L O ( m )
s Gaussian parameter s L · ω ( log ( m + m ) )
M A message set, M = { B 1 , , B Q     n × m }
Q Q =   p o l y ( λ )
Q Q ϵ   [ Q ]
A Public key
T A Secret key
B i Exclusive matrix of u s e r i
H (   ) Convert a vector into a key of symmetrical encryption
Table 2. Feature and security comparisons.
Table 2. Feature and security comparisons.
Moustaine et al.’s SchemePark et al.’s SchemeOur Scheme
Mutual AuthenticationYesYesYes
Group AuthenticationNoNoYes
No Replay AttackYesYesYes
No Man-in-the-Middle AttackYesYesYes
Table 3. The cost comparison of the single-user situation between [3,4] and our scheme.
Table 3. The cost comparison of the single-user situation between [3,4] and our scheme.
Server (Manager/Reader or Back-End/Bank)User (Tag)
Our Scheme11,000.52 ms31.75 ms
Moustaine et al.’s Scheme15,283.17 ms0.00259 ms
Park et al.’s Scheme3820.79 ms7641.59 ms
Table 4. The cost comparison of a Q + 1 users ( Q + 1 ) situation between [3,4] and our scheme.
Table 4. The cost comparison of a Q + 1 users ( Q + 1 ) situation between [3,4] and our scheme.
Group ManagerGroup MemberTotal Cost
Our Scheme11,000.52 Q   ms 31.75 ms 11,032.27 Q   ms
Moustaine et al.’s Scheme15,283.17 Q   ms 0.00259 ms 15,283.17 Q   ms
Park et al.’s Scheme3820.79 Q   ms 7641.59 ms 11,462.38 Q   ms

Share and Cite

MDPI and ACS Style

Huang, J.-J.; Tseng, Y.-F.; Yang, Q.-L.; Fan, C.-I. A Lattice-Based Group Authentication Scheme. Appl. Sci. 2018, 8, 987. https://doi.org/10.3390/app8060987

AMA Style

Huang J-J, Tseng Y-F, Yang Q-L, Fan C-I. A Lattice-Based Group Authentication Scheme. Applied Sciences. 2018; 8(6):987. https://doi.org/10.3390/app8060987

Chicago/Turabian Style

Huang, Jheng-Jia, Yi-Fan Tseng, Qi-Liang Yang, and Chun-I Fan. 2018. "A Lattice-Based Group Authentication Scheme" Applied Sciences 8, no. 6: 987. https://doi.org/10.3390/app8060987

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop