<< FRA >>

Concept · Index détails

Roadmap – Blockchain & Security

Phased plan for nodes, storage, bundles, signatures, and the mayors’ forum.

Global plan (FR)

4

Roadmap (phases)

Phase 0 – Environment Readydetails…

  • Repo backend/obambu_node (Python 3.11, FastAPI, SQLite). OK
  • Initial endpoints: /health, POST /api/v1/device/hello. OK
  • Stack FastAPI + run uvicorn app.main:app --reload. OK

Phase 1 – Radio slice (no security yet)details…

  • Device endpoints: hello, config, content_index, content. OK
  • Simple storage (JSON: devices.json, docs/ folder). OK
  • ESP32: hard Wi‑Fi, POST hello, fetch config, download content, LED blink. OK
  • To do Implement API + ESP32 sketch.

Phase 2 – Docs + .enc files (fake crypto)details…

  • Document CRUD endpoints. OK
  • Structure storage/docs/*.bin + meta/*.json (cleartext for tests). OK
  • ESP32: base64 → SPIFFS.
  • OK Unified meta (sha256, size, enc flag, tags, timestamps).

Phase 3 – Mini-blockchain

  • Tx pool + blocks as files (blocks/00000001.json). OK
  • API: POST /transactions, GET /chain/head, /chain/blocks/{id}, POST /admin/chain/mine. OK
  • To do Simple periodic block generation. Append-only baseline.

Phase 4 – Multi-node sync

  • sync.py to pull/push blocks and docs. First replication.
  • USB mode: import/export blocks. Air-gap resilience.
  • To do Define link quotas/priorities. Flow control per link.

Phase 5 – Signatures & laptop cryptodetails…

  • ed25519 via PyNaCl: keygen for mayors/communes/nodes.
  • Client-side transaction signing, server-side verification. Trust anchored in keys.
  • To do Choose COSE/CBOR or signed JSON. Interoperable envelopes.

Phase 5B – Forum (low-tech display)details…

  • Lab forum page (reads inbox_valid.jsonl, no crypto). OK
  • “Low tech box” display (text + signature badge). OK
  • Thumbnails for images at low priority (buffer to plan). To do
  • To do Integrate in bundles/blockchain later.

Phase 6 – Real .enc encryption

  • libsodium encryption (nonce, MAC) for docs.
  • ESP32 can carry .enc without full decrypt. Transport opaque payloads.
  • To do Define document key rotation. Limit exposure if a key leaks.

Phase 7 – Mayors’ forum

  • Tx FORUM_THREAD / FORUM_POST.
  • Forum API + simple UI (FastAPI + Jinja2). Deliberation on-chain/off-chain hashes.
  • To do Define TTL/scope per class (P0..P3). Keep urgent debates flowing.
7

Short-term backlog

Immediate technical

  • To do Init repo backend/obambu_node (FastAPI skeleton). Scaffold shared codebase.
  • To do Add empty READMEs in devices/* with objectives. Guide field teams.
  • To do Prepare mock sync script (USB + HTTP). Exercise bundle/chain flows.
  • To do Define document meta format (.json) + examples. Consistent metadata across nodes.

Priority purchases

  • Buy 2× ESP32 with u.FL + cables/antennas.
  • Buy 2× outdoor Wi‑Fi CPE (TP-Link CPE210 or similar).
  • Buy 1× low-power OpenWRT router (GL.iNet).
  • Buy Solar panel + controller + 7Ah battery (for K kit).

Info to collect

  • Info needed Local radio rules (power/band 2.4/5 GHz). Compliance.
  • Info needed Weather/obstacles for relay placement. Site survey.
  • Info needed Exact town hall UI needs (vote, attestation, revocation). Design UX accordingly.