Repolode
seemoo-lab

seemoo-lab/opendrop

Apple AirDropとのリバースエンジニアリングによるプロトコル互換性を利用して、Wi-Fi経由でファイルを送受信するオープンソースのPython製コマンドラインツール。

代替できる製品:AirDrop

スター
9,939
フォーク
319
未解決の Issue
59
最終コミット
3 か月前

これは何?

OpenDropは、Wi-Fi経由でデバイス間のファイル共有を行うコマンドラインツールです。Apple AirDropとのプロトコル互換性を備えているため、iOSやmacOSのデバイスとファイルをやり取りできます。

AirDropはApple Wireless Direct Link(AWDL)上で動作するため、OpenDropはmacOS、またはOWLなどのオープンなAWDL実装を使うLinuxで動作します。findコマンドで近くの受信先を検出し、sendでファイルやURLを送信するか、receiveで受信ファイルを受け取ります。「連絡先のみ」に設定されたデバイスとの通信には、別途用意されたキーチェーン抽出ツールでmacOSから抽出したAirDrop認証情報を利用できます。

このプロジェクトは実験的なもので、リバースエンジニアリングの研究から生まれました。AirDropのすべての機能に対応しているわけではなく、複数ファイルの一括送信は未実装です。また、受信側はピア認証なしで受信ファイルを自動的に受け入れます。

主な機能

  • 01AirDrop互換のWi-Fi経由で、AppleデバイスにファイルやURLを送信できます。
  • 02findコマンドで近くの受信先を検出できます。
  • 03受信したファイルをカレントディレクトリに自動保存します。
  • 04macOS、およびAWDL実装を備えたLinuxで動作します。
  • 05抽出したAirDrop認証情報を使って、「連絡先のみ」に設定されたデバイスに対応します。

ユースケース

  • LinuxマシンからiPhoneやMacにファイルを送信する。
  • コマンドラインからAirDropのファイル転送をスクリプト化する。
  • セキュリティ研究でAirDropプロトコルやAWDLを調査する。

クイックスタート

  1. 1

    pip3 で PyPI からリリースをインストールします

    pip3 install opendrop
  2. 2

    macOS では Homebrew で新しいバージョンの libarchive をインストールします(Linux では任意)

    brew install libarchive
  3. 3

    近くの受信先を検出します

    opendrop find
  4. 4

    インデックスを指定して受信先にファイルを送信します

    opendrop send -r 0 -f /path/to/some/file

使う前に知っておきたいこと

  • macOS、または OWL などの AWDL 実装を備えた Linux でのみ動作します。
  • 実験的なリバースエンジニアリングソフトウェアのため、今後の AirDrop バージョンとの互換性は保証されません。
  • 複数ファイルの一括送信には対応していません。
  • コピーレフトライセンスである GPL-3.0 の下でライセンスされています。

収録されている特集

トピック

よくある質問

opendrop とは?
Apple AirDropとのリバースエンジニアリングによるプロトコル互換性を利用して、Wi-Fi経由でファイルを送受信するオープンソースのPython製コマンドラインツール。 OpenDropは、Wi-Fi経由でデバイス間のファイル共有を行うコマンドラインツールです。Apple AirDropとのプロトコル互換性を備えているため、iOSやmacOSのデバイスとファイルをやり取りできます。
opendrop は無料で使えますか?ライセンスは?
opendrop は GPL-3.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
opendrop は今もメンテナンスされていますか?
半年以内に更新あり。opendrop の最終コミットは 2026年8月17日 です。
opendrop は何に使えますか?
LinuxマシンからiPhoneやMacにファイルを送信する。 コマンドラインからAirDropのファイル転送をスクリプト化する。 セキュリティ研究でAirDropプロトコルやAWDLを調査する。
opendrop のインストール方法は?
pip3 で PyPI からリリースをインストールします: pip3 install opendrop macOS では Homebrew で新しいバージョンの libarchive をインストールします(Linux では任意): brew install libarchive 近くの受信先を検出します: opendrop find インデックスを指定して受信先にファイルを送信します: opendrop send -r 0 -f /path/to/some/file
opendrop はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/seemoo-lab/opendrop

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト

対応するApple製以外のWi-FiカードでAWDLを使い、iPhoneとLinuxマシン間でファイルを送受信できる、Linux向けコマンドライン版AirDropです。

3300+82 今週257RustMIT活発にメンテナンス更新 4 日前