【英文】1kx:去中心化社交协议的比较分析

快链头条
2023-12-01 03:48
新闻
4534

身份(Identity)/ 命名空间(Namespace):Farcaster 账户代表网络上的一个独特实体,每个账户都有唯一的数字标识符,即 Farcaster ID(fid)。身份通过 IdRegistry 合约在链上发布和管理。Farcaster 还扩展了命名空间,以支持链上或链下发行的 ENS 名称;ActivityPub 通过唯一的 URI(通常是 HTTPS URL)识别每个用户。该 URI 指向用户的个人资料,是用户在 Fediverse 中的全局标识符。为了让这些 URI 更用户友好,许多 ActivityPub 平台使用 Webfinger 系统,允许用户拥有类似「@username@domain.com」的身份;Lens 和 CyberConnect 将用户配置文件作为 NFT 来管理。 Lens 中每个用户地址拥有一个 ProfileNFT,封装了用户活动的全部历史记录。此外,ProfileNFT 通过 FollowModule(关注模块)管理不同账户如何获得 Follow NFT,以记录账户与主配置文件之间的联系。 数据:ActivityPub 使用 ActivityStreams 2.0 数据格式来表示帖子或点赞等社交互动。其中,客户端到服务器(C2S)允许用户通过客户端应用与各自的服务器进行交互,服务器到服务器(S2S)促进服务器之间的通信,实现协议的鲁棒联合特性。ActivityPub 中实体分为「行为者」(账户或群组)和 「对象」(内容或操作)。行为者对对象执行操作时会创建一个「活动」;Lens Protocol 引入 Publications 封装各种用户生成的内容,每个 Publications 都与一个 ContentURI 相关联,指向存储在他处的特定内容;CyberConnect 上每条以用户为中心的数据都被表示为数据流,只有数据所有者才能更新,并以仅附加提交日志的形式附加到数据流中,由此产生的哈希链接数据结构称为 Merkle DAG;Scuttlebutt 同样使用仅附加日志。每个用户都有自己的日志,每条新消息或操作都会在经过用户身份(即关联的 Ed25519 密钥对)签名后附加到日志末尾,且支持共享二进制数据;Farcaster 的消息公开更新,被编码为 protobuf,必须由账户签名者进行哈希处理和签名。 存储:ActivityPub 让网络中的每个实例(或服务器)存储其数据,通常存储在数据库中,数据库(关系型、NoSQL 等)的选择取决于 ActivityPub 软件的具体实现。例如,流行的 ActivityPub 平台 Mastodon 使用 PostgreSQL 数据库;Cyberconnect、Farcaster 和 Lens 等协议已采用区块链进行存储。链上存储的使用确保了数据的不可篡改性和可验证性,为使用底层共识机制同步状态的去中心化应用提供了坚实的基础。不过,这种方法可能会带来可扩展性挑战,这促使许多 Web3 社交协议尝试采用混合方法,即使用链上存储来处理低频操作(如个人资料、订阅),使用链下存储来处理高频事件(如点赞、转帖、评论),或以频繁的间隔将数据批量上传到链上,将链下存储用作权宜之计。【原文为英文】\n原文链接

温馨提示:
快链头条登载此文本着传递更多信息的缘由,并不代表赞同其观点或证实其描述。
文章内容仅供参考,不构成投资建议。投资者据此操作,风险自担。
提示:投资有风险,入市须谨慎。本资讯不作为投资理财建议。