# Elliptic Curve Signcryption-Based Mutual Authentication Protocol for Smart Cards
## 2 Literature Review
[49] presented a key generation and mutual authentication mechanism for healthcare based on elliptic curve schemes and claimed that it could resist all kinds of attacks. However, [PERSON] et al. [50] performed a critical analysis of [PERSON] et al. 's [49] scheme and proved that it was defenseless against password guessing attacks, key compromise, and impersonation attacks. [PERSON] et al. [51] proposed a session key exchange and authentication mechanism for industrial IoT, which focuses on removing the security weaknesses of the existing schemes. This scheme utilizes both symmetric key and asymmetric key cryptography and can defend against modification attacks, replay attacks, and man-in-the-middle attacks. Recently, [PERSON] et al. [52] developed a three-factor signcryption-based access control approach for IoT surroundings. Although their scheme satisfies many security functions, including mutual authentication, and access control, and can resist many attacks, it consumes a total of 14 elliptic curve point multiplications, leading to a very high computational cost. [PERSON] et al. [53] have presented a multi-factor authentication scheme including a password, user biometrics, and a smart card based on hyper elliptic curve signcryption and showed that it is safe from dictionary attacks, password guessing attacks, biometric recognition errors, denial of service attacks, and impersonation attacks. In the present scenario, Java Cards have become popular in implementing the smart card security schemes. Java Card was developed with an objective to easily implement the security functionalities in the smart card using java language [54]. The very first Java Card was developed in 1996, and since then, many versions of Java Cards have been developed. Typically, a Java Card contains an 8- or 16-bit CPU of 3.7 MHz and RAM of 1 KB. It is significant to note that Java Cards have the capability to implement ECC-based algorithms, including the Elliptic Curve Diffie Hellman Algorithm (ECDHA) and Elliptic Curve Digital Signature Algorithm (ECDSA). Recently, Java Card 3.1 has been launched by the Sun Microsystems and intends to boost the security of IoT devices. The analysis of related works shows that many elliptic curves-based smart card security protocols have been developed recently due to the efficiency of ECC based systems. Among the schemes discussed in the literature review, many schemes have been either unable to satisfy the security attributes required by the smart card systems or have failed in protecting against the attacks on smart cards. In addition to the schemes of [PERSON] et al. [7] and [PERSON] et al. [27], the protocol proposed by [PERSON] et al. [55] also satisfies all the required security properties and can resist all kinds of attacks, but these three schemes have a high computational cost or enhanced communication overhead. Since the smart cards have limited processing ability, less memory storage availability, and restricted bandwidth, the security schemes for smart card-based systems must have little computational cost and communication bandwidth. In order to further reduce the computational time and bandwidth requirement, it will be better to combine the elliptic curve cryptosystem and signcryption and then apply it to secure less computationally capable environments such as smart cards.