chore: rename project quicnprotochat -> quicproquo (binaries: qpq)
Rename the entire workspace:
- Crate packages: quicnprotochat-{core,proto,server,client,gui,p2p,mobile} -> quicproquo-*
- Binary names: quicnprotochat -> qpq, quicnprotochat-server -> qpq-server,
quicnprotochat-gui -> qpq-gui
- Default files: *-state.bin -> qpq-state.bin, *-server.toml -> qpq-server.toml,
*.db -> qpq.db
- Environment variable prefix: QUICNPROTOCHAT_* -> QPQ_*
- App identifier: chat.quicnproto.gui -> chat.quicproquo.gui
- Proto package: quicnprotochat.bench -> quicproquo.bench
- All documentation, Docker, CI, and script references updated
HKDF domain-separation strings and P2P ALPN remain unchanged for
backward compatibility with existing encrypted state and wire protocol.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
26
README.md
26
README.md
@@ -1,4 +1,4 @@
|
||||
# quicnprotochat
|
||||
# quicproquo
|
||||
|
||||
> End-to-end encrypted group messaging over **QUIC + TLS 1.3 + MLS** (RFC 9420), written in Rust.
|
||||
|
||||
@@ -70,31 +70,31 @@ cargo build --workspace
|
||||
cargo test --workspace
|
||||
|
||||
# Start the server (port 7000 by default)
|
||||
cargo run -p quicnprotochat-server
|
||||
cargo run -p quicproquo-server
|
||||
|
||||
# Or via a config file (TOML)
|
||||
# Note: auth_token = "devtoken" and db_key = "" are for development only.
|
||||
# Production: set QUICNPROTOCHAT_AUTH_TOKEN to a strong secret and (when store_backend = "sql")
|
||||
# set QUICNPROTOCHAT_DB_KEY so the database is encrypted. Empty db_key = plaintext DB (insecure).
|
||||
cat > quicnprotochat-server.toml <<'EOF'
|
||||
# Production: set QPQ_AUTH_TOKEN to a strong secret and (when store_backend = "sql")
|
||||
# set QPQ_DB_KEY so the database is encrypted. Empty db_key = plaintext DB (insecure).
|
||||
cat > qpq-server.toml <<'EOF'
|
||||
listen = "0.0.0.0:7000"
|
||||
data_dir = "data"
|
||||
tls_cert = "data/server-cert.der"
|
||||
tls_key = "data/server-key.der"
|
||||
auth_token = "devtoken"
|
||||
store_backend = "file" # or "sql"
|
||||
db_path = "data/quicnprotochat.db"
|
||||
db_path = "data/qpq.db"
|
||||
db_key = ""
|
||||
EOF
|
||||
cargo run -p quicnprotochat-server -- --config quicnprotochat-server.toml
|
||||
cargo run -p quicproquo-server -- --config qpq-server.toml
|
||||
|
||||
# Run the two-party demo
|
||||
cargo run -p quicnprotochat-client -- demo-group \
|
||||
cargo run -p quicproquo-client -- demo-group \
|
||||
--server 127.0.0.1:7000
|
||||
|
||||
# Interactive 1:1 chat (after creating a group and inviting a peer)
|
||||
# Terminal 1: quicnprotochat chat --peer-key <other_identity_hex>
|
||||
# Terminal 2: quicnprotochat chat --peer-key <first_identity_hex>
|
||||
# Terminal 1: qpq chat --peer-key <other_identity_hex>
|
||||
# Terminal 2: qpq chat --peer-key <first_identity_hex>
|
||||
# Type messages and press Enter; incoming messages appear as [peer] <msg>. Ctrl+D to exit.
|
||||
```
|
||||
|
||||
@@ -121,10 +121,10 @@ See the [full demo walkthrough](docs/src/getting-started/demo-walkthrough.md) fo
|
||||
To build only the server and CLI client (faster, no Tauri/WebKit):
|
||||
|
||||
```bash
|
||||
cargo build -p quicnprotochat-server -p quicnprotochat-client
|
||||
cargo build -p quicproquo-server -p quicproquo-client
|
||||
```
|
||||
|
||||
Core and proto crates are built as dependencies. Omit `quicnprotochat-gui` and `quicnprotochat-p2p` if you don't need them.
|
||||
Core and proto crates are built as dependencies. Omit `quicproquo-gui` and `quicproquo-p2p` if you don't need them.
|
||||
|
||||
---
|
||||
|
||||
@@ -135,7 +135,7 @@ This is a **proof-of-concept research project**. It has not undergone a formal t
|
||||
- **Dependency checks:** Run `cargo install cargo-audit && cargo audit` to check for known vulnerabilities.
|
||||
- **Certificate pinning:** Use the server's certificate as `--ca-cert` (e.g. copy `server-cert.der` from the server) so the client only trusts that server; see [Certificate pinning](docs/SECURITY-AUDIT.md#certificate-pinning) in the security audit.
|
||||
|
||||
**Production deployment:** Set `QUICNPROTOCHAT_PRODUCTION=1` and provide a strong `QUICNPROTOCHAT_AUTH_TOKEN` (not `devtoken`). When using `store_backend = "sql"`, set `QUICNPROTOCHAT_DB_KEY`; an empty key leaves the database unencrypted on disk.
|
||||
**Production deployment:** Set `QPQ_PRODUCTION=1` and provide a strong `QPQ_AUTH_TOKEN` (not `devtoken`). When using `store_backend = "sql"`, set `QPQ_DB_KEY`; an empty key leaves the database unencrypted on disk.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user