Metadata-Version: 2.4
Name: nxd
Version: 0.1.0
Summary: Encrypted compute layer for AI agents
Author: Nexplora Labs
License-Expression: MIT
Project-URL: Homepage, https://github.com/Nexploraai/nxd
Project-URL: Repository, https://github.com/Nexploraai/nxd
Project-URL: Issues, https://github.com/Nexploraai/nxd/issues
Keywords: fhe,encryption,ai-agents,privacy,homomorphic-encryption
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Security :: Cryptography
Classifier: Topic :: Software Development :: Libraries
Requires-Python: <3.12,>=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: concrete-ml==1.9.0
Requires-Dist: cryptography>=42.0.0
Requires-Dist: numpy>=1.26.0
Requires-Dist: pandas>=2.0.0
Requires-Dist: scikit-learn>=1.5.0
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"
Dynamic: license-file

# NXD

NXD is an encrypted compute layer for AI agents. It wraps fully homomorphic encryption, credential vaulting, and privacy primitives behind a single Python import — so developers can run agents on sensitive data without exposing client records, credentials, or proprietary code to models, clouds, or MCP servers.

## Three guarantees

1. **The agent works fully** — capability unchanged; scores, matches, charges, and aggregates complete normally.
2. **The agent sees nothing** — sensitive values stay encrypted; agents handle opaque tokens and references only.
3. **The operator holds the keys** — keys stay local, auditable, and revocable.

## Install

```bash
pip install nxd
```

Requires Python 3.10 or 3.11 (Concrete ML FHE dependency).

## Quick start

```python
import nxd

# FHE compute on encrypted data
results = nxd.score(model, clients)
matched  = nxd.match(model, record_a, record_b)
average  = nxd.aggregate(model, records)

# Credentials — agent never sees plaintext keys
vault = nxd.Vault(agent_id="billing-agent")
vault.store("stripe_key", "sk_live_xxxx")
result = vault.use("stripe_key", stripe_charge_fn)
vault.audit_log()

# Agent-to-agent encrypted context
handoff = nxd.Handoff()
token = handoff.pack(clients)
scores = nxd.receive(model, token, handoff)

# Code and text privacy before any AI call
protected = nxd.shield(source_code)
original = nxd.unshield(protected)

# Encrypted search, identity, tokenization, PII redaction
index = nxd.build_index(records)
token, hits = nxd.search(index, "diabetes")
nxd.register("user_123", "credential")
nxd.verify("user_123", candidate)
safe = nxd.redact("Patient John Smith, SSN 432-12-6789")
token = nxd.tokenize("4532-1234-5678-9010")

# Documents, channels, state, signatures
nxd.seal("contract.pdf")
ch = nxd.channel("agent-a", "agent-b")
nxd.checkpoint.save("agent-123", state)
nxd.sign("agent-a", "approve payment")

# Privacy analytics, key control, audit
nxd.blur(47230.0, sensitivity=1000, epsilon=1.0)
shares = nxd.split("master_key", n=5, m=3)
locked = nxd.bind(data, recipient="agent-compliance-7")
nxd.audit.verify()
```

## Benchmarks (MacBook Air, Python 3.11, Concrete ML 1.9.0)

| Operation | Latency | Notes |
|-----------|---------|-------|
| FHE score (1 record) | ~183 ms | First-call cold start |
| FHE score (1k records, parallel) | **1.6 s** | 8 cores, ~1.6 ms/record |
| FHE match (single pair) | **352 ms** | Cross-system comparison |
| FHE aggregate (1k records, parallel) | **1.8 s** | ~0.009% quantization error |
| Credential vault use | <1 ms | Decrypt in memory only |
| Proof suite | **85/85 passed** | `python3 prove.py` |

## Development

```bash
git clone https://github.com/Nexploraai/nxd
cd nxd
pip install -e ".[dev]"
python3 prove.py
python3 agent.py
python3 demo.py
```

## License

MIT — see [LICENSE](LICENSE).
