Signcryption based on elliptic curve cryptosystems 1 Ajay Rana, 2Kanika Singhal, 3Shweta rathour 1† Student, SOIT, Centre for Development of Advanced Computing (CDAC), B-30, sec-62 noida-201307, U.P. (India) #ajay.scott@gmail.com ‡2,3. Lecturer,ITS group of institutions,greater noida *kanikasinghal28@gmail.com” Abstract— An efficient signcryption scheme based on elliptic curve cryptography (ECC) is discussed in this paper which performs both the functions of digital signature and message encryption logically in a single step, in a way more efficient than the traditional signature-then-encryption technique. The main benefit of this scheme is that it uses the elliptic curve for encrypting the message instead of using a separate symmetric cipher. The main operation involved in ECC i.e. point addition is used to for the purpose of encryption which is safe and efficient from transmission point of view. The proposed signcryption scheme is based on elliptic curves over finite fields and for the purpose of signature generation uses one way hash function. In addition to the major security aspects the scheme also provides public verification i.e. any third party can verify directly the signature of the sender of original message with out the sender’s private key when dispute occurs. The scheme can be applied to lower computational power devices such as mobile devices and smart card based applications due to its lower computational cost Keywords— Signcryption, public key cryptography, Elliptic curve, digital signature, hash function. officially replaced by the Advanced Encryption Standard (AES) which has a 128 bit block size. The second was the publication of the paper ‘New Directions in Cryptography’ in 1976 by Whitfield Diffie and Martin Hellman [9]. It was introduced in this paper a specific method of exchanging cryptographic keys known as Diffie-Hellman key exchange. This method allows two parties that have no prior knowledge of each other to jointly establish a shared secret key over an insecure communications channel. The article also stimulated the birth of a new class of enciphering algorithms, the asymmetric key algorithms [10]. In contrast to symmetric key algorithms, asymmetric key encryption uses a pair of mathematically related keys, each of which decrypts the encryption performed using the other. By designating one key of the pair as private, and the other as public, no secure channel is needed for key exchange. Public key cryptography is used to solve various problems that symmetric key algorithms cannot. In particular, it can be used to provide privacy, and non-repudiation. . II. I. LITERATURE REVIEW INTRODUCTION Information is an asset that has a value like any other asset. As an asset, information needs to be secured from attacks. While sending a message to a person over an insecure channel such as internet we must provide confidentiality, integrity, authenticity and non-repudiation [1]. These are the four major security aspects [2] or goals. Cryptography word is made from the two Greek words’krypto’, which means ‘hidden’ and ‘grafo’, which means ‘to write’[10]. It implies how to make what you write obscure, unintelligible to everyone except whom you want to communicate with. Till the 1970s cryptography was based on symmetric encryption. But the mid 1970s was a crucial phase in cryptography as two major breakthroughs were achieved. First was the invention of Data Encryption Standard (DES). DES is a 64 bit symmetric block cipher i.e. it takes a block of 64 bit of plain text and return 64 bit of cipher text block. By symmetric algorithm it means that the same key is used for encrypt and decrypt operations. Later on in 2001, DES was SIGNCRYPTION The term ‘signcryption’ was coined by Yuliang Zheng in 1997. A signcryption scheme is a cryptographic method that performs two distinct operations (signature and encryption) simultaneously. In public key schemes, a traditional method is to digitally sign a message then followed by an encryption, named signaturethen-encryption. A digital signature or digital signature scheme is a mathematical scheme for demonstrating the authenticity of a digital message or document. A valid digital signature gives a recipient reason to believe that the message was created by a known sender such that they cannot deny sending it (authentication and non-repudiation). Various signcryption schemes [1-7] are introduced throughout the years. The first signcryption scheme was introduced by Yuliang Zheng. In the signcryption scheme, introduced by Zheng the sender uses the receiver’s public key to derive a secret key for symmetric encryption. After the receiver receives the cipher text and digital signature, he uses his private key to derive the same secret key. Zheng [2] introduced another signcryption scheme that is based on elliptic curve, which saves about 58% computational cost and saving about 40% communication cost than signature-then-encryption scheme based on elliptic curve. Jung et al. [3] analysis showed that Zheng’s [1] scheme does not provide forward secrecy property. Message confidentiality is lost when the sender’s private key disclosed. He also introduced a new signcryption scheme based on discrete logarithm problem with forward secrecy. Bao and Deng [4] enhanced Zheng’s [1] signcryption scheme, so that the judge can verify the authenticity of signature without the need of recipient’s private key. Gamage et al. [5] modified Zheng’s [1] signcryption scheme such that anyone can verify the signature of cipher text. Their scheme is capable of verifying signature without disclosing the content of the original message. Mohsen Toorani and Ali Asghar Beheshti Shirazi proposed an Elliptic Curve-based Signcryption Scheme with additional Forward Secrecy property [8]. Laura Savu [l0] this paper describes a new signcryption method which is based on the Schnorr digital signature algorithm and also various signcryption schemes that already exist. In many applications, both confidentiality and authenticity are needed together. Such applications include secure email (S/MIME), secure shell (SSH), and secure web browsing (HTTPS). More recently, the importance of signcryption in real- world applications has gained appreciation by experts in data security. A global standard for data protection has been developed by the International Organization for Standards (ISO) named ISO/IEC 29150, Information technology Security techniques – Signcryption [11]. The current version of the standard (ISO/IEC 29150:2011) contains four efficient signcryption mechanisms: 1. 2. 3. 4. Discrete logarithm based signcryption mechanism (DLSC) Discrete logarithm on elliptic curves based signcryption mechanism (ECDLSC) Integer factorization based signcryption mechanism (IFSC) Encrypt-then-sign based signcryption mechanism (EtS) Any signcryption scheme should have the following properties: 1. Correctness: Any signcryption scheme should be correctly verifiable. 2. Efficiency: The computational costs and communication overheads of a signcryption scheme should be smaller than those of the best known signature-then-encryption schemes with the same provided functionalities. 3. Security: A signcryption scheme should simultaneously fulfill the security attributes of an encryption scheme and those of a digital signature. Such additional properties mainly include: Confidentiality means that only the intended recipient of a signcrypted message should be able to read its contents. Integrity means that only the intended or authenticated user can modify the content of the message. Unforgeability implies that there should not be two signcrypted messages which give the same plain text. Otherwise an adaptive attacker can create an authentic signcrypted text that can be accepted by the unsigncryption algorithm. Authenticity means that the recipient of a signcrypted message can verify the sender’s identity. It is not possible for an attacker to send a message, claiming to be someone else. Non-repudiation means that the sender of a message cannot later deny having sent the message. That is, the recipient of a message can prove to a third party that the sender indeed sent the message. Signature schemes always provide non-repudiation, since anyone can verify a signature using only the sender’s public key. ELLIPTIC CURVE CRYPTOGRAPHY In 1985 Neal Koblitz [14] and Victor Miller [13] from the University of Washington proposed a new public key cryptosystem namely the elliptic curve cryptography (ECC). They found that discrete logarithm on Elliptic curves over finite fields appeared to be intractable and hence ElGamal encryption and signature schemes defined on finite fields have natural counterparts on these curves. The definition of elliptic curve is: ‘An elliptic curve E over the field F is a smooth curve in the so called “long Weierstrass form” Y2 + a1XY + a3Y = X3 + a2X2 + a4X + a6, ai є F. We let E (F) denote the set of points (x, y) є F 2 that satisfy this equation, along with a “point at infinity” denoted O.’ Elliptic Curve Cryptography (ECC) is a public key cryptography. In public key cryptography each user or the device taking part in the communication generally have a pair of keys, a public key and a private key, and a set of operations associated with the keys to do the cryptographic operations. Elliptic curve cryptosystems do not introduce new cryptographic algorithms, but they implement existing publickey algorithms using elliptic curves. The mathematical operations of ECC is defined over the 2 3 3 2 elliptic curve y = x + ax + b, where 4a + 27b ≠ 0. Each value of the coefficients ‘a’ and ‘b’ gives a different elliptic curve. All points (x, y) which satisfies the above equation plus a point at infinity lies on the elliptic curve. The public key is a point in the curve and the private key is a random number. The public key is obtained by multiplying the private key with the generator point G in the curve. The generator point G, the curve parameters ‘a’ and ‘b’, together with few more constants constitutes the domain parameter of ECC. For the purpose of implementing an elliptic curve accurately and more efficiently, the curve cryptography is defined over two finite fields. • Prime field Fp and m • Binary field F2 Prime field is easy to implement for software platform whereas binary field is easy to implement from hardware point of view. III. PROPOSED APPROACH Signcryption is a cryptographic scheme that protects confidentiality and authenticity, seamlessly and simultaneously. For example, when you log in to your online bank account, signcryption prevents your username and password from being seen by unauthorized individuals. At the same time, it confirms your identity for the bank. Proposed is a signcryption scheme where elliptic curve is used for encryption purpose instead of a symmetric cipher and a traditional signature scheme is being utilised. Symbols and notations mod × modulo operator Elliptic curve point multiplication (x, y) x and y coordinates of a point on elliptic curve ║ = H () a<b Concatenation The sender A randomly selects an integer as his private key then computes public key. private key of sender; X a < n public key of sender; Ya= Xa×G The receiver B also selects an integer as his private key and then computes public key. private key of receiver; Xb < n public key of receiver; Yb= Xb×G Signcryption Signcryption is generally a probabilistic algorithm. Assume that A wants to send a message M of arbitrary length to B. A generates the signcrypted text in the following steps: Step Step Step Step 1 2 3 4 Randomly selects an integer r, where r < n Computes U= r×G = (r1,r2) Computes V= r×Yb Calculate C= [U, (M+V)] This algo will generate a pair of encrypted points. Step 5 Uses the one-way hash function to generate h = H (M║r1), where r1 is generated in Step 2. Step 6 Computes s = Xa − h•r modn. Step 7 Sends the signcrypted text (C, U, s) to Bob. Unsigncryption It is most likely to be a deterministic algorithm. B receives the signcrypted text (C, U, s). He decrypts the cipher text C using his private key. C = [U, (M+V)] C= [ (r×G), (M+ r×Yb)] The x coordinate of C is multiplied by receiver’s private key; C= [ (r×G) Xb, (M+ r×Yb)] But Xb×G = Yb C= [(r×Yb), (M+ r×Yb)] Subtracting the x coordinate from y coordinate we get the message M. (M+ r×Yb) – (r×Yb) = M Proposed scheme consists of three algorithms: Initialization, The plain text is retrieved from the cipher text. Signcryption and Unsigncryption For signature verification we follow the following steps: Initialization Step 1 Using M and r1 (x coordinate of R) compute In this phase we select and define the domain parameters h= H (M║r1). used in the signcryption scheme. They are as follows: Step 2 Verifies s×G + h×R is equal to Xa or not. If it is true then accept M is correct plain text which is p large prime number, where p > 2160. sent by Alice; otherwise reject M. a, b two integer elements which are smaller than p and 3 2 satisfy, 4a + 27b modq ≠ 0. Ep the selected elliptic curve over finite field p: Judge verification If by some reasons, we need the trusted y2 = x3 + ax + bmodp. third party such as judge to decide that the sender A has sent G a base point of elliptic curve E p with order n. the message M to recipient B. Then the judge performs the O a point of Ep at infinite. signature verification steps and can verify that A has actually N the order of point G, where n is a prime, n × G = O and sent the message or not. 160 n>2 . Sender cannot deny having sent the message because of judge H a one-way hash function. verification. Equality one way hash function ‘a’ can take any random value less than ‘b’ User randomly generates the pair of private and public keys. IV. SECURITY ANALYSIS The main advantage of ECC over RSA and DSA is that the best algorithm known for solving the fundamental hard mathematical problem in ECC, the elliptic curve discrete logarithm problem (ECDLP) takes full exponential time, while RSA and DSA take sub-exponential time. This proves that considerably smaller parameters can be used in ECC than in other systems such as RSA and DSA, but with comparable levels of security. ECC can present equal security with substantially smaller key sizes. Benefits of smaller key size- lower power consumption, as well as memory and bandwidth savings. Figure 1 given below compares the time that is required to solve problem based on ECC and problem based on Integer factorization problem (IFP) or DLP. Here the time is measured in MIPS. As standard, it is generally accepted that 1012 MIPS years represents reasonable security at this time. MIPS year: computing time of one year on a machine capable of performing one million instructions per second. In Figure the time required to solve problem RSA and DSA are grouped together because the asymptotic running time for both is same. To achieve reasonable security, RSA and DSA should employ 1024-bit modulo, while a 160-bit modulus should be sufficient for ECC. Moreover, the security gap between the systems increases dramatically as the modulo sizes increases. (The Elliptic Curve Discrete Logarithm Problem) Let P and Q be two points of an elliptic curve with order n and n is a prime. The point Q = k × P where k < n. Given these two points P and Q, find the correct of Q. Up to now, it is computational infeasible to generate k from P and Q (The Elliptic Curve Diffie–Hellman Problem) Let G be a point of an elliptic curve with a prime order n and P = c × G and Q = d × G. Given two points P and Q without c and d, find another point K = c ∙ d × G Like ECDLP, ECDHP is a computational infeasible problem [12]. The number of dominant operations involved in a signcryption scheme adds up to the computational cost of the scheme. In our approach on the sender’s part there are 2 elliptic curve point multiplications, 1 elliptic curve point addition, 1 modular multiplication, 1 modular addition and 1 hash function. Computational complexity and communication overhead of algorithms that is based on Discrete logarithm problem (DLP) is less as compared to other schemes. Computational cost of various schemes: Entity ECPM ECPA EXP DIV MUL ADD HASH A - - 1 1 - 1 2 B - - 2 - 2 - 2 Zheng and Imai, 1998 A 1 - - 1 1 1 2 B 2 1 - - 2 1 2 Bao and Deng, 1998 A - - 2 1 - 1 3 B - - 3 - 1 - 3 Gamal et. al, 1999 A - - 2 1 - 1 2 B - - 3 - 1 - 2 H.Y.Jung , 2001 A - - 2 1 - 1 2 B - - 3 - 1 - 2 R.J.Hwa ng, 2005 A 2 - - - 1 1 1 B 3 1 - - - - 1 A 2 1 - - 1 1 1 B 3 2 - - - - 1 Zheng, 1997 Our scheme Table 1 Fig.1 Most of the security functions are justified on the basis of two problems: Elliptic Curve Discrete Logarithm Problem (ECDLP) and the elliptic curve Diffie–Hellman problem (ECDHP). Up to now both of these problems are hard. Abbreviations: ECPM the number of elliptic curve point multiplication operation. ECPA the number of elliptic curve point addition operation. EXP the number of modular exponentiation operation. DIV the number of modular division (inverse) operation. MUL the number of modular multiplication operation. ADD the number of modular addition operation. HASH the number of one-way or keyed one-way hash function operation. Security Attributes The security functions provided by proposed scheme are: Message confidentiality Integrity Unforgeability Non-repudiation Public verifiability Forward secrecy of message confidentiality: This property can be maintained by frequently changing the ECC generating parameters. Comparison based on security attributes: Schemes MC I U NR PV Zheng, 1997 Yes Yes Yes Directly No Zheng and Imai, 1998 Yes Yes Yes Directly No Bao and Deng, 1998 Yes Yes Yes Another Yes Gamal et. al, 1999 Yes Yes Yes Directly Yes H.Y.Jung, 2001 Yes Yes Yes Another No R.J.Hwang, 2005 Yes Yes Yes Directly Yes M. Toorani & A.A Beheshti Shirazi, 2010 Yes Yes Yes Directly Yes Our scheme Yes Yes Yes Directly Yes where, MC Message confidentiality I Integrity U Unforgeability NR Non-Repudiation PV Public verifiability V. CONCLUSION In this paper we have discussed a signcryption scheme which achieves all the major security goals of cryptography. It also has the attribute of public verifiability so any third party can verify the signature without any need for the private keys of the participants. ECC has been used, because of its unique property of ECDLP (Elliptic curve discrete logarithm problem) which is significantly more complicated than either the IFP (Integer factorizing problem) or DLP. The key point of the proposed scheme is that it uses only elliptic curve for encrypting the message and message transmission is in the form of a point P(m) embedded in Elliptic Curve. Now since no symmetric key algorithm is used, the proposed approach is less complex and saves itself on communication overhead. VI. REFERENCES [1] Y. Zheng, "Digital signcryption or how to achieve Cost (Signature & Encryption) << Cost (Signature) + Cost (Encryption)", Advances in Cryptology– CRYPTO'97, LNCS 1294, Springer-Verlag, 1997, pp.165-179. [2] Y. Zheng, and H. Imai, "How to construct efficient signcryption schemes on elliptic curves", Information Processing Letters, pp.227-233, Elsevier Inc., 1998,Vol.68. [3] H.Y. Jung, K.S. Chang, D.H. Lee, and J.I. Lim, “Signcryption schemes with forward secrecy,” Proceeding of Information Security ApplicationWISA 2001, pp.403- 475 . [4] F. Bao, and R.H. Deng, “A signcryption scheme with signature directly verifiable by public key,” Advances in Cryptology–PKC'98, LNCS 1431, Springer-Verlag, 1998 , pp.55-59. [5] C. Gamage, J. Leiwo, and Y. Zheng, “Encrypted message authentication by firewalls,” International Workshop on Practice and Theory in Public Key Cryptography (PKC- 99), LNCS 1560, SpringerVerlag, March 1999 , pp.69-81. [6] Y. Han, X. Yang, and Y. Hu, “Signcryption Based on Elliptic Curve and Its Multi-Party Schemes”, 3rd ACM International Conference on Information Security (InfoSecu'04), pp.216-217. [7] R.-J. Hwang, C.-H. Lai, and F.-F. Su, “An efficient signcryption scheme with forward secrecy based on elliptic curve,” Journal of Applied Mathematics and Computation, Elsevier, 2005, Vol.167, No.2, pp.870881 [8] M. Toorani ,"Cryptanalysis of an Elliptic Curvebased Signcryption Scheme", International Journal of Network Security, Jan. 2010,Vol.10, No.1, pp.51–56. [9] Whitfield Diffie, Martin Hellman, ―New Directions in Cryptography. [10] Laura Savu “Combining Public Key Encryption with Schnorr Digital Signature” Journal of Software Engineering and Applications, 2012, 5, 102-108. [11] International Organization for Standardization, “IT Security Techniques—Signcryption,” ISO/IEC 29150, 2011. [12] Certicom Research, Standards for efficient cryptography, SEC 1: elliptic curve cryptography, Standards for efficient cryptography group (SECG), September 20, 2000. [13] V. Miller, Use of elliptic curves in cryptography, CRYPTO 85, 1985. [14] N. Koblitz, Elliptic curve cryptosystems, in Mathematics of Computation 48, 1987, pp. 203–209