Features
Protection modules across semantic lowering, obfuscation, anti-tamper, encryption, and developer tooling.
Semantic Lowering (V10)
Call sites for Python's own builtins are replaced with native implementations that live in the protection kernel rather than in your file. 14 families in total, including I/O. The builtins are not hidden, they are gone.
Enabled by Default
I/O, scalar, string, container, service, protocol, function, import and fusion lowering are applied to every build. The remaining families are opt-in.
Opt-in Families
Arithmetic, truth-test, slice, format and augmented-assignment lowering can be enabled per family. Each trades a small per-call cost for extra obfuscation depth.
I/O Lowering
print, input and open are routed to native kernel routines instead of the interpreter's own, so the most revealing call sites in a script are no longer readable as Python.
Scalar and Container Lowering
Numeric conversions, string handling, and list, tuple, dict, set and frozenset operations are routed through the kernel. These are the families that measure at or below plain Python speed.
Import Lowering
Imports are resolved through the kernel rather than the interpreter's import machinery. It is the fastest family we measure.
Fusion Lowering
Chains of lowered calls are collapsed into a single kernel dispatch instead of one call per step.
Operator and Format Lowering
Arithmetic, comparisons, truth tests, slicing, f-strings and format calls, and augmented assignment can each be lowered, so the operation stops being a recognisable Python instruction.
Per-build Kernel Symbols
Every kernel operation is renamed on each build. Nothing keeps a stable name between two builds of the same file.
Operation Registry
Lowering is driven by a registry of operation families, so a family can be added or disabled without disturbing the rest of the protection.
Ready to secure your code?
Join lots of developers who trust Nyami for their application security.