2 ポイント 投稿者 GN⁺ 2024-08-03 | 1件のコメント | WhatsAppで共有
  • WebRTC上のHTTP
  • WebRTC DataChannelを通じて、HTTPクライアントラッパー(HTML Fetchに類似)とサーバー側HTTPプロキシを実装
  • Webブラウザーから、ファイアウォールの背後に隠れたエッジデバイス(IoTまたはサーバー)へ安全に直接アクセス可能
  • 主な特徴:
    • 安全なアプリケーション空間で実行(sudo不要)
    • エンドツーエンド暗号化
    • カスタムVPN設定が不要
    • データトンネリングのためのクラウド仲介者が不要
    • Dynamic DNSサービスが不要
    • カスタムのファイアウォールルールが不要
    • プログラミング言語に依存しない(現在はJavaScriptとPythonで利用可能)

ユースケース:

  • クラウド事業者と映像を共有せず、Webアプリから個人用ホームセキュリティカメラへユーザーが直接アクセス
  • 直接P2P通信が可能なIoTデバイスのメッシュ
  • 個人Webアプリが公開IPアドレスを露出せず、エンドユーザーとのみデータを直接共有(ファイル、ノート、写真など)
  • Federated Learning - MLモデルがローカルユーザーデータで学習し、中央集約型のモデル集約サーバーなしで学習済み状態を相互に直接共有

GN⁺のまとめ

  • peerfetchは、WebRTCを通じて直接的で安全なP2P HTTP通信を可能にするプロジェクト
  • クラウド仲介者やカスタムVPN設定なしでもエンドツーエンド暗号化を提供し、セキュリティを高める
  • IoTデバイスや個人Webアプリで、プライバシーを保ちながらデータを直接共有できる有用なツール
  • 類似機能を提供するプロジェクトとして、WebRTCベースの他のP2P通信ライブラリがある

1件のコメント

 
GN⁺ 2024-08-03
Hacker Newsの意見
  • Camectは、WebRTCを通じて個人サーバー上のカメラにアクセスできるようにするシステム

    • 中央認証システムを使用し、WebRTCと物理NVRを通じて動画を効率的に配信している
    • Google Nest Camsのように、クラウドサービスが財務負担となって終了されるリスクが低い
    • とても優れたアーキテクチャ
  • Webtorrentは興味深いアイデア

    • すでに双方向のWebRTC接続があるなら、なぜHTTPを使うのか気になる
    • アプリケーションによって異なるかもしれない
  • シグナリングサーバーなしでこれを実現する方法があるのか気になる

  • WebRTCで動画を録画できるソリューションがあるのか気になる

    • HLSやDashを録画できるツールは十分多い
    • WebRTC経由で送信される動画ストリームを録画できるPoCすら見つけられない(例: agora.io)
  • シグナリングサーバーがどこにあり、どう動作するのか理解できない

  • Tailscaleのような代替手段もある

  • Service Workerを組み合わせて分散型Webサイトを実装するアイデアを試したことがある

  • 興味深いプロジェクトが投稿されてHNで大きな議論になるが、ライブラリを試してみると保守されておらず、最後の更新が3年前ということがよくある

  • 期待していたが、そのリポジトリは3年以上更新されていなかった