A previous release had provenance metadata, but this release does not. View details.
NEXUS-Q Python SDK
Python bindings for NEXUS-Q using PyO3. The binding is a thin native wrapper
over nexusq-core; it does not reimplement cryptography or business logic.
Requirements
- Python 3.14 or newer for the current
abi3-py314build target. - Rust 1.85 or newer.
maturinfor building/installing the extension.
Development build
From the repository root:
cd crates/nexusq-py
maturin develop
The resulting module is imported as nexusq.
Current API
import nexusq
print(nexusq.__version__)
print(nexusq.version())
vault = nexusq.Vault.create("my.nqv", "password", "my-label")
print(vault.path)
print(vault.format_version)
The current binding exposes:
nexusq.__version__nexusq.version()nexusq.Vault.create(path, password, label=None)Vault.pathVault.format_version
Architecture
Python calls nexusq-core directly through PyO3. This differs from the C-ABI
family (C, C++, Go and Ruby), which shares libnexusq as its ABI boundary.
The semantics are still defined by the same Rust core.
More operations will be exposed as the public Rust API grows.
Backend capability reporting
nexusq.backend_info() returns the provider compiled into the extension:
name, experimental, and native_available. The default wheel reports
rustcrypto. Experimental builds must be built explicitly with
--features native-backend; this is a build-time choice, not runtime dispatch.
Sensitive data handling and zeroization
Passwords and any future key material passed through the Python binding are
treated as sensitive by the Rust core (Zeroizing / zeroize features).
Callers must:
- Avoid keeping passwords or key material in Python strings longer than necessary (Python strings are immutable and may be interned or remain in memory).
- Prefer short-lived local variables and avoid logging or serializing secrets.
- Be aware that CPython does not provide a portable secure-wipe for arbitrary Python objects; the binding therefore relies on the Rust core for zeroization of internal buffers.
The binding itself does not retain copies of passwords beyond the duration of
the call into nexusq-core. Future APIs that return key material will document
explicit ownership and clearing requirements.
Metadata
Release files for nexusq 4.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Loss of provenance
This file belongs to a release without provenance metadata, despite a prior release including this data.
We recommend further investigation before installing this file. View details.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| nexusq-4.1.1.tar.gz | 658.7 kB | Without provenance | Details |
Release files / nexusq-4.1.1.tar.gz
Loss of provenance
This file belongs to a release without provenance metadata, despite a prior release including this data.
We recommend further investigation before installing this file. View details.
| Download URL | nexusq-4.1.1.tar.gz |
|---|---|
| Size | 658.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
03b8f0d43555aaccc8d10b1d7182bf268a007ad5b235f8e4836c33f818fc800d
|
|
BLAKE2b-256 checksum How to use checksums |
78ba2a1aea17d9bba13aedc0d41cbc2c6c0761f56a5a139ae570537a499aa4de
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Security for nexusq 4.1.1
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.
Loss of provenance
A previous release of these files had provenance metadata, but this release does not.
While this could reflect a routine change by the project maintainers, it may also indicate that the release files have been compromised.
Release comparison
- Removed 4.1.0 2 files With provenance
- Added 4.1.1 1 file Without provenance
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.