0G核心模块|AIVerse
ERC7857(iNFT)
什么是 ERC7857/INFT
ERC-7857(也称 INFT)是一种面向 智能体/AI 代理的 NFT 标准,支持 可进化元数据、加密功能元数据以及功能性资产的安全转移,弥补传统 ERC-721 在 AI 场景中的不足。
NFT 不适配 AI 的原因
1. Static Metadata(静态元数据)
- 传统 NFT(如 ERC-721)元数据固定,不支持自我学习或自我演化
- 无法随着 AI 代理能力或状态变化而更新
2. Insecure Metadata Transfer(元数据传输不安全)
- NFT 转移只涉及所有权转移
- 底层功能性元数据未随之安全转移
- 存在信息泄露或功能丢失风险
3. Publicly Accessible Metadata(元数据公开可访问)
- NFT 元数据默认公开
- 缺少原生加密机制
- 关键功能或敏感信息无法保护
REC7857的技术细节
步骤
- 调用 transfer() 方法,开启转账流程。
- 合约向 Oracle 发起询问,询问目标 “newDataHash” 相关情况。
- Oracle 回复接收方是否能访问 “newDataHash”,回复内容包含 “成功”“序列化”“oldDataHash”“newDataHash” 等信息。
- 若 Oracle 回复为 “是”,则把目标代币的所有者从发送方(Sender)变更为接收方(Receiver),同时发布序列化密钥,并将代币的 “oldDataHash” 更新为 “newDataHash”。
提示:“oldDataHash” 和 “newDataHash” 代表它们背后的哈希值和数据
Oracle 现实实现方式
理想的 Oracle 可以通过 TEE/ZKP 实现
ERC721 和 ERC7857区别
iNFT特点
1. Privacy-Preserving Metadata(隐私保护元数据)
- 关注在存储和处理数据时保护用户隐私
- 确保元数据不会泄露敏感信息
- 可使用加密、匿名化或零知识证明等技术
2. Secure Metadata Transfers(安全元数据传输)
- 保证元数据在传输过程中不被篡改或泄露
- 可采用加密传输、身份认证和完整性校验机制
3. Dynamic Data Management(动态数据管理)
- 支持数据的实时更新、增删改操作
- 适应数据变化,提高存储和访问的灵活性
4. Decentralized Storage Integration(去中心化存储集成)
- 与去中心化存储系统(如 IPFS、Filecoin 等)结合
- 提升数据冗余、可靠性和抗审查性
5. Verifiable Ownership & Control(可验证的所有权与控制)
- 用户可以证明对数据的所有权
- 可控制数据的访问权限和操作权限
- 可通过区块链或加密签名实现验证
6. AI-Specific Functionality(针对 AI 的功能性)
- 支持 AI 模型对数据的访问和处理
- 提供数据标注、分析、训练等 AI 相关功能
- 可能包含优化性能、加速推理或模型安全性功能
TEE流程
1. TEE 规则 (TEE ORACLE Rules)
- 2.(1). TEE:
- a. 使用其私钥解密旧密钥 (Decrypts the old key with its private key)
- b. 使用旧密钥解密 ‘oldDataHash’ (Decrypts ‘oldDataHash’ with the old key)
- c. 生成一个新的秘密密钥 (Generates a new secret key)
- d. 使用新的秘密密钥加密数据以获得 ‘newDataHash’ (Encrypts data with the new secret key to get ‘newDataHash’)
- e. 使用接收者的公钥加密新的秘密密钥以获得 ‘sealedKey’ (Encrypts the new secret key with Receiver’s public key to get ‘sealedKey’)
2. Oracle (预言机/核心流程)
- 实现 (Implement)
- - TEE
- 1. 发送方将 ‘oldDataHash’ 和加密密钥(使用 TEE 的公钥加密)提供给 TEE (Sender gives ‘oldDataHash’ and encrypted key (encrypted with TEE’s public key) to TEE)
- 2. (涉及) ‘oldDataHash’, ‘newDataHash’ ((‘oldDataHash’, ‘newDataHash’))
- 3. 接收方访问 ‘newDataHash’,然后对 ‘oldDataHash’ 和 ‘newDataHash’ 进行签名 (Receiver accesses ‘newDataHash’ and then signs ‘oldDataHash’ and ‘newDataHash’)
- 4. 发送方发送 ‘newDataHash’ (Sender sends ‘newDataHash’)
- - TEE
3. 附加说明
- 可以自己生成一个秘密密钥。 (I have black magic to generate a secret key by myself.)
- - 提示: ‘oldDataHash’ 和 ‘newDataHash’ 代表哈希及其背后的数据。 (Tips: ‘oldDataHash’ and ‘newDataHash’ represent the hashes and the data behind them.)
ZKP验证流程
1. ZKP 规则 (ZKP ORACLE Rules)
- 2(1), ZKP:
- a. 使用其私钥解密旧密钥 (Decrypt the old keys with its private key)
- b. 使用旧密钥解密 ‘oldDataHash’ (Decrypt ‘oldDataHash’ with the old key)
- c. 使用新密钥加密数据以获得 ‘newDataHash’ (Encrypt data with the new key to get ‘newDataHash’)
- d. 使用接收者的公钥加密新密钥以获得 ‘scaleKey’ (Encrypt the new key with Receiver’s public key to get ‘scaleKey’)
2. Oracle (预言机/核心流程)
- 实现中 (Implementing)
- - [ ] 发送方将 ‘oldDataHash’ 和加密密钥(旧密钥和新密钥)提供给 ZKP (Sender gives ‘oldDataHash’ and encrypted keys (old key and new key) to ZKP)
- - [x] ZKP
- z(z), 最终对 < ‘scaleKey’, ‘oldDataHash’, ‘newDataHash’> 进行签名 (Finally signs < ‘scaleKey’, ‘oldDataHash’, ‘newDataHash’>)
- - Sender (发送方)
- 3, 发送方发送 ‘newDataHash’ (Sender sends ‘newDataHash’)
- - Receiver (接收方)
- 4, 接收方访问 ‘newDataHash’,然后对 ‘oldDataHash’ 和 ‘newDataHash’ 进行签名 (Receiver accesses ‘newDataHash’, and then signs ‘oldDataHash’ and ‘newDataHash’)
3. 附加说明 (R)
- - R: 不可以自己生成秘密密钥。所以我需要发送方的帮助来生成密钥,并且接收方应记住稍后更改密钥。(I don’t have black magic to generate a secret key by myself. So I need Sender’s help to generate the key, and Receiver should remember to change the key later.)
4. 提示 (Tips)
- - 提示: ‘oldDataHash’ 和 ‘newDataHash’ 代表哈希及其背后的数据。(Tips: ‘oldDataHash’ and ‘newDataHash’ represent the hashes and the data behind them.)
iNFT完整流程
- 发起 (Initiation): Sender 将旧状态哈希 (
oldHash
) 和加密密钥 (encKey
) 提交给 TEE Oracle。 - 处理 (Processing): TEE 内部完成解密、生成新密钥、加密新数据得到新哈希 (
newHash
)、加密新密钥得到密封密钥 (sealedKey
),并生成一个包含这些信息的签名。 - 中继 (Relay): Sender 将 TEE 生成的新哈希 (
newHash
) 发送给 Receiver。 - 确认 (Acknowledgement): Receiver 访问数据后,对新旧哈希对进行签名,表示确认接收此状态变更。
- 执行 (Execution): Sender 调用智能合约的
transfer
方法,提交一个包含 TEE的签名 和 Receiver的签名 的证明 (proof
)。 - 验证与结算 (Verification & Settlement): 智能合约验证证明的有效性。
- 如果有效: 完成所有权转移、公开
sealedKey
并更新链上数据哈希。 - 如果无效: 交易回滚。
- 如果有效: 完成所有权转移、公开
- 数据访问 (Data Access): Receiver (或任何相关方) 最终可以从链上获取
sealedKey
来解密并获得新数据。
AIVerse
1、什么是AIVerse
AIVerse是ERC7857的扩展,实现了具有ai能力的nft的转移流程,扩展了创建agent的质量验证
2、AIVerse 组件
3、怎么交互
- Create AIverse Accounts(创建 AIverse 账户)
- 注册并创建个人或组织账户
- 用于管理个人身份、资产和操作权限
- Create Agents(创建智能体)
- 在平台上生成 AI 代理或智能体
- 每个代理可独立执行任务或操作
- Interact with Agents(与智能体互动)
- 用户可以与自己或他人的代理进行交互
- 包括任务指派、指令发送、数据交换等
- Trade Agents(交易智能体)
- 代理可进行买卖或租赁
- 支持资产化和市场化管理
- 可基于性能、能力或稀缺性进行定价
课程扩展
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 EIGHTJIU!
评论