SSI Empoorio ID Python SDK
Complete Self-Sovereign Identity SDK for Python applications
What is SSI Empoorio ID?
SSI Empoorio ID is a comprehensive Self-Sovereign Identity platform that enables secure, privacy-preserving digital identity management. This Python SDK provides complete access to verifiable credentials, biometric authentication, and decentralized identity operations.
Key Features
- 🔐 Verifiable Credentials: Issue, verify, and revoke digital credentials
- 👤 Decentralized Identifiers: Create and manage DIDs (Decentralized Identifiers)
- 🖐️ Biometric Authentication: WebAuthn/FIDO2 support for secure authentication
- 🔒 Quantum-Resistant: Post-quantum cryptography integration
- 🎭 Zero-Knowledge Proofs: Privacy-preserving selective disclosure
- ⚡ High Performance: Async support and optimized operations
- 🛠️ CLI Tools: Command-line interface for development and operations
- 📊 Dashboard: Interactive terminal dashboard for SSI management
Installation
pip install ssi-empoorio-id
Optional Dependencies
# For async operations
pip install ssi-empoorio-id[async]
# For terminal dashboard
pip install ssi-empoorio-id[dashboard]
# For development
pip install ssi-empoorio-id[dev]
# All features
pip install ssi-empoorio-id[all]
Quick Start
Basic Usage
from ssi_empoorio_id import SSIEmporioSDK
# Initialize SDK
ssi = SSIEmporioSDK(
issuer_url='https://api.empoorio.id',
verifier_url='https://verify.empoorio.id'
)
# Create a DID
did = ssi.create_test_did('emp')
print(f"Created DID: {did}")
# Issue a verifiable credential
subject = {
'id': did,
'name': 'John Doe',
'email': 'john@example.com',
'age': 30
}
vc = ssi.issue_credential(
subject=subject,
credential_type=['VerifiableCredential', 'IdentityCredential'],
options={'quantum_resistant': True}
)
print(f"Issued VC: {vc.id}")
# Verify the credential
verification = ssi.verify_credential(vc)
print(f"Verification: {'✅ Valid' if verification.verified else '❌ Invalid'}")
CLI Usage
# Issue verifiable credential
ssi-python vc issue subject.json -t VerifiableCredential,IdentityCredential -q
# Verify credential
ssi-python vc verify credential.json
# Create DID
ssi-python did create -p emp
# Launch interactive dashboard
ssi-python dashboard
Use Cases
Digital Identity Verification
# Bank KYC verification
kyc_vc = ssi.issue_credential(
subject=user_data,
credential_type=['VerifiableCredential', 'KYC'],
options={'selective_disclosure': True}
)
Access Control
# Secure building access
access_vc = ssi.issue_credential(
subject={'employee_id': '12345', 'clearance_level': 'high'},
credential_type=['AccessCredential'],
options={'biometric_required': True}
)
Academic Credentials
# University diploma
diploma_vc = ssi.issue_credential(
subject=student_data,
credential_type=['VerifiableCredential', 'UniversityDegree'],
options={'zkp_enabled': True}
)
API Overview
Core Classes
SSIEmporioSDK: Main synchronous SDK clientAsyncSSIEmporioSDK: Asynchronous version for high-performance appsVerifiableCredential: VC data structureVerificationResult: Credential verification results
Main Operations
- Issuer Operations: Issue, revoke, status management
- Verifier Operations: Verify credentials and presentations
- DID Operations: Create, validate, resolve DIDs
- Biometric Operations: WebAuthn integration
- Status Registry: Credential lifecycle management
Development
Setting up Development Environment
git clone https://github.com/empoorio/ssi-empoorio-id.git
cd ssi-empoorio-id/sdks/python
# Install development dependencies
pip install -e .[dev]
# Run tests
pytest
# Type checking
mypy ssi_empoorio_id/
# Code formatting
black ssi_empoorio_id/
isort ssi_empoorio_id/
Running Tests
# All tests
pytest
# With coverage
pytest --cov=ssi_empoorio_id --cov-report=html
# Specific test file
pytest tests/test_vc.py -v
Documentation
- 📚 Full Documentation: https://docs.empoorio.id/python-sdk
- 🔧 API Reference: Complete method documentation
- 📖 Integration Guides: Framework-specific guides
- 🎯 Examples: Code samples and tutorials
Security Features
- Quantum-Resistant Signatures: Dilithium, Falcon algorithms
- Zero-Knowledge Proofs: Privacy-preserving verification
- Selective Disclosure: Share only necessary information
- Biometric Authentication: WebAuthn/FIDO2 support
- Secure Communication: TLS 1.3, certificate pinning
Supported Platforms
- Python: 3.8, 3.9, 3.10, 3.11
- Operating Systems: Linux, macOS, Windows
- Frameworks: Django, FastAPI, Flask, async apps
Contributing
We welcome contributions! Please see our Contributing Guide for details.
License
Copyright (c) 2024 Empoorio Inc.
Licensed under the MIT License - see LICENSE file for details.
Support
- 📧 Email: sdk@empoorio.id
- 🐛 Issues: https://github.com/empoorio/ssi-empoorio-id/issues
- 💬 Community: https://community.empoorio.id
- 📖 Documentation: https://docs.empoorio.id
🚀 Built by Empoorio Inc. - Empowering the future of digital identity.
Metadata
Release files for ssi-empoorio-id 1.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| ssi_empoorio_id-1.0.3.tar.gz | 32.4 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ssi_empoorio_id-1.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 67.0 kB
Release files / ssi_empoorio_id-1.0.3.tar.gz
| Download URL | ssi_empoorio_id-1.0.3.tar.gz |
|---|---|
| Size | 32.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6739ba6fee40119566f9b9cca85ee5430158ba8b523b883db1a0368050e23f7d
|
|
BLAKE2b-256 checksum How to use checksums |
763d440858711b992e0b36cef6948a610f2876e51494613188fea4b82fbd2b8c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|
Release files / ssi_empoorio_id-1.0.3-py3-none-any.whl
| Download URL | ssi_empoorio_id-1.0.3-py3-none-any.whl |
|---|---|
| Size | 34.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ee73739e9a76547e16a86bc3a4af0b32d12e18e722e25f146f6d73c2fb671514
|
|
BLAKE2b-256 checksum How to use checksums |
2043cd28ef5eb69698830673b7df2980fef49594a50b961c543fd753d8a98bc4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|
Security for ssi-empoorio-id 1.0.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.