security समम अपनी क्रिप्टोग्राफी पद्धति लिखते समय आप क्या तकनीक का उपयोग करते हैं?




सममित और असममित कुंजी क्रिप्टोग्राफी (19)

साल के लिए, शायद 10, मुझे क्रिप्टोग्राफी के साथ मोहित किया गया है मैं एक्सओआर बिट-आधारित एन्क्रिप्शन के बारे में एक किताब पढ़ता हूं, और चीज से तब तक फंस गया हूं

मुझे लगता है कि यह कहना अधिक उचित है कि मैं उन लोगों को आकर्षित करता हूं जो विभिन्न एन्क्रिप्शन विधियों को तोड़ सकते हैं, लेकिन मैं पीछे हटाना चाहता हूं।

बिंदु के लिए - क्रिप्टोग्राफी लिखते समय आप किस तरीकों का उपयोग करते हैं? क्या क्रिप्टोग्राफी में अच्छा है?

मैं चाबी पर दो कुंजी-आधारित XOR एन्क्रिप्शन, विभिन्न हैशिंग तकनीकों (एसएचए 1) का उपयोग करता हूं, और सरल चीजें जैसे कि यहाँ और वहां पर स्ट्रॉज़ पीछे कर रही हैं आदि।

मुझे यह देखने में दिलचस्पी है कि अन्य लोगों के बारे में क्या सोचता है और कोशिश करते हैं जब एक ऐसा न तो आउट-द-बॉक्स एन्क्रिप्शन पद्धति लिखते हैं। इसके अलावा - किसी भी जानकारी के बारे में कि पेशेवरों को कैसे "विभिन्न प्रकार की क्रिप्टोग्राफी तकनीकों को तोड़ने" के बारे में दिलचस्प होगा

स्पष्ट करने के लिए - मुझे इसका उपयोग किसी भी उत्पादन कोड या इस बात के लिए मेरा किसी भी कोड में करने की कोई इच्छा नहीं है। मैं यह सीखने में रोचक हूं कि यह कैसे पहिया के माध्यम से काम करता है, पहिया को फिर से नहीं बदल रहा है :)

इयान

https://code.i-harness.com


अधिकांश विशेषज्ञ मानते हैं कि क्रिप्टोग्राफ़िक विधियों और एल्गोरिदम के विकास में खुलेपन को अस्पष्टता से अधिक मूल्यवान है।

दूसरे शब्दों में, हर कोई नया कोड डिज़ाइन करने में सक्षम है, जो हर कोई उन्हें छोड़कर तोड़ सकता है। सबसे अच्छा क्रिप्टो एल्गोरिथम होने के परीक्षण से बचता है और कुछ एन्क्रिप्ट किए गए संदेशों को वहां रखा जाता है और सबसे अच्छा क्रिप्टो हैकर्स इसे तोड़ने का प्रयास करते हैं।

सामान्य तौर पर, ज्यादातर अस्पष्ट तरीकों और सरल हैशिंग (और मैंने उनमें से बहुत कुछ किया है) बहुत आसानी से टूटा हुआ है। इसका मतलब यह नहीं है कि वे प्रयोग करने में मजेदार नहीं हैं और इसके बारे में जानें

क्रिप्टोग्राफी पुस्तकों की सूची (विकिपीडिया से)

इस सवाल ने मेरी आंखों को पकड़ लिया क्योंकि मैं वर्तमान में नील स्टीफेंसन द्वारा क्रिप्टोपोनोमीनॉन को फिर से पढ़ रहा हूं, जो कि एक बुरा अवलोकन नहीं है, हालांकि यह एक उपन्यास है ...


अन्य उत्तरों के मुताबिक - एन्क्रिप्शन योजना का आविष्कार निश्चित रूप से विशेषज्ञों के लिए एक बात है और किसी भी नए प्रस्तावित क्रिप्टो योजना को अपनी मजबूती में मान्यता और विश्वास की किसी भी उचित उम्मीद के लिए सार्वजनिक जांच करने की आवश्यकता है। हालांकि, मौजूदा एल्गोरिदम और सिस्टम को कार्यान्वित करना "मज़े के लिए" और अधिक व्यावहारिक प्रयास है और आपके कार्यान्वयन की शुद्धता को साबित करने के लिए सभी प्रमुख मानकों में अच्छे परीक्षण वैक्टर हैं।

उस के साथ, उत्पादन समाधान के लिए, मौजूदा कार्यान्वयन बहुतायत से हैं और आमतौर पर कोई कारण नहीं होना चाहिए कि आपको सिस्टम को स्वयं लागू करने की आवश्यकता होगी


अन्य पोस्टर्स से सहमत होना चाहिए जब तक आप उस पर कोई पेपर नहीं लिखते हैं और कुछ शोध या कुछ करने की ज़रूरत नहीं करते

अगर आपको लगता है कि आपको इसके बारे में बहुत कुछ पता है तो एप्लाइड क्रिप्टोग्राफी बुक पढ़ें और पढ़ें। मुझे बहुत गणित पता है और यह पुस्तक अभी भी मेरे बट को लात मारी है आप अपने छद्म कोड से पढ़ और विश्लेषण कर सकते हैं पुस्तक में गहरी खुदाई करने के लिए पीछे एक संदर्भ का एक टन है, यदि आप चाहते हैं

क्रिप्टो उन चीजों में से एक है जो बहुत से लोगों को लगता है कि बहुत अच्छा है, लेकिन अवधारणाओं के पीछे वास्तविक गणित उनकी समझ से परे है। मैंने बहुत समय पहले तय किया कि यह मेरे लिए उस स्तर पर जाने के लिए मानसिक प्रयास के लायक नहीं था।

यदि आप देखना चाहते हैं कि यह कैसे किया जाता है (कोड में मौजूद मौजूदा क्रियान्वयन) मैं क्रिप्टो ++ लाइब्रेरी में झांकना लेने का सुझाव दूंगा, भले ही आप सामान्यतः सी ++ में कोड न करें, यह विषय और एन्क्रिप्शन को लागू करने के कुछ हिस्सों का अच्छा नज़रिया है ।

ब्रूस के पास संसाधनों की अच्छी सूची है जो आप अपनी साइट से प्राप्त कर सकते हैं।


आम तौर पर, मैं संख्या सिद्धांत में पीएचडी प्राप्त करके शुरू करता हूं। फिर मैं एक दशक या फिर अनुसंधान करता हूं और कई प्रकाशन और सहकर्मी की समीक्षा के साथ उसका अनुसरण करता हूं जहाँ तक मैं तकनीक का उपयोग करता हूं, वे मेरे शोध और मेरे साथियों के विभिन्न हैं। कभी-कभी, जब मैं रात के मध्य में जागता हूं, तो मैं एक नई तकनीक विकसित करूँगा, इसे लागू कर दूँगा, इसमें छेद खोजूँगा (मेरी संख्या सिद्धांत और कंप्यूटर विज्ञान के साथियों की मदद से) और फिर वहां से परिष्कृत करें।

यदि आप एक माउस को एल्गोरिथम देते हैं ...


एकमात्र क्रिप्टोग्राफ़ी है जो गैर विशेषज्ञों को सही होने की उम्मीद करने में सक्षम होना चाहिए अस्थि सरल एक समय पैड सिफर

CipherTextArray = PlainTextArray ^ KeyArray;

इसके अलावा, कुछ भी (मनोरंजन के लिए भी) को देखने के लायक कुछ भी गणित में एक उच्च स्तर की डिग्री की आवश्यकता होगी


जब तक आप क्षेत्र में एक विशेषज्ञ नहीं (हो रहे हैं), उत्पादन उत्पादों में घर-निर्मित क्रिप्टो का उपयोग न करें। पर्याप्त कथन।


मुझे पहले से ही दिए गए सही उत्तरों पर गहराई में जाना नहीं है (यह उत्पादन के लिए मत करो, सरल उल्टा नहीं है, अस्पष्टता खराब है, आदि)।

मैं बस केक्रॉफ़ के सिद्धांत को जोड़ना चाहता हूं, "कुंजीपटल को छोड़कर प्रणाली के बारे में सब कुछ, सार्वजनिक ज्ञान है, भले ही एक क्रिप्टोसिस्टिम सुरक्षित होना चाहिए"।

जब मैं इस पर हूं, मैं बर्गोफ़स्की के सिद्धांत का भी उल्लेख करता हूं (डिजिटल किले में डैन ब्राउन द्वारा उद्धृत किया गया है): "यदि कोई कंप्यूटर पर्याप्त कुंजियों की कोशिश करता है, तो गणितीय रूप से यह सुनिश्चित किया गया कि वह सही है। एक कोड की सुरक्षा यह नहीं थी कि उसका पास -की अपरिहार्य था लेकिन यह कि अधिकांश लोगों के पास समय या उपकरण नहीं था। "
केवल वह स्वाभाविक नहीं है; दान ब्राउन ने इसे बनाया


मैं आपको सबसे अच्छी सलाह दे सकता हूं: पहिया को फिर से बदलने के लिए प्रलोभन का विरोध करना क्रिप्टोग्राफी आपको लगता है की तुलना में कठिन है

ब्रूस शन्नियर की पुस्तक एप्लाइड क्रिप्टोग्राफी प्राप्त करें और इसे ध्यानपूर्वक पढ़ें


मैं इस साल एओएस टेकएड में एक कोड सुरक्षा सत्र में भाग लिया। नेट में एईएस एल्गोरिथ्म के बारे में बात करते समय और यह कैसे चुना गया, प्रस्तुतकर्ता (रॉकी हेकमन) ने हमें एक तकनीक का बताया जिसमें पिछले एन्क्रिप्शन को तोड़ने के लिए इस्तेमाल किया गया था। किसी ने सीपीयू के गर्मी के हस्ताक्षर रिकॉर्ड करने के लिए थर्मल इमेजिंग कैमरे का इस्तेमाल करने में कामयाब रहे, जबकि यह डेटा एन्क्रिप्ट कर रहा था। वे यह रिकॉर्डिंग का उपयोग करने के लिए यह सुनिश्चित करने के लिए सक्षम थे कि चिप किस प्रकार की गणना कर रहा था और फिर एल्गोरिदम इंजीनियर को रिवर्स करते हैं। उनके हाथों पर उनके पास बहुत अधिक समय था, और मैं काफी आत्मविश्वास से हूं कि मैं इस तरह के लोगों को मारने के लिए पर्याप्त स्मार्ट नहीं होगा! :(

  • नोट: मुझे पूरी उम्मीद है कि मैंने कहानी को ठीक से रिले किया है, अगर नहीं - गलती की संभावना मेरा है, प्रस्तुतकर्ता का उल्लेख नहीं किया है

मैं पहिया की फिर से खोज न करने से सहमत हूं

और याद रखना, अस्पष्टता के माध्यम से सुरक्षा कोई भी सुरक्षा नहीं है। यदि आपकी सुरक्षा तंत्र का कोई भी हिस्सा वाक्यांश का प्रयोग करता है तो "यह कभी भी यह नहीं समझ पाएगा!", यह सुरक्षित नहीं है एईएस के बारे में सोचें - एल्गोरिथ्म सार्वजनिक रूप से उपलब्ध है, इसलिए हर कोई जानता है कि यह कैसे काम करता है, और फिर भी कोई इसे तोड़ सकता है।


यहां अभ्यास करें:

http://www.schneier.com/crypto-gram-9910.html#SoYouWanttobeaCryptographer

शुरुआत के लिए, घन हमला कागज ( http://eprint.iacr.org/2008/385 ) को देखो और इसके साथ कुछ एल्गोरिदम को तोड़ने का प्रयास करें। क्रिप्टोग्राफिक योजनाओं को तोड़ने से परिचित होने के बाद, आप उन्हें बनाने में बेहतर बनेंगे।

जहां तक ​​उत्पादन कोड जाता है, मैं दोहराता हूँ जो पहले से ही कहा गया है: बस बाजार में क्या उपलब्ध है इसका उपयोग करें, क्योंकि सभी मुख्यधारा योजनाएं क्रिप्टानलालिसिस के कई दौरों के माध्यम से पहले ही चली गई हैं।


सभी उपरोक्त सलाह ध्वनि है अव्यवस्था खराब अपने क्रिप्टो को उत्पादन में न डालें, बिना किसी समय सार्वजनिक हरा देना।

कुछ चीजें जोड़ने के लिए:

  • एन्कोडिंग एन्क्रिप्शन नहीं है डेवलपर की वजह से मैंने हाल ही में एक वेबसाइट के प्रमाणीकरण प्रणाली को बायपास कर दिया है।

  • यहां तक ​​कि सबसे बुनियादी प्रणालियों को तोड़ने का तरीका जानें आपको आश्चर्य होगा कि साधारण रोटेशन सिफर का ज्ञान वास्तव में उपयोगी है।

  • ए ^ बी = सी। आपने कहा है कि आप दो प्रमुख XOR एन्क्रिप्शन के साथ काम कर रहे हैं। एक क्रिप्टोसिस्टम बनाने पर हमेशा यह जांचें कि आपके कदम वास्तव में कुछ हासिल कर रहे हैं। दो प्रमुख XOR मामले में आप वास्तव में एक अलग कुंजी का उपयोग कर रहे हैं।

  • ए ^ ए = 0. एक्सओआर एन्रीप्शन ज्ञात या चुने हुए साइलेंटक्स्ट हमलों के खिलाफ बहुत कमज़ोर है। यदि आप सभी या सादा पाठ का हिस्सा जानते हैं, तो आप सभी या कुंजी का हिस्सा प्राप्त कर सकते हैं। प्लेनटेक्स्ट ^ साइफर टेक्स्ट = कुंजी

  • पढ़ने के लिए एक और अच्छी किताब है कोड बुक साइमन सिंह द्वारा यह क्रिप्टोग्राफी के कुछ इतिहास और उसमें शामिल अधिकांश क्रिप्टो तंत्रों को तोड़ने के तरीकों पर जाता है।

  • सीखने के लिए दो एल्गोरिदम (उन्हें और उनके पीछे का इतिहास जानें):

    • 3DES: हाँ यह अप्रचलित है लेकिन यह फिज़ेल और ब्लॉक साइपरर्स सीखने के लिए एक अच्छा प्रारंभिक बिंदु है और डीईएस से इसकी रचना में कुछ अच्छा सबक हैं। इसके अलावा, एन्क्रिप्ट, डिक्रिप्ट, एन्क्रिप्ट पद्धति का उपयोग करने के लिए तर्क सीखना एक अच्छी बात है
    • आरएसए: मैं यहां अपने भीतर के गणित गीक को प्रदर्शित करने जा रहा हूं। उपयोग में शायद सबसे सरल एन्क्रिप्शन एल्गोरिथ आज। इसे तोड़ने की विधियां ज्ञात हैं (केवल महत्वपूर्ण कारक) लेकिन कम्प्यूटेशनल रूप से बेहद मुश्किल है। m ^ d mod n जहां n = p * q (p और q प्रधान) और gcd (d, n) = 1 समूह / संख्या सिद्धांत का एक छोटा सा कारण बताता है कि यह पी और क्यू के बिना आसानी से उलट क्यों नहीं है मेरी संख्या सिद्धांत के पाठ्यक्रम में हमने इसके पीछे सिद्धांत को कम से कम आधा दर्जन तरीकों से साबित कर दिया।

फ़ेयरफली के लिए एक नोट:

प्रधानमंत्री कारक और पृथक लॉग एनपी-पूर्ण नहीं हैं, या उस बात के लिए एनपी-हार्ड। वे जटिलता में दोनों अज्ञात हैं मैं सोचता हूं कि आपको उस हिस्से का पता लगाने से अच्छी प्रतिष्ठा मिलती है। उस ने कहा, आपके बाकी का दावा सही है। अच्छा क्रिप्टो उन चीजों पर आधारित है जो करना आसान है लेकिन कुंजी के बिना पूर्ववत करने के लिए कठिन है।


सही जवाब ऐसा कुछ नहीं करना है इस उद्देश्य के लिए कई क्रिप्टोग्राफी पुस्तकालयों में से एक को चुनना और उन्हें अपने आवेदन में उपयोग करना सबसे अच्छा तरीका है। अस्पष्टता के माध्यम से सुरक्षा कभी काम नहीं करती।

क्रिप्टोग्राफी एल्गोरिदम के लिए वर्तमान शीर्ष मानक भी चुनें एन्क्रिप्शन के लिए एईएस, हैशिंग के लिए SHA256 सार्वजनिक कुंजी के लिए एलगैमल

एप्लाइड क्रिप्टोग्राफी पढ़ना एक अच्छा विचार है लेकिन पुस्तक की एक विशाल बहुमत उन कार्यान्वयन का ब्योरा है जिन्हें आपको अधिकतर अनुप्रयोगों के लिए आवश्यकता नहीं होगी।

संपादित करें: संपादन में दी गई नई जानकारी पर विस्तार करने के लिए वर्तमान क्रिप्टोग्राफ़ी के विशाल बहुमत में बहुत जटिल गणित शामिल है। यहां तक ​​कि ब्लॉक सिफर जो बस सभी प्रकार के बिट्स के चारों ओर घूमने लगते हैं, वे समान होते हैं।

इस मामले में फिर एप्लाइड क्रिप्टोग्राफी पढ़ो और उसके बाद पुस्तिका को एप्लाइड क्रिप्टोग्राफ़ी प्राप्त करें जो आप मुफ्त में डाउनलोड कर सकते हैं।

इन दोनों में क्रिप्टोग्राफी एल्गोरिथम के बारे में कितनी जानकारी है अंतर और रैखिक क्रिप्टैनालिसिस जैसी चीजों का कुछ विवरण। एक अन्य संसाधन साइटसेर है, जिसमें डाउनलोड के लिए उन दोनों पुस्तकों द्वारा संदर्भित कई अकादमिक पत्र हैं।

कहीं भी जाने के लिए क्रिप्टोग्राफी एक विशाल अकादमिक इतिहास के साथ एक मुश्किल क्षेत्र है। लेकिन अगर आपके पास कौशल है तो यह काफी फायदेमंद है जैसा मैंने पाया है कि यह होना चाहिए।


हर किसी को (भावी पीढ़ी के लिए) गूंज करने के लिए, अपना स्वयं का क्रिप्टो कभी भी लागू नहीं करें लाइब्रेरी का उपयोग करें

उसने कहा, यहां डीईएस को लागू करने का एक लेख है:

http://scienceblogs.com/goodmath/2008/09/des_encryption_part_1_encrypti.php

क्रमांतरण और शोर कई एन्क्रिप्शन एल्गोरिदम के लिए महत्वपूर्ण हैं। बात इतनी ज़्यादा नहीं है कि वह चीजों को अस्पष्ट करे, लेकिन इस प्रक्रिया में कदम जोड़ने के लिए जबरदस्त बल के हमलों को अव्यावहारिक बनाते हैं।

इसके अलावा, एप्लाइड क्रिप्टोग्राफी प्राप्त और पढ़ें। यह एक महान पुस्तक है


नहीं करते हैं!

यहां तक ​​कि विशेषज्ञों को यह जानने का बहुत ही कठिन समय है कि क्या उन्हें सही मिल गया है। क्रिप्टो सीएस वर्ग के बाहर, बस अन्य लोगों के कोड का उपयोग करें पोर्ट कोड केवल तभी आवश्यक है, जब आप इसे सही तरीके से ज्ञात कोड के साथ बाहर निकालें।


मैं सभी उत्तरों से सहमत हूं, दोनों "उत्पादन उपयोग के लिए अपना क्रिप्टो एल्गोरिथ्म नहीं लिखते " और " नरक हाँ, इसे अपने स्वयं के संवर्द्धन के लिए जाना ", लेकिन मुझे कुछ ऐसा याद दिलाया गया है जो मुझे भरोसेमंद ब्रूस शिनियर लिखते हैं : " किसी के लिए यह आसान है कि वे स्वयं को तोड़ न सकें।"


यह पहले से ही मौत के कारण पीटा जा चुका है कि आपको किसी उत्पाद में घर वाले क्रिप्टो का उपयोग नहीं करना चाहिए। लेकिन मैंने आपका प्रश्न पढ़ लिया है और आप स्पष्ट रूप से बताते हैं कि आप बस मज़े के लिए यह कर रहे हैं। सही geek / हैकर / शैक्षणिक भावना की तरह मुझे लगता है आप जानते हैं कि यह काम करता है, आप जानना चाहते हैं कि यह काम क्यों करता है और यह देखने की कोशिश करें कि क्या आप इसे काम कर सकते हैं।

मैं पूरी तरह से प्रोत्साहित करता हूं और कई कार्यक्रमों के साथ ऐसा करने के लिए बस मज़ेदार के लिए लिखा है मैं इस पोस्ट को पढ़ने का सुझाव देता हूं ( http://rdist.root.org/2008/09/18/dangers-of-amateur-cryptography/ ) "rootlabs" नामक ब्लॉग पर इस पोस्ट में लिंक की एक श्रृंखला है, जिसे आपको बहुत दिलचस्प मिलना चाहिए। कम्प्यूटर साइंस में पीएचडी के साथ गणित / क्रिप्टो में दिलचस्पी रखने वाले और Google के लिए काम करने वाले व्यक्ति ने प्रोग्रामिंग क्रिप्टो पर लेखों की एक श्रृंखला लिखने का फैसला किया। उन्होंने कई गैर-गलतियां कीं जो उद्योग विशेषज्ञ नैट लॉसन ने बताया था।

मेरा सुझाव है कि आप इसे पढ़ा। अगर यह आपको प्रयास करने के लिए प्रोत्साहित नहीं करता है, तो इसमें कोई संदेह नहीं होगा कि आपको अभी कुछ सिखाया जाएगा।

शुभकामनाएँ!


फैयरिंग की जटिलता पर, फायरफली और टिडेर के जवाब में:

यह आसानी से देखा जा सकता है कि फैक्टरिंग एनपी और कोएनपी में है। हमें क्या देखने की ज़रूरत है कि "एन और कश्मीर को दिए गए समस्याएं, 1 <p <= k" के साथ n का एक प्रमुख कारक पी खोजें और "दिखाओ कि ऐसा कोई पी मौजूद नहीं है" दोनों एनपी (पहले निर्णय प्रकार फैक्टरिंग समस्या का, दूसरा, पूरक के निर्णय प्रकार है)।

पहली समस्या: एक उम्मीदवार समाधान पी दिया, हम आसानी से कर सकते हैं (यानी बहुपद समय में) कि 1 <p <= k और जांच करें कि क्या पी n को विभाजित करता है। एक समाधान पी हमेशा छोटा होता है (यह प्रतिनिधित्व करने के लिए उपयोग की जाने वाली बिट्स की संख्या में), तो एनएपी में फैक्टरिंग है।

दूसरी समस्या: एक पूर्ण प्रधानिकरण (p_1, ..., p_m) को देखते हुए, हम जल्दी से जांच कर सकते हैं कि उनका उत्पाद n है और कोई भी 1 और k के बीच नहीं है। हम जानते हैं कि PRIMES पी में है, इसलिए हम बहुपक्षीय समय में प्रत्येक p_i की मूलभूतता की जांच कर सकते हैं। चूंकि सबसे छोटी प्रधानमंत्री 2 है, किसी भी वैध घटक में सबसे अधिक log_2 (n) प्रमुख कारक हैं। प्रत्येक कारक n से छोटा होता है, इसलिए वे अधिकतर ओ (एन लॉग (एन)) बिट्स में उपयोग करते हैं। इसलिए अगर n के बीच 1 और k के बीच एक प्रमुख कारक नहीं है, तो एक छोटा (बहुपद-आकार) प्रमाण है जो जल्दी से सत्यापित किया जा सकता है (बहुपद समय में)

इसलिए फैक्टरिंग एनपी और कोएनपी में है अगर यह एनपी-पूरा हुआ, तो एनपी बराबर होगा, जो अक्सर झूठा होने का अनुमान लगाया जाता है। कोई इसे इस तथ्य के रूप में ले सकता है कि वास्तव में फैक्टरिंग एनपी-पूर्ण नहीं है; मैं न सिर्फ एक सबूत के लिए इंतजार करना चाहता हूं ;-)


अब तक जो कुछ भी कहा है, उसका विरोध करने के लिए , इसके लिए जाओ! हाँ, आपके कोड में बफर ओवरफ़्लो भेद्यताएं हो सकती हैं, और धीमे, छोटी गाड़ी आदि हो सकती हैं, लेकिन आप इसे मज़े के लिए कर रहे हैं! मैं पूरी तरह से क्रिप्टो के साथ खेलने में पाए जाने वाले मनोरंजक आनंद को समझता हूं।

कहा जा रहा है कि, क्रिप्टोग्राफी सभी पर अस्पष्टता पर आधारित नहीं है (या कम से कम नहीं होना चाहिए)। अच्छा क्रिप्टो काम करना जारी रखेगा, यहां तक ​​कि एक बार ईव ने आपके अस्पष्ट कोड के माध्यम से फंस चुका है और पूरी तरह से समझता है कि क्या हो रहा है। आईई: कई अख़बारों में प्रतिस्थापन कोड पहेलियाँ हैं जो पाठकों ने नाश्ते पर कोशिश करते हैं और इसे तोड़ते हैं। यदि वे पूरे स्ट्रिंग को पीछे करने जैसी बातें करना शुरू करते हैं, तो हाँ, यह कठिन होगा, लेकिन जो रीडर अभी भी इसे तोड़ने में सक्षम होगा,

अच्छा क्रिप्टो उन समस्याओं पर आधारित है जो माना जाता है (कोई भी अभी तक सिद्ध नहीं हुआ, एएफएआईएक) वास्तव में मुश्किल है इसके उदाहरणों में फैक्टरिंग प्राइम्स , लॉग ढूंढना , या वास्तव में किसी अन्य एनपी-पूर्ण समस्या में शामिल हैं

[संपादित करें: स्नैप, इनमें से कोई भी एनपी-पूरा नहीं है। वे सभी गैर-सिद्ध हुए हैं, फिर भी अलग हैं। उम्मीद है कि आप अभी भी मेरी बात देख रहे हैं: क्रिप्टो एक तरफा कार्यों पर आधारित है। वे ऐसे कार्य हैं जो करना आसान है, लेकिन पूर्ववत करने के लिए कठिन हैं अर्थात् दो नंबर बनाम उत्पाद के प्रमुख कारक मिलते हैं। गुड कैड टड्वेहर ]

गणित की वास्तव में अच्छी शाखा के साथ खेलने के लिए आपको अधिक शक्ति, बस याद रखें कि क्रिप्टो उन चीजों पर आधारित है जो कठोर हैं, जटिल नहीं हैं। कई क्रिप्टो एल्गोरिदम, एक बार जब आप वास्तव में उन्हें समझते हैं, मनबहुत सरल होते हैं, लेकिन अभी भी काम करते हैं क्योंकि वे कुछ ऐसी चीज़ों पर आधारित होते हैं जो कठोर है, न सिर्फ चारों ओर अक्षरों को स्विच करना।

नोट: यह कहा जा रहा है के साथ, कुछ एल्गोरिदम अतिरिक्त quirks (स्ट्रिंग सीवर्सल) में जोड़ने के लिए जानवर को मजबूर करने के लिए उन्हें इतना मुश्किल है कि। मुझे एक हिस्सा लगता है जैसे मैं इसे कहीं संदर्भित डीईएस पढ़ता हूं, लेकिन मुझे यह विश्वास नहीं होता ... [संपादित करें: मैं सही था, इस आलेख के 5 वां पैराग्राफ को क्रमबद्ध के संदर्भ में बेकार के रूप में देखें।]

बीटीडब्लू: यदि आपको इससे पहले नहीं मिला है, तो मुझे लगता है कि चाय / XTEA / XXTEA श्रृंखला की एल्गोरिदम ब्याज की होगी।







cryptography