Wallet ID

链上身份层——连接钱包地址与 Fly 归因链路,实现链上身份与行为归因的统一

核心问题:链上身份碎片化

完整归因链路

1
钱包注册
0x742d... → wlt_xxx
2
行为绑定
wlt_xxx → bhv_xxx
3
动作归因
bhv_xxx → ACT_xxx
4
链上验证
ACT_xxx → tx_hash
5
价值确认
Trust Score

多链支持

🔷 Ethereum
EVM 兼容链的钱包注册,支持 ERC-20/ERC-721 交易归因
🔵 Base
Coinbase L2 链,低成本归因,Coinbase Wallet 原生集成
🟣 Solana
高性能链支持,SPL Token 交易归因,Phantom 钱包集成
🔗 更多链
Arbitrum / Optimism / Polygon 等 L2,按需扩展

签名验证流程

1
生成挑战
nonce + timestamp
2
钱包签名
sign(message)
3
验证签名
recover(address)
4
绑定 ID
wallet_id = wlt_xxx
// 1. 前端发起注册请求
POST /v1/web3/wallets/challenge
{"address": "0x742d35Cc...", "chain": "ethereum"}
→ 返回: {"nonce": "abc123...", "message": "Sign to verify..."}

// 2. 用户签名
const signature = await wallet.signMessage(message);

// 3. 提交签名,获取 Wallet ID
POST /v1/web3/wallets
{"address": "0x742d...", "chain": "ethereum", "signature": "0x..."}
→ 返回: {"wallet_id": "wlt_xxx", "created_at": "..."}

Fly 六层验证在钱包层的应用

1
Gate 1: 身份验证
钱包签名证明地址所有权,防止伪造地址注册
2
Gate 2: 行为绑定
钱包地址与 Behavior ID 绑定,建立链上行为档案
3
Gate 3: 跨链关联
同一用户的多链钱包关联,统一归因视图
4
Gate 4: 链上存证
注册事件上链存证,公开可验证

使用场景

场景 1: AI 推荐的 NFT 购买
AI Agent 推荐了一个 NFT 项目 ↓ 用户点击链接,生成 Behavior ID (bhv_xxx) ↓ 用户连接钱包,Fly 记录 wallet_id (wlt_xxx) ↓ 用户购买 NFT,交易 hash: 0xtx_abc123 ↓ Fly 验证: AI推荐 → 链上购买,归因成功 ↓ 项目方获得: "这笔交易来自 AI 推荐"
场景 2: 跨链 DeFi 收益归因
用户在 Ethereum 上被推荐了某 DeFi 协议 ↓ 用户跨链到 Base,在 DEX 上交易 ↓ 用户在 Solana 上质押 LP Token ↓ Fly 关联: 3 个链上的行为都属于同一个推荐链路 ↓ 收益归因: "这个用户在 3 条链上产生了 $10,000 TVL"
场景 3: 项目方 KYC + 归因
项目方需要知道用户来源(AI推荐/自然流量/KOL推荐) ↓ 用户连接钱包,Fly 返回 wallet_id + 来源标签 ↓ 项目方看到: "wlt_xxx 来自 AI Agent 推荐,Trust Score 85" ↓ 项目方可以: 给 AI 渠道用户特殊权益,激励更多 AI 推荐

API 接口

POST /v1/web3/wallets/challenge
{"address": "0x742d35Cc...", "chain": "ethereum"}
生成签名挑战,返回 nonce 和待签名消息
POST /v1/web3/wallets
{"address": "0x742d35Cc...", "chain": "ethereum", "signature": "0x..."}
提交签名,验证所有权,返回 Wallet ID
GET /v1/web3/wallets
?chain=ethereum&limit=10
查询已注册钱包列表
GET /v1/web3/wallets/:wallet_id
wlt_xxx
查询钱包详情,包括关联的 Behavior ID 列表
POST /v1/web3/wallets/link
{"wallet_id_1": "wlt_xxx", "wallet_id_2": "wlt_yyy"}
关联同一用户的多链钱包(需要两个钱包都签名验证)
API 已上线 · 可调用