1- # How to Obfuscate Python Script by Pyarmor
1+ # How to Obfuscate Python Script by PyArmor
22
3- From Pyarmor 3.3, a new mode is introduced. By this way, no import
3+ From PyArmor 3.3, a new mode is introduced. By this way, no import
44hooker, no setprofile, no settrace. The performance of running or
55importing obfuscation python script has been remarkably improved.
66
7- Pyarmor protects Python scripts by the following ways:
7+ PyArmor protects Python scripts by the following ways:
88
99* Obfuscate source file to protect constants and literal strings.
1010* Obfuscate byte code of each code object.
1111* Clear f_locals of frame as soon as code object completed execution.
1212
13- There are 2 different cases for Pyarmor to protect Python scripts:
13+ There are 2 different cases for PyArmor to protect Python scripts:
1414
1515* Application, also called standalone package
1616* Package used by others
1717
18- In the first case, Pyarmor obfuscates all the Python Scripts belong to
18+ In the first case, PyArmor obfuscates all the Python Scripts belong to
1919standalone application, and doesn't allow to import those obfuscated
2020scripts from any other clear script. So a simple way can be apply, it
2121called ** Restrict Mode** .
@@ -26,7 +26,7 @@ accessed in outer. It need more work to protect Python scripts.
2626
2727## Mechanism in Restrict Mode
2828
29- In restrict mode, Pyarmor will restore obfuscated byte code when this
29+ In restrict mode, PyArmor will restore obfuscated byte code when this
3030code object is called first time, and not obfuscate it again. It's
3131efficient and enough, because code object can't be accessed from any
3232other scripts, except obfuscated scripts.
@@ -172,7 +172,7 @@ This feature is introuced from v3.9.0
172172
173173When restrict mode is disabled, it means obfuscated scripts can be
174174imported from any other scripts. So every code object must be
175- obfuscated again as soon as it returns. Pyarmor insert a
175+ obfuscated again as soon as it returns. PyArmor insert a
176176` try...finally ` block in each code object, it will modify each code
177177object as the following way:
178178
@@ -211,7 +211,7 @@ locals in this frame.
211211
212212### Implementation
213213
214- From Pyarmor 3.9.0, there are 2 ways
214+ From PyArmor 3.9.0, there are 2 ways
215215
216216* Use Command ` obfuscate ` with option ` --no-restrict `
217217
@@ -269,7 +269,7 @@ From Pyarmor 3.9.0, there are 2 ways
269269
270270## Performance Analaysis
271271
272- With default configuration, Pyarmor will do the following extra work
272+ With default configuration, PyArmor will do the following extra work
273273to run or import obfuscated bytecode:
274274
275275- Load library _ pytransform at startup
@@ -379,7 +379,7 @@ It's even faster than no obfuscated scripts!
379379
380380# DEPRECATED Mode
381381
382- The following modes are used by Pyarmor before v3.2.0. It requires
382+ The following modes are used by PyArmor before v3.2.0. It requires
383383import hooker, for example, sys.meta_path, and sys.setprofile or
384384sys.settrace. Especially the latter, it could dramatically effect
385385performance.
0 commit comments