Amethyst/Damus中的nostr是什么?
admin
2023-08-03 06:50:49
0

什么是nostr?

基于加密密钥对的去中心化网络,不是点对点的,它超级简单且可扩展,因此有机会发挥作用。

nostr – 中继传输的笔记和其他内容

最简单的开放协议,能够一劳永逸地创建一个抗审查的全球“社交”网络。

它不依赖于任何受信任的中央服务器,因此具有弹性;它基于加密密钥和签名,因此是防篡改的;它不依赖于 P2P 技术,因此可以正常工作。

如果您不打算阅读其他任何内容,那么它是如何工作的非常简短的总结:

每个人都运行一个客户端。它可以是本机客户端、Web 客户端等。要发布某些内容,您可以写一篇文章,用您的密钥对其签名并将其发送到多个中继(由其他人或您自己托管的服务器)。要从其他人那里获得更新,您可以询问多个中继他们是否了解这些其他人。任何人都可以运行中继。继电器非常简单和愚蠢。除了接受某些人的帖子并转发给其他人之外,它什么都不做。不必信任中继。签名在客户端进行验证。

如何开始使用 Nostr

Nostr客户端功能比较

基于 Nostr 的项目列表

这是必需的,因为其他解决方案已损坏:

推特的问题

  • 推特有广告;
  • Twitter 使用奇怪的技术让你上瘾;
  • Twitter 不会显示您关注的人的实际历史提要;
  • 推特禁止人们;
  • 推特影子禁令人。
  • Twitter 有很多垃圾邮件。

Mastodon 和类似程序的问题

  • 用户身份附加在第三方控制的域名上;
  • 服务器所有者可以像 Twitter 一样禁止您;服务器所有者也可以阻止其他服务器;
  • 服务器之间的迁移是事后才想到的,只有在服务器协作的情况下才能完成。它在对抗环境中不起作用(所有追随者都丢失了);
  • 运行服务器没有明确的动机,因此它们往往由爱好者和希望将自己的名字附加到一个很酷的域的人运行。然后,用户受制于一个人的专制,这往往比推特这样的大公司还要糟糕,无法迁移出去;
  • 由于服务器往往是业余运行的,所以它们经常会在一段时间后被放弃——这实际上等同于禁止所有人;
  • 如果来自每台服务器的更新都必须痛苦地推送(并保存!)到大量其他服务器,那么拥有大量服务器是没有意义的。服务器往往数量庞大,因此必须更频繁地将更多数据传递到更多地方,这一事实加剧了这一点;
  • 对于视频共享的具体示例,ActivityPub 爱好者意识到完全不可能像文本注释那样在服务器之间传输视频,因此他们决定仅从发布视频的单个实例托管视频,即类似于 Nostr 方法。

SSB(Secure Scuttlebutt)的问题

  • 它没有太多问题。我认为这很棒。事实上,我打算以此为基础,但是
  • 它的协议太复杂了,因为它根本没有被认为是一个开放协议。它只是用 JavaScript 编写的,可能是解决特定问题的一种快速方法,并从中发展而来,因此它有奇怪和不必要的怪癖,比如签署一个必须严格遵守ECMA-262 第 6 版规则的 JSON 字符串;
  • 它坚持从单个用户那里获得一系列更新,这对我来说是不必要的,而且会增加膨胀和僵化的东西——每个服务器/用户都需要存储所有的帖子链以确保新的有效。为什么?(也许他们有充分的理由);
  • 它不像 Nostr 那样简单,因为它主要是为 P2P 同步而制作的,“pubs”是事后才想到的;
  • 不过,可能值得考虑使用 SSB 而不是这种自定义协议,并仅使其适应客户端中继服务器模型,因为重用标准总是比尝试让人们使用新标准更好。

其他解决方案要求每个人运行自己的服务器的问题

  • 他们要求每个人都运行自己的服务器;
  • 有时人们仍然会在这些方面受到审查,因为域名可能会受到审查。

Nostr 如何运作?

  • 有两个组件:clientsrelays。每个用户运行一个客户端。任何人都可以运行中继。
  • 每个用户都由公钥标识。每个帖子都有签名。每个客户端都会验证这些签名。
  • 客户端从他们选择的中继获取数据并将数据发布到他们选择的其他中继。中继不与另一个中继通信,仅直接与用户通信。
  • 例如,要“关注”某人,用户只需指示他们的客户端查询它知道的中继以获取来自该公钥的帖子。
  • 在启动时,客户端从它知道的所有中继中查询它所关注的所有用户的数据(例如,从最后一天开始的所有更新),然后按时间顺序向用户显示该数据。
  • “帖子”可以包含任何类型的结构化数据,但最常用的数据将进入标准,以便所有客户端和中继可以无缝地处理它们。

它如何解决上述网络无法解决的问题?

  • 用户被禁止和服务器被关闭

    • 中继可以阻止用户在那里发布任何内容,但这对他们没有影响,因为他们仍然可以发布到其他中继。由于用户是通过公钥识别的,因此当他们被禁止时,他们不会失去他们的身份和他们的追随者基础。
    • 不需要用户手动输入新的中继地址(虽然这也应该被支持),每当你关注的人发布服务器推荐时,客户端应该自动将其添加到它将查询的中继列表中。
    • 如果有人正在使用一个中继发布他们的数据但想迁移到另一个中继,他们可以发布一个服务器推荐到之前的中继然后去;
    • 如果某人被多次中继禁止,以至于他们无法广播他们的服务器推荐,他们仍然可以通过其他方式让一些亲密的朋友知道他们现在正在发布哪个中继。然后,这些密友可以向该新服务器发布服务器推荐,慢慢地,被禁用户的老粉丝群将开始从新中继重新找到他们的帖子。
    • 当继电器停止操作时,上述所有内容也有效。
  • 抗审查

    • 每个用户都可以将他们的更新发布到任意数量的中继。
    • 中继可以向用户收取费用(目前该费用的协商不在协议范围内)以在那里发布,这确保了审查抵抗(总会有一些俄罗斯服务器愿意拿你的钱来换取服务你的帖子).
  • 垃圾邮件

    • 如果垃圾邮件是中继的一个问题,它可能需要支付发布费用或其他形式的身份验证,例如电子邮件地址或电话,并将这些在内部与公钥相关联,然后发布到该中继——或其他反垃圾邮件技术,如 hashcash 或验证码。如果中继被用作垃圾邮件载体,它很容易被客户端取消列出,客户端可以继续从其他中继获取更新。
  • 数据存储

    • 为了让网络保持健康,不需要数百个活跃的中继。事实上,考虑到在现有中继开始出现异常时可以轻松创建新中继并通过网络传播这一事实,它只需少数几个就可以正常工作。因此,所需的数据存储量通常比 Mastodon 或类似软件要少。
    • 或者考虑一个不同的结果:其中存在数百个由业余爱好者运行的利基中继,每个中继来自一小群用户的更新。该体系结构也可以扩展:数据从用户发送到单个服务器,然后从该服务器直接发送到将使用该数据的用户。它不必由其他任何人存储。在这种情况下,任何一台服务器处理来自其他服务器的更新都不是很大的负担,拥有业余服务器也不是问题。
  • 视频等重磅内容

    • 中继很容易拒绝大型内容,或者对接受和托管大型内容收费。当信息和激励明确时,市场力量很容易解决问题。
  • 欺骗用户的技巧

    • 每个客户都可以决定如何最好地向用户显示帖子,因此始终可以选择以您想要的方式使用您想要的内容——从使用 AI 来决定您将看到的更新顺序到只阅读它们按时间顺序。

FAQ

  • 这很简单。为什么以前没有人这样做过?

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

  • 我如何找到要关注的人?

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

  • 我如何找到继电器?如果我没有连接到其他人连接的相同继电器会怎样?

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

  • 我可以知道有多少人关注我吗?

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

  • 人们跑接力赛的动机是什么?

    这个问题具有误导性。它假设中继是存在的免费哑管道,以便人们可以通过它们四处移动数据。在这种情况下,是的,激励措施将不存在。事实上,所有其他 p2p 网络堆栈中的 DHT 节点都可以这样说:人们运行 DHT 节点的动机是什么?

  • Nostr 使您能够在服务器中继之间移动或使用多个中继,但如果这些中继仅在 AWS 或 Azure 上,有什么区别?

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

 

nostr是迄今为止最简洁的可以用来创建抗审查的“社交网络”的开源协议。nostr不依赖于任何可信任(trusted)的中心化服务器,因此具有弹性;它基于公钥密码学的密钥和签名,所以它防篡改;它不需要依赖P2P技术就能工作

·它只有两个组件:客户端(Clients)中继器(Relays)。每个用户都运行一个客户端。任何人都可以运行中继器。

·每个人都有一个独一无二的公钥。每个帖子都用私钥签名。每个客户端都验证这些签名。

·客户端从选择的中继器中获取数据,并把数据传输给其它选择的中继器。中继器之间互不通信,只与客户端通信。

太长不看版工作原理:

每个人都运行一个客户端。它可以是本地客户端,也可以是网页客户端等等。要发布内容,你需要用密钥把内容签名发送给其它多个中继器(你自己的或别人的服务器)。要从其他人那里获得最新的信息,你可以询问多个中继器是否知道其他人的任何信息。任何人都可以运行中继器。中继器非常蠢,它除了接收信息和发送信息,其它什么也不做。中继器不需要被信任,因为验证签名的是客户端。

使用nostr,你需要客户端和密钥。

ChatGPT中国体验版点击进入:https://yundongfang.com/chatgpt.php

相关内容

热门资讯

Windows 11 和 10... Windows 11/10 文件夹属性中缺少共享选项卡 – 已修复 1.检查共享选项卡是否可用 右键...
Radmin VPN Wind... Radmin VPN 是一款免费且用户友好的软件,旨在牢固地连接计算机以创建一个有凝聚力的虚拟专用网...
事件 ID 7034:如何通过... 点击进入:ChatGPT工具插件导航大全 服务控制管理器 (SCM) 负责管理系统上运行的服务的活动...
如何修复 Steam 内容文件... Steam 内容文件锁定是当您的 Steam 文件无法自行更新时出现的错误。解决此问题的最有效方法之...
Hive OS LOLMine... 目前不清退的交易所推荐: 1、全球第二大交易所OKX欧意 国区邀请链接: https://www.m...
如何在电报Telegram中隐... 点击进入:ChatGPT工具插件导航大全 在Android上的电报中隐藏您的电话号码 您可以通过切换...
Hive OS 部署 PXE ... 目前不清退的交易所推荐: 1、全球第二大交易所OKX欧意 国区邀请链接: https://www.m...
在 iCloud 上关闭“查找... 如果您是 Apple 的长期用户,您肯定会遇到过 Find My 应用程序,它本机安装在 iPhon...
在 Windows 11 中打... 什么是链路状态电源管理? 您可以在系统控制面板的电源选项中看到链接状态电源管理。它是 PCI Exp...
如何在 iPhone 14 P... Apple 的 iPhone 14 Pro 是第一款配备 48MP 传感器的 iPhone。所有以前...