コンセプト

暗号化を第一に、はじめから分散型。

Pixelmine は、エンドツーエンドで暗号化されたソーシャルネットワークです。プライベートに共有するもの(メッセージ、フォロワー限定の投稿、そしてそれらのファイル)の内容は、あなたのデバイス上で暗号化され、その後、それを読み取れない独立運用のノードのネットワークに保存されます。公開投稿は、そのためのものなので公開のままです。軽量な連携サービスがすべてをつなぎますが、そのプライベートな内容を見ることはありません。

存在する理由

3つの約束を
礎に。

Pixelmine は、シンプルな考えから出発しています。人がつながるために使うツールは、それを使う人のものであるべきだ、という考えです。すべての設計上の判断は、3つの約束から導かれます。それは、このプロダクトの名前の由来でもあります。

分散型

投稿は1か所に置かれるのではなく、独立して運用される多数のノードに複製されるため、ストレージに単一の所有者はいません。公開投稿とフォロワー限定投稿は、個々のノードが停止しても利用でき続けます。

公正

コミュニティが生み出した価値は、そのコミュニティに還元されるべきものです。ノードは Pixelmine が用意するプールの取り分を得て、各ノードの取り分のうち決められた割合が、そのコミュニティのメンバーに渡ります。

本当にあなたのもの

あなたのアイデンティティ、コンテンツ、そしてオーディエンスは、あなたが持つものです。あなたが管理する秘密鍵がアカウントを解錠し、クライアント側の暗号化があなたのプライベートなコンテンツを守ります。ホスティングを担う運用者からでさえも。

中核となる考え方

体験とインフラを
切り離す。

アプリケーションは、コンテンツが作成され、暗号化される場所です。その下では、ノードによる分散システムが、暗号化されたデータを保存・複製します。この2つが切り離されているため、インフラを運用する人々がコンテンツの鍵を握ることは決してありません。

01 · プライバシー

運用者に中身が見えない暗号化

プライベートに共有するものはすべて、送信される前に、あなたのデバイス上でロックされます。それを保存し、受け渡すノードが持つのは、暗号化された内容だけで、読み取れるものは一切ありません。そのロックは、あなたが届けたいと考えた相手の、その人自身のデバイス上でのみ開かれます。

  • ノードを運用し、そのデータベースに完全にアクセスできる人であっても、あなたのメッセージを読むことはできません。ただし、誰が会話に参加しているかは見えます。
  • プライベートな投稿やメッセージを解錠できるのは、それが向けられた相手だけです。
  • 万が一ノードのデータが漏洩したり盗まれたりしても、プライベートなメッセージや投稿は読み取れないままです。ただし、公開投稿や、誰が誰をフォローしているかといった活動データは読み取れます。
02 · セキュリティ

将来にも通用する暗号化

暗号化は、絶えず動き続ける標的です。今日は安全なものも、コンピューターの性能が高まれば、明日には破られかねません。Pixelmine は、その変化の先を行くように作られており、今だけでなく、何年にもわたって持ちこたえるよう設計された保護を用いています。

  • 広く認められた最新の標準にもとづいて構築されているため、あなたのデータは長期にわたって保護され続けます。
  • 同じ保護が、プライベートなメッセージ、フォロワー限定投稿、そしてそれらのファイルを守ります。
  • 今日保存されたコンテンツが、より強力なマシンによって後から簡単に解錠されることはありません。
03 · 耐障害性

分散と複製

ほとんどのサービスは、すべてを1社のデータセンターに保管します。Pixelmine はその代わりに、投稿を独立して運用される多数のノードに複製し、それぞれが自分のコピーを保持します。そのため、ネットワークが単一のマシンや企業、場所に依存することは決してありません。

  • あるノードがオフラインになっても、公開投稿とフォロワー限定投稿のコピーは他のノードに残ります。チャットとコミュニティの投稿は、それをホストするノード上にあります。
  • ノードどうしが自律的に同期を保ち、実際に変わった分だけを共有します。
  • 新しいノードはいつでも参加でき、そのたびにネットワークはより強靭になります。
04 · 完全性

改ざんを検知できる

共有ネットワークでは、目にしているものが本物だと確認できる必要があります。Pixelmine は、改ざんを検知できるようにします。記録は作成した本人によって署名され、ノードは定期的に複数のピアと自分のコピーを比較し、足りないものを取得します。

  • ノードはおよそ1分ごとに複数のピアとコピーを比較し、不一致があれば足りない記録を取得して修復します。
  • メインフィードの記録には署名が付いているため、署名を通さずにその内容を偽造したり書き換えたりすることはできません。
  • ノードは届いた記録の署名を確認し、アプリも表示する際にあらためて署名を確認します。
全体の組み合わせ方

3つの要素、1つのネットワーク。

あなたのデバイス

Pixelmine アプリ

あなたの鍵を保持し、プライベートなメッセージ・フォロワー限定投稿・それらのファイルを、送信する前に暗号化します。

ストレージネットワーク

Storer ノード

独立して運用されるノードが、あなたの投稿やメッセージを保存し、投稿を互いに複製し合って、ネットワーク全体で利用可能に保ちます。

連携

連携サービス

軽量なサービスが、ユーザー間で通知を中継し、封じられた鍵を受け渡します。メッセージの内容を見ることはありません。

身近な言葉で言えば

投稿するとき、
何が起きるのか。

これまでの考え方は、シンプルな一連の流れとして組み合わさります。投稿を共有するときも、メッセージを送るときも、同じ流れです。

ステップ 01

あなたが作成する

あなたは自分のデバイス上で、アプリに投稿やメッセージを書きます。

ステップ 02

ロックされる

限られた相手に向けたものであれば、その相手だけが開けるよう、デバイスを離れる前に暗号化されます。

ステップ 03

ネットワークが保持する

ノードがロックされた内容を保持し、投稿はネットワーク全体に複製されて、必要な場所へと届きます。

ステップ 04

あなたの相手が開く

あなたが共有した相手が、自分のデバイス上でそれを解錠します。ノードを含む、それ以外のすべてにとっては、読み取れないままです。

プライバシーの性質

運用者に見えるもの、
見えないもの。

プライベートなコンテンツはネットワークに届く前に暗号化されるため、Pixelmine をホスティングする人々はそれを読み取れません。見えるのは、その周りの活動です。

運用者に見えないもの
  • プライベートなメッセージの内容
  • フォロワー限定投稿の内容
  • プライベートな写真・動画・ファイル
  • あなたの秘密鍵
運用者に見えるもの
  • 誰が誰をフォロー・ブロック・評価・リアクションしたか
  • 誰が会話に参加し、誰が各メッセージを送ったか
  • メッセージがいつ送信・既読になったか
  • グループチャットの名前
  • 公開投稿とプロフィール
透明性のために

Pixelmine が
主張しないこと。

強力なプライバシーには、正直に認めるべき限界が伴います。以下は、設計に組み込まれたトレードオフを率直に述べたものです。システムの信頼性は、何ができないかをどれだけ明確にできるかによってしか測れません。

アーキテクチャ

完全な分散型ではなく、ハイブリッド

コンテンツの保存は独立したノードに分散されていますが、軽量な連携サービス、通話サーバー、ライブ配信サーバーは中央集権的です。いずれもあなたのプライベートなメッセージや投稿を読み取ることはできませんが、それでもネットワークが依存する単一のサービスです。

メタデータ

活動データは見える

プライベートな内容は暗号化されていますが、その周りの記録はそうではありません。誰が誰をフォローしているか、誰が会話に参加しているか、誰がメッセージを送り、いつ既読になったかは、平文のアカウント ID とともに保存されます。中身はプライベートに保たれますが、誰が関わっているかはノードの運用者に見えます。

トレードオフ

現実的なトレードオフ

日常的な使いやすさのために、2人の間のメッセージは、メッセージごとに変わるのではなく、一貫して保たれる共有鍵によって保護されます。グループチャットでは、メンバーが変わるたびに鍵が更新されます。

信頼モデル

運用者は「正直だが詮索好き」

この設計は、ノードの運用者が積極的に悪意を持つわけではないと想定します。もっとも、たとえ悪意があったとしても、暗号技術によってプライベートな内容を読み取れないことは保証されます。運用者の誠実さに委ねられているのは、可用性と、保持する活動データの扱いです。

インセンティブ

運用する人々によって
支えられる。

ノードは、検証可能な働き(ピアとの同期、他ノードが検証するファイルの保持、オンラインであり続けること)に対してポイントを得て、報告には署名が付きます。そして各ノードの獲得分の一部は、そのコミュニティのメンバーに渡ります。