HTML ऑब्फ़स्केशन
पेड प्लान के साथ आप इनलाइन JavaScript वाली HTML फ़ाइलें ऑब्फ़स्केट कर सकते हैं। ऑब्फ़स्केटर चिह्नित script टैग निकालता है, उनकी सामग्री को ऑब्फ़स्केट करता है और आसपास के HTML को जस का तस रखता है। यह बेसिक और VM दोनों ऑब्फ़स्केशन के साथ काम करता है।
Parse HTML विकल्प चालू करें, और ऑब्फ़स्केटर अपने आप <script> टैग निकालेगा, उनकी सामग्री को ऑब्फ़स्केट करेगा और HTML संरचना को बनाए रखेगा।
यह कैसे काम करता है: ऑब्फ़स्केटर आपके HTML को पार्स करता है और data-javascript-obfuscator एट्रिब्यूट से
चिह्नित, खाली न होने वाले इनलाइन <script> टैग ढूँढता है। हर चिह्नित स्क्रिप्ट अलग-अलग ऑब्फ़स्केट होती है, और पूरा HTML
सुरक्षित स्क्रिप्ट्स के साथ आउटपुट होता है। src या type="module" वाली स्क्रिप्ट्स एट्रिब्यूट होने पर भी छोड़ दी जाती हैं।
महत्वपूर्ण: हर data-javascript-obfuscator script टैग के अंदर का कोड आत्मनिर्भर होना चाहिए। स्क्रिप्ट्स
अलग-अलग ऑब्फ़स्केट होती हैं, इसलिए किसी दूसरी चिह्नित स्क्रिप्ट के अंदर बदले गए नामों पर निर्भर न रहें। बिना चिह्न वाली स्क्रिप्ट्स
फिर भी उन ग्लोबल्स का उपयोग कर सकती हैं जिन्हें सुरक्षित स्क्रिप्ट्स स्पष्ट रूप से बनाए रखती हैं (var डिक्लेरेशन या
globalThis असाइनमेंट के ज़रिए)।
उदाहरण
इनपुट HTML
ऑब्फ़स्केशन के बाद केवल data-javascript-obfuscator एट्रिब्यूट वाली स्क्रिप्ट्स बदली जाती हैं। बाकी सारी सामग्री अपरिवर्तित रहती है।
सीमाएँ
उपयोग की गणना: उपयोग उस JavaScript के लिए गिना जाता है जिसे ऑब्फ़स्केशन के लिए चुना गया है, प्रति जॉब न्यूनतम शुल्क के अधीन, न कि पूरी HTML फ़ाइल के आकार के लिए। हालाँकि, अधिकतम अपलोड फ़ाइल आकार की सीमा पूरी HTML फ़ाइल पर लागू होती है।
आउटपुट चलाकर देखना बंद: Parse HTML चालू होने पर "आउटपुट चलाकर देखें" सुविधा बंद रहती है, क्योंकि HTML को JavaScript की तरह चलाया नहीं जा सकता।
- केवल
data-javascript-obfuscatorएट्रिब्यूट वाली, खाली न होने वाली इनलाइन स्क्रिप्ट्स ऑब्फ़स्केट होती हैं srcयाtype="module"वाली स्क्रिप्ट्स एट्रिब्यूट होने पर भी अपरिवर्तित रहती हैं- हर script टैग अलग-अलग ऑब्फ़स्केट होता है, इसलिए कोड आत्मनिर्भर होना चाहिए और दूसरे चिह्नित script टैग में बदले गए नामों का संदर्भ नहीं दे सकता
- इवेंट हैंडलर एट्रिब्यूट (
onclick,onloadआदि) ऑब्फ़स्केट नहीं होते - JavaScript URL (
javascript:प्रोटोकॉल) ऑब्फ़स्केट नहीं होते - HTML कमेंट्स के अंदर की स्क्रिप्ट्स अनदेखी की जाती हैं
- Parse HTML चालू होने पर सोर्स मैप समर्थित नहीं हैं
