1. NIP-05 简介
NIP-05 认证服务,通过验证域名的持有身份,就可以在支持 NIP-05 的客户端里展示一个和微博 Twitter 认证类似的 V 的小图标。其基本原理是,域名持有者,在域名路径下返回一个 json 格式的数据内容,域名路径类似于:https://sci.ci/.well-known/nostr.json?name=qifei,点击此链接,你能看到返回的 json 文本为,
1 | { |
在 Nostr 客户端中,例如 Damus,配置 nip05 认证的格式为 qifei@sci.ci,这里的 qifei 我们叫做 name,sci.ci 为域名。
这是我的 Nostr 账户的认证例子。
2. 免费认证服务
如果你没有自己的域名或者不想更改你的 web 服务器内容,那么你可以使用现有的免费认证服务,nost.vip 提供了这项服务,在 nip05 认证信息中直接填写形如以下字符的内容,
这里 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 结尾的仓库,如果已有可以忽略。
具体步骤如下:
- 在仓库里新建一个**.well-known**的文件夹
- well-known文件夹中新建一个nostr.json文件
- 进入网页https://damus.io/key/ 将你以 npub 开头的 damus key 转为 hex 格式的 hex key
- 在nostr.json文件中放入以下内容
1 | { |
- 修改 yourname 为任意字符串,hex key 为第三步转换的结果。保存nostr.json
- 在仓库的根目录中创建一个文件名为**.nojekyll的文件,该文件.nojekyll**将允许 GitHub 页面为静态 json 文件提供服务。
- 之后前往 GitHub 存储库设置以启用 GitHub 页面。
现在你应该可以通过访问 your-username.github.io/.web-known/nostr.json 获取到用于 nip05 认证的 json 信息了。
在 nostr 客户端中设置形如yourname@your-username.github.io你就拥有了 V 认证。
你也可以在 github page 中配置自己的域名,并通过设置 yourname@yourdomain.com,在客户端中展示你自己域名的认证。