Читать книгу Handbook of Intelligent Computing and Optimization for Sustainable Development - Группа авторов - Страница 110
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).