ElGamal Cryptography Explained in Hindi & English | एलगामल क्रिप्टोग्राफी (Complete Notes for Data Science & Information Security Students)


एलगामल क्रिप्टोग्राफी (ElGamal Cryptography)

परिचय:

ElGamal Cryptography एक महत्वपूर्ण Asymmetric Key Cryptographic Algorithm है जिसे 1985 में Taher ElGamal ने प्रस्तुत किया था। यह एल्गोरिद्म Diffie-Hellman Key Exchange के सिद्धांत पर आधारित है और डेटा सुरक्षा, गोपनीयता और डिजिटल सिग्नेचर में व्यापक रूप से उपयोग किया जाता है।

ElGamal सिस्टम की मुख्य विशेषता यह है कि यह सार्वजनिक (Public) और निजी (Private) कुंजियों का उपयोग करके संदेशों को सुरक्षित रूप से एन्क्रिप्ट और डिक्रिप्ट करता है। यह एल्गोरिद्म **गणितीय कठिन समस्या** — Discrete Logarithm Problem — पर आधारित है, जिसे हल करना बहुत कठिन है।

एलगामल क्रिप्टोग्राफी का महत्व:

  • यह Diffie-Hellman की अवधारणा का व्यावहारिक रूप है।
  • Public Key Cryptography का एक मजबूत रूप।
  • Digital Signatures और Secure Communications में उपयोगी।
  • ब्लॉकचेन और इलेक्ट्रॉनिक वोटिंग सिस्टम्स में अपनाया गया।

गणितीय आधार:

ElGamal Cryptosystem की सुरक्षा **Discrete Logarithm Problem (DLP)** पर आधारित है। इसका अर्थ है कि यदि किसी संख्या y और आधार g के लिए y = g^x mod p ज्ञात है, तो x निकालना गणनात्मक रूप से बहुत कठिन है।

मुख्य पैरामीटर्स:

  • p: एक बड़ा अभाज्य संख्या (prime number)
  • g: primitive root modulo p
  • x: निजी कुंजी (Private Key)
  • y: सार्वजनिक कुंजी (Public Key), जहाँ y = g^x mod p

1️⃣ कुंजी निर्माण (Key Generation):

  1. एक बड़ा अभाज्य संख्या p चुनें।
  2. p का primitive root g चुनें।
  3. एक निजी कुंजी x चुनें (1 < x < p–1)।
  4. y = g^x mod p निकालें।

Public Key = (p, g, y) Private Key = x


2️⃣ एन्क्रिप्शन प्रक्रिया (Encryption Process):

Sender, Receiver की Public Key का उपयोग करता है।

  1. एक रैंडम integer k चुनें (1 < k < p–1)।
  2. Compute a = g^k mod p
  3. Compute b = (y^k × M) mod p, जहाँ M = Plaintext

Ciphertext = (a, b)


3️⃣ डिक्रिप्शन प्रक्रिया (Decryption Process):

Receiver अपनी Private Key x का उपयोग करता है:

M = (b × (a^(p–1–x))) mod p

क्योंकि a^x = g^(kx), इस तरह Decryption से मूल Plaintext प्राप्त होता है।


उदाहरण:

मान लें, p = 23, g = 5, x = 6 तो y = 5^6 mod 23 = 8 Public Key = (23, 5, 8)

Sender के लिए: Plaintext M = 13, k = 10

a = 5^10 mod 23 = 9 b = (8^10 × 13) mod 23 = 20 Ciphertext = (9, 20)

Receiver के लिए: M = (20 × 9^(23–1–6)) mod 23 = 13 ✅


एलगामल की विशेषताएँ:

  • Probabilistic Encryption – एक ही Plaintext हर बार अलग Ciphertext उत्पन्न करता है।
  • High Security – DLP आधारित सुरक्षा।
  • Asymmetric Nature – Public और Private Key अलग-अलग।

लाभ:

  • गणितीय रूप से मजबूत और सुरक्षित।
  • Randomness के कारण Replay Attack से सुरक्षित।
  • Digital Signature Scheme में उपयोगी।
  • Public Key Sharing सरल।

सीमाएँ:

  • Computation-intensive (RSA की तुलना में धीमा)।
  • Ciphertext Size बड़ा (2 गुना Plaintext)।
  • Implementation में ध्यान आवश्यक।

वास्तविक जीवन उपयोग:

  • PGP (Pretty Good Privacy)
  • Digital Signatures
  • Blockchain Systems
  • Cloud Security
  • Electronic Voting Systems

एलगामल बनाम आरएसए तुलना:

पैरामीटरElGamalRSA
Mathematical BasisDiscrete LogarithmPrime Factorization
TypeProbabilisticDeterministic
SpeedSlowerFaster
SecurityVery HighHigh
Ciphertext SizeLargeCompact

निष्कर्ष:

ElGamal Cryptography आधुनिक Public Key Systems का एक अत्यंत शक्तिशाली और सुरक्षित रूप है। इसका आधार Discrete Logarithm Problem है, जो इसे RSA से भी अधिक जटिल बनाता है। डिजिटल सिग्नेचर और ब्लॉकचेन में इसका उपयोग इसे वर्तमान युग के साइबर सुरक्षा ढांचे का अभिन्न हिस्सा बनाता है।

Related Post