ruto on Nostr: いい感じの分散SNSプロトコルを想像してみる。 Secure ...
いい感じの分散SNSプロトコルを想像してみる。
Secure Scuttlebuttみたいに各ユーザーはアクティビティ(投稿やいいねやプロフィール更新など)のリストを持ち、それを各ノードで同期する。
アクティビティは1つ前のアクティビティのハッシュ値を持っていて電子署名されている。
全件取得しなくても良い。特に最新のプロフィールや最新のフォローリストなどはすぐ取得できるようにする。
ローカルデータをバックアップからリストアした場合や複数デバイスで更新した場合はチェーンがフォークするが、これをマージできるようにする。
削除を部分的にサポートする。本文をハッシュ値で置き換えたアクティビティで上書きできるようにする。他のノードにも上書きをお願いするアクティビティを公開する。
Published at
2024-02-13 15:44:57Event JSON
{
"id": "a80862cc7378c35ed0b84aab3424fd54720f2a7bc0c3ee308b6ab26e7d177f3d",
"pubkey": "2888961a564e080dfe35ad8fc6517b920d2fcd2b7830c73f7c3f9f2abae90ea9",
"created_at": 1707839097,
"kind": 1,
"tags": [],
"content": "いい感じの分散SNSプロトコルを想像してみる。\nSecure Scuttlebuttみたいに各ユーザーはアクティビティ(投稿やいいねやプロフィール更新など)のリストを持ち、それを各ノードで同期する。\nアクティビティは1つ前のアクティビティのハッシュ値を持っていて電子署名されている。\n全件取得しなくても良い。特に最新のプロフィールや最新のフォローリストなどはすぐ取得できるようにする。\nローカルデータをバックアップからリストアした場合や複数デバイスで更新した場合はチェーンがフォークするが、これをマージできるようにする。\n削除を部分的にサポートする。本文をハッシュ値で置き換えたアクティビティで上書きできるようにする。他のノードにも上書きをお願いするアクティビティを公開する。",
"sig": "00191dadb576ff5bf6c988d57f50f1e3cba560e99e2850a6535ba16da06848afa5a704300f33d14753cdb11965fb487e974e9f60ebfe2c7c78eaf2a4f0c8954f"
}