Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
terminalphone — Comunicazione vocale e testuale push-to-talk crittografata tramite servizi nascosti Tor con crittografia end-to-end, cifrari configurabili, modalità relay per chiamate di gruppo e distruzione dati anti-forense. | Kitploit
Strumenti/GitLabGitLab/here_forawhile/terminalphone
OSINT (Open Source Intelligence)Strumenti di Crittografia/DecrittografiaSicurezza di RetePrivacyCommand and ControlRed Teaming
GitLabhere_forawhile/terminalphone

terminalphone

Comunicazione vocale e testuale push-to-talk crittografata tramite servizi nascosti Tor con crittografia end-to-end, cifrari configurabili, modalità relay per chiamate di gruppo e distruzione dati anti-forense.

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
Vedi Repository
268372 mesi faRevisionato da Kitploit

TerminalPhone

Comunicazione vocale push-to-talk crittografata su servizi nascosti Tor.

TerminalPhone è un singolo script Bash autonomo che fornisce comunicazione vocale e testuale anonima, crittografata end-to-end, tra due o più parti sulla rete Tor. Funziona come un walkie-talkie: registri un messaggio vocale, e questo viene compresso, crittografato e trasmesso alla parte remota come singola unità. Puoi anche inviare messaggi di testo crittografati durante una chiamata. Nessuna infrastruttura server, nessun account, nessun numero di telefono. Il tuo indirizzo .onion del servizio nascosto Tor è la tua identità.


Sommario

  • Caratteristiche
  • Installazione
    • Linux
    • macOS
    • Termux (Android)
  • Avvio Rapido
  • Utilizzo
    • Opzioni del Menu
    • Controlli Durante la Chiamata
    • Modalità CLI
  • Come Funziona
  • Modello di Sicurezza
  • Configurazione
  • Risoluzione dei Problemi
  • Licenza

Caratteristiche

  • Messaggistica Vocale Walkie-Talkie -- Registra un messaggio vocale completo e trasmettilo al rilascio. Nessuno streaming in diretta, nessun taglio.
  • Chat Crittografata in Chiamata -- Invia e ricevi messaggi di testo crittografati durante una chiamata. Premi T per digitare un messaggio.
  • ID Chiamante -- Entrambe le parti si scambiano automaticamente gli indirizzi .onion alla connessione. L'indirizzo remoto viene visualizzato nell'intestazione della chiamata.
  • Rilevamento Automatico di Uscita -- Quando una parte termina la chiamata, l'altra viene notificata immediatamente e la chiamata termina automaticamente.
  • Cifrario Configurabile -- Scegli tra 21 cifrari selezionati classificati per resistenza (256-bit → 128-bit). Include le famiglie AES, ChaCha20, Camellia e ARIA. I cifrari deboli (DES, RC4, modalità ECB) sono esclusi.
  • Negoziazione del Cifrario in Tempo Reale -- Entrambe le parti si scambiano le informazioni sul cifrario alla connessione. L'intestazione della chiamata mostra sia il cifrario locale che quello remoto con indicatori verdi (corrispondenza) o rossi (mancata corrispondenza), aggiornati in tempo reale.
  • Impostazioni in Chiamata -- Premi S durante una chiamata per accedere alle impostazioni. Cambia il tuo cifrario al volo; la visualizzazione della parte remota si aggiorna automaticamente.
  • Informazioni sul Bridge Snowflake -- Quando si utilizza Snowflake per l'elusione della censura, la pagina della chiamata mostra il nome descrittivo del bridge, l'impronta digitale e lo stato della connessione di trasporto estratti dai log di Tor.
  • Ascolto Automatico -- Quando abilitato, un ascoltatore in background si avvia automaticamente all'avvio di Tor. Le chiamate in arrivo vengono rilevate e accettate dal menu principale senza dover selezionare manualmente "Ascolta chiamate". Dopo la fine della chiamata, l'ascoltatore si riavvia.
  • Tasto PTT Configurabile -- Cambia il tasto push-to-talk dalla barra spaziatrice predefinita a qualsiasi altro tasto tramite il menu Impostazioni.
  • Statistiche dei Messaggi -- Lo schermo della chiamata visualizza la dimensione del payload crittografato per i messaggi inviati e ricevuti, aggiornati sul posto.
  • Stato PTT Remoto -- Lo schermo della chiamata mostra un indicatore statico per lo stato della parte remota: "Inattivo" (verde) o "● Registrazione" (rosso). Si azzera immediatamente quando i dati audio arrivano, prima dell'inizio della riproduzione.
  • Suono PTT -- Suono di notifica opzionale quando la parte remota inizia a registrare. Cinque preset integrati (tono, doppio, cinguettio, ding, click) generati con sox, oltre alla possibilità di registrare un suono personalizzato di 2 secondi. Configurabile tramite Impostazioni.
  • Animazione di Connessione -- Quando si chiama un indirizzo remoto, viene riprodotta un'animazione ciclica fino al caricamento dell'interfaccia di chiamata.
  • Modificatore Vocale -- Applica effetti vocali all'audio in uscita. Include 6 preset (profondo, acuto, robot, eco, sussurro) e una modalità personalizzata completamente configurabile con spostamento di tono, distorsione, flanger, eco, filtro passa-alto e tremolo. Gli effetti vengono elaborati utilizzando sox prima della codifica Opus.
  • Volume PTT (Termux) -- Modalità sperimentale che consente di toccare due volte il pulsante Volume Giù per attivare la registrazione, anche quando Termux è in background. Richiede jq (installato su richiesta). Il volume viene automaticamente ripristinato dopo ogni attivazione.
  • Servizio Nascosto Tor -- Ogni istanza esegue il proprio servizio nascosto Tor. Il tuo indirizzo .onion funge da endpoint instradabile permanente. Nessuna necessità di inoltro porte o IP pubblico.
  • Crittografia End-to-End -- Tutto l'audio e il testo vengono crittografati utilizzando un cifrario configurabile (predefinito: AES-256-CBC) con derivazione della chiave PBKDF2 da un segreto pre-condiviso prima di entrare nella rete Tor.
  • Segreto Protetto da Password -- Il segreto condiviso può essere crittografato a riposo utilizzando una password scelta dall'utente (AES-256-CBC, 100.000 iterazioni PBKDF2). I segreti in chiaro esistenti vengono rilevati automaticamente con un'offerta per migrarli.
  • Bassa Larghezza di Banda -- Codec Opus a 16kbps, 8kHz mono. Un tipico messaggio vocale di 10 secondi è inferiore a 20KB, ben entro la capacità di Tor.
  • Condivisione tramite QR Code -- L'opzione 3 può visualizzare il tuo indirizzo .onion come QR code scansionabile nel terminale. Se qrencode non è installato, viene richiesto di installarlo. Il QR code viene visualizzato sul buffer dello schermo alternativo e viene distrutto quando si elimina. Una nota avverte che alcuni scanner QR aggiungono automaticamente http://; questo prefisso viene automaticamente rimosso durante la composizione.
  • File Temporanei Opachi -- Tutti i file temporanei utilizzano estensioni .tmp generiche e identificatori esadecimali casuali. Nessun tipo di file o metadati temporali vengono divulgati al filesystem.
  • Visualizzazione del Salto di Circuito -- Visualizzazione opzionale del percorso del tuo circuito Tor durante le chiamate, mostrando i nomi dei relay e i nomi completi dei paesi. Si aggiorna automaticamente ogni 60 secondi. Configurabile tramite Impostazioni → Impostazioni Tor.
  • Escludi Paesi -- Escludi paesi specifici dai tuoi circuiti Tor. Preimpostazioni per le alleanze Five Eyes, Nine Eyes e Fourteen Eyes, oppure inserisci codici paese personalizzati. Utilizza ExcludeNodes con StrictNodes nel torrc.
  • Autenticazione del Protocollo HMAC -- Firma opzionale HMAC-SHA256 di tutti i messaggi del protocollo (voce, testo, segnali di controllo) utilizzando il segreto condiviso. Un nonce casuale viene incluso per messaggio, e i nonce già visti vengono tracciati per respingere replay. I messaggi non firmati, falsificati o riprodotti vengono scartati silenziosamente. Lo stato HMAC viene congelato all'inizio della chiamata per evitare desincronizzazioni durante la chiamata. Configurabile tramite Impostazioni → Sicurezza.
  • Sovrascrittura Prima della Cancellazione -- Opzione attivabile in Impostazioni → Sicurezza che sovrascrive ogni file temporaneo con dati casuali da /dev/urandom prima della cancellazione. La dimensione del file viene letta, tanti byte di dati casuali vengono scritti sopra il file con dd usando conv=notrunc, la scrittura viene scaricata sul dispositivo di archiviazione con sync, e poi il file viene rimosso con rm. Copre tutti i file sensibili in fase di esecuzione: registrazioni PCM grezze, audio codificato Opus, payload crittografati, audio in ingresso decrittografato e chat, intermediari degli effetti vocali, materiale delle chiavi di cifratura e HMAC, log dei nonce, flag di sessione, file PID, named pipe, chiavi del servizio nascosto Tor durante la rotazione e dati di sessione dei relay. Per le directory, tutti i file all'interno vengono sovrascritti ricorsivamente. Un'opzione di test incorporata crea un file di esempio, mostra il contenuto originale in chiaro e in esadecimale, lo sovrascrive e mostra l'esadecimale sovrascritto in modo che l'utente possa confermare visivamente che i dati siano stati distrutti. Disattivato per impostazione predefinita — per la maggior parte degli utenti, il normale rm è perfettamente accettabile. I file temporanei di TerminalPhone sono piccoli e di breve durata, e lo spazio su disco viene tipicamente riutilizzato rapidamente dalla normale attività del sistema. Questa funzionalità è per gli utenti che desiderano un ulteriore livello di protezione contro il recupero forense. Nota: su SSD e memorie flash, il livellamento dell'usura significa che la sovrascrittura potrebbe finire su diverse celle NAND fisiche — la crittografia completa del disco è l'unica difesa affidabile su supporti flash. Su HDD tradizionali, la sovrascrittura sostituisce i dati nella stessa posizione fisica ed è efficace contro tutti i recuperi basati su software.
  • Modalità Relay (Bridge di Gruppo) -- Esegui un relay a conoscenza zero che collega N chiamanti anonimi. Il relay inoltra audio e chat crittografati senza decrittografarli, non richiede segreto condiviso né hardware audio. I client rilevano automaticamente la modalità relay tramite handshake RELAY:1 e visualizzano il conteggio live dei chiamanti in gruppo. L'uscita di un chiamante non disconnette gli altri. Il pannello dell'operatore mostra il conteggio dei chiamanti, il tempo di attività e il throughput dei dati.
  • Modalità Tor a Singolo Salto -- Modalità opzionale a latenza ridotta per gli operatori di relay. Utilizza 1 salto Tor invece di 3 per il servizio nascosto, sacrificando l'anonimato del server per una latenza inferiore. Ideale per operatori di relay che non hanno bisogno di nascondere il proprio IP.
  • Configurazione della Porta -- Configura la porta di ascolto e la porta SOCKS insieme tramite Impostazioni → Impostazioni Tor. Consente di eseguire più istanze sullo stesso dispositivo con processi Tor separati. Principalmente utile per operatori di relay che vogliono anche partecipare alla propria chiamata di gruppo: esegui il relay su un'istanza, cambia la porta SOCKS su una seconda istanza e componi come chiamante.
  • Multi-piattaforma -- Funziona su distribuzioni Linux standard, macOS e Android tramite Termux. I backend audio specifici della piattaforma vengono gestiti in modo trasparente.
  • Non Richiede Root -- L'input PTT utilizza la modalità raw del terminale. Nessuna autorizzazione speciale o modulo del kernel necessario.
  • Script Singolo -- Un file Bash. Nessun sistema di build, nessun runtime, nessun framework.

Installazione

Linux

Distribuzioni supportate: 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:~
Seleziona l'opzione **7** dal menu per installare automaticamente tutte le dipendenze. Verranno installati i seguenti pacchetti:

| Pacchetto | Scopo |
|---|---|
| `tor` | Instradamento a cipolla e servizio nascosto |
| `opus-tools` | Compressione vocale (codec Opus) |
| `sox` | Utilità di elaborazione audio |
| `socat` | Relè TCP bidirezionale attraverso il proxy SOCKS di Tor |
| `openssl` | Cifratura e decifratura AES-256-CBC |
| `alsa-utils` | Registrazione e riproduzione audio (`arecord`, `aplay`) |

### macOS``` bash

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

Seleziona l'opzione 7 per installare automaticamente tutte le dipendenze. Se Homebrew non è installato, lo script lo installerà per primo, poi installerà i seguenti pacchetti:

Nota: macOS utilizza sox sia per la registrazione (rec) che per la riproduzione (play) invece di ALSA. Non sono necessari pacchetti audio aggiuntivi.

Apple Silicon (M1/M2/M3+): Se il tuo terminale dovesse essere in esecuzione sotto Rosetta 2 (un processo x86_64) mentre Homebrew è installato nel percorso nativo ARM (/opt/homebrew), brew install fallisce normalmente con l'errore Cannot install under Rosetta 2 in ARM default prefix. Il programma di installazione delle dipendenze ora rileva questa situazione e rilancia automaticamente Homebrew con arch -arm64, pertanto l'opzione 7 funziona indipendentemente da come lo script è stato avviato.

Termux (Android)

TerminalPhone supporta i dispositivi Android tramite Termux. A causa dell'architettura audio isolata di Android, sono necessari due componenti aggiuntivi.

Passo 1: Installa Termux

Installa Termux da F-Droid. Non utilizzare la versione del Play Store, poiché è obsoleta e non riceve più aggiornamenti.

Passo 2: Installa l'app Termux:API

Installa Termux:API da F-Droid. Si tratta di un'applicazione Android separata (non un pacchetto Termux) che fornisce un ponte tra Termux e le API di sistema Android. TerminalPhone ne ha bisogno per accedere al microfono del dispositivo e alla riproduzione multimediale.

Senza l'app Termux:API installata sul dispositivo, i comandi termux-microphone-record e termux-media-player non funzioneranno, e la registrazione e riproduzione audio falliranno silenziosamente.

Dopo aver installato l'app Termux:API, concedi le autorizzazioni per il microfono quando richiesto.

Passo 3: Installa il pacchetto Termux:API all'interno di Termux```bash pkg install termux-api

root@kitploit:~
Questo installa le utilità da riga di comando che comunicano con l'app Termux:API.

**Passaggio 4: Esegui TerminalPhone**```bash
git clone https://gitlab.com/here_forawhile/terminalphone.git
cd terminalphone
bash terminalphone.sh

Seleziona l'opzione 7 per installare tutte le dipendenze rimanenti. Il programma di installazione eseguirà prima pkg upgrade per risolvere eventuali problemi di linking dei pacchetti, quindi installerà tor, opus-tools, sox, socat, openssl-tool, ffmpeg, e termux-api.

Dipendenze specifiche di Termux:

PacchettoScopo
termux-apiBridge CLI per microfono e lettore multimediale Android
ffmpegConverte le registrazioni M4A di Android in PCM grezzo per la codifica Opus

Avvio rapido```

  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:~
Entrambe le parti devono avere Tor in esecuzione e lo stesso segreto condiviso configurato prima di avviare una chiamata.

---

## Utilizzo

### Opzioni del menu```
 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

Controlli in chiamata

Linux (tieni premuto per parlare):

TastoAzione
Tieni premuto SPAZIORegistra un messaggio vocale. Invia automaticamente al rilascio.
TInvia un messaggio di testo crittografato.
SApri le impostazioni durante la chiamata (cambia cifratura, regola qualità).
QTermina la chiamata e torna al menu.

Termux (modalità toggle):

La tastiera software di Android invia eventi al rilascio, non alla pressione. TerminalPhone si adatta utilizzando la modalità toggle su Termux.

TastoAzione
Tocca SPAZIOAvvia la registrazione. Tocca di nuovo per fermare e inviare.

Modalità 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:~
---

## Come Funziona

TerminalPhone utilizza un modello di registrazione e invio. Quando attivi PTT, il microfono registra continuamente fino al rilascio. L'intera registrazione viene quindi elaborata attraverso la seguente pipeline:```
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

Il protocollo wire è basato su testo su linea su una connessione TCP:

Su Termux, un passaggio di conversione aggiuntivo gestisce il formato di registrazione M4A nativo di Android, usando ffmpeg per convertire in PCM grezzo prima della codifica Opus.


Modello di Sicurezza

Crittografia: Tutto l'audio è cifrato con un cifrario configurabile dall'utente (default: AES-256-CBC) prima della trasmissione. Sono disponibili 21 cifrari curati, ordinati dal più forte (256-bit) al più adeguato (128-bit). La chiave è derivata da un segreto pre-condiviso tramite PBKDF2 con 10.000 iterazioni. La crittografia è applicata a livello applicativo, indipendentemente dalla crittografia di trasporto di Tor. I segreti vengono passati a OpenSSL tramite descrittori di file (-pass fd:3), non parametri da riga di comando, quindi non sono mai esposti nella tabella dei processi.

Negoziazione del cifrario: Entrambe le parti scambiano i nomi dei cifrari all'avvio e ogni volta che un cifrario viene cambiato durante la chiamata. I nomi dei cifrari non sono segreti (principio di Kerckhoffs). Se il cifrario locale e quello remoto non corrispondono, entrambe le parti vedono indicatori rossi nell'intestazione della chiamata.

Trasporto: Tutti i dati sono instradati attraverso circuiti di servizio nascosto di Tor. L'indirizzo IP di nessuna delle due parti è esposto. Non c'è traffico su rete pulita. La connessione non può essere attribuita a nessuna delle due parti da un osservatore di rete.

Resistenza all'analisi del traffico: Il modello registra-e-invia produce schemi di trasmissione irregolari (messaggi di lunghezza variabile a intervalli irregolari), che sono più difficili da identificare rispetto a uno streaming continuo.

Autenticazione: Il segreto condiviso funge da autenticazione implicita. Se entrambe le parti non hanno lo stesso segreto, la decifratura fallisce e nessun audio viene riprodotto. All'avvio, entrambe le parti scambiano gli indirizzi .onion per l'identificazione del chiamante. Il segreto può essere opzionalmente cifrato a riposo con una passphrase; all'avvio, lo script richiede la passphrase per sbloccarlo.

Firma del protocollo HMAC (opzionale): Quando abilitata, ogni messaggio del protocollo wire -- inclusi i segnali di controllo come HANGUP, PTT_START e PING -- è firmato con HMAC-SHA256 derivato dal segreto condiviso. Un nonce casuale è incluso per messaggio, in modo che comandi identici producano firme uniche. I nonce già visti vengono tracciati per chiamata e i duplicati vengono rifiutati, prevenendo attacchi di replay. L'impostazione HMAC è congelata all'avvio della chiamata tramite un file runtime, in modo che sia il percorso di invio che quello di ricezione siano sempre d'accordo, anche se l'impostazione viene attivata/disattivata a metà chiamata (le modifiche hanno effetto alla chiamata successiva). Sul lato ricevente, qualsiasi messaggio con una firma non valida, mancante o riprodotta viene silenziosamente scartato. Questo impedisce a un attaccante che compromette il circuito Tor (ma non ha il segreto condiviso) di iniettare o riprodurre comandi. Entrambe le parti devono abilitare HMAC affinché le chiamate funzionino. Non compatibile con versioni precedenti alla 1.1.3.

Limitazioni:

  • Il segreto condiviso deve essere scambiato fuori banda tramite un canale sicuro (di persona, messaggistica cifrata, ecc.).
  • Non c'è segretezza in avanti. Se il segreto condiviso viene compromesso, tutte le comunicazioni passate e future che utilizzano quel segreto possono essere decifrate.
  • Il protocollo non protegge da un endpoint compromesso. Se uno dei dispositivi è compromesso, l'attaccante ha accesso all'audio in chiaro.

Sicurezza della modalità relay: Il relay è architettonicamente a conoscenza zero. Non possiede mai il segreto condiviso e non può decifrare alcun contenuto. I dati audio fluiscono attraverso buffer pipe del kernel (FIFO) che esistono solo in memoria -- nulla viene scritto su disco. Quando il relay si ferma, tutti i file temporanei vengono eliminati. L'operatore del relay non può determinare cosa sia stato detto, chi siano i chiamanti o leggere alcun messaggio. Il relay filtra tutti i segnali di controllo (HANGUP, ID:, CIPHER:, PTT_START, PTT_STOP) e inoltra solo AUDIO:, MSG: e PING. Un avversario globale passivo potrebbe eseguire analisi di correlazione del traffico per associare i chiamanti al relay, ma il contenuto dei messaggi rimane opaco.

Capacità del relay: Il collo di bottiglia principale è la larghezza di banda di Tor. La produttività del servizio nascosto di Tor è altamente variabile e dipende dalla qualità del circuito, dalla congestione del relay e dalla distanza geografica. Un tipico messaggio vocale di 10 secondi è di circa 20KB cifrato, e ogni trasmissione si diffonde a N-1 ascoltatori.

La capacità realistica è di 3--5 chiamanti per un relay in esecuzione su un telefono (Termux), o 5--10 chiamanti su una macchina Linux dedicata con una connessione stabile. I relay in esecuzione su dispositivi mobili devono affrontare vincoli aggiuntivi: i dati mobili aggiungono latenza oltre a Tor, Android potrebbe uccidere i processi Termux in background per recuperare memoria, e il consumo della batteria aumenta con ogni chiamante connesso. La larghezza di banda del circuito Tor può variare da 50KB/s a 500KB/s a seconda della qualità del percorso, e i circuiti possono degradarsi o ruotare a metà sessione. La modalità a singolo hop migliora la produttività ma non elimina la congestione del relay Tor. Queste stime presuppongono il modello PTT in cui solo una persona trasmette alla volta -- trasmissioni simultanee degraderebbero ulteriormente le prestazioni. I chiamanti in una chiamata di gruppo dovrebbero considerare di abbassare il bitrate Opus (Impostazioni → Codifica Opus) per ridurre le dimensioni dei messaggi e alleggerire il carico sul relay.


Configurazione

Tutta la configurazione è memorizzata in .terminalphone/ relativo alla posizione dello script:``` .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:~
Parametri audio predefiniti (definiti all'inizio dello script):

| Parametro | Predefinito | Descrizione |
|---|---|---|
| `LISTEN_PORT` | 7777 | Porta TCP per le connessioni in entrata |
| `TOR_SOCKS_PORT` | 9050 | Porta proxy SOCKS di Tor |
| `OPUS_BITRATE` | 16 | Bitrate di codifica Opus in kbps |
| `CIPHER` | aes-256-cbc | Cifrario di crittografia (configurabile tramite Impostazioni) |
| `SNOWFLAKE_ENABLED` | 0 | Bridge Snowflake per l'elusione della censura |
| `AUTO_LISTEN` | 0 | Ascolto automatico per le chiamate all'avvio di Tor |
| `PTT_KEY` | SPACE | Tasto push-to-talk (configurabile tramite Impostazioni) |
| `VOL_PTT` | 0 | PTT con doppio tocco sul volume, solo Termux (sperimentale) |
| `EXCLUDE_NODES` | (vuoto) | Elenco paesi ExcludeNodes di Tor (es. `{US},{GB}`) |
| `HMAC_AUTH` | 0 | Firma HMAC di tutti i messaggi del protocollo (opzionale, entrambi i lati devono corrispondere) |
| `OVERWRITE_DELETE` | 0 | Sovrascrivi i file temporanei con dati casuali prima dell'eliminazione (disattivato per impostazione predefinita) |
| `PTT_CHIME` | off | Suoneria di notifica PTT (off, tone, double, chirp, ding, click, custom) |
| `SINGLE_HOP` | 0 | Modalità Tor a singolo salto per latenza ridotta (disabilita l'anonimato del server) |
| `SAMPLE_RATE` | 8000 | Frequenza di campionamento audio in Hz |
| `CHUNK_DURATION` | 1 | Durata dei chunk di test audio in secondi |

---

## Risoluzione dei problemi

**Tor non riesce a bootstrap:**
Controlla il log di Tor in `.terminalphone/tor_data/tor.log`. Le cause comuni includono clock skew, restrizioni di rete che bloccano Tor, o un'altra istanza di Tor che utilizza la stessa porta SOCKS.

**Nessun audio su Termux:**
Verifica che l'app Termux:API sia installata da F-Droid (non solo il pacchetto `termux-api`). Concedi le autorizzazioni del microfono all'app Termux:API nelle impostazioni Android. Esegui il test di loopback audio (opzione 5) per verificare.

**L'installazione di ffmpeg fallisce su Termux:**
Esegui `pkg upgrade` prima di installare le dipendenze. L'installer lo fa automaticamente, ma se hai installato pacchetti manualmente, librerie condivise obsolete possono causare errori di linking.

**Il test audio funziona ma le chiamate sono mute:**
Conferma che entrambe le parti utilizzano lo stesso segreto condiviso. Segreti non corrispondenti comporteranno un fallimento della decifratura senza messaggio di errore: la chiamata si connette ma non si sente audio.

**Il bridge Snowflake è lento a connettersi:**
Snowflake instrada il traffico attraverso proxy WebRTC, il che aggiunge tempo di bootstrap extra. È normale che Tor impieghi 30-60 secondi (o più) per raggiungere il 100% quando Snowflake è abilitato. Lo script mostrerà un avviso di pazienza durante il bootstrap.

**Il primo bootstrap di Tor è lento:**
Al primo avvio, Tor deve scaricare l'intero consenso di rete da zero, il che può richiedere un minuto o due. Lo script lo rileva e mostra un avviso. Il timeout di bootstrap viene automaticamente esteso da 120 a 300 secondi al primo avvio. I lanci successivi utilizzano dati di consenso memorizzati nella cache e sono molto più veloci.

**La chiusura della chiamata non torna al menu:**
Se lo script si blocca dopo aver premuto Q, premi Ctrl+C per forzare la pulizia e tornare alla shell.

**`Cannot install under Rosetta 2 in ARM default prefix` su macOS:**
Ciò accade su Apple Silicon quando il terminale è in esecuzione sotto Rosetta 2 (un processo `x86_64`) ma Homebrew si trova nel prefisso ARM nativo (`/opt/homebrew`). L'installer delle dipendenze (opzione **7**) ora lo rileva e riesegue automaticamente `brew` tramite `arch -arm64`. Se stai installando pacchetti manualmente, prefissali tu stesso: `arch -arm64 brew install <pkg>`. In alternativa, avvia lo script in modo nativo con `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)

---

## Licenza

MIT
Scarica lo strumento
PacchettoScopo
torRouting onion e servizio nascosto
opus-toolsCompressione vocale (codec Opus)
soxRegistrazione e riproduzione audio (rec, play)
socatRelay TCP bidirezionale attraverso il proxy SOCKS di Tor
opensslCifratura e decifratura AES-256-CBC
TInvia un messaggio di testo crittografato.
SApri le impostazioni durante la chiamata (cambia cifratura, regola qualità).
QTermina la chiamata e torna al menu.
Volume Giù ×2Attiva/disattiva registrazione tramite pulsante volume (richiede Volume PTT abilitato nelle impostazioni).
MessaggioDescrizione
ID:<onion>ID del chiamante -- indirizzo .onion del mittente
CIPHER:<nome>Cifrario di crittografia del mittente. Scambiato all'avvio e a ogni modifica.
PTT_STARTIl mittente ha iniziato a registrare
PTT_STOPIl mittente ha finito; l'audio segue o è stato inviato
AUDIO:<base64>Messaggio audio cifrato completo
MSG:<base64>Messaggio di testo cifrato
HANGUPIl mittente si sta disconnettendo
PINGSegnale di keepalive
RELAY:1Saluto del relay -- inviato dal relay all'avvio, attiva la modalità gruppo
GROUP:<n>Aggiornamento dimensione gruppo -- trasmesso dal relay quando i chiamanti entrano o escono
ChiamantiIn uscita per messaggioEsperienza prevista
2--320--40KBAffidabile sulla maggior parte delle connessioni
3--540--80KBBuona su circuiti stabili, possibili ritardi su dati mobili
5--1080--180KBAl limite, ritardi evidenti tra le trasmissioni
10+180KB+Inaffidabile, accodamento significativo e possibile perdita di messaggi