Official NightAuth Python SDK & Reference Client Suite (Modern Desktop UI in PyQt6 and Interactive Terminal CLI in Rich). Protect your software against piracy, reverse engineering, and tampering with cloud licensing, HWID locking, realtime chat, and memory streaming in minutes.
Official Portal: https://nightauth.org
Documentation: https://nightauth.org/docs
Technical Architecture Benchmark: NightAuth vs KeyAuth vs Auth.gg
Languages / Idiomas / Langues / Sprachen:
English β’ EspaΓ±ol β’ FranΓ§ais β’ Deutsch β’ Italiano β’ PortuguΓͺs β’ Π ΡΡΡΠΊΠΈΠΉ β’ TΓΌrkΓ§e β’ Polski β’ δΈζ
Note
Official video tutorials and detailed step-by-step guides explaining how to configure applications, plans, subscriptions, cloud variables, webhooks, and licenses in the NightAuth Dashboard will be published soon on our official portal and YouTube channel.
| Start / Authentication Screen | Dashboard & Subscription Management |
|---|---|
![]() |
![]() |
| Terminal Login Screen | Interactive Console Dashboard |
|---|---|
![]() |
![]() |
- Native Compilation & Obfuscation: Python bytecode is easily decompiled by tools like decompyle++ or uncompyle6. For production software distribution, compile your scripts into native C/C++ machine code (
.pydor.exe) using Nuitka or PyArmor. - Enterprise Code Virtualization: Protect the compiled executable using commercial code virtualizers and protectors such as VMProtect, Themida, or Enigma Protector.
- Memory Integrity & Anti-Debugging: NightAuth includes built-in protection against monitoring tools, network interceptors, and debuggers (
HTTPDebugger,CheatEngine,x64dbg,Wireshark, etc.). Keep these security protections enabled in production releases. - In-Memory Secure File Execution: When downloading protected payloads or binaries with
api.download(), do not write bytes to the physical hard drive where end-users can copy them. Instead, stream and execute the payload directly in memory (e.g., usingio.BytesIOor reflective loader / RunPE techniques) and zero out the memory buffers immediately after execution.
Install the required dependencies:
pip install -r requirements.txtCore dependencies:
requests(Encrypted HTTPS transport)pycryptodome(Modern cryptography primitives)PyQt6(High-performance native GUI)rich(Interactive styled terminal interface)qrcode&pillow(2FA authenticator QR code generation)websocket-client(Realtime SSE and socket listener)
Define your application credentials exactly as shown in the Manage Apps tab of the NightAuth dashboard:
from nightauth import api
APP_NAME = ""
APP_API_KEY = ""
APP_VERSION = "1.0"
APP_TOKEN = None
NightAuthApp = api(
name=APP_NAME,
apikey=APP_API_KEY,
version=APP_VERSION,
token=APP_TOKEN
)You must call init() prior to executing any other SDK functions. This establishes an ephemeral Diffie-Hellman (X25519) key exchange and an encrypted session:
NightAuthApp.init()
if not NightAuthApp.response.success:
print(f"Initialization Failed: {NightAuthApp.response.message}")
exit(1)# Validate active session status with the server
NightAuthApp.check()
print(f"Session Status: {NightAuthApp.response.message}")
# Check if client HWID or IP address is blacklisted
if NightAuthApp.checkblack():
print("Access Denied: Machine or IP is blacklisted.")
exit(0)username = input("Username: ")
password = input("Password: ")
two_factor = input("2FA Code (optional): ")
if NightAuthApp.login(username, password, two_factor_code=two_factor):
print(f"Welcome back, {NightAuthApp.user.username}!")
else:
print(f"Login failed: {NightAuthApp.response.message}")username = input("Desired Username: ")
password = input("Password: ")
license_key = input("License Key: ")
email = input("Email (optional): ")
if NightAuthApp.register(username, password, license_key, email):
print(f"Account registered successfully: {NightAuthApp.user.username}")
else:
print(f"Registration failed: {NightAuthApp.response.message}")license_key = input("Enter license key: ")
if NightAuthApp.license(license_key):
print("License authenticated successfully. Access granted.")
else:
print(f"Access denied: {NightAuthApp.response.message}")username = input("Account Username: ")
new_key = input("New License Key: ")
if NightAuthApp.upgrade(username, new_key):
print(f"License redeemed successfully: {NightAuthApp.response.message}")
else:
print(f"Upgrade failed: {NightAuthApp.response.message}")username = input("Username: ")
password = input("Password: ")
two_factor = input("2FA Code (if enabled): ")
if NightAuthApp.reset_hwid(username, password, two_factor_code=two_factor):
print("HWID lock reset successfully. You can now log in on this machine.")
else:
print(f"HWID reset failed: {NightAuthApp.response.message}")email = input("Enter registered email: ")
if NightAuthApp.forgot_password(email):
print("Password reset email sent. Check your inbox.")
else:
print(f"Recovery failed: {NightAuthApp.response.message}")Access comprehensive profile data once authenticated:
print("=== USER PROFILE ===")
print("Username: ", NightAuthApp.user.username)
print("Client IP: ", NightAuthApp.user.ip)
print("Hardware ID: ", NightAuthApp.user.hwid)
print("Registered: ", NightAuthApp.user.created_at)
print("Last Login: ", NightAuthApp.user.last_login_at)
# Active subscriptions
for sub in NightAuthApp.user.subscriptions:
print(f"Plan: {sub.subscription} | Expires: {sub.expiry} | Key: {sub.key}")Fetch global configuration variables configured in the dashboard:
motd = NightAuthApp.var("server_motd")
print("Cloud Variable:", motd)Read and write isolated, user-specific persistent variables in the cloud:
# Set a user variable
NightAuthApp.set_user_var("discord_tag", "user#0001")
# Retrieve a user variable
tag = NightAuthApp.get_user_var("discord_tag")
print("Stored Discord:", tag)Send security alerts or telemetry logs directly to the dashboard or Discord webhook:
NightAuthApp.log("Suspicious memory modification attempt detected.")Instantly terminate the session, ban the user account, and blacklist their HWID and IP:
NightAuthApp.ban("Security tampering detected by Anti-Cheat.")Execute HTTP requests to external third-party APIs without exposing secret keys or URLs in the client application:
resp = NightAuthApp.webhook("7kR0UedlVI", params="&action=notify", body='{"content": "Client notification"}')
print("Webhook Response:", resp)Download encrypted server-side assets and process them directly in RAM:
file_bytes = NightAuthApp.download("385624")
if file_bytes:
print(f"Downloaded {len(file_bytes)} bytes securely.")
# Process or execute file_bytes directly in memory using io.BytesIO# Send a message to a channel
NightAuthApp.chat_send("Hello community!", channel="general")
# Fetch latest messages
messages = NightAuthApp.chat_get(channel="general")
if messages:
for msg in messages:
print(f"[{msg.get('author')}]: {msg.get('message')}")React immediately to administrative changes from the dashboard:
NightAuthApp.on_session_invalidated = lambda reason: print(f"[ALERT] Session Invalidated: {reason}")
NightAuthApp.on_app_banned = lambda reason: print(f"[CRITICAL] Application Banned: {reason}")
NightAuthApp.on_app_status_changed = lambda status: print(f"[INFO] App Status: {status}")
NightAuthApp.on_version_updated = lambda ver: print(f"[UPDATE] New Version: v{ver}")The SDK lives in sdk/nightauth.py. The interactive terminal client is console/main.py, and the PyQt desktop client is desktop/main.py.
From this source directory, install dependencies and launch either client:
python -m pip install -r requirements.txt
python console/main.py
python desktop/main.pyThe desktop client requires a graphical session. Configure the app name, API key, version, and optional token in the entry point before distributing your build.
| Feature | NightAuth | KeyAuth | Auth.gg |
|---|---|---|---|
| Cryptography | End-to-End Curve25519 (X25519) + ChaCha20-Poly1305 | Static AES-CBC (Vulnerable to MITM & Proxy Interception) | Legacy HTTPS / Plain JSON |
| Hardware ID (HWID) | Multi-Component Cryptographic Hash (Anti-Spoofing) | Raw WMI Strings (Trivially Spoofed) | Simple Registry / MAC |
| Edge Network Latency | < 35ms Global Anycast Edge Network | Single-Origin VPS (Frequent Network Outages) | Unmaintained / High Latency |
| Reseller System & Bots | Built-in Multi-Tier Credit Balances + Discord & Telegram Bots | Manual API / Third-Party Scripts | Incomplete / Deprecated |
| In-Memory Streaming | Zero-Disk Decryption with Direct Memory Execution & Buffer Wiping | Disk Writes Required | Not Supported |
| Internationalization | 10 Languages Supported Out of the Box across Documentation & SDKs | English Only | English Only |
Read the full architectural benchmark: NightAuth vs KeyAuth vs Auth.gg
This project is licensed under the Elastic License 2.0.
- You may not provide the software to third parties as a hosted or managed service.
- You may not move, change, disable, or circumvent the license key functionality.
- You may not alter, remove, or obscure any licensing or copyright notices.
See the LICENSE file for the full legal text.



