Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE] FLY mode, a simple and easy RFT mode #1964

Open
jondy opened this issue Oct 21, 2024 · 5 comments
Open

[FEATURE] FLY mode, a simple and easy RFT mode #1964

jondy opened this issue Oct 21, 2024 · 5 comments

Comments

@jondy
Copy link
Contributor

jondy commented Oct 21, 2024

Goals

  1. High performance after obfuscation, almost same as plain script

  2. Refact complex structured projects which need extra sys.path

  3. More like normal Python scripts, so Nuitka, Cython or any other tool could handle them as normal scripts

Example

One script foo.py

import sys

def say():
    print('Hello', sys.version_info[:2])

if __name__ == '__main__':
    say()

Fly to dist/foo.py

from pyarmor_fly import __pyarmor__
pyarmor__1, pyarmor__2, pyarmor__3, pyarmor__4 = __pyarmor__(__name__, b'xxxx')

pyarmor__5 = pyarmor__2(b'xxxxx')

def pyarmor__6():
    pyarmor__4(pyarmor__3(b'xxxxxxx') pyarmor__5.version_info[:2])

if __name__ == '__main__':
    pyarmor__6()

Schedule

Released on March, 2025

@JiaPai12138
Copy link

for RFT mode. is it possible to custom function names?
for example, instead of pyarmor__xxx, could we do like goodbye__xxx, helloworld__xxx etc.
or instead of decimal tail, could we use a hex tail like goodbye__0f, gooday__ffddee, etc.

@jondy
Copy link
Contributor Author

jondy commented Nov 10, 2024

for RFT mode. is it possible to custom function names?

I'll take it into account.

@hongphu8790
Copy link

Do you have a plan for when it will be done? Currently, the RFT mode takes a lot of time to add exclusions to rft_exclude_table because it isn't smart enough to reference variables.

@jondy
Copy link
Contributor Author

jondy commented Feb 11, 2025

It may be released in this month, or next month.

But I'm not sure it could save time in building time, because rft mode is complex.

@jondy
Copy link
Contributor Author

jondy commented Feb 24, 2025

Pyarmor v9.1.0 is released for this feature.

Refer to
https://eke.dashingsoft.com/pyarmor/docs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants