TerminalPhone
Communication vocale push-to-talk chiffrée via des services cachés Tor.
TerminalPhone est un script Bash unique et autonome qui fournit une communication vocale et textuelle anonyme et chiffrée de bout en bout entre deux ou plusieurs parties sur le réseau Tor. Il fonctionne comme un talkie-walkie : vous enregistrez un message vocal, qui est compressé, chiffré et transmis à la partie distante en une seule unité. Vous pouvez également envoyer des messages texte chiffrés pendant un appel. Aucune infrastructure serveur, aucun compte, aucun numéro de téléphone. Votre adresse .onion de service caché Tor est votre identité.
Table des matières
Fonctionnalités
- Mode talkie-walkie push-to-talk -- Enregistrez un message vocal complet et transmettez-le au relâchement.
- Chat chiffré en appel -- Envoyez et recevez des messages texte chiffrés pendant un appel. Appuyez sur
T pour taper un message.
- Identification de l'appelant -- Les deux parties échangent automatiquement leurs adresses
.onion à la connexion. L'adresse distante est affichée dans l'en-tête de l'appel.
- Détection automatique de raccrochage -- Lorsqu'une partie raccroche, l'autre est immédiatement notifiée et l'appel se termine automatiquement.
- Chiffrement configurable -- Choisissez parmi 21 chiffrements sélectionnés, classés par force (256 bits → 128 bits). Inclut les familles AES, ChaCha20, Camellia et ARIA. Les chiffrements faibles (DES, RC4, modes ECB) sont exclus.
- Négociation de chiffrement en direct -- Les deux parties échangent les informations de chiffrement à la connexion. L'en-tête de l'appel affiche les chiffrements local et distant avec des indicateurs vert (correspondance) ou rouge (non-correspondance), mis à jour en temps réel.
- Paramètres en cours d'appel -- Appuyez sur
S pendant un appel pour accéder aux paramètres. Changez votre chiffrement à la volée ; l'affichage de la partie distante se met à jour automatiquement.
- Informations sur le pont Snowflake -- Lors de l'utilisation de Snowflake pour contourner la censure, la page d'appel affiche le nom du descripteur de pont, l'empreinte et l'état de connexion du transport, analysés à partir des journaux de Tor.
- Écoute automatique -- Lorsqu'activée, un écouteur en arrière-plan démarre automatiquement au lancement de Tor. Les appels entrants sont détectés et acceptés depuis le menu principal sans avoir à sélectionner manuellement « Écouter les appels ». Après la fin d'un appel, l'écouteur redémarre.
- Touche PTT configurable -- Changez la touche push-to-talk de la barre d'espace par défaut vers n'importe quelle touche via le menu Paramètres.
- Statistiques des messages -- L'écran d'appel affiche la taille de la charge utile chiffrée pour les messages envoyés et reçus, mise à jour sur place.
- État PTT distant -- L'écran d'appel affiche un indicateur statique de l'état de la partie distante : « Idle » (vert) ou « ● Recording » (rouge). Réinitialisation immédiate à l'arrivée des données audio, avant le début de la lecture.
- Carillon PTT -- Son de notification optionnel lorsque la partie distante commence à enregistrer. Cinq préréglages intégrés (tone, double, chirp, ding, click) générés avec sox, plus la possibilité d'enregistrer un carillon personnalisé de 2 secondes. Configurable via Paramètres.
- Animation de connexion -- Lors de l'appel d'une adresse distante, une animation cyclique se joue jusqu'au chargement de l'interface d'appel.
- Changeur de voix -- Appliquez des effets vocaux à l'audio sortant. Inclut 6 préréglages (deep, high, robot, echo, whisper) et un mode personnalisé entièrement configurable avec pitch shift, overdrive, flanger, echo, filtre passe-haut et trémolo. Les effets sont traités avec sox avant l'encodage Opus.
- PTT par volume (Termux) -- Mode expérimental permettant de double-taper le bouton Volume Bas pour basculer l'enregistrement, même lorsque Termux est en arrière-plan. Nécessite
jq (installé à la demande). Le volume est automatiquement restauré après chaque déclenchement.
- Service caché Tor -- Chaque instance exécute son propre service caché Tor. Votre adresse
.onion sert de point de terminaison permanent et routable. Aucune redirection de port ni IP publique requise.
- Chiffrement de bout en bout -- Tout l'audio et le texte sont chiffrés à l'aide d'un chiffrement configurable (par défaut : AES-256-CBC) avec dérivation de clé PBKDF2 à partir d'un secret pré-partagé avant d'entrer dans le réseau Tor.
- Secret protégé par phrase de passe -- Le secret partagé peut être chiffré au repos à l'aide d'une phrase de passe choisie par l'utilisateur (AES-256-CBC, 100 000 itérations PBKDF2). Les secrets en clair existants sont automatiquement détectés avec une offre de migration.
- Faible bande passante -- Codec Opus à 16 kbps, 8 kHz mono. Un message vocal typique de 10 secondes fait moins de 20 Ko, bien dans les capacités de Tor.
- Partage par QR code -- L'option 3 peut afficher votre adresse
.onion sous forme de QR code scannable dans le terminal. Si qrencode n'est pas installé, il vous est proposé de l'installer. Le QR code s'affiche sur le tampon d'écran alternatif et est détruit à sa fermeture. Une note avertit que certains scanners QR ajoutent automatiquement http:// ; ce préfixe est automatiquement supprimé lors de la composition.
- Fichiers temporaires opaques -- Tous les fichiers temporaires utilisent des extensions génériques
.tmp et des identifiants hexadécimaux aléatoires. Aucun type de fichier ni métadonnée temporelle n'est divulgué au système de fichiers.
- Affichage des sauts de circuit -- Affichage optionnel de votre chemin de circuit Tor pendant les appels, montrant les noms des relais et les noms complets des pays. Actualisation automatique toutes les 60 secondes. Configurable via Paramètres → Paramètres Tor.
- Exclure des pays -- Excluez des pays spécifiques de vos circuits Tor. Préréglages pour les alliances Five Eyes, Nine Eyes et Fourteen Eyes, ou saisissez des codes de pays personnalisés. Utilise
ExcludeNodes avec StrictNodes dans le torrc.
- Authentification du protocole par HMAC -- Signature HMAC-SHA256 optionnelle de tous les messages du protocole (voix, texte, signaux de contrôle) à l'aide du secret partagé. Un nonce aléatoire est inclus par message, et les nonces déjà vus sont suivis pour rejeter les rejeux. Les messages non signés, falsifiés ou rejoués sont silencieusement abandonnés. L'état HMAC est figé au début de l'appel pour éviter toute désynchronisation en cours d'appel. Configurable via Paramètres → Sécurité.