awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
dashingsoft avatar

dashingsoft/pyarmor

0
View on GitHub↗
5,114 stars·356 forks·Python·7 vuespyarmor.dashingsoft.com↗

Pyarmor

Pyarmor est un ensemble d'outils pour protéger les logiciels Python via l'obfuscation du code source, la protection du bytecode et la compilation binaire. Il fonctionne comme un obfuscateur de code, un protecteur de bytecode et un compilateur binaire conçu pour empêcher l'ingénierie inverse et l'accès non autorisé aux scripts et paquets Python.

Le projet se distingue en fournissant un gestionnaire de licence logicielle complet qui permet une licence liée au matériel. Cela permet aux développeurs de verrouiller l'exécution des scripts sur des appareils physiques ou des machines virtuelles spécifiques et d'appliquer des dates d'expiration strictes via des clés d'exécution chiffrées.

Ses capacités plus larges couvrent la distribution sécurisée via la génération de wheels obfusqués et d'exécutables autonomes pour plusieurs plateformes. La surface de sécurité inclut des vérifications d'intégrité à l'exécution, telles que la prévention de l'attachement de débogueur, la protection au niveau de la mémoire et la conversion de fonctions Python en extensions C compilées.

L'outil inclut une interface en ligne de commande et prend en charge l'intégration dans des pipelines d'intégration continue (CI) pour automatiser le processus d'obfuscation lors des builds.

Features

  • Code Obfuscators - Transforms Python source code and bytecode into a complex, unreadable format to prevent reverse engineering.
  • Source Code Obfuscation - Transforms Python source code and bytecode into an unrecognizable but functional format to prevent reverse engineering.
  • Hardware ID Licensing - Locks software activation to specific physical machines or virtual machine IDs to prevent unauthorized transfer.
  • Runtime Execution Keys - Uses external encrypted key files to enforce expiration dates and access permissions during initialization.
  • Hardware Device Discovery - Retrieves device-specific identifiers such as hard disk serial numbers or IP addresses for license binding.
  • Bytecode Obfuscators - Transforms Python bytecode into a complex format to prevent static analysis and reverse engineering.
  • Python to C Compilation - Converts Python functions into compiled machine instructions to prevent decompilation and improve execution speed.
  • Bytecode Protectors - Encrypts and transforms compiled bytecode to prevent static decompilation and memory analysis.
  • Hardware-Bound Execution - Locks software execution to specific physical devices by validating unique hardware identifiers.
  • License Key Validations - Uses external encrypted key files to enforce expiration dates and access controls during script initialization.
  • Script Expiration Enforcement - Sets hard expiration dates or time limits after which protected scripts refuse to execute.
  • Software License Managers - Provides a comprehensive license manager to lock script execution to specific physical devices and enforce expiration dates.
  • Software License Verification - Implements runtime license verification, including hardware binding and expiration date enforcement.
  • Identifier Obfuscation - Renames functions, classes, methods, and variables to make source code irreversible while preserving logical execution.
  • Obfuscation Symbol Mapping - Replaces source code identifiers with obfuscated names while maintaining the logical execution flow.
  • Hardening Transformations - Employs specialized transformation modes to harden scripts and restrict execution environments.
  • Registration File Generation - Generates portable registration files from activation codes to enable software use on target machines.
  • Compilation Scope Controls - Allows precise control over which modules and functions are converted to native binaries to ensure compatibility.
  • Processing Pipeline Filters - Uses pattern matching to specify which files to include, exclude, or treat as data during the processing pipeline.
  • Anti-Debugging Mechanisms - Blocks the use of debuggers to prevent analysis of the script's execution at runtime.
  • Secure Distribution Packaging - Provides secure packaging of protected Python code into obfuscated wheels or standalone executables for multi-platform deployment.
  • Memory Protection Engineering - Encrypts data in system memory during execution to prevent information extraction via memory dumps.
  • Attribute Renaming Rules - Implements custom rules to determine which specific attributes within a chain are renamed during the obfuscation process.
  • Cross-Platform Obfuscation - Generates protected code for multiple target operating systems and architectures from a single host machine.
  • Interpreter Version Compatibility - Ensures that a single distribution of obfuscated code remains compatible across different versions of the Python interpreter.
  • Security Environment Verifications - Implements a specialized bootstrap sequence to verify environment integrity and detect debuggers before loading protected code.
  • Obfuscation Assertions - Uses assertion-based protection to ensure designated functions and modules are included in the obfuscation process.
  • Dependency Bundle Obfuscation - Extends obfuscation to include identified third-party and system dependencies within the distribution bundle.
  • Protected Executable Bundling - Combines obfuscated scripts and their dependencies into a single executable file or folder bundle for distribution.
  • Constant String Encryption - Hides sensitive plain-text strings within the source by encrypting them and decrypting them only during execution.
  • Module Access Restrictions - Prevents obfuscated modules from being imported by plain scripts or executed via standard interpreters.
  • Network Time Verifications - Synchronizes with remote time servers to prevent bypassing license expiration via local system clock changes.
  • Obfuscated Distribution Formats - Packages obfuscated code into standard distribution formats like Python wheels while maintaining protection.
  • Read-Only Module Enforcement - Restricts modules to be read-only at runtime, preventing plain scripts from modifying internal attributes or methods.
  • Runtime Environment Validations - Implements a startup sequence that verifies the execution environment and detects debuggers before loading protected code.
  • Runtime Security Hooks - Implements custom error handlers and hooks to integrate with external services and environment checks during script execution.
  • Obfuscation Level Tuning - Provides configuration options to balance the intensity of code protection against runtime execution speed.
  • Execution Flow Verifications - Verifies that functions and modules are imported and called correctly to prevent unauthorized code replacement.
  • Binary Integrity Verification - Uses hooks to verify the checksum of the runtime extension module, ensuring the binary remains untampered.
  • Obfuscation Integrity Checks - Performs runtime checks to verify that specific modules or functions remain obfuscated and have not been tampered with.
  • Compiled Constant Protection - Encrypts compiled code blocks to hide strings and constants within modules from being extracted.
  • Renaming Exclusions - Prevents specific identifiers or attribute chains from being renamed to resolve name binding errors.
  • Obfuscation Rule Management - Manages obfuscation settings through global, local, and module-specific configuration files to control the protection process.
  • Obfuscation Symbol Mappings - Provides symbol mapping files that allow developers to map obfuscated identifiers back to original source names for troubleshooting.
  • Package Distribution - Obfuscates and protects Python scripts from unauthorized access.
  • Distribution Tools - Obfuscate and protect Python scripts with licensing.

Historique des stars

Graphique de l'historique des stars pour dashingsoft/pyarmorGraphique de l'historique des stars pour dashingsoft/pyarmor

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Pyarmor

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Pyarmor.
  • yck1509/confuserexAvatar de yck1509

    yck1509/ConfuserEx

    3,762Voir sur GitHub↗

    ConfuserEx is a security toolset for .NET applications that functions as a code obfuscator, binary encryptor, and application protector. Its primary purpose is to prevent reverse engineering by hiding sensitive application logic and data. The project employs specific hardening techniques including symbol renaming to hinder human readability and control-flow mutation to confuse decompilers. It further protects binaries by encrypting constants and resources to stop static analysis and memory dumping, while blocking the use of debuggers and profilers to prevent runtime analysis. Additional capa

    C#
    Voir sur GitHub↗3,762
  • zeusssz/hercules-obfuscatorAvatar de zeusssz

    zeusssz/hercules-obfuscator

    217Voir sur GitHub↗

    Hercules is a security tool designed to protect Lua source code from reverse engineering and unauthorized analysis. It functions as a code transformation engine that secures application logic by applying multiple layers of obfuscation, including control flow manipulation and the wrapping of scripts within a custom virtual machine environment. The project distinguishes itself through a multi-stage pipeline architecture that allows for the development of custom, multi-layered protection strategies. By replacing standard language instructions with custom opcodes and reorganizing linear code into

    Lualualua-obfuscatorobfuscator
    Voir sur GitHub↗217
  • aemkei/jsfuckAvatar de aemkei

    aemkei/jsfuck

    8,596Voir sur GitHub↗

    jsfuck is an esoteric programming language and JavaScript source obfuscator. It functions as a code encoder that transforms standard JavaScript source code into a functional equivalent composed of a minimal character set. The project restricts its source code to six specific characters to hide logic and bypass security filters that block standard alphanumeric characters. It achieves this by using type coercion to derive symbols and accessing internal language objects through prototype manipulation. The system enables arbitrary JavaScript execution by converting strings into executable functi

    JavaScript
    Voir sur GitHub↗8,596
  • javascript-obfuscator/javascript-obfuscatorAvatar de javascript-obfuscator

    javascript-obfuscator/javascript-obfuscator

    16,129Voir sur GitHub↗

    This project is a JavaScript code protection tool designed to transform source code into a version that is difficult for humans to read. Its primary purpose is to protect intellectual property and prevent reverse engineering by altering the original program logic. The tool employs several advanced techniques to hinder analysis, including control flow flattening and the injection of dead code. It can compile functions into custom bytecode executed by an embedded virtual machine and encrypt string literals to prevent static analysis of text. Additional capabilities include anti-debugging mecha

    TypeScript
    Voir sur GitHub↗16,129
Voir les 30 alternatives à Pyarmor→

Questions fréquentes

Que fait dashingsoft/pyarmor ?

Pyarmor est un ensemble d'outils pour protéger les logiciels Python via l'obfuscation du code source, la protection du bytecode et la compilation binaire. Il fonctionne comme un obfuscateur de code, un protecteur de bytecode et un compilateur binaire conçu pour empêcher l'ingénierie inverse et l'accès non autorisé aux scripts et paquets Python.

Quelles sont les fonctionnalités principales de dashingsoft/pyarmor ?

Les fonctionnalités principales de dashingsoft/pyarmor sont : Code Obfuscators, Source Code Obfuscation, Hardware ID Licensing, Runtime Execution Keys, Hardware Device Discovery, Bytecode Obfuscators, Python to C Compilation, Bytecode Protectors.

Quelles sont les alternatives open-source à dashingsoft/pyarmor ?

Les alternatives open-source à dashingsoft/pyarmor incluent : yck1509/confuserex — ConfuserEx is a security toolset for .NET applications that functions as a code obfuscator, binary encryptor, and… zeusssz/hercules-obfuscator — Hercules is a security tool designed to protect Lua source code from reverse engineering and unauthorized analysis. It… aemkei/jsfuck — jsfuck is an esoteric programming language and JavaScript source obfuscator. It functions as a code encoder that… javascript-obfuscator/javascript-obfuscator — This project is a JavaScript code protection tool designed to transform source code into a version that is difficult… obfuscator-llvm/obfuscator — This project is an LLVM obfuscator compiler and machine code obfuscator designed to protect C++ applications from… reinderien/mimic — Mimic is a unicode homoglyph generator and text obfuscation tool. It functions as a character substitutor that…