रेसिपीज़
javascript-obfuscator के आम इंटीग्रेशन प्रश्नों के लिए व्यावहारिक, एंड-टू-एंड गाइड। हर रेसिपी अलग-अलग फ़्लैग्स का दस्तावेज़ीकरण करने के बजाय यह बताती है कि किसी खास नतीजे तक पहुँचने के लिए विकल्पों को कैसे मिलाकर इस्तेमाल करें।
वह रेसिपी चुनें जो आपकी समस्या से मेल खाती हो। समय के साथ और रेसिपीज़ जोड़ी जाएँगी — अगर आपको कोई ऐसा इंटीग्रेशन परिदृश्य मिला है जो यहाँ शामिल नहीं है, तो हमें बताएँ और हम उस पर लिखेंगे।
इस अनुभाग में
सर्वोत्तम प्रथाएँ
क्या सुरक्षित करें, क्या छोड़ दें, और ऑब्फ़स्केशन आपके लिए क्या नहीं कर सकता।
होस्ट-साइड टेम्पलेट सब्स्टिट्यूशन
reservedNames और reservedStrings का उपयोग करके सर्वर पर रेंडर की गई वैल्यूज़ को VM-ऑब्फ़स्केटेड JavaScript में डालें।
बाइटकोड ऐरे एन्कोडिंग कुंजी
vmBytecodeArrayEncodingKey के साथ अपनी खुद की VM बाइटकोड एन्क्रिप्शन कुंजी दें और उसे रनटाइम पर key getter के ज़रिए हल करें — क्लाइंट स्टोरेज से, या अपने बैकएंड से लाकर।
VM डिफेंस टेलीमेट्री और रिएक्शन्स
vmDefenseHook से VM डिफेंस डिटेक्शन अपने बैकएंड को रिपोर्ट करें, और vmDefenseReaction से तय करें कि हर डिटेक्शन कैटेगरी पर क्या प्रतिक्रिया हो।
LLM विश्लेषण से फ़ंक्शन नाम छिपाना
VM-ऑब्फ़स्केटेड कोड किसी LLM को सार्थक फ़ंक्शन नाम क्यों लीक कर सकता है, और IIFE रैप इस लीक को कैसे हटा देता है।
eval और new Function के साथ VM ऑब्फ़स्केशन
VM ऑब्फ़स्केशन direct eval और Function-कंस्ट्रक्टर कॉल्स को कैसे संभालता है, क्या बाइटकोड में बदला जाता है और क्या छोड़ दिया जाता है, ऑब्फ़स्केटर कौन-सी चेतावनियाँ देता है, और रनटाइम पर ReferenceError का निदान कैसे करें।
आइडेंटिफ़ायर टकराव से बचना
कई VM-ऑब्फ़स्केटेड फ़ाइलों को बंडल करने पर पार्स के समय "Identifier already declared" क्यों आ सकता है, और random या hexadecimal आइडेंटिफ़ायर से इसे कैसे ठीक करें।
VM रनटाइम एरर का निदान
"Invalid array length" जैसी VM रनटाइम एरर के लिए चरण-दर-चरण चेकलिस्ट, जो टारगेट/self-defending की गलत कॉन्फ़िगरेशन को असली बग से अलग करती है।
