因为在中文区没有搜到较为详细的对于 Nostr 协议网络的文章,所以准备自己写一个系列。这是本系列文章的第四篇,讲一下 Nostr 网络中域名 Nip-05 的配置方法及 NIP 标准。
在第二篇中我们讲了一下新手入门 Nostr 网络时如何使用社交应用,为了让大家先用起来,在实际的操作中去感受 nostr 网络上的气氛,同时也降低大家的准入门槛,所以对 NIP-05 只是提了一下(个人主页信息设置那里),今天就专门来讲一下 NIP-05 是什么以及如何设置,在此基础上也会对 NIP 标准进行简单的介绍。
NIP-05#
NIP-05 是什么?#
简单点来说,NIP-05 就是给每个用户设置的相比于公钥更容易识别的 ID 名。
我们知道在 Nostr 网络中每个用户的 ID 是一长串不规则的文字,也就是公钥。如果我要在 Nostr 网络中寻找用户 A,必须搜索 A 的公钥才能找到 Ta。但是公钥太长了,不方便保存和传播,同时也不便于人类对其进行辨识,于是便出现了解决方案 - 用一个更为人类可读的名字绑定在公钥上。
专业点说,NIP-05 使 Nostr 用户能够将自己的公钥映射到基于 DNS 的互联网标识符。验证机制类似于 Google 要求您使用 DNS 记录验证您对域的所有权的方式。 验证的主要好处是它允许通过人类可读的名称来识别 Nostr 用户,而不是通过长而难以记住的公钥。这使经过验证的 Nostr 用户能够轻松地与他人分享他们的身份。
NIP-05 设置方法#
为了拥有一个 NIP-05 的域名,我们可以通过两种方式来获得它。
-
在应用端,找到 NIP-05 的设置框(一般位于个人主页的编辑页面),然后购买官方提供的域名(没买过)。
-
如果你有自己的域名,那你可以把它验证后绑定到 Nostr 网络。下面主要是对这种方式的介绍。
比如我的域名是www.hoodrh.top,我的个人站点是用 hexo 建立的,所以我会在 hexo 的
_config.yml 文件中的include下添加 “well-known/**”,然后在 source 文件下建立文件夹 “well-known”(官方说建立 “.well-known” 但是 Mac 系统的点文件是留给系统的),然后在 “well-known” 文件夹下建立一个 “nostr.json” 文件即可。JS 文件的内容为:
{
"names": {
"hoodrh": //你自己的nostr网络username
"npub1e9euzeaeyten7926t2ecmuxkv3l55vefz48jdlsqgcjzwnvykfusmj820c" //你的公钥ID
}
}
然后将文件保存并上传 hexo 即可。然后我就得到了 NIP-05 的地址:[email protected],也就是 “usernam@自己的域名”。
可以不设置 NIP-05 吗?#
当然可以,如果你没有自己的域名,又不想买,那就完全没必要去设置它。目前来看设置 NIP-05 的作用就是显示一个认证的标识而已。基本上日常关注好友之类的操作,完全可以通过复制公钥来实现。相信随着各种应用端搜索技术的增强,也可以支持搜索 username 来查找用户了。(我就要紫标认证✅!
NIP 标准#
什么是 NIP 标准#
NIP 是一系列的协议接口标准,统一规定了各种常用功能使用时的接口元素和细节,这样有利于整个网络上不同应用之间建立通道,从而让一个用户发送的内容可以在 nostr 网络上的所有应用之间都被识别和传播。
NIP 详细分类介绍#
这里大概讲一下不同 NIP 标准所支持的 nostr 功能,更技术性的说明在这里查看
-
NIP-01 - 基本协议流程描述,是用于客户端和中继之间通信的协议。它涉及事件的交换,事件是包含各种信息的对象,例如唯一 ID、时间戳和标签。
-
NIP-02 - 联系人列表和昵称
-
NIP-03 - 事件的 OpenTimestamps 证明 [未计划]
-
NIP-04 - 加密私信
-
NIP-05 - 将 Nostr 密钥映射到基于 DNS 的互联网标识符
-
NIP-06 - 从助记种子短语推导基本密钥
-
NIP-07 - 网络浏览器的 window.nostr 功能 [不适用]
-
NIP-08 - 处理提及
-
NIP-09 - 事件删除 [部分]
-
NIP-10 - 客户端在文本事件中使用 e 和 p 标签的约定
-
NIP-11 - 中继信息文件
-
NIP-12 - 通用标签查询
-
NIP-13 - 工作量证明
-
NIP-14 - 文本事件中的主题标签
-
NIP-15 - 存储事件结束通知
-
NIP-16 - 事件处理
-
NIP-19 - bech32 编码的实体
-
NIP-20 - 命令结果
-
NIP-21 - nostr:URL 方案
-
NIP-22 - 事件 created_at 限制
-
NIP-25 - 反应
-
NIP-26 - 委托事件签名
-
NIP-28 - 公开聊天
-
NIP-33 - 参数化可替换事件
-
NIP-36 - 敏感内容
-
NIP-40 - 过期时间戳
-
NIP-42 - 客户端到中继的身份验证
-
NIP-50 - 关键字过滤器
-
NIP-56 - 报告
-
NIP-65 - 中继列表元数据
好了,今天就到这里,明天再见。祝你在 Nostr 网络中玩得愉快。