QUEST LOG · December 23, 2025· UPDATED October 29, 2026
Solid(ar)ity、団結? カードと交流の中から、あなたと私を見つける
Solid(ar)ity の宣伝のために書きました。名前の付け方がひどすぎて、検索してもなかなか出てこないからです。この記事は、まる一年開発してきた血と涙の歴史でもあります
サイファーパンク(cypherpunk)はずっとかっこいいテーマだと思っていますが、それを普通の人の手にどう届けるかは、また別の話です。
2024 年の DevCon で、私は DID(分散型アイデンティティ)と、アイデンティティを本当に社会実装するにはどうするか、にどっぷり浸かり始めました。そのとき友達とチェンマイで小さなイベント WAMO を開いて、ついでに当時作りたかったものを紹介していました。P2P の交流をベースにしたソーシャルアプリです。そのアプリをどう作るかは、これまた別の話でした。
# 名刺、最古の P2P プロトコル
Devcon に長くいると、エンジニアなんて基本ポンコツなので、あんな大きな場では誰ともまともに交流できず、人間観察の術に頼るしかありません。会場でしばらく観察していて気づいたのは、人と人が知り合う方法って実はあまり変わっていない、ということでした。名刺を交換する、tg を追加する、お互いにフォローする。
そして名刺そのものが、完璧な P2P プロトコルなんです。
- サーバー不要。私が渡せば、あなたの手元にある
- アカウント不要。紙に書いてあることがすべて
- 私の会社が潰れても、あなたの手元の名刺は残る
前の会社では、ネタ枠のプレゼント交換で名刺を出した人までいましたが、それでもそれがその人の存在証明だということははっきりわかりました。
でも名刺には致命的な問題が一つあります。書いてあることが本当かどうか検証できないことです。「某大手企業 シニアエンジニア」と書いた名刺を刷るコストはゼロです。
逆に、デジタル世界のアイデンティティはどれも検証できますが、全部プラットフォームに預けっぱなしです。LinkedIn にアカウントを凍結されたり、Twitter がルールを変えたりすれば、あなたのアイデンティティは消えます。しかも誰と知り合い、何を交換したかも、全部プラットフォームのデータです。考えてみると少し悲しいですよね。現代人は、自分が存在する権利すら自分の手に握れていないのです。
# Solid(ar)ity がやりたいこと
Solid(ar)ity がやりたいのは、この 2 つを組み合わせることです。紙の名刺のように自分のものでありながら、デジタルのアイデンティティのように検証できる。
最初のバージョンで実現したのは、コア全体を AirDrop での交換にすることでした。P2P で、どんな仲介者も通さずにアイデンティティを交換し、相手のアイデンティティを連絡先として保存し、さらに WebRTC をコミュニケーションの橋渡しとして加えました。
その後少しずつ手を入れて、「検証可能なプロフィールページ+名刺」になりました。鍵を自分で握っている Linktree を想像してもらえればいいと思います。ページ上のリンク、アカウント、証明は、どれも見知らぬ誰かが暗号学的に検証できるか、そうでなければ正直に「検証できない自己申告」と表示されます。
私たちがこだわっている原則がいくつかあります。
- ユーザーデータを保存するサーバーを持たない。ユーザーデータは保存しない、アカウントは作らない、検証の経路に立たない
- 緑のチェックは「コントロール」を表すもので、アイデンティティではない。意味するのは「この人は今このアカウント/ドメイン/鍵をコントロールしている」ということで、有名だとか、誠実だとか、本当に名乗っているとおりの人物だとかではない
- 証拠まであと一歩。どのバッジもタップすれば、プラットフォーム自身による証明が見られる。たとえば DNS レコードや、署名済みの投稿など
そしてプロジェクト全体の大原則は一言です。「会社が潰れても、仕組みは残る」。データはあなたのスマホと、あなた自身の iCloud や Google Drive に。公開は Nostr や atproto のような、私たちを必要としないオープンなネットワークを通します。とはいえ今は逆に、そういう大きなサービスのほうが潰れないか心配だったりしますが……。
それでも検証はすべてユーザーの端末上で動きます。たとえ明日私たちが消えても、すべてのカード、すべての証明は検証できるままです。
# カードを交換するその瞬間
イベント会場に話を戻しましょう。二人が出会って、アプリを開いて、QR を読み取る。
- 受け取るのは相手が署名したカードで、適当なスクリーンショットではない
- どの情報を見せるかは相手が決める。データを全部さらけ出さなくても、「私は某イベントの参加者です」ということだけを証明できる
- 保存した連絡先は、あとで相手がページを更新すると、静かにもう一度検証される
この過程でサーバーは一切通りません。2 台のスマホの間だけで完結します。名刺を手渡すのと同じです。
# なぜ Solid(ar)ity という名前なのか
名前は Solidarity(団結)で、真ん中の ar を括弧でくくると、ちょうど Solidity にもなります。伝えたかったのは、信頼がどんどん希少になっていくネットの世界で、人と人のつながりは、検証できて、なおかつ誰にも独占されない土台の上に築かれるべきだということです。
それで……まさにこの名前のせいで、検索エンジンではほぼ見つかりません。solidarity で検索すると労働組合や社会運動ばかり、solidity で検索するとスマートコントラクトのチュートリアルばかり。名前付けは本当にエンジニア最大の弱点だと、ここは認めます。
なので、もしこの記事を読んでくれたなら、ぜひ GitHub を覗いてみてください。あるいは次にイベントで会ったら、カードを一枚交換しましょう。
公開中のアプリ
iOS・Android で無料。


