
Tor隠れサービスを介したエンドツーエンド暗号化、設定可能な暗号、グループ通話のためのリレーモード、および反フォレンジックデータ破壊を備えた暗号化プッシュトゥトーク音声およびテキスト通信。
Tor オニオンサービス経由の暗号化プッシュトゥトーク音声通信。
TerminalPhone は、単一の自己完結型 Bash スクリプトで、Tor ネットワーク上で 2 者以上の間で匿名のエンドツーエンド暗号化音声およびテキスト通信を提供します。トランシーバーのように動作します。音声メッセージを録音すると、圧縮、暗号化され、1 つの単位として相手側に送信されます。通話中に暗号化されたテキストメッセージを送信することもできます。サーバーインフラ、アカウント、電話番号は不要です。あなたの Tor オニオンサービス .onion アドレスがあなたの身元です。
T を押してメッセージを入力します。.onion アドレスを交換します。相手のアドレスは通話ヘッダーに表示されます。S を押して設定にアクセスします。暗号をオンザフライで変更でき、相手側の表示は自動的に更新されます。jq が必要です (オンデマンドでインストール)。音量は各トリガー後に自動的に復元されます。.onion アドレスは永続的でルーティング可能なエンドポイントとして機能します。ポートフォワーディングやパブリック IP は不要です。.onion アドレスをターミナルにスキャン可能な QR コードとして表示できます。qrencode がインストールされていない場合は、インストールを促されます。QR コードは代替画面バッファにレンダリングされ、閉じると破棄されます。一部の QR スキャナーが http:// を自動的に先頭に付加するという警告が表示されます。このプレフィックスは発信時に自動的に除去されます。.tmp 拡張子とランダムな 16 進数識別子を使用します。ファイルタイプやタイミングのメタデータはファイルシステムに漏洩しません。StrictNodes とともに ExcludeNodes を使用します。/dev/urandom からのランダムデータで上書きします。ファイルサイズが読み取られ、そのバイト数のランダムデータが conv=notrunc を使用して dd でファイルに上書きされ、書き込みは sync でストレージデバイスにフラッシュされ、その後 rm でファイルが削除されます。すべての機密ランタイムファイルをカバーします: 生の PCM 録音、Opus エンコード音声、暗号化ペイロード、復号された受信音声とチャット、ボイスエフェクト中間ファイル、暗号と HMAC 鍵素材、nonce ログ、セッションフラグ、PID ファイル、名前付きパイプ、ローテーション時の Tor オニオンサービス鍵、リレーセッションデータ。ディレクトリの場合、内部のすべてのファイルが再帰的に上書きされます。組み込みのテストオプションは、サンプルファイルを作成し、元の内容を平文と 16 進数で表示し、上書きし、上書き後の 16 進数を表示して、ユーザーがデータが破壊されたことを視覚的に確認できるようにします。デフォルトではオフ — ほとんどのユーザーにとって、標準の rm で十分です。TerminalPhone の一時ファイルは小さく短命で、ディスク容量は通常のシステム活動によってすぐに再利用されます。この機能は、フォレンジック復元に対する追加の保護層を求めるユーザー向けです。注: SSD およびフラッシュストレージでは、ウェアレベリングにより上書きが異なる物理 NAND セルに書き込まれる可能性があります — フラッシュメディアでは完全ディスク暗号化が唯一の信頼できる防御です。従来の HDD では、上書きは同じ物理位置のデータを置き換え、すべてのソフトウェアベースの復元に対して有効です。RELAY:1 ハンドシェイクを介してリレーモードを自動検出し、ライブのグループ発信者数を表示します。1 人の発信者が退出しても、他の発信者は切断されません。オペレーターダッシュボードには、発信者数、稼働時間、データスループットが表示されます。対応ディストリビューション: Debian/Ubuntu (apt)、Fedora/RHEL (dnf)、Arch (pacman)。``` bash
git clone https://gitlab.com/here_forawhile/terminalphone.git cd terminalphone bash terminalphone.sh
メニューからオプション **7** を選択すると、すべての依存関係が自動的にインストールされます。以下のパッケージがインストールされます:
| パッケージ | 目的 |
|---|---|
| `tor` | オニオンルーティングと隠れサービス |
| `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 がインストールされていない場合、スクリプトはまず Homebrew をインストールし、その後以下のパッケージをインストールします:
| パッケージ | 目的 |
|---|---|
tor | オニオンルーティングと隠しサービス |
opus-tools | 音声圧縮(Opus コーデック) |
sox | 音声の録音と再生(rec、play) |
socat | Tor SOCKS プロキシ経由の双方向 TCP リレー |
openssl | AES-256-CBC 暗号化と復号 |
注記: macOS では ALSA の代わりに、録音(rec)と再生(play)の両方に sox を使用します。追加のオーディオパッケージは必要ありません。
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 が機能します。
TerminalPhone は Termux を通じて Android デバイスをサポートします。Android のサンドボックス化されたオーディオアーキテクチャのため、2 つの追加コンポーネントが必要です。
ステップ 1:Termux のインストール
F-Droid から Termux をインストールします。Play Store 版は古く、更新が提供されなくなっているため使用しないでください。
ステップ 2:Termux:API アプリのインストール
F-Droid から Termux:API をインストールします。これは Termux パッケージではなく、Termux と Android システム API の間のブリッジを提供する独立した Android アプリケーションです。TerminalPhone はデバイスのマイクとメディア再生にアクセスするためにこれが必要です。
デバイスに Termux:API アプリがインストールされていない場合、termux-microphone-record および termux-media-player コマンドは機能せず、音声の録音と再生はサイレントに失敗します。
Termux:API アプリをインストールした後、プロンプトが表示されたらマイクの権限を付与してください。
ステップ 3:Termux 内で Termux:API パッケージをインストール```bash pkg install termux-api
これは、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 固有の依存関係:
| パッケージ | 目的 |
|---|---|
termux-api | Android のマイクとメディアプレーヤーへの CLI ブリッジ |
ffmpeg | Android の M4A 録音を Opus エンコード用の raw PCM に変換 |