प्रीसेट चुनना
प्रीसेट शुरुआती कॉन्फ़िगरेशन हैं। प्रीसेट चुनने के बाद ऑब्फ़स्केटर के चुने गए संस्करण में प्रभावी विकल्पों की जाँच करें।
देखें
Which Obfuscator.io Preset Should I Use? VM Low vs Default vs High
संस्करण 8.0.0 और उसके बाद के संस्करणों में प्रोडक्शन के लिए VM Default सुझाया गया शुरुआती विकल्प है। VM Low शुरुआती मूल्यांकन के लिए उपयोगी है क्योंकि उसमें VM Self Defending और VM Debug Protection बंद हैं। अन्य VM प्रीसेट दोनों रक्षा उपाय चालू करते हैं। Free प्लान पर डैशबोर्ड केवल VM Low देता है; अन्य VM प्रीसेट और उनके VM विकल्पों के लिए सशुल्क प्लान ज़रूरी है।
VM (8.0.0 और बाद के)
| optionsPreset | क्या बदलता है |
|---|---|
vm-low-obfuscation | VM Low कम VM रक्षा उपायों से शुरू होता है और stringArray व vmBytecodeArrayEncoding को बंद रखता है। इसका उपयोग VM ऑब्फ़स्केशन के मूल्यांकन के लिए करें, टेस्टिंग बिल्ड के आधार के रूप में नहीं। |
vm-default | VM Default, VM सुरक्षा को String Array सुरक्षा और उन्नत सुरक्षा के साथ जोड़ता है। प्रोडक्शन के लिए इससे शुरू करें। |
vm-high-obfuscation | VM High Stateful Opcodes, Stack Encoding और Compact Dispatcher जोड़ता है। अपने कोड पर लागत मापें। |
vm-ultra-high-obfuscation | VM Ultra High, Stateful Opcodes और Stack Encoding रखता है लेकिन Compact Dispatcher नहीं, और Control Flow Flattening तथा अतिरिक्त बेसिक बदलाव जोड़ता है। इससे रनटाइम प्रदर्शन में भारी गिरावट आती है। |
संस्करण 8.0.0 और उसके बाद के संस्करणों में vm-anti-llm (VM Anti-LLM) और vm-medium-obfuscation (VM Medium) वही विकल्प देते हैं जो vm-default देता है, और डैशबोर्ड में अब अलग विकल्प नहीं हैं। पुराने संस्करण इन्हें अलग दिखा सकते हैं।
बेसिक ऑब्फ़स्केशन
| optionsPreset | selfDefending | debugProtection | disableConsoleOutput |
|---|---|---|---|
default | false | false | false |
low-obfuscation | true | false | true |
medium-obfuscation | true | false | true |
high-obfuscation | true | true | true |
अधिक भारी प्रीसेट आउटपुट आकार और निष्पादन समय बढ़ा सकते हैं। निश्चित धीमेपन के गुणकों पर निर्भर रहने के बजाय अपने स्टार्टअप समय, बार-बार चलने वाले हिस्सों और संकुचित बंडल आकार को मापें। चुनिंदा फ़ंक्शन की सुरक्षा के लिए विशिष्ट फ़ंक्शन्स को लक्षित करना देखें।
API बिल्ड के लिए, अपने ऑब्फ़स्केटर संस्करण के किसी बिल्ट-इन प्रीसेट के विकल्प प्रीसेट एंडपॉइंट से प्राप्त करें और उन्हें options के रूप में भेजें (देखें API संदर्भ)।
कस्टम प्रीसेट
बिल्ट-इन प्रीसेट शुरुआती बिंदु हैं। जब भी आप किसी एक के ऊपर कुछ बदलें, अगली बार दोबारा बनाने के बजाय नतीजे को सहेज लें: विकल्प पैनल के ऊपर प्रीसेट लाइब्रेरी में नया प्रीसेट चुनें। प्रीसेट हर विकल्प को उसकी मौजूदा स्थिति में, आपके दिए नाम और वैकल्पिक विवरण के साथ सहेजता है; यह ऑब्फ़स्केटर संस्करण सहेजता नहीं है, इसलिए बिल्ड करते समय चुना गया संस्करण लागू होता है। आपके सहेजे गए प्रीसेट कस्टम में दिखते हैं। कस्टम प्रीसेट Pro और उससे ऊपर के प्लान में उपलब्ध हैं, प्रति खाता अधिकतम 20।
किसी प्रीसेट के कार्ड पर क्लिक करने से वह विकल्प पैनल पर लागू हो जाता है। कोई विकल्प बदलते ही लागू किया गया प्रीसेट बदला गया के रूप में चिह्नित हो जाता है: बदलाव वापस लें उसके विकल्प पहले जैसे कर देता है, और आपके अपने प्रीसेट पर प्रीसेट अपडेट करें बदलावों को उसी में सहेज देता है। कोई दूसरा प्रीसेट बिना सहेजे गए बदलावों को बदले, उससे पहले आपसे पुष्टि माँगी जाती है। संपादित करना, डुप्लिकेट करना और हटाना प्रीसेट के मेनू में हैं। एक आम व्यवस्था यह है: एक प्रोडक्शन प्रीसेट, और उसका एक टेस्टिंग रूप जो टेस्टिंग और CI के ओवरराइड जोड़ता है, ताकि दोनों बिल्ड एक जैसे ट्रांसफ़ॉर्म चलाएँ।
सेव डायलॉग के दो और फ़ील्ड प्रीसेट को आपके अपने डैशबोर्ड से आगे ले जाते हैं:
- मेरी टीम के साथ साझा करें इसे आपकी टीम के लिए प्रकाशित करता है, जहाँ यह टीम डिफ़ॉल्ट भी बन सकता है। यह स्विच केवल टीम मालिक को दिखता है। देखें साझा प्रीसेट।
- API उपनाम बिल्ड को नाम से प्रीसेट इस्तेमाल करने देता है:
javascript-obfuscatorपैकेज (5.8.0+) मेंoptionsPresetको उपनाम पर सेट करने से बिल्ड के समय प्रीसेट के विकल्प प्राप्त किए जाते हैं, इसलिए कॉन्फ़िगरेशन डैशबोर्ड में रहता है और वहाँ किया गया बदलाव बिना कमिट के अगले बिल्ड तक पहुँचता है। सीधा API अनुरोध एक अलग अनुरोध में प्रीसेट एंडपॉइंट से विकल्प प्राप्त करता है (देखें API संदर्भ)। देखें NPM पैकेज का उपयोग।
