Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
terminalphone — Verschlüsselte Push-to-Talk-Sprach- und Textkommunikation über Tor-Versteckdienste mit Ende-zu-Ende-Verschlüsselung, konfigurierbaren Ciphern, Relay-Modus für Gruppenanrufe und anti-forensischer Datenvernichtung. | Kitploit
Tools/GitLabGitLab/here_forawhile/terminalphone
OSINT (Open-Source-Intelligence)Verschlüsselungs-/EntschlüsselungstoolsNetzwerksicherheitPrivatsphäreCommand and ControlRed Teaming
GitLabhere_forawhile/terminalphone

terminalphone

Verschlüsselte Push-to-Talk-Sprach- und Textkommunikation über Tor-Versteckdienste mit Ende-zu-Ende-Verschlüsselung, konfigurierbaren Ciphern, Relay-Modus für Gruppenanrufe und anti-forensischer Datenvernichtung.

Repository anzeigen
26837vor 2 MonatenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

TerminalPhone

Verschlüsselte Push-to-Talk-Sprachkommunikation über Tor-Hidden-Services.

TerminalPhone ist ein einzelnes, eigenständiges Bash-Skript, das anonyme, Ende-zu-Ende-verschlüsselte Sprach- und Textkommunikation zwischen zwei oder mehreren Parteien über das Tor-Netzwerk bereitstellt. Es funktioniert wie ein Walkie-Talkie: Sie nehmen eine Sprachnachricht auf, die dann komprimiert, verschlüsselt und als einzelne Einheit an die entfernte Partei übertragen wird. Während eines Anrufs können Sie auch verschlüsselte Textnachrichten senden. Keine Server-Infrastruktur, keine Konten, keine Telefonnummern. Ihre Tor-Hidden-Service-.onion-Adresse ist Ihre Identität.


Inhaltsverzeichnis

  • Funktionen
  • Installation
    • Linux
    • macOS
    • Termux (Android)
  • Schnellstart
  • Verwendung
    • Menüoptionen
    • In-Call-Steuerung
    • CLI-Modus
  • Funktionsweise
  • Sicherheitsmodell
  • Konfiguration
  • Fehlerbehebung
  • Lizenz

Funktionen

  • Walkie-Talkie-Sprachnachrichten -- Nehmen Sie eine vollständige Sprachnachricht auf und senden Sie sie beim Loslassen. Kein Live-Streaming, kein Abschneiden.
  • Verschlüsselter Chat während des Anrufs -- Senden und empfangen Sie verschlüsselte Textnachrichten während eines Anrufs. Drücken Sie T, um eine Nachricht einzugeben.
  • Anrufer-ID -- Beide Parteien tauschen beim Verbindungsaufbau automatisch ihre .onion-Adressen aus. Die entfernte Adresse wird in der Anrufkopfzeile angezeigt.
  • Automatische Aufleg-Erkennung -- Wenn eine Partei auflegt, wird die andere sofort benachrichtigt und der Anruf endet automatisch.
  • Konfigurierbare Chiffre -- Wählen Sie aus 21 kuratierten Chiffren, nach Stärke eingestuft (256-Bit → 128-Bit). Beinhaltet AES-, ChaCha20-, Camellia- und ARIA-Familien. Schwache Chiffren (DES, RC4, ECB-Modi) sind ausgeschlossen.
  • Live-Chiffre-Aushandlung -- Beide Parteien tauschen beim Verbindungsaufbau Chiffren-Informationen aus. Die Anrufkopfzeile zeigt sowohl die lokale als auch die entfernte Chiffre mit grünen (Übereinstimmung) oder roten (Abweichung) Indikatoren an, die in Echtzeit aktualisiert werden.
  • Einstellungen während des Anrufs -- Drücken Sie während eines Anrufs S, um auf die Einstellungen zuzugreifen. Ändern Sie Ihre Chiffre im laufenden Betrieb; die Anzeige der entfernten Partei wird automatisch aktualisiert.
  • Snowflake-Bridge-Informationen -- Bei Verwendung von Snowflake zur Zensurumgehung zeigt die Anrufseite den Bridge-Deskriptornamen, den Fingerabdruck und den Transportverbindungsstatus an, die aus den Tor-Protokollen extrahiert werden.
  • Automatisches Zuhören -- Wenn aktiviert, startet ein Hintergrund-Listener automatisch, wenn Tor bootet. Eingehende Anrufe werden erkannt und vom Hauptmenü aus angenommen, ohne manuell „Auf Anrufe hören" auswählen zu müssen. Nach einem Anruf wird der Listener neu gestartet.
  • Konfigurierbare PTT-Taste -- Ändern Sie die Push-to-Talk-Taste von der Standard-Leertaste auf eine beliebige Taste über das Einstellungsmenü.
  • Nachrichtenstatistiken -- Der Anrufbildschirm zeigt die verschlüsselte Nutzlastgröße für gesendete und empfangene Nachrichten an, die direkt aktualisiert wird.
  • Remote-PTT-Status -- Der Anrufbildschirm zeigt einen statischen Indikator für den Status der entfernten Partei an: „Leerlauf" (grün) oder „● Aufnahme" (rot). Wird zurückgesetzt, sobald Audiodaten eintreffen, noch vor der Wiedergabe.
  • PTT-Signalton -- Optionaler Benachrichtigungston, wenn die entfernte Partei mit der Aufnahme beginnt. Fünf integrierte Voreinstellungen (Ton, Doppelton, Piepser, Klingel, Klick), erzeugt mit sox, plus die Möglichkeit, einen benutzerdefinierten 2-Sekunden-Signalton aufzunehmen. Konfigurierbar über die Einstellungen.
  • Verbindungsanimation -- Beim Anrufen einer entfernten Adresse wird eine sich drehende Animation abgespielt, bis die Anrufoberfläche geladen ist.
  • Stimmverzerrer -- Wenden Sie Stimmeffekte auf ausgehende Audiodaten an. Enthält 6 Voreinstellungen (tief, hoch, Roboter, Echo, Flüstern) und einen vollständig konfigurierbaren benutzerdefinierten Modus mit Tonhöhenverschiebung, Overdrive, Flanger, Echo, Hochpassfilter und Tremolo. Effekte werden vor der Opus-Kodierung mit sox verarbeitet.
  • Lautstärke-PTT (Termux) -- Experimenteller Modus, der es ermöglicht, die Aufnahme durch doppeltes Antippen der Leiser-Taste umzuschalten, auch wenn Termux im Hintergrund läuft. Erfordert jq (auf Anforderung installiert). Die Lautstärke wird nach jeder Auslösung automatisch wiederhergestellt.
  • Tor-Hidden-Service -- Jede Instanz betreibt ihren eigenen Tor-Hidden-Service. Ihre .onion-Adresse dient als permanenter, routingfähiger Endpunkt. Keine Portweiterleitung oder öffentliche IP erforderlich.
  • Ende-zu-Ende-Verschlüsselung -- Alle Audio- und Textdaten werden mit einer konfigurierbaren Chiffre (Standard: AES-256-CBC) mit PBKDF2-Schlüsselableitung aus einem vorab vereinbarten Geheimnis verschlüsselt, bevor sie das Tor-Netzwerk betreten.
  • Passwortgeschütztes Geheimnis -- Das gemeinsame Geheimnis kann im Ruhezustand mit einem benutzerdefinierten Passwort (AES-256-CBC, 100.000 PBKDF2-Iterationen) verschlüsselt werden. Vorhandene Klartext-Geheimnisse werden automatisch erkannt, mit einem Angebot zur Migration.
  • Niedrige Bandbreite -- Opus-Codec bei 16 kbit/s, 8 kHz Mono. Eine typische 10-Sekunden-Sprachnachricht ist unter 20 KB groß, weit innerhalb der Kapazität von Tor.
  • QR-Code-Freigabe -- Option 3 kann Ihre .onion-Adresse als scannbaren QR-Code im Terminal anzeigen. Wenn qrencode nicht installiert ist, werden Sie zur Installation aufgefordert. Der QR-Code wird auf dem alternativen Bildschirmpuffer gerendert und beim Schließen zerstört. Ein Hinweis warnt davor, dass einige QR-Scanner automatisch http:// voranstellen; dieses Präfix wird beim Wählen automatisch entfernt.
  • Undurchsichtige temporäre Dateien -- Alle temporären Dateien verwenden generische .tmp-Erweiterungen und zufällige Hex-Identifikatoren. Es werden keine Dateityp- oder Zeitstempel-Metadaten an das Dateisystem weitergegeben.
  • Circuit-Hop-Anzeige -- Optionale Anzeige Ihres Tor-Circuit-Pfads während Anrufen, mit Relay-Namen und vollständigen Ländernamen. Automatische Aktualisierung alle 60 Sekunden. Konfigurierbar über Einstellungen → Tor-Einstellungen.
  • Länder ausschließen -- Schließen Sie bestimmte Länder von Ihren Tor-Circuits aus. Voreinstellungen für die Allianzen der Five Eyes, Nine Eyes und Fourteen Eyes, oder benutzerdefinierte Länderkürzel eingeben. Verwendet ExcludeNodes mit StrictNodes in der torrc.
  • HMAC-Protokollauthentifizierung -- Optionale HMAC-SHA256-Signierung aller Protokollnachrichten (Sprache, Text, Steuersignale) mit dem gemeinsamen Geheimnis. Pro Nachricht wird eine zufällige Nonce eingefügt; gesehene Nonces werden verfolgt, um Wiederholungen abzuweisen. Nicht signierte, gefälschte oder wiederholte Nachrichten werden stillschweigend verworfen. Der HMAC-Zustand wird zu Beginn des Anrufs eingefroren, um eine Desynchronisation während des Anrufs zu verhindern. Konfigurierbar über Einstellungen → Sicherheit.
  • Überschreiben vor dem Löschen -- Optionale Umschaltung in Einstellungen → Sicherheit, die jede temporäre Datei vor dem Löschen mit Zufallsdaten aus /dev/urandom überschreibt. Die Dateigröße wird ausgelesen, diese Anzahl Bytes Zufallsdaten werden mit dd unter Verwendung von conv=notrunc über die Datei geschrieben, der Schreibvorgang wird mit sync auf das Speichergerät geleert, und dann wird die Datei mit rm entfernt. Deckt alle sensiblen Laufzeitdateien ab: rohe PCM-Aufnahmen, Opus-kodiertes Audio, verschlüsselte Nutzdaten, entschlüsseltes eingehendes Audio und Chat, Stimmeffekt-Zwischendateien, Chiffren- und HMAC-Schlüsselmaterial, Nonce-Protokolle, Sitzungsflags, PID-Dateien, Named Pipes, Tor-Hidden-Service-Schlüssel bei Rotation und Relay-Sitzungsdaten. Bei Verzeichnissen werden alle darin enthaltenen Dateien rekursiv überschrieben. Ein eingebauter Test erstellt eine Beispieldatei, zeigt den ursprünglichen Inhalt im Klartext und hexadezimal an, überschreibt sie und zeigt das überschriebene Hex an, damit der Benutzer visuell bestätigen kann, dass die Daten zerstört wurden. Standardmäßig deaktiviert – für die meisten Benutzer ist ein normales rm völlig ausreichend. TerminalPhone's temporäre Dateien sind klein und kurzlebig, und der Speicherplatz wird normalerweise schnell durch normale Systemaktivitäten wiederverwendet. Diese Funktion ist für Benutzer gedacht, die eine zusätzliche Schutzschicht gegen forensische Wiederherstellung wünschen. Hinweis: Auf SSDs und Flash-Speichern kann das Überschreiben aufgrund des Wear-Levelings auf unterschiedliche physische NAND-Zellen treffen – Festplattenverschlüsselung ist der einzige zuverlässige Schutz auf Flash-Medien. Auf herkömmlichen HDDs ersetzt das Überschreiben die Daten an der gleichen physischen Position und ist gegen alle softwarebasierten Wiederherstellungsmethoden wirksam.
  • Relay-Modus (Gruppen-Bridge) -- Betreiben Sie ein Zero-Knowledge-Relay, das N anonyme Anrufer verbindet. Das Relay leitet verschlüsselte Audio- und Chatdaten weiter, ohne zu entschlüsseln, und benötigt kein gemeinsames Geheimnis oder Audio-Hardware. Clients erkennen den Relay-Modus automatisch über den Handshake RELAY:1 und zeigen die Live-Anruferanzahl der Gruppe an. Wenn ein Anrufer geht, werden die anderen nicht getrennt. Das Operator-Dashboard zeigt Anruferanzahl, Betriebszeit und Datendurchsatz.
  • Ein-Hop-Tor-Modus -- Optionaler Modus mit reduzierter Latenz für Relay-Betreiber. Verwendet 1 Tor-Hop anstelle von 3 für den Hidden-Service, opfert Server-Anonymität zugunsten geringerer Latenz. Ideal für Relay-Betreiber, die ihre eigene IP nicht verbergen müssen.
  • Port-Konfiguration -- Konfigurieren Sie den Listen-Port und den SOCKS-Port gemeinsam über Einstellungen → Tor-Einstellungen. Ermöglicht den Betrieb mehrerer Instanzen auf demselben Gerät mit separaten Tor-Prozessen. Hauptsächlich nützlich für Relay-Betreiber, die auch an ihrem eigenen Gruppenanruf teilnehmen möchten – betreiben Sie das Relay auf einer Instanz, ändern Sie den SOCKS-Port auf einer zweiten Instanz und wählen Sie sich als Anrufer ein.
  • Plattformübergreifend -- Läuft auf Standard-Linux-Distributionen, macOS und Android über Termux. Plattformspezifische Audio-Backends werden transparent gehandhabt.
  • Kein Root erforderlich -- PTT-Eingabe verwendet den rohen Terminalmodus. Keine speziellen Berechtigungen oder Kernelmodule erforderlich.
  • Einzelnes Skript -- Eine Bash-Datei. Kein Build-System, keine Laufzeitumgebung, kein Framework.

Installation

Linux

Unterstützte Distributionen: 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:~
Wählen Sie **7** aus dem Menü, um alle Abhängigkeiten automatisch zu installieren. Die folgenden Pakete werden installiert:

| Paket | Zweck |
|---|---|
| `tor` | Onion-Routing und versteckter Dienst |
| `opus-tools` | Sprachkomprimierung (Opus-Codec) |
| `sox` | Audioverarbeitungswerkzeuge |
| `socat` | Bidirektionale TCP-Weiterleitung über Tor-SOCKS-Proxy |
| `openssl` | AES-256-CBC-Verschlüsselung und -Entschlüsselung |
| `alsa-utils` | Audioaufnahme und -wiedergabe (`arecord`, `aplay`) |

### macOS``` bash

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

Wählen Sie die Option 7, um alle Abhängigkeiten automatisch zu installieren. Wenn Homebrew nicht installiert ist, wird das Skript es zuerst installieren und dann die folgenden Pakete installieren:

Hinweis: macOS verwendet sox sowohl für die Aufnahme (rec) als auch für die Wiedergabe (play) anstelle von ALSA. Es werden keine zusätzlichen Audiopakete benötigt.

Apple Silicon (M1/M2/M3+): Falls Ihr Terminal zufällig unter Rosetta 2 (einem x86_64-Prozess) läuft, während Homebrew im nativen ARM-Prefix (/opt/homebrew) installiert ist, schlägt brew install normalerweise mit Cannot install under Rosetta 2 in ARM default prefix fehl. Der Abhängigkeitsinstaller erkennt dies nun und führt Homebrew automatisch unter arch -arm64 erneut aus, sodass Option 7 unabhängig davon funktioniert, wie das Skript gestartet wurde.

Termux (Android)

TerminalPhone unterstützt Android-Geräte über Termux. Aufgrund der abgeschotteten Audio-Architektur von Android sind zwei zusätzliche Komponenten erforderlich.

Schritt 1: Termux installieren

Installieren Sie Termux von F-Droid. Verwenden Sie nicht die Version aus dem Play Store, da diese veraltet ist und keine Updates mehr erhält.

Schritt 2: Die Termux:API-App installieren

Installieren Sie Termux:API von F-Droid. Dies ist eine separate Android-Anwendung (kein Termux-Paket), die eine Brücke zwischen Termux und den Android-System-APIs bereitstellt. TerminalPhone benötigt sie, um auf das Gerätemikrofon und die Medienwiedergabe zuzugreifen.

Ohne die auf dem Gerät installierte Termux:API-App funktionieren die Befehle termux-microphone-record und termux-media-player nicht, und Audioaufnahme und -wiedergabe schlagen stillschweigend fehl.

Nach der Installation der Termux:API-App erteilen Sie die Mikrofonberechtigungen, wenn Sie dazu aufgefordert werden.

Schritt 3: Das Termux:API-Paket innerhalb von Termux installieren```bash pkg install termux-api

root@kitploit:~
This installs the command-line utilities that communicate with the Termux:API app.

**Schritt 4: TerminalPhone ausführen**```bash
git clone https://gitlab.com/here_forawhile/terminalphone.git
cd terminalphone
bash terminalphone.sh

Wählen Sie Option 7 aus, um alle verbleibenden Abhängigkeiten zu installieren. Der Installer führt zuerst pkg upgrade aus, um etwaige Paketverknüpfungsprobleme zu beheben, und installiert dann tor, opus-tools, sox, socat, openssl-tool, ffmpeg und termux-api.

Termux-spezifische Abhängigkeiten:

PaketZweck
termux-apiCLI-Brücke zum Android-Mikrofon und Mediaplayer
ffmpegKonvertiert M4A-Aufnahmen von Android in rohes PCM für die Opus-Kodierung

Schnellstart```

  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:~
Beide Parteien müssen Tor ausführen und denselben gemeinsam genutzten Schlüssel konfiguriert haben, bevor ein Anruf initiiert wird.

---

## Nutzung

### Menüoptionen```
 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

Anrufsteuerung

Linux (Drücken zum Sprechen):

TasteAktion
SPACE gedrückt haltenSprachnachricht aufnehmen. Wird beim Loslassen automatisch gesendet.
TVerschlüsselte Textnachricht senden.
SEinstellungen während des Anrufs öffnen (Chiffre ändern, Qualität anpassen).
QAuflegen und zum Menü zurückkehren.

Termux (Umschaltmodus):

Die Softwaretastatur von Android sendet Tastenereignisse beim Loslassen, nicht beim Drücken. TerminalPhone passt sich an, indem es den Umschaltmodus auf Termux verwendet.

TasteAktion
SPACE antippenAufnahme starten. Erneutes Antippen zum Stoppen und Senden.

CLI-Modus```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:~
## So funktioniert's

TerminalPhone verwendet ein Aufzeichnen-dann-Senden-Modell. Wenn Sie PTT aktivieren, zeichnet das Mikrofon kontinuierlich auf, bis Sie loslassen. Die vollständige Aufnahme wird dann durch die folgende Pipeline verarbeitet:```
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

Das Wire-Protokoll ist zeilenbasierter Text über eine TCP-Verbindung:

Auf Termux wird ein zusätzlicher Konvertierungsschritt durchgeführt, der das native M4A-Aufnahmeformat von Android handhabt, indem ffmpeg verwendet wird, um vor der Opus-Kodierung in rohes PCM zu konvertieren.


Sicherheitsmodell

Verschlüsselung: Sämtliches Audio wird vor der Übertragung mit einem benutzerkonfigurierbaren Algorithmus (Standard: AES-256-CBC) verschlüsselt. 21 kuratierte Algorithmen stehen zur Verfügung, geordnet von stärkster (256-Bit) bis ausreichender (128-Bit) Stärke. Der Schlüssel wird aus einem vorab geteilten Geheimnis mit PBKDF2 und 10.000 Iterationen abgeleitet. Die Verschlüsselung erfolgt auf Anwendungsebene, unabhängig von der Transportverschlüsselung von Tor. Geheimnisse werden über Dateideskriptoren (-pass fd:3) an OpenSSL übergeben, nicht über Befehlszeilenargumente, sodass sie niemals in der Prozessliste erscheinen.

Algorithmusaushandlung: Beide Parteien tauschen bei Verbindungsaufbau und bei jeder Änderung des Algorithmus während eines Anrufs die Namen der Algorithmen aus. Algorithmusnamen sind nicht geheim (Kerckhoffs-Prinzip). Stimmen lokaler und entfernter Algorithmus nicht überein, sehen beide Parteien rote Indikatoren in der Anrufkopfzeile.

Transport: Alle Daten werden über Tor Hidden-Service-Schaltkreise geleitet. Die IP-Adresse keiner Partei wird offengelegt. Es gibt keinen Clearnet-Verkehr. Die Verbindung kann von einem Netzbeobachter keiner der beiden Parteien zugeordnet werden.

Traffic-Analyse-Resistenz: Das Aufnehmen-dann-Senden-Modell erzeugt unregelmäßige Übertragungsmuster (Nachrichten variabler Länge in unregelmäßigen Abständen), die schwerer zu identifizieren sind als kontinuierliches Streaming.

Authentifizierung: Das gemeinsame Geheimnis dient als implizite Authentifizierung. Haben beide Parteien nicht dasselbe Geheimnis, schlägt die Entschlüsselung fehl und es wird kein Audio abgespielt. Bei Verbindungsaufbau tauschen beide Parteien ihre .onion-Adressen zur Anruferidentifikation aus. Das Geheimnis kann optional im Ruhezustand mit einer Passphrase verschlüsselt werden; beim Start fordert das Skript zur Eingabe der Passphrase auf, um es zu entsperren.

HMAC-Protokoll-Signierung (optional): Wenn aktiviert, wird jede Wire-Protokoll-Nachricht – einschließlich Kontrollsignalen wie HANGUP, PTT_START und PING – mit HMAC-SHA256 signiert, abgeleitet vom gemeinsamen Geheimnis. Pro Nachricht wird eine zufällige Nonce eingefügt, sodass identische Befehle eindeutige Signaturen erzeugen. Gesehene Nonces werden pro Anruf nachverfolgt und Duplikate zurückgewiesen, um Replay-Angriffe zu verhindern. Die HMAC-Einstellung wird zu Anrufbeginn über eine Laufzeitdatei eingefroren, sodass Sende- und Empfangspfad stets übereinstimmen, selbst wenn die Einstellung während des Anrufs umgeschaltet wird (Änderungen werden beim nächsten Anruf wirksam). Auf der Empfangsseite werden Nachrichten mit ungültiger, fehlender oder wiederverwendeter Signatur stillschweigend verworfen. Dies verhindert, dass ein Angreifer, der den Tor-Schaltkreis kompromittiert hat (aber das gemeinsame Geheimnis nicht besitzt), Befehle einschleusen oder wiedergeben kann. Beide Parteien müssen HMAC aktivieren, damit Anrufe funktionieren. Nicht kompatibel mit Versionen vor 1.1.3.

Einschränkungen:

  • Das gemeinsame Geheimnis muss außerhalb des Kanals über einen sicheren Kanal ausgetauscht werden (persönlich, verschlüsselte Nachrichten usw.).
  • Es gibt keine Vorwärtssicherheit. Wird das gemeinsame Geheimnis kompromittiert, können alle vergangenen und zukünftigen Kommunikationen mit diesem Geheimnis entschlüsselt werden.
  • Das Protokoll schützt nicht vor einem kompromittierten Endpunkt. Ist ein Gerät kompromittiert, hat der Angreifer Zugriff auf das Klartext-Audio.

Relay-Modus-Sicherheit: Das Relay ist architekturbedingt wissensfrei. Es besitzt niemals das gemeinsame Geheimnis und kann keine Inhalte entschlüsseln. Audiodaten fließen durch Kernel-Pipe-Puffer (FIFOs), die nur im Speicher existieren – nichts wird auf die Festplatte geschrieben. Wenn das Relay stoppt, werden alle temporären Dateien gelöscht. Der Relay-Betreiber kann weder feststellen, was gesagt wurde, wer die Anrufer sind, noch Nachrichten lesen. Das Relay filtert alle Kontrollsignale (HANGUP, ID:, CIPHER:, PTT_START, PTT_STOP) und leitet nur AUDIO:, MSG: und PING weiter. Ein globaler passiver Angreifer könnte eine Verkehrskorrelationsanalyse durchführen, um Anrufer mit dem Relay zu assoziieren, aber der Nachrichteninhalt bleibt undurchsichtig.

Relay-Kapazität: Der primäre Engpass ist die Tor-Bandbreite. Der Durchsatz von Tor-Hidden-Services ist stark variabel und hängt von der Schaltkreisqualität, Relay-Überlastung und geografischer Entfernung ab. Eine typische 10-Sekunden-Sprachnachricht ist ~20 KB verschlüsselt, und jede Übertragung wird an N-1 Zuhörer verteilt.

Realistische Kapazität beträgt 3–5 Anrufer für ein Relay, das auf einem Telefon (Termux) läuft, oder 5–10 Anrufer auf einem dedizierten Linux-Rechner mit stabiler Verbindung. Relays auf Mobilgeräten unterliegen zusätzlichen Einschränkungen: Mobile Daten erhöhen die Latenz zusätzlich zu Tor, Android kann Hintergrund-Termux-Prozesse beenden, um Speicher freizugeben, und der Batterieverbrauch steigt mit jedem verbundenen Anrufer. Die Tor-Schaltkreisbandbreite kann je nach Pfadqualität zwischen 50 KB/s und 500 KB/s schwanken, und Schaltkreise können sich während einer Sitzung verschlechtern oder rotieren. Der Einzelhop-Modus verbessert den Durchsatz, beseitigt aber nicht die Tor-Relay-Überlastung. Diese Schätzungen gehen vom PTT-Modell aus, bei dem jeweils nur eine Person sendet – gleichzeitige Übertragungen würden die Leistung weiter verschlechtern. Anrufer in einem Gruppenanruf sollten in Erwägung ziehen, ihre Opus-Bitrate zu senken (Einstellungen → Opus-Kodierung), um die Nachrichtengrößen zu reduzieren und das Relay zu entlasten.


Konfiguration

Die gesamte Konfiguration wird in .terminalphone/ relativ zum Skript-Speicherort gespeichert:``` .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:~
Standardmäßige Audio-Parameter (am Anfang des Skripts definiert):

| Parameter | Standardwert | Beschreibung |
|---|---|---|
| `LISTEN_PORT` | 7777 | TCP-Port für eingehende Verbindungen |
| `TOR_SOCKS_PORT` | 9050 | Tor-SOCKS-Proxy-Port |
| `OPUS_BITRATE` | 16 | Opus-Codierungsbitrate in kbps |
| `CIPHER` | aes-256-cbc | Verschlüsselungsverfahren (über Einstellungen konfigurierbar) |
| `SNOWFLAKE_ENABLED` | 0 | Snowflake-Bridge zur Umgehung von Zensur |
| `AUTO_LISTEN` | 0 | Automatisches Lauschen auf Anrufe, wenn Tor startet |
| `PTT_KEY` | LEERTASTE | Push-to-Talk-Taste (über Einstellungen konfigurierbar) |
| `VOL_PTT` | 0 | Doppeltippen auf Lautstärke verringern für PTT, nur Termux (experimentell) |
| `EXCLUDE_NODES` | (leer) | Tor-ExcludeNodes-Länderliste (z. B. `{US},{GB}`) |
| `HMAC_AUTH` | 0 | HMAC-Signierung aller Protokollnachrichten (optional, beide Seiten müssen übereinstimmen) |
| `OVERWRITE_DELETE` | 0 | Temporäre Dateien vor dem Löschen mit Zufallsdaten überschreiben (standardmäßig deaktiviert) |
| `PTT_CHIME` | aus | PTT-Benachrichtigungston-Voreinstellung (aus, Ton, Doppelton, Zwitschern, Piepton, Klick, benutzerdefiniert) |
| `SINGLE_HOP` | 0 | Ein-Hop-Tor-Modus für geringere Latenz (deaktiviert die Server-Anonymität) |
| `SAMPLE_RATE` | 8000 | Audio-Abtastrate in Hz |
| `CHUNK_DURATION` | 1 | Dauer für Audio-Testblöcke in Sekunden |

---

## Fehlerbehebung

**Tor kann nicht bootstrappen:**
Überprüfen Sie das Tor-Protokoll unter `.terminalphone/tor_data/tor.log`. Häufige Ursachen sind falsche Systemzeit, Netzwerkbeschränkungen, die Tor blockieren, oder eine weitere Tor-Instanz, die denselben SOCKS-Port verwendet.

**Kein Audio unter Termux:**
Stellen Sie sicher, dass die Termux:API-App von F-Droid installiert ist (nicht nur das `termux-api`-Paket). Erteilen Sie der Termux:API-App in den Android-Einstellungen die Mikrofonberechtigung. Führen Sie den Audio-Loopback-Test (Option 5) aus, um dies zu überprüfen.

**ffmpeg-Installation unter Termux schlägt fehl:**
Führen Sie `pkg upgrade` aus, bevor Sie Abhängigkeiten installieren. Der Installer erledigt dies automatisch; wenn Sie Pakete jedoch manuell installiert haben, können veraltete Shared Libraries zu Linkerfehlern führen.

**Audiotest funktioniert, aber Anrufe sind stumm:**
Bestätigen Sie, dass beide Parteien dasselbe gemeinsame Geheimnis verwenden. Nicht übereinstimmende Geheimnisse führen zu einem Entschlüsselungsfehler ohne Fehlermeldung – der Anruf wird verbunden, aber es ist kein Audio zu hören.

**Snowflake-Bridge verbindet langsam:**
Snowflake leitet Datenverkehr über WebRTC-Proxys, was zusätzliche Bootstrap-Zeit verursacht. Es ist normal, dass Tor 30–60 Sekunden (oder länger) benötigt, um 100 % zu erreichen, wenn Snowflake aktiviert ist. Das Skript zeigt während des Bootstraps einen Geduldshinweis an.

**Erster Tor-Bootstrap ist langsam:**
Beim ersten Start muss Tor den vollständigen Netzwerkkonsens von Grund auf herunterladen, was ein bis zwei Minuten dauern kann. Das Skript erkennt dies und zeigt einen Hinweis an. Das Bootstrap-Timeout wird beim ersten Lauf automatisch von 120 auf 300 Sekunden verlängert. Nachfolgende Starts verwenden zwischengespeicherte Konsensdaten und sind wesentlich schneller.

**Auflegen führt nicht zurück zum Menü:**
Wenn das Skript nach Drücken von Q hängt, drücken Sie Strg+C, um die Bereinigung zu erzwingen und zur Shell zurückzukehren.

**`Cannot install under Rosetta 2 in ARM default prefix` unter macOS:**
Dies tritt auf Apple Silicon auf, wenn das Terminal unter Rosetta 2 (einem `x86_64`-Prozess) läuft, aber Homebrew im nativen ARM-Prefix (`/opt/homebrew`) installiert ist. Der Abhängigkeitsinstaller (Option **7**) erkennt dies nun und führt `brew` automatisch unter `arch -arm64` erneut aus. Wenn Sie Pakete manuell installieren, führen Sie sie selbst mit `arch -arm64 brew install <Paket>` aus. Alternativ starten Sie das Skript nativ mit `arch -arm64 bash terminalphone.sh`.

---

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

---

## Lizenz

MIT
Tool herunterladen
PaketZweck
torOnion-Routing und Hidden Service
opus-toolsSprachkompression (Opus-Codec)
soxAudioaufnahme und -wiedergabe (rec, play)
socatBidirektionaler TCP-Relay durch Tor-SOCKS-Proxy
opensslAES-256-CBC-Verschlüsselung und -Entschlüsselung
TVerschlüsselte Textnachricht senden.
SEinstellungen während des Anrufs öffnen (Chiffre ändern, Qualität anpassen).
QAuflegen und zum Menü zurückkehren.
Lautstärke runter ×2Aufnahme über Lautstärketaste umschalten (erfordert Volume PTT in den Einstellungen aktiviert).
NachrichtBeschreibung
ID:<onion>Anrufer-ID – .onion-Adresse des Senders
CIPHER:<name>Verschlüsselungsalgorithmus des Senders. Wird bei Verbindungsaufbau und bei Änderung ausgetauscht.
PTT_STARTSender hat mit der Aufnahme begonnen
PTT_STOPSender ist fertig; Audio folgt oder wurde gesendet
AUDIO:<base64>Vollständige verschlüsselte Audio-Nachricht
MSG:<base64>Verschlüsselte Textnachricht
HANGUPSender trennt die Verbindung
PINGKeepalive-Signal
RELAY:1Relay-Begrüßung – vom Relay beim Verbindungsaufbau gesendet, aktiviert Gruppenmodus
GROUP:<n>Gruppen-Größenaktualisierung – vom Relay ausgesendet, wenn Anrufer beitreten oder gehen
AnruferAusgehend pro NachrichtErwartete Erfahrung
2–320–40 KBZuverlässig auf den meisten Verbindungen
3–540–80 KBGut auf stabilen Schaltkreisen, Verzögerungen auf mobilen Daten möglich
5–1080–180 KBAn der Grenze, spürbare Verzögerungen zwischen Übertragungen
10+180 KB+Unzuverlässig, erhebliche Wartezeiten und möglicher Nachrichtenverlust