Cointime

扫码下载App
iOS & Android

基于Nostr协议的社交网络内容发现和中继使用思考

01摘要

本文将讨论,如何使用Nostr协议构建一个既安全又促进去中心化的基础 "社交网络 "应用。

基础的应用程序:

假设一个基础的 "社交网络 "应用就像Twitter一样。在twitter上,人们有3个page。

主页动态:显示你关注的每个人的动态。

个人Profile:个人资料视图,显示该用户的所有动态。

回复:显示对某一特定动态的所有回复。

一些Nostr客户端可能还想提供另一种体验,即显示所有人posts的全局流(Global Feed)。

中继(Relays)的简单分类:

假设现有的中继可以分为三类:

  • 充满垃圾邮件的中继:任何人都可以发布任何类型的内容,没有过滤;
  • 安全中继:存在一些进入障碍,例如需要付费或需要一些繁琐的用户注册过程,垃圾邮件发送者或发布不良内容的人被禁止 - 但这仍然是一个基本上对任何人开放的中继;
  • 封闭式中继:只有特定类型的人才能进入,例如,一群朋友或封闭式在线社区的成员。

如何关注和查找特定人资料中的帖子:

当一个用户开始关注某人时,可以通过4种不同的方式进行。

  • 从应用程序中看到这个人
  • 使用nprofile URI
  • 使用一个NIP-05地址
  • 使用一个Bear的pubkey('npub')

情况1

当一个用户开始关注某人时,可以通过4种不同的方式进行。

  • 发生在你或其他人的帖子的回复中
  • 全局feed帖子中
  • 从其他人引用或重新发布的帖子中看到该人

当这种情况发生时,预计引用(在e和p标签中)包含中继的URL,以便在第一次接触时将该人与一个中继URL联系起来。

情况2和3

在情况 2 和 3 中,nprofile 和 NIP-05 地址都应该包含该人的首选中继列表,因此我们可以基于此为该人引导中继列表。

情况4

在情况 4 中没有中继列表,因此要么通过弹出窗口或其他方式提示用户,要么尝试在已知的中继之一中搜索该公钥。 这仍然是备选方案。

一旦有了给定配置文件的中继 URL,就可以使用这些中继从该公钥查询注释。 随着时间的推移,该用户可能会迁移到其他中继,或者可能会知道该用户也正在向其他中继发帖。 为了确保发现这些东西,我们必须注意在任何地方看到的所有事件的标签中发送的提示 - 来自任何人 - 以及类型 2 和 3 的事件,并相应地升级我们拥有配置文件和中继之间关系知识的本地数据库。

实现应用视图

根据我们目前收集到的信息,我们可以轻松呈现主页和个人资料视图。 为此,它仅使用有关配置文件和中继之间关系的本地信息并获取注释:

  • 对于主页,来自我们关注的所有人
  • 对于个人资料视图,仅来自该特定个人资料

由于我们要从中继获取非常具体的数据,我们并不关心是否安全的,因为我们可以选择过滤垃圾邮件的中继。

现在,每当用户点击一条动态时,我们都希望显示回复状态。 在这种情况下,我们将只查询安全和关闭的中继,否则垃圾邮件可能会注入到应用程序中。 相同的原则适用于全局feed。

其他启发和极端情况

本文并没有涵盖许多极端情况。 这只是为了描述一种对于去中心化的 Nostr 来说足够稳健的方式。

例如,如何显示某人引用的笔记? 如果它有中继提示,我们查询该中继。 如果没有,我们可以尝试与刚刚提到它的人相关联的中继,或者我们刚刚看到提到它的注释的同一个中继——因为,当提到它时,有人可能直接将它发布到自己的中继——等等。

最后的想法

比所有这些更重要的是,我们必须牢记,Nostr只是一组非常松散的服务器,它们之间基本上没有任何联系,没有任何保证,而与他人保持联系和寻找内容的过程必须通过许多不同的Hackers尝试来解决。要编写Nostr应用程序和使用Nostr,就必须接受现在的混乱。

致谢

DAOrayaki DAO研究奖金池:

资助地址: DAOrayaki.eth

投票进展:DAO Committee 3/0 通过

研究种类:DAO, Governance

贡献者:DAOctor@DAOrayaki

审核者:Yofu @DAOrayaki

原文:A vision for content discovery and relay usage for basic social-networking in Nostr

评论

所有评论

推荐阅读

  • BTC突破64000美元

    行情显示,BTC突破64000美元,现报64009.99美元,日内涨幅达到1.21%,行情波动较大,请做好风险控制。

  • EigenLayer代币总量16.7亿枚,45%代币将分配至社区

    据 The Block 报道,EigenLayer 代币在发布时的总供应量为 16.7 亿枚。基金会已将 45% 的代币分配给其社区。这进一步细分为质押空投 (15%)、社区计划 (15%) 和生态系统开发 (15%)。 此外,29.5% 的代币已分配给投资者,而早期贡献者将获得 25.5%。投资者和早期贡献者的分配总锁定期为三年。第一年涉及完全锁定,随后两年内以每月 4% 的速度逐步释放其总持股。

  • Terraform Labs律师提议对SEC案件处以100万美元罚款

    美国证券交易委员会(SEC)要求Terraform Labs及其联合创始人Do Kwon交出53亿美元的罚金并处以民事罚款,Terraform Labs的代理律师对此提出了反对动议。在4月26日向美国纽约南区地方法院提交的一份文件中,Terraform的法律团队建议法院在陪审团裁定该平台和Kwon负有欺诈责任后,处以最高100万美元的民事罚款。

  • 过去24小时全网爆仓1.42亿美元

    Coinglass数据显示,过去24小时全网爆仓1.42亿美元,多单爆仓9238.3万美元,空单爆仓4993万美元。其中BTC爆仓660.66万美元。

  • 加密交易生态系统LazyBear完成400万枚USDT战略融资

    加密货币交易生态系统LazyBear宣布完成400万枚USDT战略融资,Gogeko Labs、DWF Labs、Shadow Labs、Salad Labs、Bees Network、REI Network、IBIT、Crypto Bullish、SYNBO Protocol、Bazaars、Sypool、Bitcoin Gbox、GemX Crypto、Wikibit等参投。据悉,LazyBear是面向零售交易者的一个加密货币交易生态系统,致力于为用户提供行业低免费、普惠、愉悦的交易体验。

  • 4月29日晚间要闻速递

    1. BTC短时突破63000美元

  • Tether投资2亿美元收购医疗设备公司Blackrock Neurotech的多数股权

    稳定币USDT的发行方Tether周一表示,通过其风险投资部门Tether Evo,投资2亿美元收购了脑机接口公司Blackrock Neurotech的大部分股权。Blackrock Neurotech开发的医疗设备由脑信号驱动,旨在帮助受到瘫痪和神经系统疾病影响的人。该科技公司与资产管理巨头BlackRock无关。投资将用于推出和商业化医疗设备,并进行研究和开发。Tether是USDT的发行公司,是市值达1100亿美元的最大稳定币。最近,Tether成立了四个部门,以扩大稳定币发行之外的业务。

  • 欧盟至少有10个国家正在敲定或已经敲定地方立法,以促进将MiCA法规转换为当地法律

    针对稳定币发行商的《加密资产市场 (MiCA) 法规》专项规则将率先生效,随后将在12月针对整个加密货币行业的公司实施许可和其他要求。 MiCA法规于2023 年获得通过,此前欧盟各国政府花了三年时间制定监管框架。一旦生效,每个司法管辖区都必须将欧盟范围内的MiCA法规转换为当地法律,选择其监管机构中的哪一个来监管加密货币,并准备授权代币发行商和其他服务提供商。目前20个国家正处于不同的准备阶段,至少有10个国家正在敲定或已经敲定了地方立法

  • 纽约公司Turnkey获得1500万美元A轮融资,将用于扩大业务和开发工作。

    纽约市的加密开发人员钱包基础设施提供商Turnkey获得了1500万美元的A轮融资,由Lightspeed Faction和Galaxy Ventures领投,Sequoia、Coinbase Ventures、Alchemy、Figment Capital和Mirana Ventures参与。该公司打算利用这笔资金扩大业务和开发工作。Turnkey由Bryce Ferguson和Jack Kearney共同创立,提供钱包基础设施,为构建链上体验的团队提供低级原语。Turnkey的产品套件使开发人员能够构建任何涉及钱包或加密交易的东西,并已为Alchemy、Dynamic、Goldfinch、Halliday、Thunder Terminal和Kinto等行业中最好的开发人员工具和应用程序提供支持。

  • 加拿大总理提议对股票和加密货币征收资本利得税

    加拿大总理Justin Trudeau提出了一项新的资本利得税,该税率将从50%到67%不等。根据加拿大税务局网站,常见的资本财产包括别墅、证券(如股票、债券、加密货币和共同基金信托单位)、土地和建筑物。在加拿大纳税人购买或持有加密货币无需纳税,对来自加密货币销售、挖矿活动或其他加密货币相关交易的资本收益或商业收入征税,个人加密货币持有者需为其总资本收益的 50%纳税,而专业(日间)交易者则需为其利润的100%纳税。