Handbook of Intelligent Computing and Optimization for Sustainable Development. Группа авторов

Чтение книги онлайн.

Читать онлайн книгу Handbook of Intelligent Computing and Optimization for Sustainable Development - Группа авторов страница 51

Handbook of Intelligent Computing and Optimization for Sustainable Development - Группа авторов

Скачать книгу

Curve Discrete Logarithm Problem” (ECDLP). Known P and Q on the curve satisfying Q = kP, the integer k is the discrete logarithm of Q to the base P. Although P and Q are known, the group order of the curve is so huge that it is unable to compute k. It was observed in the reference [8] that elliptic curve general attacks obviously would resolve ECDLP if the group order of the curve was small enough to compute k.

Schematic illustration of the experiment on encryption. Schematic illustration of the experiment on decryption.

      The implementation and the analysis on the mathematical properties of elliptic curve arithmetic based on the integration of complex number arithmetic with modular arithmetic are described in the reference [3]. The group orders of the curves in the fields: GF(p), GF(2m), GF(2m) Z(GF(p)), and Z(GF(2m)) were observed in the reference [2] in which the group order of the curve in Z(GF(p)) exposed in Appendix (C) of the reference [2] is 47 that exists between image and image in the case of image and q = p2 in accordance with Hasses’s theorem [11]. Hence, the security rank is approximately squared in terms of the group order. The attempt of resolving ECDLP on complex plane is so more computationally difficult that time duration will be long. Thus, the safety rank of ECC is significantly enhanced by using the curve of Z(GF(p)).

       4.6.2.1 Elliptic Curve Encryption Scheme

      The non-linear cryptographic transformations for encryption scheme and decryption scheme can be created by using elliptic curve arithmetic based on the integration of complex number arithmetic with modular arithmetic. The implementation is described in the reference [2].

      Let us consider ElGamal encryption scheme [13] using the curve E : y2 = x3 + x + (1 + 5i) over Z(GF(7)) where a = 1 and b = 1 + 5i. The followings are the experiments of key generation, encryption scheme, and decryption scheme executing on the given curve by using the methods implemented in the reference [2].

      Key Generation. Alice and Bob are in agreement on P = (5, 3 + 2i) as a base point. It has prime order n = 47. Bob calculates a pair of private key and public key as followings.

       • Bob defines his private key: d = 13.

       • Bob calculates his public key: Q = d × P = 13 × (5, 3 + 2i) = (1 + 5i, 4 + 5i).

      Encryption Scheme. Alice defines M = (2 + 5i, 3 + 6i) as a message to be encrypted with Bob’s public key Q = (1 + 5i, 4 + 5i). The cipher text is the result of the encryption scheme. Alice calculates the cipher text as followings.

       • Alice selects a random number: r = 3.

       • Alice calculates: C1 = r × P = 3 × (5, 3 + 2i) = (5 + 6i, 5).

       • Alice calculates: C2 = M + (r × Q) = (2 + 5i, 3 + 6i) + 3.(1 + 5i, 4 + 5i) = (1 + 1i, 2 + 2i).

       • Alice sends C1 and C2 to Bob as cipher texts.

      Decryption Scheme. Bob receives C1 = (5 + 6i, 5) and C2 = (1 + 1i, 2 + 2i) as cipher texts to be decrypted with his private key d = 13. The message is the result of decryption scheme. Bob calculates the message as following.

       • Bob calculates the message: M = C2 – (d × C1) = (1 + 1i, 2 + 2i) – 13.(5 + 6i, 5) = (2 + 5i, 3 + 6i).

      The non-linear cryptographic transformations for signature signing scheme and signature verifying scheme can also be created by using elliptic curve arithmetic based on the integration of complex number arithmetic with modular arithmetic. The implementation is described in the reference [2].

      Let us consider ElGamal signature scheme [13] using the curve E : y2 = x3 + x + (1 + 5i) over Z(GF(7)) where a = 1 and b = 1 + 5i. The followings are the experiments of key generation, signing scheme and verifying scheme executing on the given curve by using the methods implemented in the reference [2].

      Key Generation. Alice and Bob are in agreement on P = (5, 3 + 2i) as a base point. It has prime order n = 47. Alice calculates a pair of private key and public key as followings.

       • Alice defines her private key: d = 13.

       • Alice calculates her public key: Q = d × P = 13 × (5, 3 + 2i) = (1 + 5i, 4 + 5i).

      Signing Scheme. Alice signs the message with her private key d = 13. The signature is the result of signing scheme. Alice calculates the signature as the followings.

       • Alice selects a random number: k = 3.

       • Alice calculates: R = k × P = 3 × (5,3 + 2i) = (5 + 6i,5.

       • Alice calculates: r = R.x.real mod n = 5 mod 47 = 5.

       • Alice calculates: h = h(m) = 4 (Hash value).

       • Alice calculates: s = k−1(h + rd) mod n = 16 × (4 + 5 × 13) mod 47 = 42.

       • Alice sends (R, s) to Bob as the signature of the message.

      Verifying Scheme. Bob verifies the signature (R, s) with Alice’s public key Q = (1 + 5i, 4 + 5i). The verification codes are the result of verifying scheme. Bob calculates verification codes V1 and V2 as the followings and makes a comparison of them.

       • Bob calculates: V1 = s × R = 42 × (5 + 6i, 5) = (6 + 6i, 5 + 3i).

       • Bob calculates: r = R.x.real mod n = 5 mod 47 = 5.

       • Bob calculates: h = h(m) = 4 (Hash value).

       • Bob calculates: U1 = h × P = 4 × (5, 3 + 2i) = (4 + 2i, 3 + 3i).

       • Bob calculates: U2 = r × Q = 5 × (1 + 5i, 4 + 5i) = (2i, 4 + 6i).

       • Bob calculates: V2 = U1 + U2 = (6 + 6i, 5 + 3i).

       • Bob accepts the signature, since V1 = V2.

Скачать книгу