Offline User Authentication Ensuring Non-Repudiation and Anonymity
Abstract
:1. Introduction
- The legitimacy of a user can be verified offline.
- Data transmitted between the department’s authentication device and the executive’s or system administrator’s authentication device must be protected.
- Anonymity must be ensured.
- Non-repudiation must be ensured.
- Management can be done easily because authentication data stored in the executive’s authentication device does not need to be updated even when personnel changes are made.
2. Preliminaries
2.1. RSA Cryptosystem
- Step 1: Choose two different large prime numbers, p and q, and compute n = p × q.
- Step 2: Choose an integer e such that 1 < e < ϕ(n) and gcd(e, ϕ(n)) = 1, where ϕ(n) = (p − 1) (q − 1).
- Step 3: Determine d such that e × d ≡ 1 (mod ϕ(n)).
- Step 4: Keep d as his/her private key and make the corresponding public key (e, n) public.
2.2. ElGamal Cryptosystem
- Step 1: A large prime number p and a generator g of GF(p) are chosen.
- Step 2: For each user, an integer x in [1, p − 1] is chosen as the user’s private key, and the corresponding public key y is computed, where y = gx mod p.
- Step 1: Choose a random number r in [1, p − 1].
- Step 2: Compute b = gr mod p and c = m × yr mod p.
- Step 3: Send the ciphertext (b, c) to U1.
3. The Architecture of the Designed Offline Non-Repudiation and Anonymity-Ensured User Authentication System
- Functions of the management server
- (a)
- Manage all authorization information, including information about various departments and the related authorized management personnel.
- (b)
- Generate all required parameters for authorization and authentication.
- (c)
- Store the authentication data in the system administrator’s authentication device and executive’s authentication device through a secure channel when the system is initialized.
- (d)
- Generate new authentication data and store it in the system administrator’s authentication device through a secure channel because of the change of authorized management personnel.
- Functions of the system administrator’s authentication device
- (a)
- Set the authentication parameters on the department’s authentication device through a public channel.
- (b)
- Update the authentication parameters on the department’s authentication device through a public channel when authorized management personnel of this department changes.
- The executive’s authentication device
- (a)
- Generate a nonce and send the authentication request to the department’s authentication device for authentication.
- (b)
- Verify the legitimacy of the department’s authentication device by the response of the department’s authentication device.
- (c)
- Compute the authentication parameters for the department’s authentication device to allow the department’s authentication device to verify the legitimacy and ensure non-repudiation of the executive.
- The department’s authentication device
- (a)
- Verify the legitimacy of the system administrator’s authentication device before the stored authentication data is set or updated.
- (b)
- Generate a nonce and send it back to the executive’s authentication device after getting the authentication request from the administrator’s authentication device.
- (c)
- Verify the legitimacy and ensure non-repudiation of the executive after receiving the authentication parameters generated by the executive’s authentication device.
4. The User Authentication Scheme for the Designed Offline Non-Repudiation and Anonymity-Ensured User Authentication System
- The legitimacy of a user can be verified offline.
- Data transmitted between the department’s authentication device and the executive’s or system administrator’s authentication device must be protected.
- Anonymity must be ensured.
- Non-repudiation must be ensured.
- Management can be easily conducted because authentication data stored in the executive’s authentication device does not need to be updated even when personnel changes are made.
4.1. Initialization Phase
- Step 1: The management server Server computes Ki = H(||Master1) for the executive Ai, where I = 1, 2, …, m.
- Step 2: Server selects ei for Ai and then computes di such that di × ei ≡ 1 (mod ϕ(n)), where gcd(ei, ϕ(n)) = 1 and er ≠ eα when r ≠ α.
- Step 3: Server computes SKi = mod n for Ai.
- Step 4: Server stores H(.), n, g, MS, SKi, and Ki in Ai’s authentication device .
- Step 5: Server randomly generates a dedicated authentication code Sj for Cj’s department authentication device Dj, where Sj < n and j = 1, 2, …, w.
- Step 6: Server uses (, K1′), (, K2′), …, (, ) of executives A1′, A2′, …, who are authorized to manage or inspect Cj, and (0, Sj) to obtain the polynomial Pj(x) = + + … + a1x + Sj mod n, where tj is the number of authorized executives who can manage or inspect Cj, {A1′, A2′, …, }⊆{Ai|I = 1, 2, …, m}, Pj(0) = Sj, Pj() = K1′, Pj() = K2′, …, and Pj() = .
- Step 7: Server randomly generates rj,1, rj,2, …, and computes Sharej,1 = Pj(rj,1), Sharej,2 = Pj(rj,2), …, = Pj(), where rj,1, rj,2, …, are less than min(p, q), rj,1, rj,2, …, are different from each other and rj,1, rj,2, …, are different from , , …, .
- Step 8: Server stores H(.), n, g, MS, , Gj, (H(), e1′), (H(), e2′), …, (H(), ), (rj,1, Sharej,1), (rj,2, Sharej,2), …, (, ) and Sj in the system administrator SA’s authentication device HSA, where j = 1, 2, …, w.
4.2. Department Authentication Device Setup Phase
- Step 1: HSA generates a random number R1 and sends R1 with a setup request to Dj.
- Step 2: When Dj receives R1 and a setup request from HSA, Dj generates a random number R2. Then, Dj sends R2 back to HSA.
- Step 3: When HSA receives R2, HSA computes veri1 = H(R1||R2||||Gj), TK = H(R1||R2||Gj||) and veri2 = H(R1||R2||||Gj||Sj||(H(), e1′)||(H(), e2′)||…||(H(), )||(rj,1, Sharej,1)||(rj,2, Sharej,2)||…||(, ). Additionally, HSA encrypts {Sj, (H(), e1′), (H(), e2′), …, (H(), ), (rj,1, Sharej,1), (rj,2, Sharej,2), …, (, )} with TK to get cparas.
- Step 4: HSA sends veri1, veri2, and cparas to Dj.
- Step 5: After receiving veri1, veri2, and cparas, Dj first uses IDDj and Gj to compute veri1′ = H(R1||R2||||Gj). If veri1′ is equal to veri1, Dj computes TK′ = H(R1||R2||Gj||), decrypts cparas with TK′ to obtain {Sj, (H(), e1′), (H(), e2′), …, (H(), ), (rj,1, Sharej,1), (rj,2, Sharej,2), …, (, )}, and computes veri2′ = H(R1||R2||||Gj||Sj||(H(), e1′)||(H(), e2′)||…||(H(), )||(rj,1, Sharej,1)||(rj,2, Sharej,2)||…||(, )).
- Step 6: If veri2′ is equal to veri2, the authentication data of Dj is initialized or updated with Sj, (H(), e1′), (H(), e2′), …, (H(), ), (rj,1, Sharej,1), (rj,2, Sharej,2), …, (, ).
4.3. Authentication Phase
- Step 1: generates a random number R1 and sends R1 with an authentication request to Dj.
- Step 2: When Dj receives R1 and the authentication request from , Dj generates a random number R2. Next, Dj computes TMS = H(R1||R2||MS), PID = TMS ⊕ and check = H(R1||R2||(rj,1, Sharej,1)||(rj,2, Sharej,2)||…||(, )||MS||||Sj).
- Step 3: Dj encrypts (rj,1, Sharej,1), (rj,2, Sharej,2), …, (, ) with TMS to get cshares.
- Step 4: Dj sends R2, PID, cshares, and check to .
- Step 5: After receiving R2, PID, cshares and check, computes TMS′ = H(R1||R2||MS) and then decrypts cshares with TMS′ to obtain (rj,1′, Sharej,1′), (rj,2′, Sharej,2′), …, (′, ′).
- Step 6: uses (rj,1′, Sharej,1′), (rj,2′, Sharej,2′), …, (′, ′) and (, Ki) to set the parameters q0 = , Q0 = Ki, q1 = rj,1′, Q1 = Sharej,1′, q2 = rj,2′, Q2 = Sharej,2′, …, = ′, = ′. Then, computes Sj′ = mod n, where .
- Step 7: computes = TMS′ ⊕ PID and check′ = H(R1||R2||(rj,1′, Sharej,1′)||(rj,2′, Sharej,2′)||…||(′, ′)||MS||′||Sj′) and checks whether check′ and check are equal or not. If it holds, it denotes that Dj is indeed a legal department authentication device, Dj’s identity is indeed , and the derived Sj′ is correct.
- Step 8: computes σ1 = H(R1||R2||Sj′) ⊕ and σ2 = mod n = mod n. Then, sends σ1 and σ2 to Dj.
- Step 9: After receiving σ1 and σ2, Dj computes = H(R1||R2||Sj) ⊕ σ1. Then, Dj uses as the index to find the matched (H(), ei′) in (H(), e1′), (H(), e2′), …, (H(), ).
- Step 10: Dj checks whether mod n and mod n are equal or not. If they are equal, it denotes that Ai is a legal executive, and Ai’s identity is . That is, Ai is authenticated by Dj with ’s help, and he/she can then deal with the management of Cj or inspect Cj.
4.4. Authentication Data Update Phase
- Step 1: Server computes Ki′ = H(||Master1) for the new executive Ai′.
- Step 2: Server selects ei′ for Ai′, and computes di′ such that di′× ei′ ≡ 1 (mod ϕ(n)), where gcd(ei′, ϕ(n)) = 1 and ei′ is different from the existing ei’s.
- Step 3: Server computes SKi′ = mod n for Ai′.
- Step 4: Server stores H(.), n, g, MS, SKi′, and Ki′ in the authentication device of the new executive Ai′.
- Step 5: Server randomly generates a dedicated authentication code Sj′ for the department authentication device Dj′ of the influenced department Cj′, where Dj′∈{Dk|k = 1, 2, …, w}.
- Step 6: Server uses (, K1′), (, K2′), …, (, ) of management personnel A1′, A2′, …, who can manage or inspect Cj′ and (0, Sj′) to obtain the polynomial Pj′(x) = + + …+ a1x + Sj′ mod n, where tj′ is the number of management personnel who can manage or inspect Cj′, {A1′, A2′, …, } ⊆ {Ai|i = 1, 2, …, m}, subject to Pj′() = K1′, Pj′() = K2′, …, and Pj′() = .
- Step 7: Server randomly generates rj,1, rj,2, …, and computes Share j,1 = Pj′(rj,1), Share j,2 = Pj′(rj,2), …, = Pj′(), where rj,1, rj,2, …, are less than min(p, q), rj,1, rj,2, …, are different from each other and rj,1, rj,2, …, are different from , , …, .
- Step 8: Server stores , (H(), e1′), (H(), e2′), …, (H(), ), (rj,1′, Sharej,1′), (rj,2′, Sharej,2′), …, (′, ′) and Sj′ in SA’s authentication device HSA.
- Step 9: HSA executes the department authentication device setup phase to update the authentication data stored in the influenced department Cj′’s authentication device Dj′.
5. Property Analysis and Further Analysis
5.1. Property Analysis
- The legitimacy of a user can be verified offline.
- Data transmitted between the department’s authentication device and the executive’s or system administrator’s authentication device must be protected.
- Anonymity must be ensured.
- Non-repudiation must be ensured.
- Management can be easily conducted because authentication data stored in the executive’s authentication device does not need to be updated even when personnel changes are made.
5.1.1. Offline Authentication
5.1.2. Protection of the Transmitted Data
5.1.3. Anonymity and Untraceability
5.1.4. Non-Repudiation
5.1.5. Simplified Management
5.2. Comparisons between Authentication Schemes Ensuring Anonymity and the Proposed User Authentication Scheme
5.3. Further Security Analysis
5.3.1. Resistance to Impersonation Attack
5.3.2. Resistance to Replay Attack
5.3.3. Resistance to Man-in-the-Middle Attack
5.3.4. Proof of Correctness
6. Performance Evaluation and Further Discussion
6.1. Analysis of Communication Cost
6.2. Analysis of Computational Cost
6.3. Further Discussion
6.3.1. Data Type Conversion
6.3.2. Insufficient Memory
6.3.3. Number System Conversion
7. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Mujahid, U.; Najam-ul-Islam, M.; Sarwar, S. A new ultralightweight RFID authentication protocol for passive low cost tags: KMAP. Wirel. Pers. Commun. 2017, 94, 725–744. [Google Scholar] [CrossRef]
- Teh, P.S.; Zhang, N.; Tan, S.Y.; Shi, Q.; Khoh, W.H.; Nawaz, R. Strengthen user authentication on mobile devices by using user’s touch dynamics pattern. J. Ambient Intell. Humaniz. Comput. 2020, 11, 4019–4039. [Google Scholar] [CrossRef] [Green Version]
- Guo, Y.; Guo, Y. FogHA: An efficient handover authentication for mobile devices in fog computing. Comput. Secur. 2021, 108, 102358. [Google Scholar] [CrossRef]
- Chakraborty, D.; Bugiel, S. SimFIDO: FIDO2 user authentication with simtpm. In Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security, London, UK, 11–15 November 2019; pp. 2569–2571. [Google Scholar]
- Liu, X.; Ma, W.; Cao, H. MBPA: A medibchain-based privacy-preserving mutual authentication in TMIS for mobile medical cloud architecture. IEEE Access 2019, 7, 149282–149298. [Google Scholar] [CrossRef]
- Tai, W.L.; Chang, Y.F.; Li, W.H. An IoT notion-based authentication and key agreement scheme ensuring user anonymity for heterogeneous ad hoc wireless sensor networks. J. Inf. Secur. Appl. 2017, 34, 133–141. [Google Scholar] [CrossRef]
- Au, M.H.; Liu, J.K.; Susilo, W.; Yuen, T.H. Secure ID-based linkable and revocable-iff-linked ring signature with constant-size construction. Theor. Comput. Sci. 2013, 469, 1–14. [Google Scholar] [CrossRef]
- Boualouache, A.; Senouci, S.M.; Moussaoui, S. A survey on pseudonym changing strategies for vehicular ad-hoc networks. IEEE Commun. Surv. Tutor. 2017, 20, 770–790. [Google Scholar] [CrossRef] [Green Version]
- Fujisaki, E. Sub-linear size traceable ring signatures without random oracles. In Proceedings of the Cryptographers’ Track at the RSA Conference 2011, San Francisco, CA, USA, 14–18 February 2011; pp. 393–415. [Google Scholar]
- Tangade, S.; Manvi, S.S.; Lorenz, P. Trust management scheme based on hybrid cryptography for secure communications in VANETs. IEEE Trans. Veh. Technol. 2020, 69, 5232–5243. [Google Scholar] [CrossRef]
- Hu, B.; Tang, W.; Xie, Q. A two-factor security authentication scheme for wireless sensor networks in IoT environments. Neurocomputing 2022, 500, 741–749. [Google Scholar] [CrossRef]
- Sadri, M.J.; Asaar, M.R. An anonymous two-factor authentication protocol for IoT-based applications. Comput. Netw. 2021, 199, 108460. [Google Scholar] [CrossRef]
- Akram, W.; Mahmood, K.; Li, X.; Sadiq, M.; Lv, Z.; Chaudhry, S.A. An energy-efficient and secure identity based RFID authentication scheme for vehicular cloud computing. Comput. Netw. 2022, 217, 109335. [Google Scholar] [CrossRef]
- Guo, Y.; Zhang, Z.; Guo, Y. SecFHome: Secure remote authentication in fog-enabled smart home environment. Comput. Netw. 2022, 207, 108818. [Google Scholar] [CrossRef]
- Amintoosi, H.; Nikooghadam, M.; Shojafar, M.; Kumari, S.; Alazab, M. Slight: A lightweight authentication scheme for smart healthcare services. Comput. Electr. Eng. 2022, 99, 107803. [Google Scholar] [CrossRef]
- Mohit, P. An efficient mutual authentication and privacy prevention scheme for e-healthcare monitoring. J. Inf. Secur. Appl. 2021, 63, 102992. [Google Scholar] [CrossRef]
- Ogundoyin, S.O.; Kamil, I.A. PAASH: A privacy-preserving authentication and fine-grained access control of outsourced data for secure smart health in smart cities. J. Parallel Distrib. Comput. 2021, 155, 101–119. [Google Scholar] [CrossRef]
- Zhang, H.; Lai, Y.; Chen, Y. Authentication methods for internet of vehicles based on trusted connection architecture. Simul. Model. Pract. Theory 2023, 122, 102681. [Google Scholar] [CrossRef]
- Zhang, S.; Liu, Y.; Xiao, Y.; He, R. A trust based adaptive privacy preserving authentication scheme for VANETs. Veh. Commun. 2022, 37, 100516. [Google Scholar] [CrossRef]
- Kardas, S.; Elikc, S.; Yıldız, M.; Levi, A. Puf-enhanced offline RFID security and privacy. J. Netw. Comput. Appl. 2012, 35, 2059–2067. [Google Scholar] [CrossRef]
- Gope, P.; Millwood, O.; Saxena, N. A provably secure authentication scheme for RFID-enabled UAV applications. Comput. Commun. 2020, 166, 19–25. [Google Scholar] [CrossRef]
- Mateu, V.; Sebé, F.; Valls, M. Constructing credential-based E-voting systems from offline E-coin protocols. J. Netw. Comput. Appl. 2014, 42, 39–44. [Google Scholar] [CrossRef]
- Rivest, R.L.; Shamir, A.; Adleman, L.M. A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM 1978, 21, 120–126. [Google Scholar] [CrossRef] [Green Version]
- ElGamal, T. A public-key cryptosystem and a signature scheme based on discrete logarithms. IEEE Trans. Inf. Theory 1985, 31, 469–472. [Google Scholar] [CrossRef]
Notation | Definitions |
---|---|
Server | Management server |
Master1, Master2 | Server’s secret keys for generating essential parameters for authentication devices |
MS | System secret key for checking the integrity of the transmitted data and generating session keys to protect the transmitted data |
SA | System administrator |
HSA | SA’s authentication device |
m | The total amount of executives of management personnel in the system |
Ai | The ith executive |
Set1 | The set of executives in the system, where Set1 = {Ai|i is in [1, m]} and|Set1| = m |
Ai’s unique identity | |
Ai’s authentication device | |
w | The total amount of departments in the system |
Cj | The jth department |
Set2 | The set of departments in the system, where Set2 = {Cj|j is in [1, w]} and|Set2| = w |
tj | The number of executives Cj, where tj >= 1 |
Dj | Cj’s department authentication device |
Dj’s unique identity | |
H(.) | One-way hash function, where H: {0, 1}* → {0, 1}l and l is the length of its output |
p, q | Two large prime integers chosen by Server and secretly kept by Server, where p > 1l |
n | System public parameter, where n = p × q |
g | The primitive root modulo n |
|| | Concatenation operator |
⊕ | XOR operator |
Phase | Messages | Communication Cost (Bits) |
---|---|---|
Department authentication device setup phase | 3 | 6656 + 6400tj |
Authentication phase | 3 | 6912+ 4096tj |
Total | 6 | 13,568 + 10,496tj |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Chang, Y.-F.; Tai, W.-L.; Fung, K.-H. Offline User Authentication Ensuring Non-Repudiation and Anonymity. Sensors 2022, 22, 9673. https://doi.org/10.3390/s22249673
Chang Y-F, Tai W-L, Fung K-H. Offline User Authentication Ensuring Non-Repudiation and Anonymity. Sensors. 2022; 22(24):9673. https://doi.org/10.3390/s22249673
Chicago/Turabian StyleChang, Ya-Fen, Wei-Liang Tai, and Ka-Ho Fung. 2022. "Offline User Authentication Ensuring Non-Repudiation and Anonymity" Sensors 22, no. 24: 9673. https://doi.org/10.3390/s22249673
APA StyleChang, Y. -F., Tai, W. -L., & Fung, K. -H. (2022). Offline User Authentication Ensuring Non-Repudiation and Anonymity. Sensors, 22(24), 9673. https://doi.org/10.3390/s22249673