SendTomoの仕組み
SendTomoは、ブラウザのビデオ通話を支えるのと同じピアツーピア技術であるWebRTCを使って、デバイス間で直接ファイルを移動させます。このページでは、接続の流れ、転送が高速でプライベートである理由、そしてファイルをサーバーにアップロードせずに実現する仕組みを説明します。
ステップ1 — ペアリング。パソコンで sendtomo.com を開きます。ページはサーバーに短いルームコードを要求し、それをQRコードとして表示します。そのコードをスマートフォンでスキャンすると、スマートフォンは同じシグナリングチャネルにルームコードを送り返します。サーバーは両デバイスを互いに紹介し、接続情報を引き渡します。この時点以降、データ転送にサーバーは必要ありません。
ステップ2 — 直接的なピアツーピア接続。2台のデバイスはWebRTC接続を確立するためのネゴシエーションを行います。通常はローカルネットワークまたはインターネット経由で直接接続します。ネットワークのファイアウォールやNATが直接経路を遮断する場合は、TURNリレーが暗号化されたバイトを転送します。ただしデータは2台のデバイス間でエンドツーエンド暗号化されているため、リレーが復号・検査することはできません。
ステップ3 — エンドツーエンド暗号化。WebRTCはすべての接続にDTLS-SRTP暗号化を義務付けているため、デバイス間で送られるファイルのチャンクは、一方のデバイスを出た瞬間からもう一方に到着するまで暗号化されています。シグナリングサーバーも、どのTURNリレーも、あなたのデータを読むための鍵を持っていません。
高速でプライベートである理由。ファイルはネットワークの最高速度でデバイス間を直接行き来するため、クラウドへのアップロード後ダウンロードという手順も、ストレージの容量制限も、サイズの上限もありません。そしてデータはサーバーに留まらないため、誰かが侵害したり、売ったり、保管したりする対象すら存在しません。それこそが、このアーキテクチャの狙いです。
ファイル転送の準備はできましたか?SendTomoを開き、スキャンして接続しましょう。
SendTomoを開く