Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
terminalphone — Tor隠れサービスを介したエンドツーエンド暗号化、設定可能な暗号、グループ通話のためのリレーモード、および反フォレンジックデータ破壊を備えた暗号化プッシュトゥトーク音声およびテキスト通信。 | Kitploit
ツール/GitLabGitLab/here_forawhile/terminalphone
OSINT (オープンソースインテリジェンス)暗号化/復号化ツールネットワークセキュリティプライバシーコマンド&コントロールレッドチーミング
GitLabhere_forawhile/terminalphone

terminalphone

Tor隠れサービスを介したエンドツーエンド暗号化、設定可能な暗号、グループ通話のためのリレーモード、および反フォレンジックデータ破壊を備えた暗号化プッシュトゥトーク音声およびテキスト通信。

リポジトリを見る
268372ヶ月前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

TerminalPhone

Tor隠しサービス上の暗号化プッシュ・トゥ・トーク音声通信。

TerminalPhoneは、単一の自己完結型Bashスクリプトで、Torネットワーク上で2者以上の間での匿名・エンドツーエンド暗号化音声およびテキスト通信を提供します。これはトランシーバーのように動作します:音声メッセージを録音すると、圧縮・暗号化され、単一のユニットとして相手に送信されます。通話中に暗号化されたテキストメッセージを送信することもできます。サーバーインフラストラクチャ、アカウント、電話番号は不要です。あなたのTor隠しサービス .onion アドレスがあなたのアイデンティティです。


目次

  • 機能
  • インストール
    • Linux
    • macOS
    • Termux (Android)
  • クイックスタート
  • 使用方法
    • メニューオプション
    • 通話中のコントロール
    • CLIモード
  • 動作の仕組み
  • セキュリティモデル
  • 設定
  • トラブルシューティング
  • ライセンス

機能

  • トランシーバー音声メッセージング -- 完全な音声メッセージを録音し、離したときに送信。ライブストリーミング、クリッピングはありません。
  • 通話中暗号化チャット -- 通話中に暗号化されたテキストメッセージを送受信。T を押してメッセージを入力。
  • 発信者ID -- 接続時に両者が自動的に .onion アドレスを交換。通話ヘッダーに相手のアドレスが表示されます。
  • 自動切断検出 -- 一方が切断すると、即座にもう一方に通知され、通話が自動的に終了します。
  • 設定可能な暗号 -- 強度順(256ビット→128ビット)にランク付けされた21の厳選された暗号から選択可能。AES、ChaCha20、Camellia、ARIAファミリーを含みます。弱い暗号(DES、RC4、ECBモード)は除外されています。
  • ライブ暗号ネゴシエーション -- 接続時に両者が暗号情報を交換。通話ヘッダーには、ローカルとリモートの暗号が緑(一致)または赤(不一致)のインジケーターでリアルタイムに表示されます。
  • 通話中の設定 -- 通話中に S を押すと設定にアクセス。暗号をその場で変更可能。相手側の表示も自動的に更新されます。
  • Snowflakeブリッジ情報 -- 検閲回避のためにSnowflakeを使用している場合、通話ページにTorのログから解析されたブリッジ記述子名、フィンガープリント、トランスポート接続状況が表示されます。
  • 自動待受 -- 有効にすると、Tor起動時にバックグラウンドリスナーが自動的に開始。メインメニューから「待受」を手動で選択しなくても、着信が検出され応答されます。通話終了後、リスナーは再起動します。
  • 設定可能なPTTキー -- デフォルトのスペースバーから任意のキーにプッシュ・トゥ・トークキーを設定メニューから変更可能。
  • メッセージ統計 -- 通話画面には、送受信メッセージの暗号化ペイロードサイズがその場で更新されて表示されます。
  • リモートPTT状態 -- 通話画面に相手の状態を示す静的インジケーターを表示:「アイドル」(緑)または「●録音中」(赤)。音声データが到着すると、再生開始前にリセットされます。
  • PTTチャイム -- 相手が録音を開始したときのオプション通知音。soxで生成された5つの内蔵プリセット(トーン、ダブル、チャープ、ディング、クリック)と、カスタム2秒チャイムの録音機能。設定から構成可能。
  • 接続中アニメーション -- リモートアドレスに発信する際、通話インターフェースが読み込まれるまでサイクルアニメーションが再生されます。
  • ボイスチェンジャー -- 送信音声にボイスエフェクトを適用。6つのプリセット(低音、高音、ロボット、エコー、ささやき)と、ピッチシフト、オーバードライブ、フランジャー、エコー、ハイパスフィルター、トレモロを含む完全設定可能なカスタムモード。エフェクトはOpusエンコード前にsoxで処理されます。
  • ボリュームPTT(Termux) -- 実験的モード。Termuxがバックグラウンドでも、音量ダウンボタンをダブルタップして録音のオン/オフを切り替えられます。jq が必要(必要に応じてインストール)。各トリガー後に音量は自動的に復元されます。
  • Tor隠しサービス -- 各インスタンスが独自のTor隠しサービスを実行。.onion アドレスは永続的なルーティング可能なエンドポイントとして機能します。ポートフォワーディングやパブリックIPは不要。
  • エンドツーエンド暗号化 -- すべての音声とテキストは、Torネットワークに入る前に、事前共有秘密からのPBKDF2鍵導出を使用して設定可能な暗号(デフォルト:AES-256-CBC)で暗号化されます。
  • パスフレーズ保護シークレット -- 共有秘密は、ユーザーが選んだパスフレーズ(AES-256-CBC、100,000 PBKDF2反復)で保存時に暗号化可能。既存の平文秘密は自動的に検出され、移行のオファーが表示されます。
  • 低帯域幅 -- Opusコーデック、16kbps、8kHzモノラル。典型的な10秒の音声メッセージは20KB未満で、Torの容量に十分収まります。
  • QRコード共有 -- オプション3で、ターミナルにスキャン可能なQRコードとして .onion アドレスを表示。qrencode がインストールされていない場合、インストールを促されます。QRコードは代替画面バッファにレンダリングされ、閉じると破棄されます。一部のQRスキャナーが http:// を自動付加する可能性があるとの注意書きがあり、発信時にこのプレフィックスは自動的に除去されます。
  • 不透明な一時ファイル -- すべての一時ファイルは汎用の .tmp 拡張子とランダムな16進識別子を使用。ファイルタイプやタイミングのメタデータはファイルシステムに漏洩しません。
  • サーキットホップ表示 -- 通話中にTorサーキット経路をオプション表示。リレー名と完全な国名を表示。60秒ごとに自動更新。設定 → Tor設定から構成可能。
  • 国別除外 -- Torサーキットから特定の国を除外。Five Eyes、Nine Eyes、Fourteen Eyes同盟のプリセット、またはカスタム国コードを入力。torrcで ExcludeNodes と StrictNodes を使用。
  • HMACプロトコル認証 -- オプションのHMAC-SHA256署名をすべてのプロトコルメッセージ(音声、テキスト、制御信号)に適用し、共有秘密を使用。メッセージごとにランダムノンスが含まれ、既知のノンスはリプレイを拒否するために追跡されます。署名なし、偽造、またはリプレイされたメッセージは静かにドロップされます。HMAC状態は通話開始時に固定され、通話中の同期ずれを防ぎます。設定 → セキュリティから構成可能。
  • 削除前上書き -- 設定 → セキュリティのオプショントグルで、すべての一時ファイルを削除前に /dev/urandom からのランダムデータで上書き。ファイルサイズを読み取り、そのバイト数のランダムデータを dd(conv=notrunc 使用)でファイルに書き込み、sync でストレージデバイスにフラッシュし、rm でファイルを削除。対象はすべての機密ランタイムファイル:生PCM録音、Opusエンコード音声、暗号化ペイロード、復号された着信音声とチャット、ボイスエフェクト中間ファイル、暗号・HMAC鍵素材、ノンスログ、セッションフラグ、PIDファイル、名前付きパイプ、ローテーション時のTor隠しサービス鍵、リレーセッションデータ。ディレクトリの場合、内部のすべてのファイルが再帰的に上書きされます。内蔵テストオプションでサンプルファイルを作成し、元の内容を平文と16進で表示、上書き後、上書きされた16進を表示してユーザーがデータが破壊されたことを視覚的に確認可能。デフォルトはオフ — ほとんどのユーザーには標準の rm で十分です。TerminalPhoneの一時ファイルは小さく短期間であり、通常のシステム活動によってディスク領域はすぐに再利用されます。この機能は、フォレンジックリカバリに対する追加の保護層を望むユーザー向けです。注意:SSDやフラッシュストレージでは、ウェアレベリングにより上書きが異なる物理NANDセルに書き込まれる可能性があります — フラッシュメディアでの唯一の信頼できる防御はフルディスク暗号化です。従来のHDDでは、上書きは同じ物理位置のデータを置き換え、ソフトウェアベースのすべてのリカバリに対して効果的です。
  • リレーモード(グループブリッジ) -- ゼロナレッジリレーを実行し、N人の匿名発信者をブリッジします。リレーは暗号化された音声とチャットを復号せずに転送し、共有秘密やオーディオハードウェアは不要。クライアントは RELAY:1 ハンドシェイクでリレーモードを自動検出し、ライブのグループ参加者数を表示。1人の発信者が退出しても他の接続は切断されません。オペレーターダッシュボードには参加者数、稼働時間、データスループットが表示されます。
  • シングルホップTorモード -- リレーオペレーター向けのオプションの低レイテンシモード。隠しサービスに3ホップではなく1ホップを使用し、サーバーの匿名性を犠牲にしてレイテンシを低減。自身のIPを隠す必要のないリレーオペレーターに最適。
  • ポート設定 -- リッスンポートとSOCKSポートを一緒に設定 → Tor設定から。同じデバイス上で複数のインスタンスを別々のTorプロセスで実行可能。主にリレーオペレーターが自身のグループ通話にも参加したい場合に有用 — リレーを1つのインスタンスで実行し、2つ目のインスタンスでSOCKSポートを変更し、発信者としてダイヤルイン。
  • クロスプラットフォーム -- 標準的なLinuxディストリビューション、macOS、Termux経由のAndroidで動作。プラットフォーム固有のオーディオバックエンドは透過的に処理されます。
  • ルート不要 -- PTT入力はターミナル生モードを使用。特別な権限やカーネルモジュールは不要。
  • 単一スクリプト -- 1つのBashファイル。ビルドシステム、ランタイム、フレームワークは不要。

インストール

Linux

サポートされているディストリビューション: Debian/Ubuntu (apt)、Fedora/RHEL (dnf)、Arch (pacman)。``` bash

git clone https://gitlab.com/here_forawhile/terminalphone.git cd terminalphone bash terminalphone.sh

root@kitploit:~
メニューからオプション **7** を選択すると、すべての依存関係が自動的にインストールされます。以下のパッケージがインストールされます:

| パッケージ | 用途 |
|---|---|
| `tor` | Onion ルーティングと隠しサービス |
| `opus-tools` | 音声圧縮(Opus コーデック) |
| `sox` | 音声処理ユーティリティ |
| `socat` | Tor SOCKS プロキシを経由した双方向 TCP リレー |
| `openssl` | AES-256-CBC 暗号化と復号化 |
| `alsa-utils` | 音声録音と再生(`arecord`、`aplay`) |

### macOS``` bash

git clone https://gitlab.com/here_forawhile/terminalphone.git
cd terminalphone
bash terminalphone.sh

選択肢 7 を選択すると、すべての依存関係が自動的にインストールされます。Homebrew がインストールされていない場合、スクリプトが先にインストールし、その後以下のパッケージをインストールします:

注意: macOS では、ALSA の代わりに sox を録音(rec)と再生(play)の両方に使用します。追加のオーディオパッケージは不要です。

Apple Silicon(M1/M2/M3+): お使いのターミナルがたまたま Rosetta 2 下で(x86_64 プロセスとして)実行されており、Homebrew がネイティブの ARM プレフィックス(/opt/homebrew)にインストールされている場合、brew install は通常 Cannot install under Rosetta 2 in ARM default prefix で失敗します。依存関係インストーラはこれを検出し、自動的に arch -arm64 で Homebrew を再実行します。そのため、スクリプトの起動方法に関係なく、選択肢 7 は機能します。

Termux(Android)

TerminalPhone は Termux を介して Android デバイスをサポートしています。Android のサンドボックス化されたオーディオアーキテクチャのため、追加で 2 つのコンポーネントが必要です。

ステップ 1: Termux のインストール

F-Droid から Termux をインストールしてください。Play ストア版は古く、更新が停止しているため使用しないでください。

ステップ 2: Termux:API アプリのインストール

F-Droid から Termux:API をインストールしてください。これは Termux パッケージではなく、別の Android アプリケーションであり、Termux と Android システム API の間のブリッジを提供します。TerminalPhone は、デバイスのマイクやメディア再生にアクセスするためにこれが必要です。

端末に Termux:API アプリがインストールされていないと、termux-microphone-record コマンドや termux-media-player コマンドが機能せず、オーディオの録音と再生が無音で失敗します。

Termux:API アプリをインストールした後、プロンプトが表示されたらマイクのパーミッションを付与してください。

ステップ 3: Termux 内で Termux:API パッケージをインストールする```bash pkg install termux-api

root@kitploit:~
これは、Termux:APIアプリと通信するコマンドラインユーティリティをインストールします。

**ステップ4: TerminalPhoneを実行**```bash
git clone https://gitlab.com/here_forawhile/terminalphone.git
cd terminalphone
bash terminalphone.sh

オプション 7 を選択して、残りの依存関係をすべてインストールします。インストーラはまず pkg upgrade を実行してパッケージリンクの問題を解決し、次に tor、opus-tools、sox、socat、openssl-tool、ffmpeg、termux-api をインストールします。

Termux固有の依存関係:

Package目的
termux-apiAndroid のマイクとメディアプレーヤーへの CLI ブリッジ
ffmpegAndroid の M4A 録音を Opus エンコード用の raw PCM に変換します

クイックスタート```

  1. Run: bash terminalphone.sh
  2. Install deps: Select option 7
  3. Start Tor: Select option 8 (wait for 100% bootstrap)
  4. Set shared secret: Select option 4 (both parties must use the same secret)
  5. Share your .onion address with the other party (option 3)

To receive a call: Select option 1 (Listen for calls) To make a call: Select option 2 (Call an onion address)

root@kitploit:~
両者は、通話を開始する前にTorが動作しており、同じ共有秘密鍵が設定されている必要があります。

---

## 使用方法

### メニューオプション```
 1  Listen for calls          Wait for an incoming connection
 2  Call an onion address     Connect to a remote .onion endpoint
 3  Show my onion address     Display your .onion address (with optional QR code)
 4  Set shared secret         Configure the pre-shared encryption key
 5  Test audio (loopback)     Record and play back audio locally
 6  Show status               Display Tor, secret, and connection status
 7  Install dependencies      Install all required packages
 8  Start Tor                 Start the Tor process and hidden service
 9  Stop Tor                  Stop the Tor process
10  Restart Tor               Stop and restart Tor
11  Rotate onion address      Generate a new .onion address (destroys the old one)
12  Settings                  Configure Opus quality, PTT chime, Snowflake, auto-listen, PTT key, voice changer, security, Tor settings
13  Relay mode                Start a zero-knowledge group bridge for N callers
 0  Quit                      Stop Tor and exit

通話中の操作

Linux(プッシュトーク):

キーアクション
SPACE 長押し音声メッセージを録音。離すと自動で送信。
T暗号化テキストメッセージを送信。
S通話中に設定を開く(暗号の変更、品質調整)。
Q通話を終了しメニューに戻る。

Termux(トグルモード):

Androidのソフトウェアキーボードは、押下時ではなく解放時にキーイベントを送信します。Termuxでは、TerminalPhoneがトグルモードを使用することで対応しています。

キーアクション
SPACE タップ録音を開始。再度タップで停止し送信。
T暗号化テキストメッセージを送信。
S通話中に設定を開く(暗号の変更、品質調整)。
Q通話を終了しメニューに戻る。

CLI モード```bash

bash terminalphone.sh install # Install dependencies bash terminalphone.sh test # Audio loopback test bash terminalphone.sh status # Show status bash terminalphone.sh listen # Listen for incoming calls bash terminalphone.sh call ADDRESS # Call a .onion address bash terminalphone.sh relay # Start relay mode (group bridge)

root@kitploit:~
---

## 動作の仕組み

TerminalPhoneは、録音してから送信するモデルを使用しています。PTTを起動すると、マイクは解放するまで連続的に録音します。録音全体は、次のパイプラインで処理されます:```
SENDER                                          RECEIVER
──────                                          ────────
Microphone                                      Speaker
    │                                               ▲
    ▼                                               │
Raw PCM (8kHz, 16-bit, mono)                    Opus decode
    │                                               ▲
    ▼                                               │
Opus encode (16kbps)                            AES-256-CBC decrypt
    │                                               ▲
    ▼                                               │
AES-256-CBC encrypt                             Base64 decode
    │                                               ▲
    ▼                                               │
Base64 encode ──▶ socat ──▶ Tor ──▶ socat ──▶ Receive

ワイヤプロトコルはTCP接続上の行ベースのテキストです:

Termuxでは、AndroidのネイティブM4A録音形式に対応するため、追加の変換ステップがあり、Opusエンコードの前にffmpegを使用して生のPCMに変換します。


セキュリティモデル

暗号化: すべての音声は、送信前にユーザー設定可能な暗号(デフォルト:AES-256-CBC)で暗号化されます。256ビット(最強)から128ビット(十分)までのランク付けされた21のキュレーションされた暗号が利用可能です。鍵は、PBKDF2(10,000イテレーション)を使用して事前共有秘密から導出されます。暗号化はアプリケーション層で適用され、Torのトランスポート暗号化から独立しています。秘密はコマンドライン引数ではなく、ファイル記述子(-pass fd:3)を介してOpenSSLに渡されるため、プロセステーブルに露出することはありません。

暗号ネゴシエーション: 接続時と呼び出し中に暗号が変更されるたびに、両当事者が暗号名を交換します。暗号名は秘密ではありません(Kerckhoffsの原理)。ローカルとリモートの暗号が一致しない場合、両当事者は呼び出しヘッダーに赤いインジケーターを表示します。

トランスポート: すべてのデータはTor隠しサービス回路を介してルーティングされます。どちらの当事者のIPアドレスも公開されません。クリアネットトラフィックはありません。ネットワーク観測者は接続をどちらかの当事者に帰属させることができません。

トラフィック分析耐性: 録音してから送信するモデルは不規則な送信パターン(可変長メッセージを不規則な間隔で)を生成するため、連続ストリーミングよりも指紋採取が困難です。

認証: 共有秘密は暗黙の認証として機能します。両当事者が同じ秘密を持っていない場合、復号は失敗し、音声は再生されません。接続時に、両当事者は発信者識別のために.onionアドレスを交換します。秘密はオプションでパスフレーズで保存時に暗号化できます。起動時にスクリプトはパスフレーズを求めてプロンプトを表示し、ロックを解除します。

HMACプロトコル署名(オプション): 有効にすると、HANGUP、PTT_START、PINGなどの制御信号を含むすべてのワイヤプロトコルメッセージが、共有秘密から導出されたHMAC-SHA256で署名されます。メッセージごとにランダムなnonceが含まれ、同一のコマンドが一意の署名を生成するようになっています。呼び出しごとに既知のnonceが追跡され、重複は拒否されるため、リプレイ攻撃を防ぎます。HMAC設定はランタイムファイルを介して呼び出し開始時に固定され、呼び出し中に設定が切り替えられても(変更は次の呼び出しで有効になります)、送信パスと受信パスが常に一致するようになります。受信側では、署名が無効、欠落、またはリプレイされたメッセージは黙ってドロップされます。これにより、Tor回路を侵害した(が共有秘密を持たない)攻撃者がコマンドを注入またはリプレイすることが防止されます。両当事者がHMACを有効にする必要があります。バージョン1.1.3より前とは互換性がありません。

制限事項:

  • 共有秘密は、安全なチャネル(直接会う、暗号化メッセージなど)を介して帯域外で交換する必要があります。
  • 前方秘匿性はありません。共有秘密が漏洩した場合、その秘密を使用した過去および将来のすべての通信が復号可能になります。
  • プロトコルはエンドポイントの侵害から保護しません。どちらかのデバイスが侵害された場合、攻撃者は平文の音声にアクセスできます。

リレーモードのセキュリティ: リレーはアーキテクチャ上ゼロ知識です。リレーは共有秘密を決して保持せず、いかなるコンテンツも復号できません。音声データはカーネルパイプバッファ(FIFO)を通過し、メモリ内にのみ存在します -- ディスクには何も書き込まれません。リレーが停止すると、すべての一時ファイルが削除されます。リレーオペレーターは、何が言われたか、発信者が誰か、メッセージを読むことができません。リレーはすべての制御信号(HANGUP、ID:、CIPHER:、PTT_START、PTT_STOP)をフィルタリングし、AUDIO:、MSG:、PINGのみを転送します。大域的受動的敵対者がトラフィック相関分析を実行して発信者をリレーに関連付ける可能性はありますが、メッセージの内容は不明なままです。

リレー容量: 主なボトルネックはTor帯域幅です。Tor隠しサービスのスループットは非常に変動しやすく、回路品質、リレー輻輳、地理的距離に依存します。典型的な10秒の音声メッセージは約20KB暗号化され、各送信はN-1人のリスナーにファンアウトします。

現実的な容量は、電話(Termux)で動作するリレーの場合は3~5人の発信者、安定した接続の専用Linuxマシンの場合は5~10人の発信者です。モバイルデバイスで動作するリレーは追加の制約に直面します:モバイルデータはTorに加えて遅延をもたらし、Androidはメモリを再利用するためにバックグラウンドのTermuxプロセスを強制終了する可能性があり、接続された発信者ごとにバッテリー消費が増加します。Tor回路の帯域幅はパス品質に応じて50KB/sから500KB/sまで変動し、回路はセッション中に劣化したりローテーションしたりする可能性があります。シングルホップモードはスループットを向上させますが、Torリレー輻輳を排除するわけではありません。これらの推定値は、同時に1人だけが送信するPTTモデルを前提としています。同時送信ではパフォーマンスがさらに低下します。グループ通話の発信者は、メッセージサイズを削減しリレーの負荷を軽減するために、Opusビットレートを下げる(設定 → Opusエンコード)ことを検討する必要があります。


設定

すべての設定は、スクリプトの場所を基準とした.terminalphone/に保存されます。``` .terminalphone/ tor_data/ Tor data directory and hidden service keys audio/ Temporary audio files (cleaned on exit) pids/ Process ID tracking shared_secret Encrypted shared secret file torrc Generated Tor configuration

root@kitploit:~
デフォルトのオーディオパラメータ(スクリプトの上部で定義されています):

| パラメータ | デフォルト | 説明 |
|---|---|---|
| `LISTEN_PORT` | 7777 | 受信接続用のTCPポート |
| `TOR_SOCKS_PORT` | 9050 | Tor SOCKSプロキシポート |
| `OPUS_BITRATE` | 16 | Opusエンコーディングのビットレート(kbps) |
| `CIPHER` | aes-256-cbc | 暗号化方式(設定で変更可能) |
| `SNOWFLAKE_ENABLED` | 0 | 検閲回避のためのSnowflakeブリッジ |
| `AUTO_LISTEN` | 0 | Tor起動時に自動で着信待機する |
| `PTT_KEY` | SPACE | プッシュトークキー(設定で変更可能) |
| `VOL_PTT` | 0 | 音量ダウンダブルタップでPTT(Termuxのみ、実験的) |
| `EXCLUDE_NODES` | (空) | Tor ExcludeNodesの国別リスト(例:`{US},{GB}`) |
| `HMAC_AUTH` | 0 | すべてのプロトコルメッセージにHMAC署名(オプション、両側で一致させる必要あり) |
| `OVERWRITE_DELETE` | 0 | 削除前に一時ファイルをランダムデータで上書き(デフォルトではオフ) |
| `PTT_CHIME` | off | PTT通知チャイムのプリセット(off, tone, double, chirp, ding, click, custom) |
| `SINGLE_HOP` | 0 | 低レイテンシのためのシングルホップTorモード(サーバーの匿名性を無効化) |
| `SAMPLE_RATE` | 8000 | オーディオサンプルレート(Hz) |
| `CHUNK_DURATION` | 1 | オーディオテストチャンクの長さ(秒) |

---

## トラブルシューティング

**Torがブートストラップに失敗する:**
Torのログを確認:`.terminalphone/tor_data/tor.log`。よくある原因は、時計のずれ、ネットワーク制限によるTorのブロック、または別のTorインスタンスが同じSOCKSポートを使用していることです。

**Termuxで音声が出ない:**
F-DroidからTermux:APIアプリがインストールされていることを確認してください(`termux-api`パッケージだけでは不十分です)。Androidの設定でTermux:APIアプリにマイク権限を付与してください。オーディオループバックテスト(オプション5)を実行して確認してください。

**Termuxでのffmpegインストールに失敗する:**
依存関係をインストールする前に`pkg upgrade`を実行してください。インストーラーは自動でこれを行いますが、手動でパッケージをインストールした場合、古い共有ライブラリがリンクエラーを引き起こす可能性があります。

**オーディオテストは成功するが、通話中は無音:**
両方の相手が同じ共有シークレットを使用していることを確認してください。シークレットが一致しないと、エラーメッセージなしで復号化に失敗します。通話は接続されますが、音声は聞こえません。

**Snowflakeブリッジの接続が遅い:**
SnowflakeはWebRTCプロキシ経由でトラフィックをルーティングするため、追加のブートストラップ時間がかかります。Snowflakeが有効な場合、Torが100%に達するまでに30~60秒(またはそれ以上)かかることが正常です。スクリプトはブートストラップ中に忍耐を促すメッセージを表示します。

**最初のTorブートストラップが遅い:**
初回起動時、Torはネットワークコンセンサス全体をゼロからダウンロードする必要があり、これには1~2分かかることがあります。スクリプトはこれを検出し、注意メッセージを表示します。ブートストラップのタイムアウトは初回実行時に120秒から300秒に自動的に延長されます。以降の起動ではキャッシュされたコンセンサスデータを使用するため、はるかに高速です。

**切断してもメニューに戻らない:**
Qキーを押した後にスクリプトがハングする場合は、Ctrl+Cを押して強制的にクリーンアップし、シェルに戻ってください。

**macOSで「Cannot install under Rosetta 2 in ARM default prefix」エラー:**
これはApple Siliconで、ターミナルがRosetta 2(x86_64プロセス)で実行されているが、HomebrewがネイティブのARMプレフィックス(`/opt/homebrew`)に存在する場合に発生します。依存関係インストーラー(オプション**7**)はこれを検出し、自動的に`arch -arm64`で`brew`を再実行します。手動でパッケージをインストールする場合は、自分で`arch -arm64 brew install <pkg>`とプレフィックスを付けてください。または、スクリプトを`arch -arm64 bash terminalphone.sh`でネイティブに起動してください。

---

[ミラー V1.0.0](https://bin.disroot.org/?e1356291b098cb75#FMQ4gxFwgdr3rjR1dpGS2csLmDPzDEkQW16fQ5P2Vt4y)

[ミラー V1.0.1](https://bin.disroot.org/?d3bc0b8976113f58#AuUm4ev4vfeVmPyrh2KjAdhDP6WN4UX6yKQh9ERGD5Qt)

[ミラー V1.0.2](https://bin.disroot.org/?6bc5b2fd046de1d7#G7TmnytrMeaM5AZYWth6BjjdqUb9RDf3K9erHUExKcGX)

[ミラー V1.0.3](https://bin.disroot.org/?c5010f039e4693fd#Brp1w7LRQH9d5Ye5npZDPxNVR855SW9QUAk9cJaUuLYX)

[ミラー V1.0.4](https://bin.disroot.org/?1831f6b78e349142#7zaAMVPNJL3MfbGJzjtm6cCPcvQftf4ULXupdne5dRKw)

[ミラー V1.0.5](https://bin.disroot.org/?edfcfc844987ed03#56LuBbqbkfNDXfHpydyaB3VcWYhYenX18dtSvNumERY9)

[ミラー V1.0.6](https://bin.disroot.org/?6c7b4774108b0c1c#GQPst46zjAYidndmNvytforX7MK2LyHanL4d829vVcv4)

[ミラー V1.0.7](https://bin.disroot.org/?047003637623b4fa#EwmaysciDpiDkht8xV7ce3QcR9oxFXaxSikh4cLheXBB)

[ミラー V1.0.8](https://bin.disroot.org/?06e38bd64e6fbdad#88MYs3dmq9rSMkmocpW3NYaaG4YfSdRCc9LJnEEzqGYp)

[ミラー V1.0.9](https://bin.disroot.org/?950218a9a7c71c66#E7Z94VCGBZozrfXYhGwKyAdMeTxuavg92tA1pn2DbrrB)

[ミラー V1.1.0](https://bin.disroot.org/?0b0da14f31521b3a#B1c23J8xFoZZKErvGG28PgbtfgtMUcDABWmQEoSZfXgh)

[ミラー V1.1.1](https://bin.disroot.org/?d8e2d4f0300eb5af#9Y1C8CkcH9jAmv1fh4GZs1yYpJmWCG5xG3SvDYdwnJam)

[ミラー V1.1.2](https://bin.disroot.org/?b1059616f880925f#8ef2oscZXUkPAsJZwGfWvLPQagVAk5GgW4DyssmLvQpG)

[ミラー V1.1.3](https://bin.disroot.org/?b02658801518aaa7#JE6CsBLWUwAnTdBqeHgeXL7QF5UExgi9rnygcfyMZjCJ)

[ミラー V1.1.4](https://bin.disroot.org/?d31248fc44c287a0#HQELFWFEMpM9kfTZSGDXTdGFMVKTejox5CajF9Vm4Www)

[ミラー V1.1.5](https://bin.disroot.org/?284b723ed6aad15f#8VCrrri6yRpdg3uVDSY94wpx7LYkw5uYhm4Vbhka83sM)

[ミラー V1.1.5.1](https://bin.disroot.org/?26aaef1eff20c271#4GxQQPSDhrszTu1RmERySNVqD2fZW5GZwm3JeL1parpB)

[ミラー V1.1.6](https://bin.disroot.org/?ae8270578cd9e081#BbcDLU49XqhecvwviHRcdfrZ4vhKdL2AMeKaT5v9oLV1)

[ミラー V1.1.7](https://bin.disroot.org/?457e4308abe582d8#B9LJG88rmUwrGHHuCof8WpE8CXGmkc2tyrXXicEiJFWk)

---

## ライセンス

MIT
ツールをダウンロード
パッケージ目的
torオニオンルーティングと隠しサービス
opus-tools音声圧縮(Opus コーデック)
soxオーディオ録音と再生(rec、play)
socatTor SOCKS プロキシを介した双方向 TCP リレー
opensslAES-256-CBC 暗号化と復号化
Vol Down ×2音量ボタンで録音をトグル(設定で「Volume PTT」が有効の場合)。
メッセージ説明
ID:<onion>発信者ID -- 送信者の.onionアドレス
CIPHER:<name>送信者の暗号化方式。接続時および変更時に交換されます。
PTT_START送信者が録音を開始しました
PTT_STOP送信者が録音を終了しました。音声が続くか、送信されました
AUDIO:<base64>完全な暗号化音声メッセージ
MSG:<base64>暗号化テキストメッセージ
HANGUP送信者が切断しています
PINGキープアライブ信号
RELAY:1リレー挨拶 -- 接続時にリレーから送信され、グループモードをトリガーします
GROUP:<n>グループサイズ更新 -- 発信者が参加または退出したときにリレーがブロードキャストします
発信者数メッセージあたりのアウトバウンド期待される体験
2~3人20~40KBほとんどの接続で信頼性あり
3~5人40~80KB安定した回路で良好、モバイルデータでは遅延の可能性あり
5~10人80~180KB限界に近い、送信間で顕著な遅延
10人以上180KB以上不安定、著しいキューイングとメッセージ損失の可能性