Cointime

扫码下载App
iOS & Android

读懂nostr:一个让Elon Musk感到害怕的去中心化社交协议

媒体

原文作者:git-sgmoore 和 fiatjaf(nostr)

原文编译:DeFi 之道

注:近期一个名为 nostr 的去中心化社交协议获得了比特币社区的追捧,这引来了 Twitter 现任 CEO Elon Musk 争议性的封杀政策,同时让 Twitter 前任 CEO Jack Dorsey 自掏 14 BTC 为其提供资助,那 nostr 到底有什么魔力?

Twitter 的最新禁止政策

根据介绍,nostr 是一个最简化的协议,它能够一劳永逸地创建一个抗审查的全球「社交」网络。

nostr 不依赖于任何受信中央服务器,其基于密码学密钥和签名,并且不依赖于 P2P 技术,它也不会发行 token。

那它的运作原理是怎样的呢?简单来说:每个人都运行一个客户端,这可以是本机客户端、Web 客户端等。要发布某些内容(比如一个帖子),你要用你的密钥对其签名,并将其发送到多个中继器(由其他人或你自己托管的服务器)。要从其他人那里获得更新,你可以询问多个中继器是否了解这些其他人。任何人都可以运行中继器,这是非常简单的,除了接受某些人的帖子并转发给其他人之外,它什么都不做。我们也不需要信任中继器,签名是在客户端进行验证的。

1、如何开始使用 Nostr

2、Nostr 客户端功能比较

3、基于 Nostr 的项目列表

一、其他解决方案存在的问题 

1、Twitter 的问题

Twitter 有广告;

Twitter 使用奇怪的技巧让你上瘾;

Twitter 不会显示你关注的人的真实历史动态;

Twitter 会禁止某些人的账户;

Twitter 会使用影子禁令(Shadowbans).

Twitter 有很多垃圾信息;

2、Mastodon 和类似应用的问题

用户身份附加在第三方控制的域名上;

服务器所有者可以像 Twitter 一样禁止你,服务器所有者也可以阻止其他服务器;

服务器之间的迁移是事后才考虑的,只有在服务器协作的情况下才能完成。它在对抗环境中不起作用(所有追随者都会丢失);

运行服务器没有明确的动机,因此它们往往由爱好者以及希望将自己的名字附加到一个很酷的域名上的人来运行的。然后,用户受制于一个人的专制,这往往比 Twitter 这样的大公司还要糟糕,他们无法迁移出去;

由于服务器往往是业余的,它们经常在一段时间后被抛弃——这实际上等同于禁止所有人;

如果每台服务器的更新都必须痛苦地推送 (和保存!) 到大量其他服务器,那么拥有大量服务器就没有意义了;这一点由于服务器数量庞大而加剧,因此更多的数据必须更频繁地传递到更多的地方;

对于视频共享的具体示例,ActivityPub 爱好者意识到完全不可能像文本注释那样在服务器之间传输视频;

3、SSB(Secure Scuttlebutt)的问题

它没有太多问题,我认为这很棒。事实上,我打算以此为基础,但是它的协议太复杂了,因为它根本就没有被认为是一个开放的协议。它只是用 JavaScript 编写的,可能是一种快速解决特定问题的方法,因此它有奇怪和不必要的怪癖,比如签署一个 JSON 字符串,其必须严格遵守 ECMA-262 第 6 版规则;

它坚持从单个用户那获得一连串的更新,这对我来说是不必要的,而且会增加内容的臃肿和僵化程度——每个服务器/用户都需要存储所有的帖子链,以确保新的帖子是有效的。为什么要这么做 ?(也许他们有很好的理由);

它不像 Nostr 那样简单,因为它主要是为 P2P 同步而设计的;

不过,可能值得考虑使用 SSB 而不是这种自定义协议,并仅使其适应客户端中继服务器模型,因为重用标准总是比尝试让人们使用新标准更好。

4、其他要求运行服务器方案的问题

他们要求每个人都运行自己的服务器;

有时人们仍然会在这些方面受到审查,因为域名可能会受到审查;

二、Nostr 的运行原理

Nostr 有两个组件:客户端和中继器。每个用户运行一个客户端,任何人都可以运行中继器。

每个用户都由公钥标识,每个帖子都有签名,每个客户端都会验证这些签名。

客户端从他们选择的中继器获取数据,并将数据发布到他们选择的其他中继器。中继器不与另一个中继器通信,仅直接与用户通信。

例如,要「关注」某人,用户只需指示他们的客户端查询它知道的中继器,以获取来自该公钥的帖子。

在启动时,客户端从它知道的所有中继器中查询它所关注的所有用户的数据(例如,从最近一天开始的所有更新),然后按时间顺序向用户显示该数据。

「帖子」可以包含任何类型的结构化数据,但最常用的数据将进入标准,以便所有客户端和中继器可以无缝地处理它们。

三、Nostr 如何解决其他方案无法解决的问题?问题 1:用户被禁止,服务器被关闭

中继器可以阻止用户在它那里发布任何内容,但这对用户来说没有影响,因为他们仍然可以将内容发布到其他中继器。由于用户是通过公钥识别的,因此当他们被禁止时,他们不会失去他们的身份以及粉丝基础。

不需要用户手动输入新的中继器地址(虽然这也应该被支持),每当你关注的人发布服务器推荐时,客户端应该自动将其添加到它将查询的中继器列表中。

如果有人正在使用一个中继器来发布他们的数据,但想要迁移到另一个中继器,他们可以向之前的中继器发布一个服务器推荐,然后离开;

如果有人被很多中继器禁止,以至于他们无法广播他们的服务器推荐,他们仍然可以通过其他方式让一些亲密的朋友知道他们现在正在发布到哪个中继器。然后,这些亲密的朋友可以向新服务器发布服务器推荐,慢慢地,被禁用户的旧粉丝群将开始从新的中继器中再次找到他们的帖子。

当中继器停止工作时,上述所有规定也都是有效的。

问题 2: 抗审查

每个用户都可以将他们的内容更新发布到任意数量的中继器。

中继器可以向用户收取费用(目前费用的协商不在协议范围内)以在那里发布,这确保了抗审查性。

问题 3:垃圾信息

如果垃圾信息是中继器要关注的一个问题,它可以要求为发布付费或其他形式的身份验证 (如电子邮件地址或电话),并将这些在内部与公钥相关联,然后将其发布到该中继器或使用其他反垃圾信息技术(如 hashcash 或验证码)。如果一个中继器被用作垃圾信息载体,它很容易被客户端取消,客户端可以继续从其他中继器获取更新。

问题 4: 数据存储

为了让网络保持健康,不需要数百个活跃的中继器。事实上,它只需要少数几个就可以很好地工作,因为在现有中继器开始出错的情况下,可以很容易地创建新的中继器,并在网络中传播。因此,所需的数据存储量在一般情况下,要比 Mastodon 或类似软件要少。

或者考虑一个不同的结果:其中存在数百个由业余爱好者运行的利基中继器,每个负责一小群用户的更新中继工作。这种架构也可以扩展:数据从用户发送到单个服务器,然后从该服务器直接发送到将使用该数据的用户。它不必由其他任何人存储。在这种情况下,对于任何单个服务器来说,处理来自其他服务器的更新都不是很大的负担,拥有业余服务器也不是问题。

问题 5:视频等重内容

中继器很容易拒绝大数据的内容,或者对接受和托管大数据内容收费。当信息和激励明确时,市场力量很容易解决这个问题。

问题 6:显示方式

每个客户端都可以决定如何最好地向用户显示帖子,比如使用人工智能来决定你将看到的更新的顺序,到只是按时间顺序阅读它们。

四、FAQ

1、这很简单,那为什么以前没有人这样去做?

答:我不知道,但我想这与以下事实有关:创建社交网络的人要么是想要赚钱的公司,要么是想完全没有服务器就做东西的 P2P 积极分子,他们都没有看到 Nostr 使用的两个世界的特定组合。

2、我如何找到要关注的人?

答:首先,你必须了解他们,并以某种方式获得他们的公钥,无论是通过询问还是在某处看到。进入 Nostr 社交网络后,你就可以看到他们与其他人的互动,然后你也可以开始关注这些人并与之互动。

3、我怎么找到中继器?如果我没有和别人连接到相同的中继器会发生什么?

答:你将无法和那个人交流。但是可以使用事件提示,以便你的客户端软件(或你手动)知道如何连接到其他人的中继器并与它们交互。未来也有其他的想法来解决这个问题,但我们永远不能保证完美的可达性,任何协议都不能。

4、我可以知道有多少人在关注我吗?

答:不,但是如果中继器以额外的协议方式协作,你可以获得一些估计值。

5、人们运行中继器的动机是什么?

答:这个问题具有误导性,它假设中继器是免费的,人们可以通过它们移动数据。是的,在这种情况下,激励机制并不存在。这实际上也适用于所有其他 p2p 网络堆栈中的 DHT 节点 : 人们有什么动机去运行 DHT 节点?

6、如果中继器只是在 AWS 或 Azure 上,那又有什么区别?

答:今天,全球有成千上万的 VPS 提供商,而不仅仅是 AWS 或 Azure 这两家。AWS 或 Azure 正是大规模的单一中心化服务提供商所使用的提供商,而对于较小的中继服务器,任何 VPS 都可以很好地完成这项工作。

协议规范

请参阅 NIP‌,尤其是 NIP-01,以获得对协议规范的合理详细解释(提示:它非常简短)。

来源:https://www.theblockbeats.info/news/33075

评论

所有评论

推荐阅读

  • 伊朗消息人士:伊美谈判准备工作“今晚或明天”或取得突破

    Cointime 报道,4月23日讯,一名伊朗外交消息人士23日告诉俄新社,伊朗与美国在巴基斯坦谈判的准备工作可能在“今晚或明天”取得突破。(新华社)

  • Anthropic二级市场估值升至万亿美元 超越OpenAI

    Cointime 报道,4月23日,Anthropic在Forge Global等未上市企业股权交易平台上的估值已升至1万亿美元左右,超过OpenAI的8800亿美元。据悉,由于买家正在竞相抢购Anthropic日益减少的二级市场股票,使得这家人工智能初创公司的估值迅速攀升。(东新社)

  • BTC突破78000美元

    Cointime 报道,行情显示,BTC突破78000美元,现报78000.81美元,24小时跌幅达到0.14%,行情波动较大,请做好风险控制。

  • Bitmine疑似买入10万枚ETH,价值2.337亿美元

    Cointime 报道,4月23日,据Lookonchain监测,3个疑似与Tom Lee旗下Bitmine关联的新地址(0xB6a8...9c9E,0xc2e0...2831,0x4e5C...276c)从BitGo接收了10万枚ETH,价值2.337亿美元。

  • 马斯克:预计未来AI芯片将严重不足

    Cointime 报道,4月23日,特斯拉CEO马斯克在财报电话会上表示,特斯拉之所以启动Terafab芯片工厂项目,是因为公司预计未来AI芯片将严重不足。他表示:“就行业增长速度而言,逻辑芯片,甚至更多的是存储芯片,我们预计如果我们不自己制造芯片,就会遇到瓶颈。这就是Terafab的诞生原因。”(东新社)

  • 美国现货以太坊ETF昨日净流入9643万美元

    Cointime 报道,4月23日,据Trader T监测,美国现货以太坊ETF昨日净流入9643万美元。

  • 美国务院要求美在伊朗公民立即离境

    Cointime 报道,4月23日,美国国务院领事事务局22日在社交媒体上发文说,鉴于伊朗已宣布部分重开领空,美国在伊朗公民应立即离境。帖文说,领事事务局建议美国公民关注当地媒体关于局势的最新发布,同时可向商业航空公司咨询飞离伊朗航班的信息。此外,美公民还可通过陆路前往亚美尼亚、阿塞拜疆、土耳其和土库曼斯坦,但应避免前往阿富汗、伊拉克或巴基斯坦与伊朗接壤地区。(东新社)

  • 美国现货比特币ETF昨日净流入3.319亿美元

    Cointime 报道,4月23日,据Trader T监测,美国现货比特币ETF昨日净流入3.319亿美元。

  • 特斯拉:正在增加AI算力投入,推进电池及电池材料新工厂建设

    Cointime 报道,4月23日讯,特斯拉官博发文表示,公司正在增加AI算力投入,推进电池及电池材料新工厂建设,并进一步为第三代Megapack储能系统、特斯拉无人驾驶电动车Cybercab和特斯拉电动卡车Semi的投产做好准备。 (金十)

  • 伊朗未正式回应延长停火期限

    Cointime 报道,4月23日,对于美国总统特朗普宣布延长临时停火期限,以及是否与美国进行第二轮谈判,伊朗目前都没有任何官方正式回应。伊朗舆论普遍认为,美方言行矛盾以及不断变化的政策,是伊朗无法信任美国的主要原因。而以色列多次违反黎以停火协议,以及美国持续对伊朗进行海上封锁,是影响谈判进程的关键因素。分析指出,再次爆发战争和冲突的风险仍然很高,如果双方继续坚持当前的诉求和条件,本次地区危机的性质或将从纯粹的伊美问题演化为全球问题。