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-nameTrue digital ownership through cryptographic proof, not corporate control.