SoullessL

Posted on Oct 07, 2022Read on Mirror.xyz

Cyber Connect 协议 V2 介绍

本来在CyberConnect Dev Center里面想找一下关于Link3接口方面的资料,发现开发者中心已经更新了CyberConnect V2协议的内容,就有了这篇文章,总结一下我对于V2协议的一些理解。

概述

CyberConnect是一种分散的社交图协议,可帮助Web3应用程序引导网络效应。它使用户能够在社交网络中真正拥有自己的社交身份,内容和连接,并为开发人员提供了一套丰富的工具来构建具有有意义的社交体验的应用程序。

早期CyberConnect的V1协议还只是一个社交图谱协议,现在的V2协议已经扩展了很多功能,比如可以构建以下的平台。Link3也是基于CyberConnect V2协议构建的一个社交平台。

社交平台

开发人员可以使用CyberConnect协议构建社交dApp,以分散的方式存储和管理用户的社交数据,例如个人资料,帖子和内容。此外,用户可以在选定的区块链上以NFT格式发布其数据,以实现货币化目的。例如,内容创建者可以为其博客发布100个版本,每个版本的价格为14$CYBER令牌,并且仅允许其订阅者收集此类内容NFT。

社交平台示例

SBT/NFT 平台

利用空投和代币来吸引早期采用者,将其转换为贡献者并通过徽章等奖励留住他们,这是顶级Web3项目中流行且经过验证的做法。CyberConnect V2协议使社区能够使用Cyber Connect上的社交数据(作为ERC-721 NFT)聚集早期用户。

SBT/NFT 平台

推荐算法

开发人员可以在构建社交dApp时利用网络连接来获得有趣的推荐数据。例如,该协议可以根据用户的关系和来自链下和链上来源的社交数据生成推荐人员列表。此外,可以根据相对于其他地址的建模交易行为和持有量(即协作过滤模型)来生成推荐购买的代币、推荐人员列表。

推荐算法


CyberConnect有两个组件可以帮助开发人员构建社交应用程序:社交数据网络和兴趣图谱引擎。

Cyber Connect 社交数据网络和兴趣图谱引擎架构


社交数据网络

用户在参与社交平台时会生成各种数据,方法是首次设置其个人资料,跟随内容创建者并创建内容。我们将它们分为以下三个组成部分。

身份 用户生成的社交配置文件和链上地址相关数据,形成用户的分散身份。无论是 NFT、ENS 名称、推特句柄还是 DID,我们都会将它们映射到一个整体标识。

连接 连接表示标识之间的关系。社交关系包括关注和订阅创作者,与好友成为朋友,属于组织以及参与活动和社区。

内容 用户生成的内容,如帖子、视频和出版物。我们还研究了人们如何通过创新的智能合约支持的方式(如资助公共产品,捐赠给慈善机构和治理)来参与这些内容。

基础架构

要构建社交应用程序,开发人员应该只关注用户体验、用户获取和内容审核,而不必担心构建和维护基础架构。CyberConnect 支持开发人员通过 API 和 SDK 构建新的应用程序。虽然这种体验对开发人员来说是无缝的,但我们希望强调我们的架构设计,使CyberConnect无gas费,可组合和高度可扩展。

足够分散的数据基础设施,帮助用户大规模管理其可移植和自我主权的社会数据。数据以可验证的凭据表示,开发人员可以安全地依靠基础架构来编写和更新数百万条记录。

智能合约协议由部署在EVM兼容区块链上的智能合约组成,使内容创建者能够构建其链上社交网络,并通过高度可定制的中间件将其社交数据货币化。

足够分散的数据基础设施

使用 CyberConnect 存储用户社交数据的开发人员应该能够安全地依靠该协议来编写和更新数百万条记录。同时,开发人员需要确信,CyberConnect 不会成为恶意攻击者的单点故障。因此,我们需要一个足够分散的数据存储系统,该系统具有高性能,并提供数据主权,可用性和完整性的保证。

数据主权

为了实现数据主权,CyberConnect上的每个连接和内容都必须由加密密钥对签名,这意味着只有拥有私钥的人才能产生这样的连接和内容。此机制的设计方式既易于使用又面向未来。 当用户首次通过dApp与CyberConnect交互时,他们会在设备上创建一个密钥对,并将公钥发布到CyberConnect社交数据网络。为了兼容,我们支持各种椭圆曲线数字签名算法 (ECDSA)。当用户启动操作时,将从本地环境加载以前生成的私钥以对消息进行签名。值得注意的是,同时,社交数据网络与Ceramic的DID设计兼容,使一些数据能够轻松存储在Ceramic上。

数据完整性和可用性

对于分散的数据网络,我们必须确保数据的可用性(数据不能被审查)和数据完整性(数据不能以未经授权的方式修改)。CyberConnect 协议根据写入频率和数据量,针对不同的数据用例采用混合模型。

数据隐私

我们还在不断研究提供保护隐私的社交数据网络。我们在CyberConnect 协议中的解决方案很可能是以下两种方法的组合。

  • 加密数据。用户应该能够控制第三方对其社交数据的访问,而不必放弃所有权或向任何不是其预期接收者的人透露所述数据。另一方面,第三方开发人员应该能够在合理地满足一组权限后解密该数据,或者如果他们不再满足所需的资格,则失去访问权限。Lit Protocol的访问控制列表解决方案在这方面获得了相当大的支持,网络连接团队已经了解了很多关于他们的优势和劣势。

  • 零知识证明。零知识证明是一种方法,通过这种方法,一方(证明者)可以向另一方(验证者)证明给定的陈述是真实的,而根本不透露有关所述陈述的任何信息。在社交环境中,Bob 应该能够向需要访问其朋友列表的第三方社交应用程序证明他确实与 Alice 有联系,而无需分享任何其他有关该连接如何、在何处、何时建立或他们有哪些其他共同点的信息。

社交网络数据之智能合约协议

尽管数据基础设施提供了解决数据主权和互操作性问题的解决方案,但我们仍然需要一种方法让用户将其社交数据(如内容和连接)货币化。此外,开发人员可能需要一个链上计算环境来构建他们的dApp和社区。

例如,专注于为某些NFT社区成员提供优质服务的dApp可能希望生成令牌门控社交网络,或者发布平台可能希望为用户提供通过其高质量内容获利的能力。我们开发了一个部署在EVM兼容区块链上的智能合约协议,以使所有这些要求成为可能。

核心概念

智能合约协议由生成智能合约组成,这意味着它将在与协议交互时生成一组与dApp或用户关联的新智能合约。这种模式类似于Uniswap协议,当人们创建新的流动性池时,将生成一组流动性对智能合约。 在CyberConnect上,这些生成的智能合约使dApp能够创建其特定上下文的链上社交网络,或者用户发布其可定制的NFT以将其社交数据货币化。在高层次上,该协议使用ERC-721令牌格式的Profile NFT,EssenceNFT和SubsrcibeNFT 的概念来表示社交数据。

ProfileNFT

Profile NFT将每个用户的个人资料表示为NFT。它是想要发布其EssenceNFT或SubsrcibeNFT的用户的先决条件。此外,已部署的 Profile NFT 合约用作用户执行操作的网关,例如在特定 dApp 上下文中收集精华、创建配置文件和订阅配置文件。

SubsrcibeNFT

SubsrcibeNFT 表示地址和Profile NFT之间的单向关系。每个Profile NFT持有者只能发行一个唯一的订阅NFT。每个订阅NFT都可以配置付费关注(付费订阅者),NFT Hold关注(令牌门控社区)等规则。

EssenceNFT

EssenceNFT是一个通用的NFT,个人Profile NFT持有人可以发布以表达任意关系,例如投资者,赞助人,团队成员,社区参与者等。每个EssenceNFT都可以配置付费到铸币(众筹),持有到铸币(社区参与者)等规则。它也可以配置为可交易的NFT或不可转让的灵魂绑定令牌(SBT)。

Namespace

Namespace表示特定于上下文的社交网络。任何应用程序都可以自定义 ProfileNFT 铸币条件,例如铸币价格、handle验证逻辑和国债费用结构。该项目可以扩展Namespace的效用,在其上构建一个分散的域名服务。

可组合中间件

尽管不同 dApp 的计算条件差异很大,但许多常见的模式可以推广到可重用和可扩展的模块中。例如,dApp A 希望通过设置条件来建立一个 BAYC 俱乐部,即只有 BAYC 持有者才能铸造其特定于应用程序的配置文件NFT,而 dApp B 希望为 CloneX 持有者做同样的事情。底层模式是相同的,唯一的区别是门控ERC-721合约地址。

该协议在用户应用其铸币操作(例如订阅配置文件或收集精华)之前和之后利用可组合的中间件层。可以创建中间件来表达一般约束,例如仅允许某些ERC-721持有者通过检查。通过这种方式,社区可以一起构建各种可重用的中间件,dApp开发人员可以挑选相关的中间件轻松插入他们的dApp。

但重要的是要指出,虽然中间件在用于设置对当前区块链状态的约束或收集链上资产时功能强大,但在使用它来检查历史状态或链下数据时,它的效用有限。一种可能的解决方案是在中间件中调用 oracle 合约,以从链下索引器获取数据馈送。

基础架构

Cyber Connect 智能合约基础架构

兴趣图谱引擎

CyberConnect 兴趣图谱引擎索引、聚合与身份及其活动相关的链上和链下数据源,以创建整体图谱。开发人员可以轻松利用索引数据和推荐算法进行用户获取和用户保留。

索引

我们的索引系统中有三个数据源:区块链(例如以太坊,Solana,BNB链),去中心化存储(例如IPFS,Arweave)和链下平台(例如Foundation, Rarible,推特)。它的一般理念是索引可能在各种社会环境中重复使用的数据。例如,现有平台(如Foundation)上的连接数据,每个地址的POAP令牌等。

索引基础架构

推荐引擎

CyberConnect的去中心化社交网络协议的最后一个组成部分是其推荐引擎。推荐引擎旨在进一步降低启动社交应用程序的障碍,并增加新开发人员对高质量ML模型的访问。虽然 CyberConnect 的推荐算法还没有公开,并且位于我们的 API 后面,但我们计划在未来公开这些模型的创建和服务。

由于用于训练CyberConnect推荐模型的大多数数据都是公开访问的,因此从理论上讲,任何人都可以从这些数据中构建类似的模型。但是,快速>廉价地引导社交dapps的能力是我们协议的核心,因此我们决定首先在内部构建它们。我们需要为开发人员配备构建分散式社交应用程序所需的工具,这些应用程序与Web2同行真正具有竞争力。

虽然CyberConnect的推荐模型的范围将与其合作伙伴一起扩大,但目前的产品可以分为三大类:1)社交联系推荐2)内容和项目推荐3)信息流排名。

让我们进一步深入研究每一个,并展示一些例子来使事情具体化:

  1. 社交联系推荐

    1. **推荐账户:**获取 EOA(外部拥有的帐户)的个性化列表,以便根据用户的兴趣和类似用户关注的人员进行关注。

    2. **推荐合约:**根据用户的兴趣(例如 NFT 所有权)和/或与输入用户具有相似兴趣的类似用户关注的合同列表。

  2. 内容推荐

    1. **内容推荐:**根据用户的兴趣和类似用户参与的内容获取一组个性化的推荐内容。

      1. 这可能看起来像推荐的特定NFT,令牌或游戏。
    2. **相关内容:**根据类别或标签以及用户参与度获取与其他内容类似的内容。

      • 例如,在打开BAYC的个人资料页面后获得无聊的猿犬俱乐部的推荐。
  3. 信息流推荐

    1. **用户信息流:**迎合特定用户/地址内容和链上互动的信息流

      • 从用户正在关注的帐户中获取内容的时间线。

      • 从用户与之交互的帐户中获取内容的时间线。

      • 这将看起来像NFT转移,精华

    2. **社区信息流:**迎合特定社区内容和链上互动的提要

      • 获取与特定社区相关的最近用户活动(例如,红豆持有者、UNI 投票者等)
    3. **域信息流:**迎合特定领域内容和链上互动(例如社交、Defi 等)的提要

      • 获取与特定项目(帐户、产品、标签、帖子、视频等)相关的最近用户活动

推荐引擎是构建杀手级web3社交dapp所需的最后一部分。


身份

用户链下生成的社交profile数据和链上地址相关数据,形成用户的去中心化身份。无论是 NFT、ENS 名称、推特还是 DID,我们都会将它们映射到一个整体标识。在 CyberConnect 的基础设施中,身份当前通过Address或Profile表现出来。

Address

用户可以将他们已经熟悉的EVM Address数据带到CyberConnect,并在使用CyberConnect构建的应用程序上创建新的社交数据。

Profile

尽管address作为去中心化的标识符非常有用,但它们缺乏更复杂的访问控制和密钥轮换功能,而这些是社交应用程序中的关键组件。Profile是每个链上操作的入口点,其行为类似于 web2 社交应用程序中的profile。每个profile都是一个ERC-721 NFT,类似于其他链上身份,除了每个profile都拥有其付费订阅者和内容。每个真实用户还可以拥有多个profile。查看在 Link3 上运行的配置文件。

总结

可以看出虽然看似CyberConnect 团队最近只推出了Link3这一个平台,但是团队在背后开发了CyberConnect V2协议,而Link3也是基于此协议开发的,期待以后各个团队能基于CyberConnect V2协议开发出更多有趣的应用。