पैडिंग एक मोड के संदेश प्रसंस्करण से संबंधित है
AES में 16-बाइट ब्लॉक आकार है। CBC को पूर्ण ब्लॉक की आवश्यकता है और यह टूल PKCS7 का उपयोग करता है। GCM और CTR, PKCS7 के बिना आंशिक अंतिम ब्लॉक को संसाधित कर सकते हैं। केवल इसलिए पैडिंग सेटिंग न जोड़ें क्योंकि किसी अन्य लाइब्रेरी का एपीआई इसे दिखाता है; इसे वास्तविक मोड और प्रोटोकॉल से मेल खाना चाहिए।
पासवर्ड प्रोफ़ाइल GCM को ठीक करती है और इसलिए इसमें कोई PKCS7 चयनकर्ता नहीं है। रॉ CBC PKCS7 को अपने स्पष्ट सम्मेलन के रूप में प्रदर्शित करता है। शून्य पैडिंग या बिना पैडिंग का उपयोग करने वाला लक्ष्य स्वचालित रूप से उस सेटिंग के साथ संगत नहीं है।
एक बाइट-स्तर PKCS7 उदाहरण
13-बाइट संदेश के लिए, PKCS7 मान 03 के साथ तीन बाइट्स जोड़ता है, जिससे एक 16-बाइट ब्लॉक बनता है। यदि कोई संदेश पहले से ही बिल्कुल 16 बाइट्स है, तो PKCS7 हेक्साडेसिमल में सोलह 10 बाइट्स का एक पूरा ब्लॉक जोड़ता है। वह पूर्ण अतिरिक्त ब्लॉक निष्कासन को स्पष्ट बनाता है।
कच्चे CBC टूल में, एबीसी दर्ज करने पर तीन UTF-8 बाइट्स का उपयोग होता है। एन्क्रिप्शन से पहले तेरह 0d पैडिंग बाइट्स जोड़े जाते हैं; वैध PKCS7 हटाने के बाद तीन प्लेनटेक्स्ट बाइट्स बहाल हो जाते हैं। संपादक में उन बाइट्स को मैन्युअल रूप से न जोड़ें: कार्यान्वयन पहले से ही पैडिंग को संभालता है।
पैडिंग त्रुटि आपको क्या बता सकती है
एक गलत कुंजी, गलत IV, गलत मोड, संशोधित सिफरटेक्स्ट या अलग पैडिंग कन्वेंशन विफलता का कारण बन सकता है। पैडिंग त्रुटि यह नहीं पहचानती कि कौन सा पैरामीटर गलत है। इसके विपरीत, यादृच्छिक गलत-कुंजी बाइट्स में कभी-कभी वैध दिखने वाली पैडिंग हो सकती है, इसलिए एक सफल निष्कासन सादे पाठ को प्रमाणित नहीं करता है।
GCM के लिए, विफलता को प्रमाणीकरण बेमेल के रूप में रिपोर्ट किया जाता है और कोई सादा पाठ जारी नहीं किया जाता है। उस सुरक्षा को बायपास करने के लिए क्षतिग्रस्त GCM पैकेज को CBC पर स्विच न करें। CTR में कोई पैडिंग जांच नहीं है और अखंडता के बारे में कुछ भी साबित किए बिना बाइट्स लौटा सकता है।
संदेश में परिवर्तन किए बिना समस्या निवारण करें
पुष्टि करें कि सिफरटेक्स्ट सही ढंग से डिकोड किया गया है, CBC IV 16 बाइट्स है और कुंजी इसके चयनित आकार से मेल खाती है। मूल संदेश में किसी भी आवश्यक पिछली नई पंक्ति को बनाए रखें। यदि सहकर्मी किसी अन्य पैडिंग कन्वेंशन का उपयोग करता है, तो शून्य को अलग करने या यह अनुमान लगाने के बजाय कि कितना सादा पाठ हटाना है, उस सिस्टम के दस्तावेज़ीकृत कार्यान्वयन का उपयोग करें।
संबंधित उपकरण और पढ़ना
- पाठ एन्क्रिप्ट करें
- पाठ को डिक्रिप्ट करें
- फ़ाइल एन्क्रिप्ट करें
- एक कुंजी उत्पन्न करें
- AES एन्क्रिप्शन क्या है? कुंजी, ब्लॉक और पुनर्प्राप्ति
- AES-GCM बनाम CBC बनाम CTR: प्रमाणीकरण और पैरामीटर
- AES-128 बनाम AES-192 बनाम AES-256: बाइट्स और एन्कोडिंग
तकनीकी संदर्भ
अद्यतन अक्टूबर 16, 2026