1. NIP-05 简介

NIP-05 认证服务,通过验证域名的持有身份,就可以在支持 NIP-05 的客户端里展示一个和微博 Twitter 认证类似的 V 的小图标。其基本原理是,域名持有者,在域名路径下返回一个 json 格式的数据内容,域名路径类似于:https://sci.ci/.well-known/nostr.json?name=qifei,点击此链接,你能看到返回的 json 文本为,

1
2
3
4
5
{
"names": {
"qifei": "dca5a66fed9db68c042d40e944619d1be0a6c14147f6aa54b5f02efea5551d90"
}
}

在 Nostr 客户端中,例如 Damus,配置 nip05 认证的格式为 qifei@sci.ci,这里的 qifei 我们叫做 name,sci.ci 为域名。
这是我的 Nostr 账户的认证例子。

2. 免费认证服务

如果你没有自己的域名或者不想更改你的 web 服务器内容,那么你可以使用现有的免费认证服务,nost.vip 提供了这项服务,在 nip05 认证信息中直接填写形如以下字符的内容,

npub.....@nost.vip

这里 npub 开头的字符串是你的 nostr 账户 id,比如我的账户 id 是 npub1mjj6vmldnkmgcppdgr55gcvar0s2ds2pglm254947qh0af24rkgqwelkyh
对应认证信息为

npub1mjj6vmldnkmgcppdgr55gcvar0s2ds2pglm254947qh0af24rkgqwelkyh@nost.vip

这样我就有了 nost.vip 的认证

3. Github Pages 认证

如果你没有域名,或者有自己的域名但没有服务器,那么你可以使用 github pages 的域名,例如我的 github page 为 xieqifei.github.io,我就可以认证到这个域名下,当然也可以在 github 设置中添加自定义域名。

这里默认你已经了解 github pages 并用它创建过自己的博客页面。如果你不了解 github page,你可能需要其他的功课。一个简单的介绍,github pages 可以将你命名形如为 your-username.github.io 的仓库转为网站目录,你在里面防止的任何文件都可以以 your-username.github.io 加路径的方式访问。

现在开始创建一个,以你用户名开头并以.github.io 结尾的仓库,如果已有可以忽略。
具体步骤如下:

  1. 在仓库里新建一个**.well-known**的文件夹
  2. well-known文件夹中新建一个nostr.json文件
  3. 进入网页https://damus.io/key/ 将你以 npub 开头的 damus key 转为 hex 格式的 hex key
  4. nostr.json文件中放入以下内容
1
2
3
4
5
{
"names": {
"yourname": "hex key"
}
}
  1. 修改 yourname 为任意字符串,hex key 为第三步转换的结果。保存nostr.json
  2. 在仓库的根目录中创建一个文件名为**.nojekyll的文件,该文件.nojekyll**将允许 GitHub 页面为静态 json 文件提供服务。
  3. 之后前往 GitHub 存储库设置以启用 GitHub 页面。

现在你应该可以通过访问 your-username.github.io/.web-known/nostr.json 获取到用于 nip05 认证的 json 信息了。
在 nostr 客户端中设置形如yourname@your-username.github.io你就拥有了 V 认证。
你也可以在 github page 中配置自己的域名,并通过设置 yourname@yourdomain.com,在客户端中展示你自己域名的认证。

评论