Metadata-Version: 2.4
Name: qrp2p
Version: 2.0.0.dev0
Summary: LAN messenger with a hybrid post-quantum channel and a learning layer that lets you watch and attack it
Author: DivinityQQ
Author-email: DivinityQQ <divinityqq@gmail.com>
License-Expression: MIT
License-File: LICENSE
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Education
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Security :: Cryptography
Classifier: Typing :: Typed
Requires-Dist: cryptography>=50.0.1
Requires-Dist: msgspec>=0.21.1
Requires-Dist: liboqs-python>=0.16.0.1 ; extra == 'lab'
Requires-Python: >=3.14
Project-URL: Repository, https://github.com/DivinityQQ/quantum-resistant-p2p
Provides-Extra: lab
Description-Content-Type: text/markdown

# QRP2P v2

A LAN-only, two-party desktop messenger with a hybrid post-quantum channel, built so that learners
can **watch, pause and attack that exact channel**.

- X-Wing KEM (ML-KEM-768 + X25519); Ed25519 + ML-DSA-65 hybrid signatures; ChaCha20-Poly1305.
- A four-message SIGMA-I / TLS 1.3-style handshake with an admission step, and a signed PQ rekey.
- A learning layer: Inspector, glass-box sessions with mutual consent, solo lab, Attack Lab,
  weakened engines, Algorithm Lab and guided lessons.

> **Status:** early development. M0 (crypto foundations) and M1 (protocol core: formal model,
> handshake, record layer, rekey) are done; M2 (services and a headless CLI) is next, so nothing
> talks over a network yet. Nothing here is ready for use, and the protocol must not be called
> secure until every item in DESIGN §15 passes. v1 is preserved at the tag
> [`v1-final`](https://github.com/DivinityQQ/quantum-resistant-p2p/tree/v1-final).

## Documentation

- [`docs/v2/DESIGN.md`](docs/v2/DESIGN.md) — the normative specification.
- [`docs/v2/IMPLEMENTATION_PLAN.md`](docs/v2/IMPLEMENTATION_PLAN.md) — phases, tasks and status.
- [`docs/v2/research/VERIFIED_FACTS.md`](docs/v2/research/VERIFIED_FACTS.md) — library behaviour
  the design relies on, with evidence.

## Development

Requires [uv](https://docs.astral.sh/uv/) and Python 3.14 or newer.

```bash
uv sync --all-extras --dev          # install
uv run pytest                       # tests
uv run ruff check . && uv run ruff format --check .
uv run pyright                      # strict type check
uv run lint-imports                 # layer rules
uv run pip-audit                    # dependency audit
```

## Licence

MIT; see [LICENSE](LICENSE).
