walled.garden technical overview
Cryptographic Ownership for Digital Spaces
A decentralized social platform powered by Ed25519 signatures
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ Browser A │ │ Browser B │ │ Browser C │ │ │ │ │ │ │ │ ┌─────────────┐ │ │ ┌─────────────┐ │ │ ┌─────────────┐ │ │ │Ed25519 Keys │ │ │ │Ed25519 Keys │ │ │ │Ed25519 Keys │ │ │ │ 🔐 🔑 │ │ │ │ 🔐 🔑 │ │ │ │ 🔐 🔑 │ │ │ └─────────────┘ │ │ └─────────────┘ │ │ └─────────────┘ │ └─────────┬───────┘ └─────────┬───────┘ └─────────┬───────┘ │ sign & verify │ sign & verify │ sign & verify │ │ │ └──────────────────────┼──────────────────────┘ │ ┌─────────────▼───────────┐ │ Multisynq Cloud │ │ ┌─────────────────────┐│ │ │ Distributed State ││ │ │ • Garden Claims 🏰 ││ │ │ • Posts & Messages ││ │ │ • Friend Lists 👥 ││ │ │ • Real-time Sync ⚡ ││ │ └─────────────────────┘│ └─────────────────────────┘
Garden ownership uses first-come-first-served cryptographic claims:
User visits /garden/alice → Check if claimed? │ │ ▼ ▼ ┌─ NO ──────────────┐ ┌─ YES ─────────┐ │ │ │ │ │ 1. Generate Claim │ │ Show as │ │ { │ │ Visitor │ │ slug: "alice"│ │ │ │ key: pub_key │ │ ✅ Owner │ │ timestamp │ │ 👁️ Visitor │ │ signature │ │ │ │ } │ └───────────────┘ │ │ │ 2. Sign with │ │ private key │ │ │ │ 3. Broadcast to │ │ Multisynq │ │ │ │ 4. ✅ Become │ │ Owner │ └───────────────────┘
Real-time state sync ensures all browsers see the same ownership:
Browser 1 (Chrome) Multisynq Cloud Browser 2 (Firefox) │ │ │ │ POST claim-garden │ │ ├──────────────────────────► │ │ │ │ ◄──────────────────────────┤ │ │ JOIN session │ │ │ │ │ ◄──────────────────────────┤ garden-claimed event │ │ ├──────────────────────────► │ │ │ │ ▼ ▼ ▼ ✅ "Your garden" 📊 State: 👁️ "Viewing garden" 🔑 Can edit garden_owners = 🚫 Read-only 💬 All post types {"alice": "pub_key_123"} 💬 Public + owner-only
Ed25519 signatures provide mathematically provable ownership:
Ownership Claim = { garden_name: "alice", public_key: "d4f2e1a8c7b9...", timestamp: 1703123456789, signature: sign(private_key, "alice:d4f2e1a8c7b9...:1703123456789") } Verification Process: ┌─────────────────────────────────────────────────────────────┐ │ verify(signature, message, public_key) === true ? │ │ ├─ YES → ✅ Valid claim, update ownership │ │ └─ NO → ❌ Invalid signature, reject claim │ └─────────────────────────────────────────────────────────────┘ Security Properties: • 🛡️ Forgery: Computationally impossible without private key • 🔒 Integrity: Any tampering breaks the signature • ⏰ Freshness: Timestamps prevent replay attacks • 🌍 Consensus: All browsers verify independently
Post visibility is enforced cryptographically:
Message Filtering Matrix: Viewer → Owner Author Friend Stranger Post ↓ │ │ │ │ ────────────┼───────┼────────┼────────┼────── 🌍 Public │ ✅ │ ✅ │ ✅ │ ✅ 🔒 Private │ ✅ │ ✅ │ ❌ │ ❌ 👥 Friends │ ✅ │ ✅ │ ✅ │ ❌ 👑 Owner │ ✅ │ ❌ │ ❌ │ ❌ Implementation: posts.filter(post => { if (post.visibility === 'public') return true; if (post.author === user.key) return true; if (garden.owner === user.key) return true; if (post.visibility === 'friends') return garden.friends.includes(user.key); return false; });
/garden/your-unique-name
True digital ownership through cryptographic proof, not corporate control.