Cryptoanalysis क्या है?
Cryptoanalysis क्या है? - एक कोड, Cipher, Cryptographic Protocol, या कुंजी प्रबंधन योजना में कमजोरियों का फायदा उठाकर एक Cryptographic सिस्टम की सुरक्षा से बचने के लिए हमलावर विभिन्न Cryptography हमलों को लागू कर सकते हैं। इस प्रक्रिया को Cryptoanalysis रूप में जाना जाता है।
Cryptoanalysis Cipher, Cipher Text या Cryptosystem का अध्ययन है जिसमें तहम में कमजोरियों की पहचान करने की क्षमता है जो सीधा Cipher Text से PlainText निकालने की अनुमति देता है, भले ही Cryptographic Key या Algorithm Plaintext को Encrypt करने के लिए उपयोग किया जाता है, अज्ञात है।
यह खंड विभिन्न Cryptography हमलों से संबंधित है जो Cryptographic System और विभिन्न Cryptoanalysis तकनीकों और उपकरणों से समझौता करने के लिए उपयोग करता है जो Cryptographic सुरक्षा को भंग करने में मदद करते हैं।
Cryptoanalysis के तरीके
Cryptoanalysis विधियाँ तीन प्रकार की होती हैं:-
Linear Cryptoanalysis
Linear Cryptoanalysis एक Cipher की क्रिया के लिए एफ़िन सन्निकटन खोजने पर आधारित है। यह आमतौर पर ब्लॉक सिफर पर प्रयोग किया जाता है। इस तकनीक का आविष्कार मित्सुई मात्सुई ने किया था। यह एक ज्ञात सादा पाठ हमला है और ब्लॉक सिफर के व्यवहार का वर्णन करने के लिए एक रैखिक सन्निकटन का उपयोग करता है।
Plaintext और संबंधित CipherText के पर्याप्त जोड़े को देखते हुए, कुंजी के बारे में जानकारी प्राप्त की जा सकती है। जाहिर है, Plaintext और Ciphertext के जितने अधिक जोड़े होंगे, सफलता की संभावना उतनी ही अधिक होगी।
याद रखें कि Cryptoanaylysis Cryptography को Crack करने का एक प्रयास है। उदाहरण के लिए 56-बिट Data Encryption मानक (DES) कुंजी जानवर बल के साथ 256 प्रयास तक हो सकते हैं। Linear Cryptoanalysis 243 ज्ञात सादा पाठ लेगा। यह पाशविक बल से बेहतर है, लेकिन अधिकांश स्थितियों के लिए अभी भी अव्यावहारिक है। Cryptographer शुरू करने के लिए गणित थोड़ा जटिल हो सकता है, लेकिन आइए इसकी मूल बातें देखें।
इस पद्धति के साथ, एक Linear समीकरण दो व्यंजकों की समानता को व्यक्त करता है जिसमें बाइनरी चर XORed होते हैं। उदाहरण के लिए, निम्नलिखित समीकरण में, पहले और तीसरे Plaintext बिट्स का XORs योग, और पहला Ciphertext बिट कुंजी के दूसरे बिट के बराबर है: -
P1XP3XC1=K2
उपयोग की गई कुंजी को धीरे-धीरे फिर से बनाने के लिए आप इस विधि का उपयोग कर सकते हैं।
प्रत्येक बिट के लिए ऐसा करने के बाद, आपके पास फॉर्म का समीकरण होगा:
Pi1X Pi2 X…..X Cj1X Cj2X….=Kk1X Kk2 X…..
तब आप मात्सुई के एल्गोरिथम 2 का उपयोग कर सकते हैं, ज्ञात Plaintext-Ciphertext जोड़े का उपयोग करके, सन्निकटन में शामिल प्रमुख बिट्स के मूल्यों का अनुमान लगाने के लिए। दायीं ओर (आंशिक कुंजी के रूप में संदर्भित) कुंजी बिट्स के मूल्यों के प्रत्येक सेट के लिए, गणना करें कि सभी ज्ञात Plaintext-Ciphertext जोड़े पर सन्निकटन कितनी बार सही है; इस गिनती को कॉल करें टी।
आंशिक कुंजी जिसका T में Plaintext-Ciphertext जोड़े की संख्या के आधे से सबसे बड़ा पूर्ण अंतर है, उन कुंजी बिट्स के मूल्यों के सबसे संभावित सेट के रूप में नामित किया गया है।
Diffrential Cryptoanalysis
Diffrential Cryptoanalysis Cryptoanalysis का एक रूप है जो सममित कुंजी Algorithm पर लागू होता है। इसका आविष्कार एली बिहम और आदि शमीर ने किया था। अनिवार्य रूप से, यह एक इनपुट में अंतर की जांच है और यह आउटपुट में परिणामी अंतर को कैसे प्रभावित करता है। यह मूल रूप से केवल चुने हुए Plaintext के साथ काम करता था। यह ज्ञात Plaintext और Ciphertext के साथ भी काम कर सकता है।
Integral Cryptoanalysis
Integral Cryptoanalysis का वर्णन सबसे पहले लार्स नुडसेन ने किया था। यह हमला Differential Cryptoanalysis के विस्तार के रूप में प्रतिस्थापन-क्रमपरिवर्तन नेटवर्क पर आधारित Block Cipher के खिलाफ विशेष रूप से उपयोगी है। Differential Analysis उन युग्मों को देखता है जो केवल एक-बिट स्थिति में भिन्न होते हैं, अन्य सभी बिट्स समान होते हैं। ब्लॉक साइज़ बी के लिए इंटीग्रल विश्लेषण, बी-के बिट्स को स्थिर रखता है और अन्य के को सभी 2k संभावनाओं के माध्यम से चलाता है। के = 1 के लिए, यह केवल अंतर Cryptoanalysis है, लेकिन के> 1 के साथ, यह एक नई तकनीक है।
Code Breaking Methodologies
विभिन्न कोड-ब्रेकिंग तकनीकों का उपयोग करके एक एन्क्रिप्शन एल्गोरिथम की ताकत को माप सकते हैं, जिनमें से कुछ इस प्रकार हैं;
Brute Force
Code-Breaker या Cryptoanalysts आवश्यक कुंजी को पहले से जाने बिना संदेश के PlainText को पुनर्प्राप्त करने का काम करते हैं। वे पहले कुंजी को पुनर्प्राप्त करने का प्रयास कर सकते हैं, या वे संदेश के बाद ही जा सकते हैं। एक सामान्य Cryptoanalytic तकनीक एक क्रूर-बल हमला, या संपूर्ण खोज है, जिसमें वर्णों के हर संभव संयोजन की कोशिश करके चाबियाँ निर्धारित की जाती हैं।
Brute-Force Attack की दक्षता हार्डवेयर Configuration पर निर्भर करती है। तेज़ प्रोसेसर का उपयोग करने का अर्थ है प्रति सेकंड अधिक कुंजियों का परीक्षण करना। Cryptanalysis ने DES एन्क्रिप्शन पद्धति पर एक सफल क्रूर-बल हमला किया जिसने प्रभावी रूप से DES को अप्रचलित बना दिया।
Frequency Analysis
Frequency Analysis एक CIpher टेक्स्ट में अक्षरों या अक्षरों के समूहों की आवृत्ति का अध्ययन है। अक्षरों और शब्दों का बारंबारता विश्लेषण सिफर पर हमला करने के लिए इस्तेमाल की जाने वाली एक अन्य विधि है। यह इस तथ्य पर काम करता है कि, लिखित भाषा के किसी भी खंड में, कुछ अक्षर और अक्षरों का संयोजन अलग-अलग आवृत्तियों के साथ होता है।
यह तकनीक Ciphertext में किसी विशेष प्रतीक के आने की संख्या की जांच करती है। उदाहरण के लिए, अंग्रेजी भाषा में "ई" अक्षर एक सामान्य अक्षर है। यदि अक्षर "k" आमतौर पर एक सिफर टेक्स्ट में दिखाई देता है, तो यह उचित रूप से निष्कर्ष निकाला जा सकता है कि एन्क्रिप्टेड भाषा में "k" अंग्रेजी में "ई" के बराबर है।
Encrypted Source Code इस प्रकार के हमलों के लिए अधिक संवेदनशील है क्योंकि "#define," "struct", "else" और "return" जैसे शब्द कोड में बार-बार दोहराए जाते हैं। Frequency विश्लेषण के विरुद्ध संदेशों की सुरक्षा बनाए रखने के लिए परिष्कृत Cryptosystem की आवश्यकता होती है।
Trickery And Deceit
Trickery And Deceit के लिए उच्च स्तर के गणितीय और Cryptographic कौशल की आवश्यकता होती है। इसमें Cryptography कुंजी निकालने के लिए सोशल इंजीनियरिंग तकनीकों का उपयोग शामिल है।
उदाहरण: यदि उपयोगकर्ता को इसकी कुछ सामग्री पता है तो संपूर्ण संदेश को Decrypt करना काफी आसान है।
एक हमलावर सोशल इंजीनियरिंग तकनीकों का उपयोग किसी को Encrypt करने और एक ज्ञात संदेश भेजने के लिए धोखा देने या रिश्वत देने के लिए कर सकता है, जिसे इंटरसेप्ट किए जाने पर, मानक Cryptoanalysis तकनीकों का उपयोग करके आसानी से Decrypt किया जा सकता है।
One-Time Pad
यदि पर्याप्त समय और संसाधन उपलब्ध कराए जाएं तो कोई भी CIpher को Crack कर सकता है। हालाँकि, एक अपवाद है जिसे ओ वन-टाइम पैड कहा जाता है, जिसे उपयोगकर्ता अनंत संसाधनों के साथ भी अटूट मानते हैं।
वन-टाइम पैड में ज्यादातर अक्षरों या संख्याओं का एक गैर-दोहराव वाला सेट होता है, जिसे सिस्टम बेतरतीब ढंग से चुनता है। उपयोगकर्ता उन्हें कागज की छोटी शीट पर लिखता है और फिर उन्हें एक पैड में एक साथ चिपका देता है।
वन-टाइम पैड उपयोग का उदाहरण:
प्रेषक पैड पर प्रत्येक कुंजी अक्षर का उपयोग करके केवल एक Plaintext वर्ण को Encrypt करता है, और रिसीवर एक आदर्श पैड का उपयोग करके Ciphertext के प्रत्येक अक्षर को Decrypt करता है। एक बार जब पत्र एक पृष्ठ का उपयोग करता है, तो वह इसे पैड से फाड़ देता है और सुरक्षित रूप से इसे त्याग देता है, इस प्रकार इसे वन-टाइम पैड नाम मिला।
दोष: कुंजी की लंबाई संदेश की लंबाई के समान है, इस प्रकार इसे Encrypt करना और बड़े संदेश भेजना असंभव हो जाता है।
Cryptography Attacks
हमलावर यह मानते हुए Cryptography हमले करते हैं कि Cryptocurrency के पास Encrypted जानकारी तक पहुंच है। Cryptography Attack या Cryptoanalysis में कुंजी के ज्ञान के बिना Ciphertext को Plaintext में वापस Decrypt करने के विभिन्न सिद्धांतों और विधियों का अध्ययन शामिल है।
निम्नलिखित विभिन्न प्रकार के Cryptography हमले हैं:
Ciphertext-Only Attack
Ciphertext-Only कम प्रभावी है लेकिन हमलावर के लिए बहुत अधिक संभावना है। हमलावर के पास केवल Cipher ग्रंथों के संग्रह तक पहुंच है। यह ज्ञात Plaintext की तुलना में बहुत अधिक संभावना है, लेकिन सबसे कठिन भी है। हमला पूरी तरह से सफल होता है यदि संबंधित Plaintext को घटाया जा सकता है, या इससे भी बेहतर, कुंजी।
अंतर्निहित Plaintext के बारे में कोई भी जानकारी प्राप्त करने की क्षमता को अभी भी सफल माना जाता है। तो हमलावर अपने द्वारा जमा किए गए Ciphertext के साथ क्या करता है? आप पैटर्न के लिए उनका विश्लेषण कर सकते हैं, कुछ ऐसा खोजने की कोशिश कर रहे हैं जो आपको उस कुंजी के रूप में संकेत दे जो उन्हें Crack करने के लिए उपयोग की गई थी, अक्सर, इस हमले का परिणाम केवल आंशिक ब्रेक होता है और पूर्ण ब्रेक नहीं होता है।
Adaptive Chosen-Plaintext Attack
इस प्रकार के हमले में, एक हमलावर के पास इसके Encryption सहित Plaintext संदेश तक पूरी पहुंच होती है, और वह Interactive प्रश्नों की श्रृंखला बनाकर संदेश की सामग्री को संशोधित भी कर सकता है, जो पिछले की जानकारी के आधार पर बाद के Plaintext ब्लॉक को काटता है। Encryption प्रश्न और कार्य। इस हमले को करने के लिए, एक हमलावर को Encryption डिवाइस के साथ इंटरैक्ट करने की आवश्यकता होती है।
Chosen-Plaintext Attack
Chosen-Plaintext Attack एक बहुत ही प्रभावी प्रकार का Cryptoanalysis Attack है। इस हमले में, हमलावर अपने स्वयं के चयन के सादे पाठों के एक सेट के अनुरूप Ciphertext प्राप्त करता है। यह हमलावर को उपयोग की गई कुंजी को प्राप्त करने का प्रयास करने की अनुमति दे सकता है और इस प्रकार उस कुंजी के साथ Encrypt किए गए अन्य संदेशों को Decrypt कर सकता है। मूल रूप से, चूंकि हमलावर Plaintext और परिणामी Ciphertext को जानता है, इसलिए उसके पास उपयोग की गई कुंजी के बारे में बहुत अधिक जानकारी है। यह तकनीक कठिन हो सकती है लेकिन असंभव नहीं है।
Related-Key Attack
संबंधित-कुंजी हमला चुने हुए Plaintext हमले के समान है, उम्मीद है कि हमलावर दो अलग-अलग कुंजियों के तहत Encrypted Ciphertext प्राप्त कर सकता है। यह वास्तव में एक बहुत ही उपयोगी हमला है यदि आप Plaintext और Matching Ciphertext प्राप्त कर सकते हैं। हमले के लिए आवश्यक है कि अलग-अलग कुंजियाँ निकट से संबंधित हों, उदाहरण के लिए, एक वायरलेस वातावरण में जहाँ बाद की कुंजियाँ पिछली कुंजियों से ली जा सकती हैं। फिर, जबकि चाबियाँ अलग हैं, वे करीब हैं। Cipher-text Only की तरह, यह सबसे अधिक संभावना है कि केवल आंशिक विराम ही देगा।
Dictionary Attack
इस हमले में, हमलावर अपने संबंधित Cipher Text के साथ Plain-text का एक डिक्शनरी तैयार करता है जिसका उसने विश्लेषण किया और एक निश्चित अवधि के लिए प्राप्त किया। डिक्शनरी बनाने के बाद, यदि कोई हमलावर Ciphertext प्राप्त करता है, तो वह संबंधित Plaintext को खोजने के लिए पहले से निर्मित डिक्शनरी का उपयोग करता है। हमलावर इस तकनीक का उपयोग Key, Password, Passphrase और Cipher Text को Decrypt करने के लिए करते हैं।
Known-Plaintext Attack
इस हमले में, हमलावर के लिए उपलब्ध एकमात्र जानकारी कुछ सादे टेक्स्ट ब्लॉक के साथ-साथ संबंधित Ciphertext और Algorithm है जो Text को Encrypt और Decrypt करने के लिए उपयोग किया जाता है। इस जानकारी का उपयोग करते हुए, अन्य संदेशों को समझने के लिए Dedicated Ciphertext उत्पन्न करने के लिए उपयोग की जाने वाली कुंजी। यह हमला ब्लॉक सिफर पर काम करता है और Linear Cryptoanalysis का एक उदाहरण है। ज्ञात Plaintext ब्लॉक बुद्धिमान अनुमानों और तर्क की एक श्रृंखला का उपयोग करके उत्पन्न होते हैं, न कि किसी चैनल पर Plaintext तक पहुँचने के माध्यम से।
Chosen-Ciphertext Attack
हमलावर अपनी पसंद के Ciphertext के मनमाने सेट के अनुरूप Plaintext प्राप्त करता है। इस जानकारी का उपयोग करके, हमलावर Plaintext को Encrypt करने के लिए उपयोग की जाने वाली कुंजी को पुनर्प्राप्त करने का प्रयास करता है। इस हमले को करने के लिए, हमलावर के पास प्रेषक और रिसीवर के बीच संचार चैनल तक पहुंच होनी चाहिए।
इस हमले के दो प्रकार हैं:-
- लंचटाइम या मिडनाइट अटैक: इस हमले में, हमलावर केवल सीमित समय के लिए सिस्टम तक पहुंच सकता है या केवल कुछ प्लेनटेक्स्ट-सिफरटेक्स्ट जोड़े तक पहुंच सकता है।
- अनुकूली चुना-सिफरटेक्स्ट अटैक: इस हमले में, हमलावर सिफरटेक्स्ट की एक श्रृंखला का चयन करता है और फिर परिणामी प्लेनटेक्स्ट ब्लॉकों को देखता है।
Rubber Hose Attack
हमलावर किसी व्यक्ति से जबरदस्ती या यातना देकर Cryptographic Secret (जैसे Encrypted फ़ाइल का पासवर्ड) निकालते हैं। आम तौर पर दबाव में लोग सुरक्षा बनाए नहीं रख सकते हैं, और वे गुप्त कुंजी या जानकारी को Encrypt करने के लिए उपयोग किए जाने वाले पासवर्ड प्रकट करेंगे।
Chosen-Key Attack
इस प्रकार के हमले में, एक हमलावर न केवल एक Cipher Text को तोड़ता है बल्कि एक बड़े सिस्टम में भी टूट जाता है, जो उस Ciphertext पर निर्भर होता है। हमलावर आमतौर पर एक बड़ी प्रणाली में टूट जाता है, जो उस Ciphertext पर निर्भर होता है। हमलावर आमतौर पर एक n बिट कुंजी सिफर को 2 n/2 संचालन की संख्या में तोड़ देता है। एक बार, एक हमलावर सिफर को तोड़ देता है, उसे सिस्टम तक पहुंच प्राप्त हो जाती है, वह पूरे सिस्टम को नियंत्रित कर सकता है, गोपनीय डेटा तक पहुंच सकता है, और आगे के हमले कर सकता है।
Timing Attack
यह मॉड्यूलर घातांक संचालन के सटीक समय को बार-बार मापने पर आधारित है। हमलावर विभिन्न इनपुट के लिए Encryption और Decryption Algorithm को निष्पादित करने में लगने वाले समय का विश्लेषण करके Ciphertext को तोड़ने की कोशिश करता है। एक कंप्यूटर में, दिए गए इनपुट के आधार पर तार्किक संचालन को निष्पादित करने में लगने वाला समय भिन्न हो सकता है। एक हमलावर अलग-अलग इनपुट देकर Plaintext निकालने की कोशिश करता है।
Man-In-The-Middle Attack
यह हमला एक Cryptographic Protocol के खिलाफ किया जाता है। यहां, एक हमलावर क्लाइंट और सर्वर के बीच संचार को रोकता है और Cryptographic मापदंडों पर बातचीत करता है। इस हमले का उपयोग करके, एक हमलावर Encrypted सामग्री को Decrypted कर सकता है और गोपनीय जानकारी जैसे सिस्टम पासवर्ड प्राप्त कर सकता है।
एक हमलावर उन आदेशों को भी इंजेक्ट कर सकता है जो पारगमन में डेटा को संशोधित कर सकते हैं। हमलावर आमतौर पर सार्वजनिक कुंजी Cryptosystem पर MITM हमला करता है जहां संचार होने से पहले कुंजी विनिमय की आवश्यकता होती है।
हमलावर इस हमले को सार्वजनिक कुंजी Crysystem पर करता है जहां संचार होने से पहले कुंजी विनिमय की आवश्यकता होती है।
Cryptanalysis Tools
सिफर का विश्लेषण करने और तोड़ने के लिए हमलावर Cryptoanalysis टूल का उपयोग करते हैं। नीचे चर्चा की गई कुछ Cryptoanalysis टूल हैं: -
Cryp Tool
CrypTool प्रोजेक्ट Cryptography और Cryptoanalysis के क्षेत्र में ई-लर्निंग प्रोग्राम विकसित करता है। इसमें ई-लर्निंग सॉफ्टवेयर (CT1, CT2, CT, और CTO) शामिल हैं।
अगर आपको यह पोस्ट इंग्लिश में पड़ना है तो यहाँ क्लिक करे
टिप्पणियाँ
एक टिप्पणी भेजें