Introduction

In the last two decades, we have seen remarkable advances in the capabilities and performance of Information Communication Technologies (ICTs). The decreasing costs of ICTs have also led to their wide proliferation and ubiquitous use in various sectors including, health, transportation, finance, education, entertainment, tourism, commerce, agriculture, food, etc. In fact today, ICTs have become an integral part of our daily lives in practically everything we do and they have transformed the way we communicate and stay in touch with each other. Today, ICTs enable a wide range of services, higher efficiency/productivity, and increased convenience through the emergence of all kinds of mobile devices (smartphones, tablets, etc.). These mobile devices are playing a fundamental role in mHealth which aims to improve healthcare quality, make healthcare access more convenient, and reduce healthcare costs [2, 3].

Significant improvements in the performance and capabilities of mobile devices in recent years have made them suitable for: real-time monitoring of a patient’s vital signs, collecting the patient’s health data (such as patient’s pulse rate, temperature, respiration rate, blood glucose level, blood pressure, etc.) using different types of wearable sensors, transmitting the health data to a medical server, providing remote prescriptions to patients, delivering healthcare information to doctors, researchers, and other healthcare professionals. According to a recent report [4], the mobile healthcare industry is projected to reach 26 billion dollar industry by 2017. Over 97,000 health and fitness related mobile applications are currently available on Google Play and Apple App from which 4 million downloads occur every day [4].

Architecture of mHealth system

The architecture of a typical mHealth system is shown in Fig. 1 (adapted from [1]). In this system there are various types of users of medical data and they include patients (as well as their relatives), doctors, nursing staff and medical researchers. Different types of wearable sensors on the patient are used for monitoring blood glucose level, blood pressure, pulse rate, electromyography (EMG), electrocardiogram (ECG), etc. After the sensed medical data is processed it is transmitted to some medical data server using the patient’s mobile device (such as a smartphone). The health of a patient is monitored in real-time by healthcare experts (for example, doctor) remotely. Doctors can take decisions and issue prescriptions to the nursing staff based on the remote diagnosis and the health data received from the patient. Medical data researchers are also interested in accessing the health data of patient. For example, if a patient suffers from blood cancer, the medical researcher can analyze and compare the results of the current chemotherapy treatment with those of the previous chemotherapy treatment that was given to the patient. The researcher can also set some chemotherapy medicine markers on the basis of the analysis performed, which will be helpful in future blood cancer treatments [59].

Fig. 1
figure 1

Architecture of mHealth system (Adapted from [1])

Applications of mobile healthcare

The various types of mobile healthcare applications can be broadly classified as follows [2, 3, 10, 11]:

  • Remote monitoring of patient’s health by healthcare experts as well as by the relatives of the patient.

  • Doctors use the health data transmitted from the patient’s monitoring devices to provide remote consultations.

  • Medical prescriptions issued by doctors are accessed and used by nursing staff and pharmacies for dispensing the required medicine.

  • Medical data researchers use health data in their research and development works.

  • The mHealth system’s data is used in medical education and training.

  • The mHealth system is also used for managing various tasks such as scheduling appointments of patients with doctors, and scheduling the meetings of healthcare experts, etc.

Our contributions

The contributions of this paper include:

  • We first discuss the security requirements, issues and threats to the mHealth system.

  • We then present a taxonomy of recently proposed security protocols for mHealth system based on the features they support and possible attacks, computation cost and communication cost. The detailed taxonomy demonstrates the strength and weaknesses of recently proposed security protocols for the mHealth system.

  • We also identify some of the challenges in the area of security protocols for mHealth systems that still need to be addressed in the future to enable secure and efficient mHealth systems.

The rest of the paper is organized as follows. We discuss various security issues with mobile healthcare in the next section. This is followed by a section on the taxonomy of recently proposed security protocols for mHealth. In the following section, we discuss some future challenges that still need to be addressed in the area of security protocols for mHealth systems. Finally, we make some concluding remarks in the last section.

Mathematical preliminaries

In this section, we briefly discuss the following cryptographic primitives needed for analyzing several security protocols for mobile healthcare applications.

Elliptic curve and its properties

Let a and bZ p , where Z p = {0, 1, …, p − 1} and p > 3 be a prime, such that 4a 3 + 27b 2 ≠ 0 (mod p). A non-singular elliptic curve y 2 = x 3 + a x + b over the finite field G F(p) is the set E p (a, b) of solutions (x, y) ∈ Z p × Z p to the congruence

$$ y^{2} = x^{3} + ax + b \, (\bmod \, p), $$

where a and bZ p are constants such that 4a 3+27b 2 ≠ 0 (mod p), together with a special point \(\mathcal {O}\) called the point at infinity or zero point.

The condition 4a 3+27b 2 ≠ 0 (mod p) is necessary and sufficient to ensure that the equation x 3 + a x + b = 0 has a non-singular solution [12]. Otherwise, if 4a 3+27b 2=0 (mod p), then the corresponding elliptic curve is called a singular elliptic curve. Let P = (x P , y P ) and Q = (x Q , y Q ) be two points in E p (a, b). Then \(P + Q = \mathcal {O}\) implies that x Q = x P and y Q = −y P . We have \(P + \mathcal {O} = \) \(\mathcal {O} + P \) = P, for all PE p (a, b). In addition, E p (a, b) forms an abelian or commutative group under an addition modulo p operation.

If P = (x P , y P ) and Q = (x Q , y Q ) are two points on elliptic curve y 2 = x 3 + a x + b (mod p), R = (x R , y R ) = P + Q is computed as follows ([13, 14]):

$$\begin{array}{@{}rcl@{}} x_{R} = (\lambda^{2} - x_{P} - x_{Q}) (\bmod \, p), \\ y_{R} = (\lambda (x_{P} - x_{R}) - y_{P}) (\bmod \, p), \\ \text{where} \, \lambda = \left\{ \begin{array}{c} \frac{y_{Q}-y_{P}} {x_{Q}-x_{P}} \, (\bmod \, p), \text{if} \, P \neq Q \\ \frac{{3 x_{P}}^{2} + a} {2y_{P}} \, (\bmod \, p), \text{if} \, P = Q. \end{array} \right. \end{array} $$

In elliptic curve cryptography, multiplication is defined as repeated additions. For example, if PE p (a, b), then 5P is computed as 5P = P + P + P + P + P (mod p).

Bilinear pairing

Let q be a large prime and p be a prime such that qp − 1. Let G 1 and G 2 be two cyclic groups of prime order q, where G 1 is an additive cyclic group over an elliptic curve E p (a, b) and G 2 a multiplicative cyclic group over a finite field Z p .

A bilinear map e : G 1 × G 1G 2 is a function with the following desirable properties:

Bilinearity:

Let P, Q, RG 1 and \(a, b \in Z_{p}^{*}\). Then,

$$\begin{array}{@{}rcl@{}} e(P+Q, R) &=& e(P, R).e(Q, R),\\ e(P, Q+R) &=& e(P, Q).e(P, R),\\ e(aP, bQ) &=& e(bP, aQ) \\ &=& e(P, Q)^{ab}. \end{array} $$

Non-degeneracy

Let P be a generator in the group G 1. Then, e(P, P) becomes a generator in the group G 2 such that e(P, P) ≠ 1.

Computability

There exists an efficient algorithm to compute e(P, Q) ∈ G 2 in polynomial time for all P, QG 1.

One-way hash function

A cryptographic hash function is an algorithm which accepts a variable length block of data as input and produces a fixed-size bit string known as a hash value or a hash digest. Mathematically, a one-way hash function h : {0, 1} → {0, 1}l takes an arbitrary-length input x ∈ {0, 1}, and produces a fixed-length (say, l-bits) output h(x) ∈ {0, 1}l, called the message digest or hash value. The hash function may be the fingerprint of a file, a message, or other data blocks, and has the following attributes [14].

  • h can be applied to a data block of all sizes.

  • For any given input x, the message digest h(x) is easy to operate, enabling easy implementation in software and hardware.

  • The output length of the message digest h(x) is fixed.

  • Deriving the input x from the given hash value y = h(x) and the given hash function h(⋅) is computationally infeasible. This property is called the one-way property.

  • For any given input x, finding any other input yx so that h(y) = h(x) is computationally infeasible. This property is referred to as weak-collision resistant property.

  • Finding a pair of inputs (x, y), with xy, so that h(x) = h(y) is computationally infeasible. This property is referred to as strong-collision resistant property.

There are many applications of hash functions. For example, in the field of cryptology and information security, notably in digital signatures, Message Authentication Codes (MACs), and other forms of authentication. Thus, a hash function becomes the basis of many cryptographic protocols. One fundamental property of a hash function is that its outputs are very sensitive to small perturbations of its inputs. For example, SHA-1 is a secure hash algorithm [15].

Fuzzy extractor

For biometric authentication, a fuzzy extractor technique is often used. The fuzzy extractor has two procedures: the probabilistic generation function G e n(⋅) and the deterministic reproduction function R e p(⋅) [16, 17]. G e n(⋅) takes the user’s personal biometrics B i o i as input, and then produces a biometric key of length l bits, say σ i ∈ {0, 1}l and a public reproduction parameter τ i . R e p(⋅) takes the biometrics entered by the user, such as B i o′ and τ i as input, provided that the hamming distance \(d(Bio_{i}^{\prime }, Bio_{i}) \leq t\), where t is an error tolerance threshold value. The output of R e p(⋅) is the original biometric key σ i , that is, σ i = \(Rep\left (Bio_{i}^{\prime }, \tau _{i}\right )\).

Biohashing

A bioahshing [18, 19] is used to map a user’s biometric features onto user-specific random vectors in order to generate a code, called the biocode and then discretizes the projection coefficients into zero or one. Biocode is as secure as a hashed password.

Chebyshev polynomial and its properties

The Chebyshev polynomial P n (x) : [−1, 1] → [−1, 1] of degree n is defined as

$$\begin{array}{@{}rcl@{}} P_{n}(x) = \left\{ \begin{array}{l l} cos(n \cdot arccos(x)) & \text{if} \, x \in [-1,1] \\ cos (n\theta) & \text{if}\, x = cos\theta, \theta \in [0,\pi]. \end{array} \right. \end{array} $$

The Chebyshev polynomial can be also defined recursively as

$$\begin{array}{@{}rcl@{}} P_{n}(x) = \left\{ \begin{array}{l l} 1 & \text{if} \, n = 0 \\ x & \text{if} \, n = 1 \\ 2x P_{n-1}(x) - P_{n-2}(x) & \text{if} \, n \ge 2. \end{array} \right. \end{array} $$

The semi-group property of the enhanced Chebyshev polynomial P n (x) = 2x P n − 1(x) − P n − 2(x) (mod p) holds on the interval (−, + ) is as follows [20]:

$$\begin{array}{@{}rcl@{}} P_{r}(P_{s}(x)) \equiv P_{rs}(x) \equiv P_{s}(P_{r}(x)) \pmod{p}, \end{array} $$

where n ≥ 2, x ∈ (−, + ), and p is a large prime number.

Security issues for mobile healthcare

Due to the advancement of wireless and mobile health (mHealth) technologies, it is now possible to perform real-time collection of information in the real-world via wearable sensors. Wearable sensing devices are capable of measuring different health related parameters of a patient, such as blood glucose level, blood pressure, pulse rate, Electromyography (EMG), electrocardiogram (ECG), etc. [8, 21, 22]. Elderly patients often have difficulties moving around as they become old. They can have their health status monitored by wearing sensing devices which can measure various health parameters (as we have mentioned earlier) and send them via the local network and the Internet to some central medical health server for further analysis by healthcare professionals. Currently, several mHealth applications also target healthy people who wear various types of wearable, activity-tracking devices such as “Fitbit One” which monitors their activity/inactivity (for instance, distance traveled, stairs climbed, calories burned, etc.) and transmits the information to an application running on a smartphone [2325] for further analysis locally or remotely. Although mHealth services provide several health benefits (as we stated earlier) to different people, they also open up a wide range of security and privacy issues that must be addressed by mHealth system designer and implementers [2, 26, 27]. Security in mHealth is vital. This is because many patients have privacy related concerns when it comes to collecting, processing, transmitting, and accessing their personal health data through the mHealth infrastructure that often consists of mobile devices, various network types (Body Area Networks (BANs), Personal Area Networks (PANs), Local Area Networks (LANs), etc.) medical information system, storage, servers, etc. The next section discusses some of the most important security requirements of mHealth.

Security requirements of mHealth

Some of the main security requirements of an mHealth system include [14, 21, 22, 28]:

  • Confidentiality of mHealth data: This defines how we keep a patient’s data private from any unauthorized party. Data of mHealth system can be disclosed by capturing and replaying them, etc. To achieve confidentiality, various data encryption techniques such as Advanced Encryption Standard (AES), RSA, etc. can be used [27, 29].

  • Integrity of mHealth data: An adversary of mHealth system may attempt to modify the data. Suppose a patient has sent his/her health data to get the required prescription/ treatment from his/her respective doctor(s). If the data is modified by an adversary and a doctor issues a prescription according to the modified data, the patient will not get the required treatment which can further degrade him/her’s health condition. This malicious act can be done by the Man-In-The-Middle (MITM) attack. Various data hashing techniques can be used to protect the integrity of the patient’s data [15].

  • Availavbility of the various components of an mHealth system: A patient’s data should be available to the genuine users of the mHealth system. Different Denial of Service (DoS) attacks can affect the availability of the patient’s data stored at the medical data server. Several techniques have been proposed in the literature based on elliptic curve cryptography, hash function, user biometrics verification, etc. that can be used to maintain the available of the system [3032].

  • Authenticity of users of mHealth system: The mHealth data should only be accessed by authorized users of the system. Various attacks such as offline/online password guessing [33] can threaten the authentication mechanisms in place. Techniques such as two-factor authentication [30, 34] and three-factor authentication [35, 36] can be used to restrict access of malicious users to the mHealth system.

Security issues of mHealth

The healthcare data contains the personal information of patients, which needs to be protected in order to keep the system safe and secure [28]. The mHealth system needs to efficiently support several security issues such as access, disclosure, modification, disruption, impersonation, and recording and replaying which are discussed further below.

  • Access: Legitimate users of the mHealth system are patients, doctors, nursing staffs, and researchers and pharmacists (each with his/her own access rights) [1, 5, 7]. Only these people can access the health data stored at the medical server. An adversary of the mHealth system always seeks to access the server illegally so that he/she can steal the data and misuse it to achieve his/her malicious objective. Sometimes adversaries may sell the stolen patient’s medical information to third parties (for example healthcare product manufacturer) which results in the patient receiving unwanted solicitations (for instance, emails, phone calls) from that firm to buy their medical products, which are related to their illness or sometime unwanted products too. Strong protocols such as two-factor authentication (smart card and user password as two factors) [30, 34, 40, 41, 47, 48] and three-factor authentication (smart card, user password, and user biometrics as three factors) [35, 36, 39, 44, 49] are required to strengthen the security of the mHealth system [45, 46].

  • Disclosure: The confidentiality of the health data stored at the medical server is also a major security issue. If the patient’s medical record confidentiality is breached, it can have serious ramifications on the life of the patient. Sometimes the medical records that contain the most personal health information of patients can be disclosed to malicious users, who can share such information around without the consent of the patients concerned. Private health information that is disclosed socially can also cause further harm to the patient’s reputation and personal life. For example, in a recent case, a woman was sacked from her job after her personal physician (doctor) sent her health records (containing her history of mental health problems) to her employer [50]. To protect the confidentiality of medical data, data encryption techniques such as AES and RSA [27, 29] etc. can be used.

  • Modification: An adversary of the mHealth system can modify the health data of patients. For instance, the modified data of the patient cannot be used anymore if the patient has a high level of blood glucose value which has been intentionally modified to a low level by an adversary having unauthorized access to the mHealth data. This type of modification affects the patients as the doctor can recommend the medicines based on the low level of blood glucose. Various hashing techniques can be used to protect against patient’s data modifications [15].

  • Medical server disruption: An adversary of the mHealth system can try to disrupt the services of the system by sending bogus request messages to overload the medical server (for example, a DoS attack) to such an extent that it becomes too busy to reply to requests from legitimate users who are denied access to the mHealth system’s services. A malicious user can shut off or alter the settings of an insulin pump without the user’s (doctor/nurse) knowledge [51]. There are different types of denial of service attack mechanisms [5153] that can be launched to disrupt the service of the mHealth system. For example, legacy implantable medical devices (IMD) are still in use. They are vulnerable to different attacks. The attacker can take advantage of routine software update capabilities to gain access to the IMD. To mitigate these DoS attacks on the mHealth system, various solutions have been proposed in [31, 32] to protect the mHealth system from disruption attacks. These solutions are based on the efficient cryptographic primitives such as one-way hashing, biohashing and chaotic hashing [5456].

  • Impersonation: An adversary of an mHealth system who tries to impersonate the legitimate user (for example, a patient or a doctor) of the system can collect the health data and misguide the other users. Suppose a patient suffers from some disease and is admitted to a hospital. The nursing staff consults with the doctor regarding the medicine that should be given to the patient. If a malicious user impersonates, the actual doctor, he/she can misguide the nursing staff by giving the wrong prescription. Various schemes have been proposed in [31, 35, 36, 43] that can be used to protect against impersonation attacks.

  • Recording and replaying: An adversary of the mHealth system can intercept and record the exchanged messages, and later replays them back to fool and mislead the legitimate users of the system. By reusing the recorded information, the adversary can later prove his/her identity and authenticity to the other party in order to get information such as the session key that may allow him/her to communicate with the other legitimate users of the mHealth system. Use of both random nonce and current timestamp by both ends of the communicating parties is the best way to protect against replay attacks. Some of these techniques are described in [31, 32, 35, 36].

From the security issues discussed above, various attacks such as stolen smart card/mobile device attack, offline/online password guessing attack, denial-of-service attack, privileged insider attack, user/medical server impersonation attacks, replay attack, man-in-the-middle attack and session key discloser attack are possible on the mHealth system.

Comparative study of security protocols for healthcare applications

In the last decade, several security protocols have been proposed for mobile healthcare applications. We classified the security protocols into three categories, mainly for the Telecare Medical Information System (TMIS), Multimedia Medical Information System (MMIS) and Electronic Patient Record Information System (EPR) that are related to mobile healthcare.

TMIS helps patients to benefit from the health monitoring while at home and access medical services over the Internet using their mobile devices. MMIS is an information system that provides the multimedia data of a patient’s health to the healthcare experts [38]. An integrated EPR information system provides a patient’s information to medical institutions for making the correct diagnosis to be used in clinical decisions for the patient [39].

The taxonomy of various existing schemes is shown in Fig. 2. Authentication in TMIS can use either two-factor authentication or three-factor authentication. A two-factor authentication scheme in TMIS requires smart card and user password as two factors for authentication. In contrast, a three-factor authentication scheme in TMIS requires smart card, user password and personal user biometrics as three factors for authentication.

Fig. 2
figure 2

Taxonomy of security protocols for healthcare applications

We have compared various recently proposed security schemes for mobile healthcare. The comparisons of the recently proposed security schemes of Arshad et al. [30], Mishra et al. [31], Mir-Nikooghadam [32], Das et al. [35], Siddiqui et al. [42], Das [33], David [37], Moon et al. [57] and Mir et al. [58] are performed based on their functionality features, computation costs and communication costs.

Arshad et al. [30] presented a two-factor authentication and key agreement scheme based on the Elliptic Curve Cryptosystem (ECC). However, their scheme does not support efficient login phase because when the user enters his/her identity and password, they are not locally verified. Mishra et al. [31] proposed a biometric based authentication scheme for TMIS with nonce, which is computationally efficient, and it uses biohashing for biometric verification. Mir and Nikooghadam [32] proposed another biometrics-based authentication and key agreement scheme for TMIS. However, their scheme suffers from denial of service attack because the user biometrics is directly applied to the one-way hash function. Since the outputs of a hash function are very sensitive to small perturbations of its inputs and user biometrics may sometimes change from time to time, a little variation in current user biometrics from the registered user biometrics may lead to produce a totally different hash output. Mir-Nikooghadam’s scheme is not efficient for biometric verification using one-way hash function. Later, Das et al. [35] proposed a robust user authenticated key agreement scheme for the hierarchical multi-server environment, which is suitable for TMIS. Their scheme is based on the cryptographic one-way hash function and fuzzy extractor. As a result, the problem of biometrics verification in Mir-Nikooghadam’s scheme is eliminated in Das et al.’s scheme. Siddiqui et al. [42] presented a three-factor remote user authentication scheme in TMIS. Their scheme transforms a smartphone to act as a unique and only identity that is required to access the TMIS system remotely. In addition, their scheme is suitable for the cloud-based environment.

Das [33] pointed out security limitations of the previous authentication schemes proposed in TMIS and then presented a more secure three-factor remote user authentication scheme for TMIS. This scheme preserves the user anonymity property. David [37] then proposed an efficient authentication scheme using bilinear pairing operations for multimedia medical information system. However, this scheme has several weaknesses listed in Table 4. Moon et al. [57] also proposed a two-factor authentication scheme, which is based on user password and smart card as two factors using the chaotic maps. Finally, Mir et al. [58] proposed a user authentication scheme for TMIS. However, their scheme does not support the biometric update phase.

The computation cost is the total execution time needed to execute the various cryptographic primitives for a security protocol. The times taken to compute different cryptographic operations are given in Table 1. These execution times were reported by He et al. [59] who used the hardware platform consisting of an Intel I7-4770 processor with 3.40 GHz clock frequency and 4 gigabytes memory, running Windows 7 operating system. They computed the execution time of various cryptographic operations using multiprecision integer and rational arithmetic cryptographic library (MIRACL), which is a cryptographic library used to implement cryptographic operations in many environments. It is assumed that the time for executing a fuzzy extractor/biohashing is the same as the time for executing an elliptic curve point multiplication at most [60]. In addition, the time taken to compute a Chebyshev polynomial approximates to the time taken for executing a hashing operation [61]. The comparison of computation costs for the login and authentication phases of various schemes is given in Table 2.

Table 1 Different types of computational times
Table 2 Comparison of computation costs

The communication cost of a security protocol is the number of bits exchanged for secure communications by the underlying security protocol. The comparison of communication costs for the login and authentication phases of various schemes is presented in Table 3. It is worth noting that we have assumed the following: the identity (I D) is of length 160 bits; a prime p in an elliptic curve is 160 bits assuming that 1024-bit RSA public key security is equivalent to 160-bit Elliptic Curve Cryptography (ECC) security [62], a random nonce/number is 128 bits; the timestamp is 32 bits; the symmetric cryptographic encryption/decryption block is 128 bits (if we apply AES symmetric-key cryptosystem [27]), and the hash digest is 160 bits (if we apply the Secure Hash Algorithm SHA-1 as the one-way hash function [15]). The communication costs for the same security schemes shown in Table 2 are presented in Table 3.

Table 3 Comparison of communication costs

Finally, we present a comparison of the main functionality features of the various security schemes of Arshad et al. [30], Mishra et al. [31], Mir and Nikooghadam [32], Das et al. [35], Siddiqui et al. [42], Das [33], David [37], Moon et al. [57] and Mir et al. [58] given in Table 4. Mir et al.’s scheme [58] has low computation and communication costs and also provides additional security and functionality features. From the analysis of the results in Tables 23 and 4, the computation and communication costs of Das et al. [35] and Das [33] schemes are slightly higher but are accepted because they provide additional security and functionality features (A F N 11, A F N 13, A F N 14, A F N 15). Siddiqui et al.’s scheme [42] incurs the lowest computation and communication costs among all the schemes. However, it does not satisfy most of the functionality features listed in Table 4. Considering better trade-off among the computation cost, communication cost and functionality features, Mir et al.’s scheme [58] has the best performance and David’s scheme [37] has the worst performance among all the schemes considered in our comparisons.

Table 4 Comparison of functionality features

Future challenges of security protocols for mobile healthcare

In this section, we identify some future challenges of security protocols for mobile healthcare.

  • The fundamental security requirements of the mHealth system are confidentiality, data integrity, accountability, availability, and access control. For assuring these security requirements, developing efficient key distribution protocols becomes challenging task in the mHealth system.

  • Recent studies in the literature [63] have shown that the public key operations (for example, elliptic curve cryptography) are practical in mobile devices. However, the private key operations are expensive because of their computational complexity. Thus, efficiency of private key operations still needs to be explored. Since mobile healthcare applications deal with sensitive patient data, authenticity of the public keys should be efficient and cost effective to protect the data from unauthorized access.

  • In contrast to public-key cryptography, symmetric key cryptography is superior and is easier to implement in term of its computational efficiency. However, symmetric key cryptography is not suitable because it relies on distributing the key in the mHealth system to provide a variety of security services, such as credentials privacy, mutual authentication, and session key security. Hence, designing efficient and flexible key distribution protocols for mobile healthcare applications needs to be addressed in the future.

  • Obtaining passwords from unconscious patients may not be possible. In such cases, biometric methods may be used for authentication. However, the biometric methods that work with unique biometric features from unconscious patients for identification purposes still needs further research attention in order to correctly authenticate an unconscious patient.

  • The mHealth system also includes different types of wearable sensors deployed in a patient’s body. The privacy of the information stored in these sensors must be guaranteed. In this case, designing lightweight, efficient, and robust privacy enhancing techniques for the wearable sensors remains an area of future research.

  • Meeting the quality-of-service (QoS) requirements along with security requirements simultaneously remains a challenge for the mHealth system, which includes different types of wearable sensors deployed in a patient’s body for monitoring vital parameters. Thus, the security and QoS requirements need to be evaluated jointly in such systems.

Conclusion

In this paper, we have discussed the security requirements, issues and threats to the mHealth system. We have presented the taxonomy of recently proposed security protocols of the mHealth system. We have also identified some of the future challenges that need to be addressed for security protocols used by mHealth system. Security and privacy will continue to play a vital role in mHealth systems in protecting the personal medical information of patients and medical data held by healthcare organizations.