Web3世界是很多互联网人期待的世界,那让我们能确实感受到web3的应用有什么呢?
以web3的原则“用户控制数据”统计,如今公链上的应用都是web3,但除了Mirror、ENS这一类应用之外,其他的应用大多和代币有关,用户在这些应用里的数据汇聚成了一个用户地址的全品类数据。
那这些数据是否能构成一个社交网络呢?答案是可以的。
从产品设计上看,web3的社交网络,可能不是像如今的web2社交app一样,有一个唯一独立的网站、平台入口。而是把入口放在各个渠道,在数据维度做到一个聚合。这是一个最简单的设计方式,避免了唯一平台入口的流量竞争。
5Degrees协议就是这样设计的web3社交协议。本文中,我们将汇总5Degrees资料,用来了解如何设计出最简单的社交协议。
5Degrees协议是部署在区块链上的一套Web3.0社交网络智能合约。它旨在将用户关系通过ERC-1155协议Token化使创作者能够拥有自己与社区之间、朋友之间的联系,形成一个简单易用、无需许可的、可组合的,用户拥有的去中心化社交网络。
Web2社交网络都是从中心化数据库中读取数据,没有良好的便携性和控制性,其个人资料、朋友关系都会被锁定到特定网络并归网络运营商所有。而Web3.0核⼼应该是将Web2.0⽤户数据所有权交还给用户。
为了让协议足够易用、无需许可以及可组合性,5Degrees选择在现有ERC-1155协议的框架下来构建协议。改进后的ERC-1155协议可以⾮常简单的植⼊到Web3.0的任何协议层或者是业务层,这未来会带来可组合性,集成协议的应⽤只需要⽀持ERC-1155协议即可快速⽀持本协议。
从具体实现上举例如下:
Profile NFT是个人主页NFT,是5Degrees协议中的主要对象。用户可以控制自己NFT的所有内容。任何单个地址都可以拥有一个Profile,且一个地址可以拥有多个地址本身之外的Profile NFT。
ProfileNFT遵循了EIP1155的metadata数据格式,用户可以轻松设置头像、昵称、Twitter、E-mail、个人简介等等相关信息,头像可以支持任意格式,它可以是简单的图片链接,也可以是一个NFT。
例如在5Degrees里设计的推特绑定,在推特发布一个签名推文后,就可以把相应的社交关系与5Degrees绑定。
5Degrees协议中的"Follow"与web2社交应用中的关注有着本质性的差别。在5Degrees协议中,当用户关注一个创作者时,可以同时获得该创作者的个人NFT。不同的创作者或者社区可对其进行编码,甚至赋予额外的价值。
Follow NFT的ID为创作者(即被关注者)的地址序列化,保证了NFT ID的唯一性。
因为遵循了EIP1155协议,简化了关系网络,只需要简单的查询balance即可知道两两地址是否已经形成关系。
目前5Degrees协议部署在ETH,BSC,Polygon网络。
另外,5Degrees协议考虑到存储费的问题,所以链上没有存储完整的关系网络,需要链下进行数据维护。这部分遵循EIP1155协议,可通过TransferSingle和TransferBatch事件进行快速索引数据建立起完整的关系网络数据。
当我们完成5Degrees登录后,可以打开支持ERC-1155协议支持的应用,就可以发现一些公开数据的用户,例如uniswap,你可以关注一些用户的地址显示的公开数据。这就像在即刻里公开的持仓一样。而可以像这样如法炮制的应用有很多,只是需要支持该协议并且开发了相应页面的应用更多一些。