An Integrated Two-Stage Medical Pre-Checkup and Subsequent Validation Key Agreement Authentication Mechanism
Abstract
:1. Introduction
2. Related Work
3. Our TCVK Mechanism
3.1. User/Participant Registration Phase
- S1
- imprints biometric on the sensor device of RCRS. Then, RCRS computes Gen() = (), where Gen(.) is a generating function of the fuzzy extractor and () are secret key and public key tuple, as illustrated in Figure 2. Additionally, RCRS computes = ), = ⊕(), = ⊕, and = ⊕(), where h(.) is a one-way hash function. Then, RCRS stores } in RCRS’s database for verification later. To compute = ⊕, and then stores {Rep(.)(.)} on the smart card of.
3.2. Checkups Station Registration Phase
- S1
- Checkups station makes a request {} to the RCRS via a secure channel.
- S2
- When RCRS has received the request, it creates a for and computes the share token = ) with using RCRS’s secret key . Then, it creates a key for and then stores tuple {()} in its database. Finally, it forwards {, } to .
- S3
- When the checkups station receives the tuple {, } from RCRS, it keeps this .
3.3. Pre-Checkups Phase
- S1
- inserts the smart card into the card reader and imprints biometric . Then, it retrieves Rep(, ) = and computes = ().
- S2
- produces a random nonce number and computes and = ⊕. Finally, forwards intermediate messages {} to by public channel.
- S3
- While the receives {} from , selects a random nonce number and computes = and = h(). Furthermore, sends { } to RCRS by public channel.
- S4
- After RCRS receives the message from RCRS first and computes , h(), and = ⊕Then, RCRS checks whether is equal to and whether is equal to h(). If the above are valid, the RCRS continues to deal with the requisition. On the contrary, the session process aborted.
- S5
- RCRS produces a random nonce number and computes SK= = = (), and = h(). Then, RCRS sends { } back to . RCRS now owns the session key SK for this key agreement.
- S6
- If has received the message from RCRS, then computes SK = and =(). will verify whether or not equals . If both are the same, then mutual authentication and session key agreement are completed. On the contrary, the session process is aborted. now owns the session key SK for this key agreement.
3.4. Subsequent Validation Phase
- S1
- inserts the smart card into the card reader and imprints biometric to the fuzzy extractor. Then, it computes Rep()=, = ().
- S2
- produces a random nonce number and computes = and = ⊕⊕. Then, sends {, , } to RCRS via public channel.
- S3
- When the RCRS received the message {, , } from , RCRS could find in the database . Then, whether or not equals is checked using . If both are the same, then RCRS retrieves = ⊕ and = ⊕(). On the contrary, the session process is aborted.
- S4
- RCRS produces a random nonce number and computes = () and = (). After preparing them, RCRS sends {} to . Then, RCRS gets the session key SK = ().
- S5
- After received message {}, retrieves = ). gets session key = () and then checks whether or not = (). If both are the same, then the session key agreement process has finished and mutual authentication is built. On the contrary, the session process is aborted.By the above steps, the key agreement process has finished and the secure tunnel is built.
- S6
- When the RCRS has received {, }, it computes = RCRS decrypts using where = )h()=.
4. Random Oracles Proof for the Security of Our Protocols
- pi’s session is equal to pj’s session in the k-th session, that is, ssidki = ssidkj.
- Each partner’s instance is matched the corresponding partner’s instance, that is, pi’s instance ΠkiΠkj.
- Send(i, k, M) (or Send(j, k, M))query: an attacker could impersonate some player and forward the message M to the instance Πki in the k-th session, where i ∈ I and k ∈ N.
- Reveal(i, k) (or Reveal(j, k)) query: an attacker could obtain the session key from the instance Πki in the k-th session, where i ∈ I and k ∈ N.
- Corrupt(i) (or Corrupt(j)): the instance Πki’s secret key is exposed to the attacker.
- Test(i, k) (or Test(j, k)): an attacker could guess the real session key with non-negligible advantage. If the attacker makes this type of query to the simulator, then the simulator could make a coin flipped by b. If b equals to 1, the simulator will output real session key SKi,jk in the k-th session, where i, j ∈ I, and k ∈ N. Otherwise, it gives the random string chosen fromto the attacker. Then, the attacker has to guess whether or not the session key is the real one. Besides, the attacker only could be allowed to make this type of query to the “fresh” instance of each player.
- Πki owns the session key and the attacker does not query the player Πki who is pj’s instance, Reveal(i, k).
- If there is a player pj, its instance and partner are both Πki. Then, none of the attackers query the pj and Πki that owns the same session key, Reveal(j, k).
- An insider attacker created by the opponent cannot be for player i or j, where {i, j} ∈ I and I ∈ {U, RCRS}.
- After preparing the above parameters for building the environment, A also prepares the above query types in order to respond to D’s query. Before the simulation starts, A also generates the corresponding key pairs for each player {i, j} ∈ I and I ∈ {U, RCRS, C}, where C is the checkups station. The following are the simulation steps.
- In the beginning, D would make a Send (i, k, IDi) query to the A. When A has received this type of query, it forwards to the hash oracle and the hash oracle has to compute the UAi with the secret key’s help XB, that is, UAi = . A also prepares the hash oracle simulation of each message in this pre-checkups phase. The hash oracle would record the tuple in the k-th session.
- In the checkups station, the simulator also records the communication message . From the above message simulation, we could see that A would be able to handle this query type with the help of random oracle and the secret key.
- If D makes a Reveal(i) query, A could reply to D according to the secret key generated in the beginning. In order to compute whether the session key of A is the desired one, A also asks the random oracle to generate the hash value of and from a random oracle. However, A does not know the real value of and . After receiving the hash value from A, D could compute by assigning the received hash value, where and {i, j} ∈ I and I ∈ {U, RCRS, C}.
- After the above query training, A makes the Test(i) query to the simulator D. We assume that A has chosen some instances to attack that and in the k-th session. In this time, D starts to coin flip to output b. If b is 1, the simulator generates the real session key , where , and are random numbers in the with l-bit length and and I ∈ {U, RCRS, C}. Otherwise, A outputs the random string from . When D has received the tuple from A, its work is to distinguish whether or not this tuple is a real session key.
- Send (i, k, IDi) query: When the attacker makes the send query to the simulator F, F will prepare the ( for the further simulation usage. Then, F forwards ( to the attacker C.
- Hash query (i, k, IDi): When the attacker makes the hash query of instance Πki with the IDi. The simulator F will prepare the random oracle to reply to the result to C, where is computed from random oracle with the help of and the instance’s secret key
- Reveal(i) query: If C makes a Reveal(i) query, F could reply to C according to the hash value (i, ), where and are random numbers in the with l length bits and they are chosen by player and RCRS in the k-th session, respectively.
- Corrupt(i) query: If C makes a Corrupt(i) query, F could reply to C according to the secret key value .
- Finally, if C makes a Test(i) query to F, then F prepares in the following. First, we assume that the instance and the instance in the kth session are chosen by attacker C, where each of them is a fresh instance of player, respectively. In this time, F also prepares the session key to respond to the attacker C. It depends on the coin flips by the simulator F with the output b. If b is 1, then F computes , where and are random numbers and and I ∈ {U, RCRS}. Otherwise, F outputs a random string from . When C has received the tuple from F, its work is to distinguish whether this tuple is real session key or not.
5. Security Analysis
5.1. Privileged Insider Attack
5.2. Perfect Forward Secrecy Attack
5.3. Checkups Station Impersonation Attack
5.4. User/Participant Impersonation Attack
5.5. Offline Password Guessing Attack
5.6. Stolen Smart Card Attack
5.7. Session Key Security
5.8. Man-in-the-Middle Attack
5.9. Tampering Attack
6. Performance Comparisons
6.1. Functionality Comparisons
6.2. Efficacy Comparisons
7. Conclusions
Author Contributions
Funding
Conflicts of Interest
References
- Zhang, Q.; Cheng, L.; Boutaba, R. Cloud computing: State-of-the-art and research challenges. J. Internet Serv. Appl. 2010, 1, 7–18. [Google Scholar] [CrossRef] [Green Version]
- Armbrust, M.; Stoica, I.; Zaharia, M.; Fox, A.; Griffith, R.; Joseph, A.D.; Katz, R.; Konwinski, A.; Lee, G.; Patterson, D.; et al. A view of cloud computing. Commun. ACM 2010, 53, 50–58. [Google Scholar] [CrossRef] [Green Version]
- Zhou, J.; Lin, X.; Dong, X.; Cao, Z. PSMPA: Patient Self-Controllable and Multi-Level Privacy-Preserving Cooperative Authentication in Distributedm-Healthcare Cloud Computing System. IEEE Trans. Parallel Distrib. Syst. 2014, 26, 1693–1703. [Google Scholar] [CrossRef]
- Zhou, J.; Cao, Z.; Dong, X.; Xiong, N.; Vasilakos, A.V. 4S: A secure and privacy-preserving key management scheme for cloud-assisted wireless body area network in m-healthcare social networks. Inf. Sci. 2015, 314, 255–276. [Google Scholar] [CrossRef]
- Sajid, A.; Abbas, H. Data Privacy in Cloud-assisted Healthcare Systems: State of the Art and Future Challenges. J. Med. Syst. 2016, 40, 155. [Google Scholar] [CrossRef] [PubMed]
- Paterson, K.G.; Price, G. A comparison between traditional public key infrastructures and identity-based cryptography. Inf. Secur. Tech. Rep. 2003, 8, 57–72. [Google Scholar] [CrossRef]
- Wang, P.; Lin, J.; Jing, J.; Xie, Y. Mediated Hierarchical Identity-Based Combined Public Key Schemes. In Proceedings of the 2010 Third International Symposium on Intelligent Information Technology and Security Informatics, Jinggangshan, China, 2–4 April 2010; pp. 614–618. [Google Scholar]
- Tseng, Y.-M.; Jan, J.-K. ID-based cryptographic schemes using a non-interactive public-key distribution system. In Proceedings of the 14th Annual Computer Security Applications Conference, Scottsdale, AZ, USA, 7–11 December 1998; pp. 237–243. [Google Scholar]
- Noh, J.; Kim, J.; Kwon, G.; Cho, S. Secure key exchange scheme for WPA/WPA2-PSK using public key cryptography. In Proceedings of the 2016 IEEE International Conference on Consumer Electronics-Asia (ICCE-Asia), Seoul, Korea, 26–28 October 2016; pp. 1–4. [Google Scholar]
- Shen, J.; Zhou, T.; He, D.; Zhang, Y.; Sun, X.; Xiang, Y. Block Design-Based Key Agreement for Group Data Sharing in Cloud Computing. IEEE Trans. Dependable Secur. Comput. 2019, 16, 996–1010. [Google Scholar] [CrossRef]
- Chen, F.M.; Lee, T.F. Enhancing dynamic identity-based authentication and key agreement using extended chaotic maps for telecare medicine information systems. J. Qual. 2018, 25, 153–165. [Google Scholar]
- Lee, T.F.; Diao, Y.-Y.; Chen, F.M. An Improved Authenticated Key Agreement Protocol with Privacy Protection for Mobile Healthcare Systems with Wearable Sensors. Int. J. Bus. Syst. Res. 2019. Accepted. [Google Scholar]
- Gao, A.; Wei, W.; Shi, W. Efficient Password-Proven Key Exchange Protocol against Relay Attack on Ad Hoc Networks. In Proceedings of the 2010 IEEE Asia-Pacific Services Computing Conference, Hangzhou, China, 6–10 December 2010; pp. 469–475. [Google Scholar]
- Song, I.-A.; Lee, Y.-S. Improvement of Key Exchange protocol to prevent Man-in-the-middle attack in the satellite environment. In Proceedings of the 2016 Eighth International Conference on Ubiquitous and Future Networks (ICUFN), Vienna, Australia, 5–8 July 2016; pp. 408–413. [Google Scholar]
- Kulkarni, G.; Patel, B.; Laxkar, P. Time stamp based cross layer MANET security protocol. In Proceedings of the Third International Conference on Computational Intelligence and Information Technology (CIIT 2013), Mumbai, India, 18–19 October 2013; pp. 191–199. [Google Scholar]
- He, D.; Wang, D. Robust Biometrics-Based Authentication Scheme for Multiserver Environment. IEEE Syst. J. 2014, 9, 816–823. [Google Scholar] [CrossRef]
- Lou, D.-C.; Lee, T.-F.; Lin, T.-H. Efficient biometric authenticated key agreements based on extended chaotic maps for telecare medicine information systems. J. Med. Syst. 2015, 39, 1–10. [Google Scholar] [CrossRef] [PubMed]
- Lin, T.-H.; Lee, T.-F. Secure Verifier-Based Three-Party Authentication Schemes without Server Public Keys for Data Exchange in Telecare Medicine Information Systems. J. Med. Syst. 2014, 38, 1–9. [Google Scholar] [CrossRef] [PubMed]
- Dodis, Y.; Ostrovsky, R.; Reyzin, L.; Smith, A. Fuzzy Extractors: How to Generate Strong Keys from Biometrics and Other Noisy Data. SIAM J. Comput. 2008, 38, 97–139. [Google Scholar] [CrossRef] [Green Version]
- Aswin, V.; Deepak, S. Medical Diagnostics Using Cloud Computing with Fuzzy Logic and Uncertainty Factors. In Proceedings of the 2012 International Symposium on Cloud and Services Computing, Mangalore, India, 17–18 December 2012; pp. 107–112. [Google Scholar]
- Becker, G.T. Robust Fuzzy Extractors and Helper Data Manipulation Attacks Revisited: Theory versus Practice. IEEE Trans. Dependable Secur. Comput. 2019, 16, 783–795. [Google Scholar] [CrossRef]
- Baruni, K.; Helberg, A.; Nair, K.; Helberg, A.S. Fingerprint Matching on Smart Card: A Review. In Proceedings of the 2016 International Conference on Computational Science and Computational Intelligence (CSCI), Las Vegas, NV, USA, 15–17 December 2016; pp. 809–813. [Google Scholar]
- Bellare, M.; Rogaway, P. Random oracles are practical. In Proceedings of the CM Conference on Computer and Communications Security, Fairfax, VA, USA, 3–5 November 1993; pp. 62–73. [Google Scholar]
- Lin, C.-J. A Secure Examination and Check-In System for Athletes. Master’s Thesis, National Chin-Yi University of Technology, Taichung, Taiwan, 26 July 2019. [Google Scholar]
- Ali, R.; Pal, A.K.; Kumari, S.; Karuppiah, M.; Conti, M. A secure user authentication and key-agreement scheme using wireless sensor networks for agriculture monitoring. Future Gener. Comput. Syst. 2018, 84, 200–215. [Google Scholar] [CrossRef]
- Chen, M.; Lee, T.-F.; Pan, J.-I. An Enhanced Lightweight Dynamic PseudonymIdentity Based Authentication and Key AgreementScheme Using Wireless Sensor Networks forAgriculture Monitoring. Sensors 2019, 19, 1146. [Google Scholar] [CrossRef] [PubMed] [Green Version]
Property | Ali [25] | Chen [26] | TCVK |
---|---|---|---|
P1 | YES | YES | YES |
P2 | NO | NO | YES |
P3 | NO | YES | YES |
P4 | NO | YES | YES |
P5 | YES | YES | YES |
P6 | YES | YES | YES |
P7 | YES | YES | YES |
P8 | NO | YES | YES |
P9 | YES | NO | YES |
Participant (User) | RCRS (Server) | Checkups Station (GWN) | Sensor Nodes | Total | |
---|---|---|---|---|---|
Ali [25] | 2TH + 6TC + 1TS | 1TX + 4TH + 13TC + 2TS | 1TX + 8TH + 18TC + 3TS | 1TX + 4TH + 10TC + 1TS | 5TX + 22TH + 42TC + 6TS |
Chen [26] | 2TX + 7TH + 16TC | 4TX + 12TH + 21TC | 4TX + 9TH + 33TC - | 3TX + 6TH + 19TC | 13TX + 34TH + 89TC |
TCVK-PC | 5TX + 2TH | 14TX + 6TH | 6TX + 4TH | --- | 25TX + 12TH |
TCVK-FV | 5TX + 2TH | 8TX + 3TH | --- | --- | 13TX + 5TH |
TCVK-Total | 10TX + 4TH | 22TX + 9TH | 6TX + 4TH | --- | 38TX + 17TH |
© 2020 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 (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Lin, T.-H.; Chen, M.-T. An Integrated Two-Stage Medical Pre-Checkup and Subsequent Validation Key Agreement Authentication Mechanism. Appl. Sci. 2020, 10, 1888. https://doi.org/10.3390/app10051888
Lin T-H, Chen M-T. An Integrated Two-Stage Medical Pre-Checkup and Subsequent Validation Key Agreement Authentication Mechanism. Applied Sciences. 2020; 10(5):1888. https://doi.org/10.3390/app10051888
Chicago/Turabian StyleLin, Tsung-Hung, and Ming-Te Chen. 2020. "An Integrated Two-Stage Medical Pre-Checkup and Subsequent Validation Key Agreement Authentication Mechanism" Applied Sciences 10, no. 5: 1888. https://doi.org/10.3390/app10051888
APA StyleLin, T. -H., & Chen, M. -T. (2020). An Integrated Two-Stage Medical Pre-Checkup and Subsequent Validation Key Agreement Authentication Mechanism. Applied Sciences, 10(5), 1888. https://doi.org/10.3390/app10051888