एन्कोडिंग और एन्क्रिप्शन के बीच अंतर


139

एन्कोडिंग और एन्क्रिप्शन के बीच अंतर क्या है?


5
पहले सन्निकटन के रूप में, एन्क्रिप्शन एक कुंजी का उपयोग करता है, एन्कोडिंग नहीं करता है।
राष्ट्रपति जेम्स के। पोल्क

यदि आप एक एन्कोडेड डेटा गोट जॉब को डिकोड करते हैं, लेकिन यदि आप सेक्रेटरी कुंजी, कुडोस टू यू, को जाने बिना एक एन्क्रिप्टेड डेटा को डिक्रिप्ट करते हैं, तो आपने इसे हैक कर लिया।
सुजीत अग्रहरी

1
एन्कोडिंग भाषा ए को भाषा बी में अनुवाद करने जैसा है ताकि भाषा बी जानने वाले लोगों को आसानी से मिल जाए। इसे एक तरह से भाषा ए में अनुवाद करने के लिए एक तरह से एनक्रिप्ट करना ताकि भाषा बी जानने वाले विशिष्ट लोग ही इसे प्राप्त कर सकें, आमतौर पर आप अनुवाद करने से पहले उन्हें रास्ता बताते हैं, हो सकता है कि एक विधि या कुंजी..जैसे अनार को ग्रेनेड समझें।
सुजीत अग्रहरी

जवाबों:


177

एन्कोडिंग सार्वजनिक रूप से उपलब्ध एक योजना का उपयोग करके डेटा को दूसरे प्रारूप में बदल देता है ताकि इसे आसानी से उलट दिया जा सके।

एन्क्रिप्शन डेटा को दूसरे प्रारूप में इस तरह से रूपांतरित करता है कि केवल विशिष्ट व्यक्ति (एस) परिवर्तन को उलट सकता है।

सारांश के लिए -

एन्कोडिंग डेटा प्रयोज्य बनाए रखने के लिए है और उन योजनाओं का उपयोग करता है जो सार्वजनिक रूप से उपलब्ध हैं।

एन्क्रिप्शन डेटा गोपनीयता बनाए रखने के लिए है और इस प्रकार परिवर्तन (चाबियाँ) को उलटने की क्षमता कुछ लोगों तक सीमित है।

स्रोत में अधिक जानकारी


3
क्या आप "हस्ताक्षर के लिए सार्वजनिक कुंजी के साथ दस्तावेज़" को एन्कोडिंग या एन्क्रिप्शन के रूप में मानते हैं? :)
Jarod42

@ Jarod42 एक डिजिटल हस्ताक्षर न तो एक एन्क्रिप्शन है और न ही दस्तावेज़ का एन्कोडिंग है, क्योंकि मूल डेटा को इससे पुनर्प्राप्त नहीं किया जा सकता है।
थिलो

1
"एक ऐसी योजना का उपयोग करना जो सार्वजनिक रूप से उपलब्ध है" - एन्क्रिप्शन निश्चित रूप से उन योजनाओं का उपयोग करता है जो सार्वजनिक रूप से भी उपलब्ध हैं, वास्तव में किसी भी क्रिप्टोग्राफ़िक योजना का अपना स्वयं का वजन हमेशा सार्वजनिक रूप से उपलब्ध होता है (अर्थात सार्वजनिक दृष्टि के रूप में कोई बैकडोर नहीं)। जो हिस्सा सार्वजनिक रूप से उपलब्ध नहीं है, वह डेटा को समझने के लिए आवश्यक रहस्य हैं, न कि वास्तविक योजना / एल्गोरिदम (जैसे आरएसए, डीएच आदि)।
प्रागैमाटिकप्रोग्रामर

32

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

एन्कोडिंग या डिकोडिंग करते समय, सभी को समान एल्गोरिथ्म रखने पर जोर दिया जाता है, और यह कि एल्गोरिथ्म आमतौर पर अच्छी तरह से प्रलेखित होता है, व्यापक रूप से वितरित और काफी आसानी से लागू किया जाता है। कोई भी अंततः एन्कोडेड डेटा को डीकोड करने में सक्षम है

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


यह हमेशा एन्क्रिप्शन और डिक्रिप्शन करने के लिए समान कुंजी रखने की आवश्यकता नहीं है। Doesn diffe-hellman सांकेतिक शब्दों में बदलने के लिए प्रेषक की निजी कुंजी का उपयोग करता है और प्राप्तकर्ता की निजी कुंजी को डिकोड करने के लिए?
डेविड मान

"HTTP सभी वर्णों को सुरक्षित रूप से प्रसारित करने की अनुमति नहीं देता है ...." मुझे लगता है कि यह भ्रामक है। HTTP 8-बिट क्लीन है। आप किसी भी बाइट को HTTP संदेश बॉडी में ट्रांसमिट कर सकते हैं। हेडर ASCII की कल्पना कर रहे हैं, लेकिन इसका "सुरक्षित" प्रसारण से कोई लेना-देना नहीं है।
हकीकी पार्कर

27

एन्कोडिंग:

  1. उद्देश्य: एन्कोडिंग का उद्देश्य डेटा को बदलना है ताकि यह एक अलग प्रकार के सिस्टम द्वारा ठीक से (और सुरक्षित रूप से) उपभोग किया जा सके।

  2. के लिए उपयोग किया जाता है: डेटा प्रयोज्य को बनाए रखना अर्थात, यह सुनिश्चित करने के लिए कि यह ठीक से उपभोग करने में सक्षम है।

  3. डेटा पुनर्प्राप्ति तंत्र: कोई भी कुंजी और आसानी से उलट नहीं किया जा सकता है, बशर्ते कि हम जानते हैं कि एन्कोडिंग में किस एल्गोरिथ्म का उपयोग किया गया था।

  4. एल्गोरिदम का इस्तेमाल किया: ASCII, यूनिकोड, URL एनकोडिंग, Base64।

  5. उदाहरण: बाइनरी डेटा को ईमेल पर भेजा जा रहा है, या किसी वेब पेज पर विशेष वर्ण देख रहा है।

एन्क्रिप्शन:

  1. उद्देश्य: एन्क्रिप्शन का उद्देश्य डेटा को दूसरों से गुप्त रखने के लिए बदलना है।

  2. इसके लिए उपयोग किया जाता है: डेटा की गोपनीयता बनाए रखना यानी, यह सुनिश्चित करने के लिए कि डेटा को किसी अन्य व्यक्ति द्वारा प्राप्त नहीं किया जा सकता है।

  3. डेटा पुनर्प्राप्ति तंत्र: यदि हम उपयोग की जाने वाली कुंजी और एन्क्रिप्शन एल्गोरिथ्म जानते हैं तो मूल डेटा प्राप्त किया जा सकता है।

  4. प्रयुक्त एल्गोरिदम: एईएस, ब्लोफिश, आरएसए।

  5. उदाहरण: किसी को एक गुप्त पत्र भेजना, जो केवल उन्हें पढ़ने में सक्षम होना चाहिए, या सुरक्षित रूप से इंटरनेट पर एक पासवर्ड भेजना चाहिए।

संदर्भ URL: http://danielmiessler.com/study/encoding_vs_enc एन्क्रिप्शन/


9

एन्कोडिंग ट्रांसमिशन या भंडारण उद्देश्यों के लिए वर्णों के अनुक्रम को एक विशेष प्रारूप में डालने की प्रक्रिया है

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


3

विभिन्न प्रणालियों के बीच डेटा को स्टोर या संचार करने के तरीके के रूप में एन्कोडिंग देखें। उदाहरण के लिए, यदि आप हार्ड ड्राइव पर टेक्स्ट स्टोर करना चाहते हैं, तो आपको अपने पात्रों को बिट्स में बदलने का एक तरीका खोजना होगा। वैकल्पिक रूप से, यदि आपके पास एक फ्लैश लाइट है, तो आप मोर्स का उपयोग करके अपने पाठ को एनकोड करना चाहते हैं। परिणाम हमेशा "पठनीय" होता है, बशर्ते आपको पता हो कि यह कैसे संग्रहीत है।

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


3

मैं कहूंगा कि दोनों ऑपरेशन सूचनाओं को एक रूप से दूसरे रूप में बदलते हैं, अंतर:

  • एन्कोडिंग का अर्थ है सूचना को एक रूप से दूसरे में बदलना, ज्यादातर मामलों में यह आसानी से प्रतिवर्ती है
  • एन्क्रिप्शन का अर्थ है कि मूल जानकारी अस्पष्ट है और इसमें एन्क्रिप्शन कुंजियाँ शामिल हैं जिन्हें परिवर्तन करने के लिए एन्क्रिप्शन / डिक्रिप्शन प्रक्रिया को प्रदान किया जाना चाहिए।

इसलिए, अगर इसमें सममित या असममित) कुंजी (उर्फ "गुप्त") शामिल है, तो यह एन्क्रिप्शन है, अन्यथा यह एन्कोडिंग है।


2

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


1

एन्कोडिंग -
oding उदाहरण डेटा 16 है तो एन्कोडिंग 10000 का मतलब है कि यह द्विआधारी प्रारूप या एएससीआईआई या UNCODED आदि है जो किसी भी प्रणाली को आसानी से और आसानी से पढ़ सकते हैं यह समझने के लिए कि यह वास्तविक अर्थ है

एन्क्रिप्शन - ryption उदाहरण डेटा 16 है तो एनक्रिप्ट्री 3t57 है या कुछ भी निर्भर हो सकता है जिस पर एन्क्रिप्शन के लिए एल्गो का उपयोग किया जाता है जिसे किसी भी प्रणाली द्वारा आसानी से पढ़ा जा सकता है लेकिन इसके बाद कौन समझ सकता है कि यह वास्तविक अर्थ है जो डिक्रिप्शन कुंजी है


0

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

एन्क्रिप्शन डेटा गोपनीयता बनाए रखने के लिए है और सादे में लौटने के लिए एक कुंजी (गुप्त रखा गया) के उपयोग की आवश्यकता होती है।

इसके अलावा दो प्रमुख शब्द हैं जो सुरक्षा हैशिंग और ऑब्सफिकेशन की दुनिया में भ्रम पैदा करते हैं

हैश आउटपुट में स्पष्ट परिवर्तनों के माध्यम से सभी संशोधन का पता लगाकर सामग्री की अखंडता को मान्य करने के लिए हैशिंग

Obfuscation का उपयोग लोगों को किसी चीज़ के अर्थ को समझने से रोकने के लिए किया जाता है, और अक्सर इसका उपयोग कंप्यूटर कोड के साथ किया जाता है ताकि सफल रिवर्स इंजीनियरिंग और / या किसी उत्पाद की कार्यक्षमता को चोरी करने से रोका जा सके।

और पढ़ें @ डैनियलस्मरलर लेख


1
एनकोडिंग चारसेट को समझने की क्षमता है। जिसके आधार पर फाइलों में सामग्री पढ़ी और लिखी जाती है। उदाहरण के लिए। UTF-8, UTF-16, UTF-32, ANSI एन्क्रिप्शन वह डेटा है जो पहले से एनकोड किया गया है।
अरुण

0

एन्क्रिप्शन डेटा को गैर-पठनीय प्रारूप में परिवर्तित करता है (संभवतः विशेष गैर-पठनीय वर्ण युक्त)।

एन्कोडिंग उस डेटा को पठनीय प्रारूप (वर्ण) में बदलने में मदद करता है ताकि इसे भविष्य में उपयोग के लिए संग्रहीत किया जा सके अर्थात संभवतः डिक्रिप्शन के दौरान।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.