Files
microdao-daarion/docs/foundation/DAARION_Identity_And_Access_Draft_v1.md
Apple 7b91c8e83c feat(foundation): FOUNDATION_UPDATE implementation
## Documentation (20 files)
- DAARION Ontology Core v1 (Agent → MicroDAO → Node → District)
- User Onboarding & Identity Layer (DAIS)
- Data Model UPDATE, Event Catalog, Governance & Permissions
- Rooms Layer, City/MicroDAO/Agents/Nodes Interface Architecture
- Helper files: ontology-summary, lifecycles, event-schemas

## Database Migration (027)
- DAIS tables: dais_identities, dais_emails, dais_wallets, dais_keys
- agent_assignments table for Assignment Layer
- rooms table for Rooms Layer
- event_outbox for NATS event delivery
- New enums: agent_role, microdao_type, node_kind, node_status, etc.
- Updated agents, microdaos, nodes tables with ontology fields

## Backend
- DAIS service & routes (/api/v1/dais/*)
- Assignment service & routes (/api/v1/assignments/*)
- Domain types for DAIS and Ontology

## Frontend
- Ontology types (Agent, MicroDAO, Node, DAIS, Assignments)
- API clients for DAIS and Assignments
- UI components: DaisProfileCard, AssignmentsPanel, OntologyBadge

Non-breaking update - all existing functionality preserved.
2025-11-29 15:24:38 -08:00

6.7 KiB
Raw Blame History

DAARION_Identity_And_Access_Draft_v1.md

DAIS — DAARION Autonomous Identity System (Draft IAM Specification)

Version: 1.0
Status: Draft (Foundation Update)
Scope: DAIS identity, wallets, keys, access control, DID, recovery


0. Мета документа

Визначити проектну модель системи ідентичності та доступу в DAARION.city:

  • як створюється DAIS-ідентичність;
  • як зв’язуються email, wallet, ключі, DID, Matrix;
  • як визначаються рівні довіри;
  • як працює key rotation та recovery;
  • як DAIS пов’язаний із Agent/MicroDAO/Node;
  • як реалізований доступ на рівні сервісів (gateway, node, worker).

Документ — фундамент IAM-модуля. Він не ламає поточну архітектуру, а задає майбутні вимоги.


1. Концепція DAIS

DAIS (DAARION Autonomous Identity System) — універсальна цифрова ідентичність, яка належить агенту й використовується для:

  • створення агента,
  • входу в MicroDAO,
  • авторизації на нодах,
  • підписання подій у DAGI Mesh,
  • економічних операцій,
  • відновлення доступу.

2. Структура DAIS-ідентичності

DAIS Identity
 ├─ Email identities (1..N)
 ├─ Wallet identities (1..N)
 │    ├─ EVM (Polygon)
 │    ├─ TON (future)
 │    └─ Hardware wallet (future)
 ├─ DID (decentralized identifier)
 ├─ Matrix handle
 ├─ Public keys
 ├─ Signature domains
 ├─ Recovery methods
 └─ Metadata

3. Компоненти DAIS

3.1. Email identities

  • Passwordless (OTP / Magic Link).
  • Можна прив’язати кілька email.
  • Використовується як low-security login.

3.2. Wallet identities

  • Підтримка EVM wallets (MetaMask, Rabby, WalletConnect).
  • SIWE як стандарт підпису.
  • Wallet є high-security login.

3.3. DID

  • формат: did:daariion:<uuid>
  • використовується для підписання подій, міжнодових операцій, Matrix.

3.4. Matrix handle

  • @<agent_id>:matrix.daarion.city
  • для міжагентного чату, голосових каналів, presence.

3.5. Public Keys

Тип ключа Призначення
Ed25519 підпис подій, автентифікація
X25519 шифрування / E2EE
secp256k1 wallet-сумісність

3.6. Signature domains

  • dais.login
  • dais.node-auth
  • dais.microdao-action
  • dais.agent-auth
  • dais.recovery

3.7. Metadata

{
  "avatar": "...",
  "telegram_linked": false,
  "created_at": "...",
  "citizenship_level": "basic"
}

4. Рівні довіри DAIS (Trust Levels)

Рівень Назва Вимоги Права
0 Guest email only базові функції
1 Agent підтверджений email створення агента
2 Verified Agent email + wallet доступ до AI/DAO
3 Orchestrator SIWE + токени/ролі створення MicroDAO
4 DAARION Operator hardware keys (future) city governance

5. Зберігання (схема)

dais_identities (
  id text primary key,
  default_email text null,
  default_wallet text null,
  did text not null,
  trust_level integer not null default 1,
  metadata jsonb not null default '{}'::jsonb,
  created_at timestamptz not null default now()
);

dais_emails (
  id uuid primary key,
  dais_id text not null references dais_identities(id),
  email text not null,
  verified boolean not null default false
);

dais_wallets (
  id uuid primary key,
  dais_id text not null references dais_identities(id),
  wallet_address text not null,
  network text not null default 'evm',
  verified boolean not null default false
);

dais_keys (
  dais_id text not null references dais_identities(id),
  key_type text not null,
  public_key text not null
);

6. Взаємозв’язок DAIS → Agent → MicroDAO → Node

DAIS identity
     ↓  (автоматично)
Agent (home_microdao = DAARION)
     ↓  (через promotion)
MicroDAO (створюється оркестратором)
     ↓
Node (реєструється MicroDAO)

7. Рівні доступу

7.1. Application (UI)

  • Email OTP / Magic link / SIWE.
  • Доступ до кабінету агента, MicroDAO, сервісів.

7.2. Services (Gateway/API)

  • Авторизація через DID, public keys, короткоживучі токени.

7.3. Node Access

  • Нода перевіряє DAIS-ключ (dais.node-auth).

8. Ротація ключів

  • Soft rotation: заміна email, прив’язка нового wallet, оновлення Matrix handle.
  • Hard rotation: новий DID, нові ключі Ed25519/X25519 (потрібен підпис wallet).

9. Recovery

  • Recovery email (secondary addresses).
  • Seed phrase wallet recovery.
  • Social recovery (future) — 2-3 поручителі (агенти, MicroDAO core team, DAARION108).

10. DAIS та безпека DAGI Mesh

DAIS використовується для:

  • підписання міжагентних повідомлень;
  • валідації подій у DAGI Router;
  • E2EE у Matrix;
  • авторизації worker-нод;
  • запуску міжнодових контейнерів.

Без DAIS неможливо створити агента, MicroDAO, ноду чи увійти в District.


11. Майбутні розширення

  • Інтеграція TON;
  • DID-compatible wallet auth;
  • hardware keys;
  • локальна біометрія (без передачі).

12. Підсумок

DAIS — це цифрове тіло кожного агента.
Воно забезпечує універсальний login, права доступу, підписи, recovery.
Документ задає базу для майбутнього IAM і не потребує змін у чинній логіці.