Universal, secure licensing system for QuantumMeta ecosystem packages
Project description
QuantumMeta License Manager
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
.qkeyfiles 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
- Activate a license (if you have one):
quantum-license activate /path/to/your/license.qkey
- Check license status:
quantum-license validate quantum-metalearn
- 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 filevalidate: Check license status and featuresinfo: 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
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1b26f851fbba9b0f6b8cfbd8806ae89d384bcbfc0c870eb35a6a06b2e9cfb3cc
|
|
| MD5 |
1edad5afcf169e9a07a19060a2884054
|
|
| BLAKE2b-256 |
533724501251fef05a5788c07e53f18f4699bcb5fdfcb8df16a1ea74feda0074
|
File details
Details for the file quantummeta_license-1.0.0-py3-none-any.whl.
File metadata
- Download URL: quantummeta_license-1.0.0-py3-none-any.whl
- Upload date:
- Size: 28.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
db63f307e0294ebae1e0841270bae6057fb0f652330eb9c01cfe99b8badfacbc
|
|
| MD5 |
925f64f61a88e816136d7d2f2b23f6af
|
|
| BLAKE2b-256 |
4952ad9d6b9778c5e0f12c072e4834fc2bab15f1eafafad5c2f4f09f93edb81c
|