aboutsummaryrefslogtreecommitdiffstats
path: root/docs/USERGUIDE.md
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-08-09 14:50:22 +0200
committerChristophe Besson <cbesson@gmail.com>2026-08-09 14:50:22 +0200
commitaed220d9f0bab42efd57b56851319e840ab8ae26 (patch)
treee8b72fbe9016635438e6b7046a35e47ec3dbe93a /docs/USERGUIDE.md
parent608d3a705d065d6b378f4889322ff9d1bc41d147 (diff)
downloadmeshbay-aed220d9f0bab42efd57b56851319e840ab8ae26.tar.gz
feat: password-based key derivation + operational QUICKSTART
keyderive.py: derive Ed25519+X25519 from username+password via Argon2id. Same credentials → same keys on any device. Encrypt/decrypt keypair bundle (AES-256-GCM) for hub storage (web clients). 7/7 tests. Full suite: 81/81. keyderive.js: browser counterpart using PBKDF2-SHA512 + random keypairs encrypted for hub storage. Avoids algorithm mismatch with Python. hub/models.py + users.py: keypair_bundle field added to User, stored on registration, returned in login response for web client key recovery. QUICKSTART.md: fully rewritten. 3 operational scripts in QE/demo-v1/: setup_demo.py — create accounts, group, distribute GEK run_node.py — start HTTP node (watches shared/ directory) download.py — bob login → GEK fetch → decrypt → save All tested locally end-to-end. No invented URLs. Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'docs/USERGUIDE.md')
0 files changed, 0 insertions, 0 deletions