本文介绍了去中心化社交网络Farcaster,它构建在以太坊上,允许用户创建公开社交profile和社区进行互动。Farcaster与传统社交网络不同,用户完全掌握自己的数据。文章还深入探讨了Farcaster的架构,包括链上数据存储、链下Hubs存储以及关键的智能合约,解释了消息如何在Hubs中存储和验证,并提供了相关的资源链接。
一个名为 Farcaster 的新型去中心化社交网络,因其集成的 web3 架构及其独特的应用程序内体验而备受关注。Farcaster 构建在以太坊之上,允许用户创建公共社交资料和社区,与其他用户互动。
在本指南中,你将了解更多关于 Farcaster 的信息、它的设计方式,以及它与 Meta 和 X 等其他社交网络的比较。让我们开始吧!
什么是Farcaster以及它是如何运作的?| 技术深度解析 在 YouTube 上观看
Farcaster 是一个创新的、开源的、去中心化的社交网络,它通过赋予用户对其数据的完全控制权,将自己与 Meta 或 X 等中心化社交网络区分开来。与这些保留用户数据所有权的中心化平台不同,Farcaster 赋予其用户直接的数据所有权。
虽然 Farcaster 与传统的社交网络有相似之处,但它引入了新的术语:
Farcaster 词汇 | 等效的常见社交媒体术语 |
---|---|
cast | post(帖子) |
channels | groups(群组) |
frame | web app(网络应用) |
关于 Farcaster 的要点包括:
这些功能与对社交网络的一般期望相符。然而,Farcaster 通过以下集成的 web3 方面来区分自己:
Farcaster 的独特功能由以下部分支持:
如前所述,Farcaster 将一些数据(如帐户创建)存储在链上,而将其他数据(如 Casts)存储在称为 Hubs 的节点上。
这是一个高层次的视图:
让我们深入了解更多使用的智能合约。
Farcaster 使用三个智能合约(部署在 Optimism mainnet 上)来促进链上操作:
fId
绑定,fId
又与帐户创建期间使用的以太坊地址绑定要了解有关每个智能合约功能的更多详细信息,请查看文档,并在此处查看源代码 here。
存储和提供 Farcaster 数据的节点网络称为 Hubs。这个分布式、对等网络存储和验证 Farcaster 的整个状态(链上和链下数据),并相互通信以保持 Farcaster 的最新状态。
由于 Farcaster 是开源的,因此任何用户都可以运行自己的 Hub,并且能够通过 API 从 Farcaster 读取/写入数据。Hubs 的当前实现包括 Hubble(用 Rust 和 Typescript 编写)。让我们首先深入了解存储以及数据的存储方式;然后,我们将深入研究消息生命周期以及如何在 Hub 上验证/存储消息。
为了使帐户能够在 Farcaster 网络上进行交互,它必须首先支付租金。这通常是一年一次的费用,涵盖帐户可能进行的所有活动,例如 casting、回复、关注他人等。
每种类型的消息都会分配一些租金,并且在此租金金额超过后发布的任何消息都会导致最早的消息被修剪(由 Hub)。由于 Hubs 修剪和控制网络负载,因此用户可以在租金超过后继续使用 Farcaster 协议。
现在,让我们谈谈消息以及它们如何在 Hub 上存储。
Hub 的同步过程包含一个两阶段过程 - gossip
和 diff
同步。让我们概述它如何在 Hub 上存储/提供的数据的生命周期中使用:
gossiping
)diff
同步以查找已删除的消息并有效地恢复它们请注意,运行 Hub 需要最低硬件要求,并且不会为运行该节点的用户产生收入。为了控制不良行为者,Hubs 会监控对等方并评估其行为,如果检测到不良行为则忽略它。要了解更多信息,请查看 Hubs 文档。
做得好!你现在对 Farcaster 及其运作方式有了基本的了解。为了巩固你新获得的知识,请务必查看有关构建 [Farcaster Frames] 的指南,然后通过标记我们 @QuickNode 来分享你的自定义 Frame!
如果你有任何疑问,请查看我们的 Discord 服务器或使用下面的表格提供反馈以获得帮助。通过在 Twitter (@QuickNode) 和我们的 Telegram 公告频道 上关注我们,了解最新信息。
如果你有任何反馈或对新主题的要求,请告诉我们。我们很乐意收到你的来信。
- 原文链接: quicknode.com/guides/soc...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!