IPsec पूर्व-साझा कुञ्जी: तपाईंले टाइप गरेको स्ट्रिङपछाडिका बाइटहरू
दुई पक्षले एउटै देखिने स्ट्रिङ राख्न सक्छन् र फरक कुञ्जी निकाल्न सक्छन्। केही कमजोर बनाउनुअघि फिल्ड प्रकार, कुनै पनि इन्कोडिङ र अन्तिम बाइटहरू जाँच्नुहोस्।
दुई प्रशासकले स्क्रिनमा गोप्य मान तुलना गर्छन्, यो मिल्छ भनी स्वीकार्छन्, र सुरुङ अझै प्रमाणीकरणमा असफल हुन्छ। उनीहरूले तुलना गरेको स्ट्रिङ कुनै पनि पक्षले कुञ्जी व्युत्पत्तिमा हाल्ने मान होइन। तपाईंले देख्ने अक्षरहरू र प्रोटोकलले ह्यास गर्ने बाइटहरूबीच फिल्ड प्रकार, पाठ इन्कोडिङ, सम्पादक र क्लिपबोर्ड छन्, र यी चारमध्ये जुनसुकैले देखावट नबदली इनपुट बदल्न सक्छ। बाइटहरू तुलना गर्नुहोस् र भिन्नता सामान्यतया सेकेन्डभित्र देखिन्छ।
गेटवेले स्ट्रिङसँग के गर्छ
पूर्व-साझा कुञ्जी तारमा पठाएर तुलना गरिँदैन। प्रत्येक पक्षले आफ्नो स्थानीय प्रतिलिपि IKE आदानप्रदानको कुञ्जी व्युत्पत्तिमा हाल्छ, र त्यसबाट बन्ने प्रमाणीकरण पेलोडहरू या त प्रमाणित हुन्छन् या हुँदैनन्। यो डिजाइनको अर्थ दुई प्रतिलिपि देखिने रूपमा समान नभई बाइटमा एकै हुनुपर्छ भन्ने हो, र असफलता गलत पासवर्ड सन्देशको रूपमा नभई प्रमाणीकरण चरणमा जानकारी गराइन्छ भन्ने पनि हो।
त्यसैले उपयोगी प्रश्न कहिल्यै «यी एउटै देखिन्छन्» होइन, तर «प्रत्येक कार्यान्वयनले कुन ठ्याक्कै बाइट क्रम ह्यास गर्छ» हो।
थप बाइटहरू कहाँबाट आउँछन्
अन्त्यको नयाँ लाइन परम्परागत दोषी हो, र यो आँखासामु लुक्छ किनकि अधिकांश सम्पादकले फाइल बचत गर्दा अदृश्य रूपमा एउटा थप्छन्। च्याट विन्डोबाट टाँसिएको सुरु वा अन्त्यको खाली ठाउँले पनि त्यही गर्छ, र शब्द प्रशोधकले सिधा उद्धरणलाई स्मार्ट उद्धरणले बदले पनि त्यही हुन्छ। यीमध्ये कुनैले पनि मानिसले गर्ने दृश्य तुलना बदल्दैन।
ग्लिफ नभई बाइट देखाउने उपकरणसँग तुलना गर्नुहोस्। printf '%s' "$PSK" | xxd | tail -2 मानको अन्त्य हेक्समा छाप्छ, जहाँ हराएको 0a वा 20 स्पष्ट देखिन्छ। यो दुवैतर्फ गर्नुहोस् र दुवै डम्प छेउछाउमा तुलना गर्नुहोस्। यो उत्पन्न परीक्षण सामग्रीमा गर्नुहोस्, पछि शेल इतिहासमा छोडिने उत्पादन गोप्यमा होइन।
इन्कोड गरिएको भन्नाले इन्क्रिप्ट गरिएको होइन
कन्फिगरेसन निर्यातले गोप्य मानलाई प्रायः आधार इन्कोडिङमा बोक्छ, कहिले प्रत्येक साठी वा छयहत्तर अक्षरमा लाइन ब्रेकसहित र कहिले प्याडिङसहित। यदि एक पक्षले डिकोड गरिएका बाइटहरू अपेक्षा गर्छ र तपाईंले इन्कोड गरिएको पाठ टाँस्नुहुन्छ भने, तपाईंले फरक पासवर्ड पठाउनुभएको छैन, तपाईंले छाप्न योग्य अक्षरले बनेको धेरै लामो पासवर्ड पठाउनुभएको छ। Base64 ले कुनै गोपनीयता दिँदैन, त्यसैले इन्कोड गरिएको गोप्य मान दोस्रो रायका लागि कहिल्यै फोरममा टाँस्नु हुँदैन।
Apple को IPSec शब्दकोश प्रकारको महत्त्वको उपयोगी उदाहरण हो: यसले SharedSecret लाई L2TP र Cisco IPsec पेलोडमा साझा गोप्य प्रमाणीकरण विधिका लागि डेटाका रूपमा अभिलेख गर्छ। त्यो विशिष्ट पेलोडमा विशिष्ट गुण हो, संयोगवश गोप्य माग्ने अर्को प्रोटोकलका लागि पुनः प्रयोग गर्न सकिने सामान्य पाठ फिल्ड होइन।
दाबी गरिएको सीमा एउटै संयोजनको हुन्छ
एउटा Apple क्लाइन्टमा बत्तीस अक्षरको सीमाबारे पुराना प्रतिवेदनहरू एक क्लाइन्ट संस्करण, प्रोटोकल र प्रोफाइल आकारबारे वास्तविक प्रतिवेदन हुन्। ती प्रत्येक Apple प्लेटफर्म, प्रत्येक प्रदायक र प्रत्येक प्रोटोकलका लागि सार्वभौमिक सीमा होइनन्। संस्करण, पेलोड प्रकार र गेटवे आवश्यकता सँगै जाँच्नुहोस्, त्यसपछि थ्रेडबाट अनुमान गर्नुको सट्टा स्वीकृत संरचनामा परीक्षण गर्नुहोस्। परीक्षण गरिएको संयोजन परिवर्तन अभिलेखमा लेख्नुहोस्, नत्र अर्को व्यक्तिले त्यही थ्रेडलाई यसको योग्यताभन्दा बढी विश्वासका साथ उद्धृत गर्नेछ।
यदि सीमा साँच्चै लागू हुन्छ भने, उत्तर त्यसमा अटाउने समर्थित प्रमाणपत्र डिजाइन हो, बलियो गोप्य मानको छोटो संस्करण होइन। अनुमानित सीमा पूरा गर्न उत्पादन कुञ्जी काट्नुले यसको बल स्थायी रूपमा घटाउँछ र कागजात अब यसको सुरक्षासँग मेल नखाने प्रणाली बनाउँछ।
बल होइन, प्रस्तुति सुधार्नुहोस्
प्रस्तुति पुष्टि भएपछि प्रमाणीकरण असफल भयो भने, प्रमाणीकरण चरणको प्रभावी नीति पढ्नुहोस्: कुन विधि वार्तामा छ, कुन सहकर्मी पहिचान अपेक्षित छ, र गेटवे तपाईंले सोचेको जडानसँग मिल्छ कि मिल्दैन। क्रमशः कमजोर अनुमानहरू निदान होइनन्, ती सहायता टिकट संलग्न ढिलो अवनति हुन्।
यदि आवश्यक प्रमाणपत्रले संस्थाको मानक पूरा गर्न सक्दैन भने, डिजाइनलाई पूरा गर्न सक्नेमा बदल्नुहोस्। पर्याप्त एन्ट्रोपीसहितको साझा गोप्य मान, एक पटक उत्पन्न, व्यवस्थित फिल्डमा भण्डारण र कहिल्यै प्रकाशित नगरिएको, पूर्ण रूपमा राम्रो उत्तर हो; यसको छोटो संस्करण होइन।