1.5 KiB
1.5 KiB
| id | title | status | priority | created |
|---|---|---|---|---|
| 120 | Universal Profiles × EncryptID integration | In Progress | high | 2026-03-16 |
Description
Give every EncryptID user a LUKSO Universal Profile (LSP0 + LSP6) on Base, controlled by their passkey-derived secp256k1 key.
Phase 1: Core (DONE)
- EVM key derivation (
encryptid-sdk/src/client/evm-key.ts) — HKDF secp256k1 from PRF - UP deployment service (
encryptid-up-service/) — Hono API with CREATE2, LSP6 permissions, LSP25 relay - SDK types —
eid.upin JWT claims,LSP6Permissionenum, UP request/response types - Session UP helpers —
getUPAddress(),hasUniversalProfile(),setUniversalProfile() - Recovery hooks —
onUPRecovery()for on-chain controller rotation - Schema migration — UP columns on users table
- Server endpoints —
GET/POST /api/profile/:id/up, UP info in JWT claims
Phase 2: UP-Aware Sessions
- Map EncryptID AuthLevel → LSP6 BitArray permissions on-chain
- Guardian → LSP6 controller mapping with ADDPERMISSIONS
Phase 3: Payment-Infra Migration
- WalletAdapter abstraction (UP + Openfort)
- New users → UP by default
Phase 4: NLA Oracle Integration
getEncryptIDWallet()for CLI- Escrow parties identified by UP address
Notes
- encryptid-up-service repo: https://gitea.jeffemmett.com/jeffemmett/encryptid-up-service
- Chain: Base Sepolia (84532) for dev, Base mainnet for prod
- LSP contracts are EVM-compatible, deployed on Base