Skip to main content

Universal, secure licensing system for QuantumMeta ecosystem packages

Project description

QuantumMeta License Manager

PyPI version Python versions License Documentation

A universal, secure licensing system for the entire QuantumMeta ecosystem of PyPI packages in AI, quantum computing, and AGI.

🚀 Features

  • 🔐 Secure License Management: AES-256 encrypted .qkey files with hardware locking
  • 🖥️ Machine Locking: License tied to unique hardware fingerprint (UUID + MAC + disk serial)
  • Grace Period: 7-day free trial on first import, then license required
  • 🧪 CLI Tool: Easy license generation, activation, and validation
  • 🛡️ Feature Gating: Control access to specific package features
  • 🔧 Developer Friendly: Development bypass with QUANTUMMETA_DEV=1

📦 Installation

pip install quantummeta-license

🚀 Quick Start

For End Users

  1. Activate a license (if you have one):
quantum-license activate /path/to/your/license.qkey
  1. Check license status:
quantum-license validate quantum-metalearn
  1. Use in your Python code:
from quantummeta_license import validate_or_grace

# This will either validate the license or start the 7-day grace period
validate_or_grace("quantum-metalearn")

For Package Developers

Integrate licensing into your QuantumMeta package:

from quantummeta_license import validate_or_grace, LicenseError

def my_premium_function():
    try:
        # Validate license with specific features
        validate_or_grace("my-quantum-package", required_features=["pro"])
        # Your premium functionality here
        return "Premium feature activated!"
    except LicenseError:
        return "This feature requires a Pro license."

🧪 CLI Commands

The quantum-license CLI provides these commands:

  • generate: Create a new license (admin use)
  • activate: Install a license file
  • validate: Check license status and features
  • info: Display system information

Examples

# Generate a license (admin only)
quantum-license generate --package quantum-metalearn --user user@example.com --features core,pro

# Activate a license
quantum-license activate license.qkey

# Validate specific package
quantum-license validate quantum-metalearn

# Show system info
quantum-license info

🔧 Development Mode

For development and testing, set the environment variable:

export QUANTUMMETA_DEV=1  # Unix/Linux/macOS
set QUANTUMMETA_DEV=1     # Windows

This bypasses license checks entirely.

📁 License Storage

Licenses are stored in:

  • Windows: %USERPROFILE%\.quantummeta\licenses\
  • macOS: ~/.quantummeta/licenses/
  • Linux: ~/.quantummeta/licenses/

Usage tracking is stored in:

  • ~/.quantummeta/usage_log.json

🧠 Package Integration

To integrate QuantumMeta License into your package:

from quantummeta_license import validate_or_grace, LicenseError

def __init_license():
    """Call this in your package's __init__.py"""
    try:
        validate_or_grace("your-package-name")
    except LicenseError as e:
        print(f"License Error: {e}")
        # Handle license error appropriately

# Call on package import
__init_license()

📚 Documentation

Full documentation is available at: https://quantummeta.github.io/quantummeta-license

🛡️ Security

  • All license files are encrypted with AES-256
  • Hardware fingerprinting prevents license sharing
  • Secure key derivation using PBKDF2
  • Optional Ed25519 digital signatures

🤝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

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

🆘 Support


Made with ❤️ by the QuantumMeta Team

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

quantummeta_license-1.0.0.tar.gz (32.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

quantummeta_license-1.0.0-py3-none-any.whl (28.7 kB view details)

Uploaded Python 3

File details

Details for the file quantummeta_license-1.0.0.tar.gz.

File metadata

  • Download URL: quantummeta_license-1.0.0.tar.gz
  • Upload date:
  • Size: 32.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for quantummeta_license-1.0.0.tar.gz
Algorithm Hash digest
SHA256 1b26f851fbba9b0f6b8cfbd8806ae89d384bcbfc0c870eb35a6a06b2e9cfb3cc
MD5 1edad5afcf169e9a07a19060a2884054
BLAKE2b-256 533724501251fef05a5788c07e53f18f4699bcb5fdfcb8df16a1ea74feda0074

See more details on using hashes here.

File details

Details for the file quantummeta_license-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for quantummeta_license-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 db63f307e0294ebae1e0841270bae6057fb0f652330eb9c01cfe99b8badfacbc
MD5 925f64f61a88e816136d7d2f2b23f6af
BLAKE2b-256 4952ad9d6b9778c5e0f12c072e4834fc2bab15f1eafafad5c2f4f09f93edb81c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page