Flipflopは、2つ以上のデバイス間に信頼できる通信トンネルを作成するために設計されたオープンソースアプリケーションです。トンネルが確立されると、ユーザーは、同じ世帯内にいるか、あるいは距離を隔てて離れているかに関わらず、自身のデバイスや家族のデバイス間で、プレーンテキストやリンクを含むファイルを送信できます。このソフトウェアは、すべてのトランザクションにおいて従来のクラウドストレージに依存することなく、情報を移動させる一貫した方法を提供することで、「肉体的な空間(meatspace)」の時代におけるデータ交換を簡素化することを目指しています。

デスクトップコンピュータ上で動作しているFlipflopアプリケーションのスクリーンショット。
Flipflopデスクトップアプリケーションは、トンネルの確立とファイル共有のためのユーザーインターフェースを提供します。github.com

このアプリケーションは、物理的な場所に関係なく、デバイス間で情報を移動させる一貫した方法を提供します。

Flipflopの核心となるメカニズムは、分散型ネットワークプロトコルであるIrohとの統合です。Irohを活用することで、Flipflopは、通常、パブリックインターネット経由の直接的なデバイス間接続を妨げるNAT(ネットワークアドレス変換)やファイアウォールの貫通といった複雑な技術的課題を処理します。これにより、ソフトウェアは外部アドレスを検出し、デバイスが自律的に互いを見つけられるオーバーレイネットワークを維持することが可能になります。ローカルエリアネットワーク(LAN)、Bluetooth、広域ネットワークを含むさまざまな接続タイプで機能しますが、基礎となるIrohへの依存が、ピアツーピア接続のための重い処理を担っています。

幅広い互換性を備めている一方で、このプロジェクトはプラットフォーム固有の制限により、実用的な展開において制約に直面しています。例えば、Linux、macOS、Windows、Android向けのビルドは利用可能ですが、Appleのエコシステムにより、開発者がiOS向けに直接公開することはできません。さらに、このアプリケーションはセキュリティフラグをトリガーする可能性のある特定のネットワークプロトコルを使用するため、Windowsユーザーはインストール中に「WindowsによってPCが保護されました」という警告に遭遇する可能性があります。これらの制限は、高い自律性を提供するIrohのような特殊なピアツーピアプロトコルを使用することと、主流のオペレーティングシステムプロバイダーによる厳格なゲートキーピングをナビゲートすることとの間のトレードオフを浮き彫りにしています。