無料かつメアドや電話番号不要で使えるチャットアプリ「White Noise」レビュー、分散型プロトコル「Nostr」と暗号化を組み合わせて検閲や規制にも強い

分散型SNSプロトコルである「Nostr」と高度な暗号化を融合させ、プライバシーやセキュリティを保ちつつメッセージのやり取りが可能なチャットアプリ「White Noise」が公開されました。White Noiseは無料で使える上にユーザー登録時にメールアドレスや電話番号不要とのことで、どんなアプリになっているのか気になったので実際に使ってみました。
White Noise
https://www.whitenoise.chat/
GitHub - parres-hq/whitenoise: Secure Messaging over Nostr
https://github.com/parres-hq/whitenoise
White Noiseがどのようなチャットアプリになっているのかは、公式のFAQを読むとよくわかります。FAQの内容は以下の通り。
Q:White Noiseのユニークな点は何ですか?
A:White NoiseはNostrの分散型ネットワークと高度な暗号化を融合させている点が特徴です。中央集権型サーバーに依存する従来のアプリとは異なり、White Noiseは誰でも実行できる独立したリレーシステムであるNostr上で動作します。これにより単一障害点が排除され、検閲やシャットダウンに対するネットワークの耐性が向上します。さらに、Messaging Layer Security(MLS)プロトコルを使用することで、大規模なグループでもエンドツーエンドの暗号化を確保し、速度やプライバシーを損なうことなく、数千人のユーザー向けに安全に拡張できます。
Q:暗号化はどのように機能しますか?
A:White Noiseは動的なセキュリティを実現するために設計されたプロトコルであるMLSを使用して、すべてのメッセージを暗号化します。秘密鍵が漏えいした場合でも、過去のメッセージは前方秘匿性によって非公開のまま保持され、将来のメッセージは暗号化鍵のローテーションにより自動的に保護されます。このプロセスはポストコンプロマイズセキュリティと呼ばれ、たとえ侵害が発生しても、攻撃者は進行中の会話にアクセスできません。すべてのメッセージはNostrリレーに到達する前に暗号化されるため、リレーオペレーターであれ盗聴者であれ、第三者が内容を読み取ることはできません。
Q:政府やISPはWhite Noiseをブロックできますか?
A:White Noiseをブロックするのは極めて困難です。Nostrの分散型構造により、リレーが検閲されたり停止されたりした場合でも、ユーザーは即座にリレーを切り替えることができます。リレーはセルフホスティングも可能なため、コミュニティは中央集権的な管理の及ばない場所で独自のサーバーを維持できます。メッセージを判読不能なデータに変換するMLS暗号化と組み合わせることで、監視や検閲はほぼ不可能になります。たとえISPがトラフィックを傍受したとしても、暗号化されたメタデータしか見えず、メッセージの内容は一切分かりません。
Q:White Noiseはどのようにして遅延なく大規模なグループを処理するのでしょうか?
A:MLSは鍵配布を最適化することで大規模グループの暗号化を効率化し、デバイスの計算負荷を軽減します。一方、Nostrリレーはメッセージルーティングを効率的に処理し、1000人を超えるメンバーがいるグループでもスムーズなパフォーマンスを実現します。このプロトコル効率と分散型インフラストラクチャーの組み合わせにより、遅延が解消され、大規模な会話でも1対1のチャットと同等の応答性を実現します。
Q:データはどこに保存されますか?
A:White Noiseのメッセージはエンドツーエンドで暗号化され、複数のNostrサーバーを経由して一時的に中継されます。これらのサーバーはメッセージを読み取ることも、永続的に保存することもできません。リレーサーバーは一時的な配信ポイントとして機能し、送信後にデータを破棄します。ユーザーは、信頼できるリレーサーバーを選択するか、独自のリレーサーバーをホストすることで、プライバシーをさらに重視できます。これにより、単一の組織が通信を制御できなくなります。

Q:リレーがオフラインになるとどうなりますか?
A:White Noiseは複数のリレーに同時に接続するため、1つのリレーが故障またはブロックされた場合でも、他のリレーがシームレスに引き継ぎます。この冗長性により、メッセージは確実に配信され、少なくとも1つのリレーが動作している限りグループはアクティブな状態を維持します。ネットワーク障害や標的型検閲の試みがあった場合でも、ユーザーへの影響は最小限に抑えられます。
Q:管理者はグループ内のユーザーを削除したり検閲したりできますか?
A:グループ管理者はMLSの暗号化ツールを使用してメンバーを追放できます。追放されたユーザーはそれ以降のメッセージにアクセスできなくなり、新たな招待がなければ再参加できません。重要なのは、暗号化鍵がローテーションされるため、追放されたメンバーは新しいメッセージを復号できず、それ以降の会話が安全に保たれるという点です
Q:White Noiseはオープンソースですか?
A:はい。White Noiseは完全にオープンソースであり、誰でもコードを検査し、セキュリティに関する主張を検証できます。透明性は設計の中核を成しており、暗号化手法への信頼を高め、説明責任を確保します。オープンソース開発はコラボレーションを促進し、迅速な改善とコミュニティ主導の監査を可能にします。
Q:複数のデバイスでWhite Noiseを使用できますか?
A:White Noiseは、MLSの「リーフノード」を通じてマルチデバイスアクセスをサポートします。リーフノードはスマートフォン・ノートPC・タブレットなど、各デバイスを暗号化プロセスの個別の参加者として扱います。これにより、ユーザーはセキュリティを犠牲にすることなく、複数のデバイスで同じグループに参加できます。鍵は各デバイスにローカルに保存されるため、エンドツーエンドの暗号化を維持しながらシームレスな同期が保証されます。
Q:White Noiseはどのようにして長期的に安全を保つのですか?
A:MLSのプロトコルの柔軟性により、White Noiseはアプリを全面的に改修することなく、量子耐性アルゴリズムなどの新しい暗号規格を採用できます。これにより、進化する脅威に対してアプリを将来的にも確実に対応できます。さらに、Nostrの分散型リレーネットワークは暗号ツールを独立してアップグレードできるため、技術の進歩と組織的な干渉の両方に対する耐性を確保できます。

Q:パブリックリレーを信頼できない場合はどうすればいいですか?
A:パブリックリレーを懸念するユーザーは、独自のサーバーをセルフホスティングするか、信頼できるコミュニティが運営するプライベートリレーに参加することができます。これにより、データの移動先を完全に制御できるため、サードパーティのインフラへの依存がなくなります。また、セルフホスティングは、リレーの不正使用やデータ保持ポリシーによる影響からもユーザーを保護します。
Q:自分のメッセージがプライベートに保たれていることはどうすればわかりますか?
A:MLS暗号化によってグループメンバーのみがメッセージを復号できます。リレーは暗号化されたデータのみを受信するため、オペレーターやハッカーには解読できません。たとえリレーが侵害されたとしても、攻撃者は暗号文、つまり意味のない文字列の羅列しか得ることができません。
Q:デバイスが盗まれたらどうなりますか?
A:侵害されたデバイスは、別のデバイスを使用して直ちにグループから削除してください。MLSのポストコンプロマイズセキュリティは、暗号化鍵がローテーションされるため、今後のメッセージも保護されたままになります。盗難されたデバイスは、招待を通じて再参加しない限り、新しいメッセージにアクセスできません。管理者は招待を完全にブロックできます。
Q:無料で使えますか?
はい。White Noiseは無料かつオープンソースです。プライベートリレーの運用やプレミアムリレーの利用には多少の費用がかかりますが、コアアプリケーションと基本使用は完全に無料です。これにより、アクセシビリティを確保しながら、ユーザーがエクスペリエンスをカスタマイズできるようになります。
記事作成時点では、iOS版はインストールできなかったもののAndroid版はインストール可能だったので、実際にWhite Noiseを使ってみました。まずは公式サイトから「Download」をタップするか、公式の配布ページに直接アクセスします。

配布ページから「Zapstore」をタップ。

White Noiseをインストールするには、まずサードパーティー製アプリストアであるZapstoreをインストールする必要があります。「Download」をタップ。

「Download here and install on your device.(ここでダウンロードして、デバイスにインストールしてください)」という文章の「here」の部分をタップします。

ダウンロードが完了したら、「開く」をタップ。

「インストール」をタップ。

インストールが完了したら「開く」をタップ。

Zapstoreが開きました。検索欄に「White Noise」と入力するか新着アプリ欄から探して、「White Noise」アプリをタップ。

「Install」をタップ。

「White Noise」のインストールを行うかどうか尋ねられるので、「Trust white_noise and install app(White Noiseを信頼してアプリをインストールします)」をタップ。

「この提供元のアプリを許可」のトグルをタップしてオンにします。

ダウンロードが完了したら「このアプリをインストールしますか?」と尋ねられるので、「インストール」をタップ。

インストールが完了したら「Open」をタップ。

White Noiseアプリが開きました。「Sign Up」をタップ。

まずはユーザー登録をする必要があります。「Setup Profile」をタップ。

名前と自己紹介欄を埋めて、「Finish」をタップ。

これでWhite Noiseを利用できるようになりました。

White Noiseでチャットを開始するには、同じくWhite Noiseを利用しているユーザーの「Public Key(公開鍵)」という文字列を入力し、連絡先として追加する必要があります。自身の公開鍵をチェックするには、左上のアイコンをタップします。

名前の下に表示されているのが自身の公開鍵です。また、その下の「Share Profile(プロファイルを共有する)」をタップすると、公開鍵のQRコードを表示できます。

QRコードが表示されました。

他のWhite Noiseユーザーに公開鍵を伝えるには、メッセージアプリなどでそのまま送信するか、QRコードを読み取ってもらえばOK。

公開鍵がわかったら右上のチャットアイコンをタップ。

上部の入力欄に公開鍵を打ち込むと、その公開鍵を持つユーザーが表示されます。ユーザー名をタップ。

「Start Chat(チャットを始める)」をタップすると、相手と会話することができます。

なお、公開鍵を入力された側のユーザーには、以下のような承認画面が表示されます。ここで承認しない限りチャットは開始されないため、仮に公開鍵が流出したとしても、知らない相手からいきなりメッセージが送られてくることはありません。

追加されたユーザーは、デフォルトで設定されている偽名で表示されます。そのため、誰かからチャット画面をのぞかれた場合でも、誰とやり取りしているのかまではわからないようになっています。

チャットでは日本語も使用可能。記事作成時点では、画像の送受信などはできませんでした。

・関連記事
Twitterに代わるSNSプロトコルとして注目を集める「Nostr」とは一体どういう仕組みなのか? - GIGAZINE
Twitter創業者ジャック・ドーシーが支援する分散型SNS「Nostr」をベースにしたアプリ「Damus」が「ビットコイン投げ銭機能をやめないと削除する」とAppleから脅迫されていたことが発覚 - GIGAZINE
Twitterの代替となり得るプロトコルNostrを採用したアプリ「Damus」が中国のApp Storeから公開2日後に即削除される - GIGAZINE
分散型SNSプロトコル「AT Protocol」「ActivityPub」「Nostr」は一体何が違うのか?それぞれの特徴をまとめてみた - GIGAZINE
分散型プロトコル「Nostr」上に構築された動画共有サイト「Flare」が登場、YouTubeと異なり運営がアカウントを凍結したり収益化を停止することはできないが議論の余地あり - GIGAZINE
Twitter創業者のジャック・ドーシーがBluetoothでP2P通信するチャットアプリ「bitchat」を開発中、アカウント作成不要でWi-Fiやモバイル回線に接続せずに通信可能 - GIGAZINE
・関連コンテンツ