rspace-online/backlog/tasks/task-72 - Universal-Profile...

2.0 KiB
Raw Blame History

title status priority created labels
Universal Profiles × EncryptID Integration In Progress high 2026-03-16
encryptid
blockchain
lukso
base

Universal Profiles × EncryptID Integration

Give every EncryptID user a LUKSO Universal Profile (LSP0 + LSP6) on Base, controlled by their passkey-derived secp256k1 key. Replaces fragmented Openfort wallets and raw EOAs with a unified on-chain identity.

Phase 1: Core — EVM Key Derivation + UP Deployment Service (DONE)

  • Client-side secp256k1 key derivation from PRF via HKDF (evm-key.ts)
  • UP deployment service (encryptid-up-service/) — Hono API with CREATE2 factory
  • LSP6 permission encoding (AuthLevel → BitArray mapping)
  • LSP25 gasless relay service
  • LSP3 profile metadata sync
  • Database schema migration (UP columns on users table)
  • JWT claims updated with eid.up object
  • Recovery hooks for on-chain controller rotation
  • Deploy LSP0/LSP6 implementation contracts on Base Sepolia
  • Set up Infisical secrets (RELAY_PRIVATE_KEY, JWT_SECRET)
  • DNS record for up.encryptid.jeffemmett.com
  • Install npm dependencies (requires root)
  • End-to-end test: passkey → derive key → deploy UP → relay tx

Phase 2: SDK Integration — UP-Aware Sessions

  • UP info in JWT claims on auth
  • GET/POST /api/profile/:id/up endpoints
  • SessionManager: getUPAddress(), hasUniversalProfile()
  • Guardian → LSP6 controller mapping for on-chain recovery

Phase 3: Payment-Infra Migration

  • WalletAdapter abstraction (UP + Openfort)
  • New users → UP by default
  • Optional Openfort → UP migration path

Phase 4: NLA Oracle Integration

  • getEncryptIDWallet() in NLA CLI
  • --encryptid flag on create/fulfill/collect commands
  • UP-identified escrow parties with LSP3 metadata

Notes

  • 2026-03-16: Phase 1 code complete. SDK changes in encryptid-sdk repo, UP service in encryptid-up-service (new, not yet a git repo). DB/server changes in rspace-online.bak.