Nostrのアカウントをつくってみた
最近タイムラインで謎の公開鍵を見かけるので気になって使ってみました。
※備忘録的な記事で最初の方で失敗してますので、もしご参考にされる方は後半からの方がスムーズかもしれません。
https://astral.ninja/ というwebで動くTwitterっぽいクライアントを利用します。
先ず公開鍵を生成します。この記事のタイトルでは分かりやすくアカウントつくるといっていますが鍵のペアをつくって、それを元にNostrと対話するイメージです。
「GENERATE KEYS」を押下すると以下のようにリレーの選択が出てきます。デフォルトでいい感じのを選んでくれているのでこのままでいきます。水色の部分が公開鍵です。
上記の画面で「PROCEED」を押すと下記画面が出てきます。赤枠のprofileは公開鍵がユーザー名のような扱いだと寂しいので編集できるようです。NIP-05が技術色強くてちょっとよく分かりませんでした(Nostr独自の人間が読める識別子を意味するようです)。
NIP-05 https://github.com/nostr-protocol/nips/blob/master/05.md
しかしここでEDITできないという問題が…
秘密鍵はデバイス(今回だとPC)に保存されているので署名できません。つまり見るだけになってしまいます。
どこかで鍵のペアを生成してから秘密鍵を確認して、astralの最初のページで秘密鍵を入力するとastralからでもプロフィールの編集やフォロー、投稿ができるようです。
ちなみに画面はこんな感じ↓ この鳥のモチーフはjackもツイートしてたのですが何なんでしょう?
気になって調べたらNostrのostrich(ダチョウ)=Nostrichというキャラクターみたいです。つよそうですね。
気を取り直して鍵ペアを生成していきます。
astralのFAQで↓とあったのでAlbyで試してみます。
"Nostr NIP-01仕様に準拠した鍵の生成方法であれば、どのような方法でも構いません。デスクトップの場合は、getAlbyやnos2xのようなブラウザ拡張機能を使用することをお勧めします"
"getAlbyを使用する nos2xよりもセットアップが長いですが、パスワードで保護され、Lightningウォレットが付属し、メンテナンスが行き届いています"
https://getalby.com/ にアクセスしてクローム拡張をインストールしパスワードを入力します。
Lightning walletとの接続を選択します。今回はAlbyにしました。
もろもろ設定が終わったら拡張機能の設定画面に移動し、下にスクロールすると以下の画面に辿り着きます。赤枠の「Generate」を押すと秘密鍵が生成されます。
次にastralで秘密鍵を入力します。私の場合、先ほどデバイスに鍵が保存されてしまったので下記画像の赤文字「DELETE LOCAL DATA」で削除してから、画面をリロードします。
リロード後の画面が以下です。今回は「USE PUBLIC KEY FROM EXTENSION」をクリックします。
エクステンションが起動し、公開鍵の読み取りを許可しますか?と出るのでConformします。秘密鍵をコピペする必要はありませんでした。
1,2分待つとリレーがいい感じになったのかprofileの編集や投稿などができました。
https://astral.ninja/event/a4098a6a434d740ea05fac93c7e92bc680ffad62dfb512796db7c5e6b127eb8e
表示の読み込みが10秒くらいかかる場合があります。
ちなみにリレー間でデータはやり取りされないので、他のリレーに接続してる場合、お互いのイベントが見えないことがあるようです↓
"私がリレーAに接続していて、あなたがリレーBに接続している場合、両方ともnostrを使用していても、お互いのイベントを見ることができません!
互いのイベントを表示するには、ユーザーは同じリレーに接続する必要があります。したがって、上記のシナリオであなたのイベントを見たい場合は、リレーBに接続する必要があり、通信できるようになります!"https://usenostr.org/ 自動翻訳で引用
ここが検閲耐性の肝で https://estudiobitcoin.com/nostr-solucionando-la-censura-de-una-vez-por-todas/ が詳しかったです。
--
おもしろそうなツール集 https://github.com/aljazceru/awesome-nostrより6個まとめてみました。
①リレーステータスのリアルタイムチェック https://nostr.watch/
遅いですがインターネットって感じがしてとてもいいです(語彙)
②Twitterぽいクライアント、astralのフォーク元 https://branle.netlify.app/
グローバルフィード(タイムラインみたいなもの)の有無が違いみたいです。astralで設定したプロフィールや投稿、フォロー状況がそのままあります。おもしろい!
③チェスができるみたいです(!?) https://jesterui.github.io/
④統計がみられるサイト https://nashboard.space/
⑤ブラウザのWeb5 Wallet https://github.com/block-core/blockcore-wallet
以前TBDのディスコードでも見かけたのですが、web5で使うDID,VCなどに対応可能でNostrにも対応してるらしいです。積極的に発信されてるのでTBDのインキュベーションで取り込まれるのかなと思ったりしてます。以下機能です。
- Multiple wallets with multiple accounts- Web5 wallet for identity and data- Payment requests- Decentralized blockchain API discovery- Internationalization support with multiple languages and LTR/RTL support.- Nostr support
⑥ちょっと番外編で https://damus.io/key/
"Damus、anigma、astral は npub/nsec キー形式を使用しますが、他のクライアントは hex を使用します。npub/nsec から 16 進形式に変換するには、このツールを使用します"https://github.com/vishalxl/nostr_console/discussions/31 から自動翻訳で引用
Twitterで投稿されてる公開鍵とastralの鍵が違うなと思ったら暗号化のプロセス(?)が違うようなので変換に便利かもです。ただastralでdamus keyを検索するとhexでちゃんと出てきました。
--
まだ触ってみたというだけで詳しくは追えてないですが、リレーによる検閲耐性や哲学の部分、スパム対策でリレイヤーが課金できるようになったりするみたいで、おもしろそうなので別の機会でもっと調べてみたいです。今回はTwitterぽい使い方に注目しましたがTelegramライクなものがあったりメモ帳的なものがあったりして用途はたくさんあるので別のも試してみようと思いました。
--
参考リンク
ホームページ https://www.nostr.net/分かりやすかった説明 https://usenostr.org/ 中級編の説明:哲学、検閲耐性、スパム対策などhttps://estudiobitcoin.com/nostr-solucionando-la-censura-de-una-vez-por-todas/Nostr Social Networkの説明https://github.com/vishalxl/nostr_console/discussions/31
(なにかあっても責任を負えませんのでご了承くださいm)
ブラウザ拡張機能は基本的にどれも嫌いですが、nos2xというネーミングはめちゃくちゃ好きですw