# PostQuantum DualUSB Token Library
**Enterprise-grade dual USB backup system with post-quantum cryptography protection**
[](https://badge.fury.io/py/pqcdualusb)
[](https://www.python.org/downloads/)
[](https://opensource.org/licenses/MIT)
[](https://pepy.tech/project/pqcdualusb)
## What is pqcdualusb?
PostQuantum DualUSB Token Library is a Python package that implements quantum-resistant dual USB token storage with advanced security features. It's designed for organizations and individuals who need maximum protection for sensitive data against both current and future quantum computing threats.
## Why choose pqcdualusb?
### 🛡️ **Quantum-Resistant Security**
- **Post-quantum cryptography** using Dilithium digital signatures
- **Future-proof protection** against quantum computer attacks
- **NIST-approved algorithms** following latest standards
### 🔐 **Dual USB Architecture**
- **Split secret design** - no single point of failure
- **Physical separation** of authentication tokens
- **Hardware binding** prevents USB drive cloning
### 💎 **Enterprise Features**
- **Memory protection** with secure allocation and cleanup
- **Timing attack resistance** with constant-time operations
- **Comprehensive audit logging** with tamper-evident chains
- **Cross-platform support** for Windows, Linux, and macOS
## Quick Start
```bash
# Install the library
pip install pqcdualusb
# Initialize dual USB setup
pqcdualusb init --primary /media/usb1 --secondary /media/usb2
# Create encrypted backup
pqcdualusb backup --data "sensitive.json" --passphrase "strong-passphrase"
# Restore from backup
pqcdualusb restore --backup-file backup.enc --restore-primary /media/usb_new
```
## Python API Example
```python
from pqcdualusb import init_dual_usb, verify_dual_setup
from pathlib import Path
# Set up dual USB security
primary = Path("/media/usb_primary")
secondary = Path("/media/usb_backup")
success = init_dual_usb(
primary_path=primary,
secondary_path=secondary,
passphrase="your-secure-passphrase"
)
if success:
print("Dual USB setup complete!")
is_valid = verify_dual_setup(primary, secondary)
print(f"Setup verification: {is_valid}")
```
## Use Cases
- **Offline password managers** with air-gapped security
- **Cryptocurrency wallet protection** with dual redundancy
- **Enterprise key custody** solutions
- **Secure document archival** with quantum protection
- **Development environments** requiring secure key storage
## Security Features
| Component | Algorithm | Quantum Resistant |
|-----------|-----------|-------------------|
| Encryption | AES-256-GCM | ✅ |
| Key Derivation | Argon2id | ✅ |
| Digital Signatures | Dilithium | ✅ |
| Authentication | HMAC-SHA256 | ✅ |
| Memory Protection | OS-level locking | ✅ |
## Performance
- **USB Detection**: < 1 second
- **Token Creation**: < 5 seconds
- **Backup/Restore**: 1-10 seconds
- **Memory Usage**: < 100MB peak
## Requirements
- Python 3.8 or higher
- Windows, Linux, or macOS
- Two USB drives for dual storage setup
## Links
- **GitHub Repository**: https://github.com/Johnsonajibi/PostQuantum-DualUSB-Token-Library
- **Documentation**: Full README with examples
- **Security Policy**: Responsible disclosure process
- **Issue Tracker**: Bug reports and feature requests
- **Releases**: Version history and changelogs
## License
MIT License - see LICENSE file for details.
---
**Secure your digital assets with quantum-resistant protection!**
Raw data
{
"_id": null,
"home_page": null,
"name": "pqcdualusb",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "security, backup, usb, cryptography, post-quantum, dual-usb, enterprise, quantum-resistant, encryption, memory-protection, audit-logging, cross-platform, dilithium, aes-256, argon2, hsm, air-gapped",
"author": "Johnson Ajibi",
"author_email": "Johnson Ajibi <johnsonajibi@example.com>",
"download_url": "https://files.pythonhosted.org/packages/b9/48/f6373cccced2bd98fda98bb110649b5c429211977154039849a5d6c0154c/pqcdualusb-0.1.1.tar.gz",
"platform": null,
"description": "# PostQuantum DualUSB Token Library\r\n\r\n**Enterprise-grade dual USB backup system with post-quantum cryptography protection**\r\n\r\n[](https://badge.fury.io/py/pqcdualusb)\r\n[](https://www.python.org/downloads/)\r\n[](https://opensource.org/licenses/MIT)\r\n[](https://pepy.tech/project/pqcdualusb)\r\n\r\n## What is pqcdualusb?\r\n\r\nPostQuantum DualUSB Token Library is a Python package that implements quantum-resistant dual USB token storage with advanced security features. It's designed for organizations and individuals who need maximum protection for sensitive data against both current and future quantum computing threats.\r\n\r\n## Why choose pqcdualusb?\r\n\r\n### \ud83d\udee1\ufe0f **Quantum-Resistant Security**\r\n- **Post-quantum cryptography** using Dilithium digital signatures\r\n- **Future-proof protection** against quantum computer attacks \r\n- **NIST-approved algorithms** following latest standards\r\n\r\n### \ud83d\udd10 **Dual USB Architecture**\r\n- **Split secret design** - no single point of failure\r\n- **Physical separation** of authentication tokens\r\n- **Hardware binding** prevents USB drive cloning\r\n\r\n### \ud83d\udc8e **Enterprise Features**\r\n- **Memory protection** with secure allocation and cleanup\r\n- **Timing attack resistance** with constant-time operations\r\n- **Comprehensive audit logging** with tamper-evident chains\r\n- **Cross-platform support** for Windows, Linux, and macOS\r\n\r\n## Quick Start\r\n\r\n```bash\r\n# Install the library\r\npip install pqcdualusb\r\n\r\n# Initialize dual USB setup\r\npqcdualusb init --primary /media/usb1 --secondary /media/usb2\r\n\r\n# Create encrypted backup\r\npqcdualusb backup --data \"sensitive.json\" --passphrase \"strong-passphrase\"\r\n\r\n# Restore from backup\r\npqcdualusb restore --backup-file backup.enc --restore-primary /media/usb_new\r\n```\r\n\r\n## Python API Example\r\n\r\n```python\r\nfrom pqcdualusb import init_dual_usb, verify_dual_setup\r\nfrom pathlib import Path\r\n\r\n# Set up dual USB security\r\nprimary = Path(\"/media/usb_primary\")\r\nsecondary = Path(\"/media/usb_backup\")\r\n\r\nsuccess = init_dual_usb(\r\n primary_path=primary,\r\n secondary_path=secondary,\r\n passphrase=\"your-secure-passphrase\"\r\n)\r\n\r\nif success:\r\n print(\"Dual USB setup complete!\")\r\n is_valid = verify_dual_setup(primary, secondary)\r\n print(f\"Setup verification: {is_valid}\")\r\n```\r\n\r\n## Use Cases\r\n\r\n- **Offline password managers** with air-gapped security\r\n- **Cryptocurrency wallet protection** with dual redundancy\r\n- **Enterprise key custody** solutions\r\n- **Secure document archival** with quantum protection\r\n- **Development environments** requiring secure key storage\r\n\r\n## Security Features\r\n\r\n| Component | Algorithm | Quantum Resistant |\r\n|-----------|-----------|-------------------|\r\n| Encryption | AES-256-GCM | \u2705 |\r\n| Key Derivation | Argon2id | \u2705 |\r\n| Digital Signatures | Dilithium | \u2705 |\r\n| Authentication | HMAC-SHA256 | \u2705 |\r\n| Memory Protection | OS-level locking | \u2705 |\r\n\r\n## Performance\r\n\r\n- **USB Detection**: < 1 second\r\n- **Token Creation**: < 5 seconds\r\n- **Backup/Restore**: 1-10 seconds \r\n- **Memory Usage**: < 100MB peak\r\n\r\n## Requirements\r\n\r\n- Python 3.8 or higher\r\n- Windows, Linux, or macOS\r\n- Two USB drives for dual storage setup\r\n\r\n## Links\r\n\r\n- **GitHub Repository**: https://github.com/Johnsonajibi/PostQuantum-DualUSB-Token-Library\r\n- **Documentation**: Full README with examples\r\n- **Security Policy**: Responsible disclosure process\r\n- **Issue Tracker**: Bug reports and feature requests\r\n- **Releases**: Version history and changelogs\r\n\r\n## License\r\n\r\nMIT License - see LICENSE file for details.\r\n\r\n---\r\n\r\n**Secure your digital assets with quantum-resistant protection!**\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Enterprise-grade dual USB backup library with post-quantum cryptography protection for maximum security",
"version": "0.1.1",
"project_urls": {
"Changelog": "https://github.com/Johnsonajibi/PostQuantum-DualUSB-Token-Library/blob/master/CHANGELOG.md",
"Contributing": "https://github.com/Johnsonajibi/PostQuantum-DualUSB-Token-Library/blob/master/CONTRIBUTING.md",
"Discussions": "https://github.com/Johnsonajibi/PostQuantum-DualUSB-Token-Library/discussions",
"Documentation": "https://github.com/Johnsonajibi/PostQuantum-DualUSB-Token-Library#readme",
"Homepage": "https://github.com/Johnsonajibi/PostQuantum-DualUSB-Token-Library",
"Issues": "https://github.com/Johnsonajibi/PostQuantum-DualUSB-Token-Library/issues",
"Releases": "https://github.com/Johnsonajibi/PostQuantum-DualUSB-Token-Library/releases",
"Repository": "https://github.com/Johnsonajibi/PostQuantum-DualUSB-Token-Library",
"Security": "https://github.com/Johnsonajibi/PostQuantum-DualUSB-Token-Library/security/policy"
},
"split_keywords": [
"security",
" backup",
" usb",
" cryptography",
" post-quantum",
" dual-usb",
" enterprise",
" quantum-resistant",
" encryption",
" memory-protection",
" audit-logging",
" cross-platform",
" dilithium",
" aes-256",
" argon2",
" hsm",
" air-gapped"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "2d4ee52c2341c9fc0423fb3a318fe99caf48a144062eec0bdee722251e24beb1",
"md5": "be751235f43d7341fa39bfcb054d53e4",
"sha256": "3d1bc0c467b69e23345a2aaa08c069b4172734b40eb5f85c6084d98b7f59d272"
},
"downloads": -1,
"filename": "pqcdualusb-0.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "be751235f43d7341fa39bfcb054d53e4",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 7733,
"upload_time": "2025-08-30T23:53:18",
"upload_time_iso_8601": "2025-08-30T23:53:18.177746Z",
"url": "https://files.pythonhosted.org/packages/2d/4e/e52c2341c9fc0423fb3a318fe99caf48a144062eec0bdee722251e24beb1/pqcdualusb-0.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b948f6373cccced2bd98fda98bb110649b5c429211977154039849a5d6c0154c",
"md5": "cace13f64f45c0b4140ee2b3199d480a",
"sha256": "882a6af4044a3ee60dcbdf2394b4bdc3f151ddd7dd2378fb304eccc7f906f7be"
},
"downloads": -1,
"filename": "pqcdualusb-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "cace13f64f45c0b4140ee2b3199d480a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 12935,
"upload_time": "2025-08-30T23:53:19",
"upload_time_iso_8601": "2025-08-30T23:53:19.827696Z",
"url": "https://files.pythonhosted.org/packages/b9/48/f6373cccced2bd98fda98bb110649b5c429211977154039849a5d6c0154c/pqcdualusb-0.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-30 23:53:19",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Johnsonajibi",
"github_project": "PostQuantum-DualUSB-Token-Library",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "pqcdualusb"
}