[!WARNING]
Questo software non ha ricevuto una revisione di sicurezza esterna e potrebbe contenere vulnerabilità e potrebbe non soddisfare i propri obiettivi di sicurezza dichiarati. Non utilizzarlo per casi d'uso sensibili e non fare affidamento sulla sua sicurezza finché non sarà stato revisionato. Lavori in corso.
bitchat per Android
Un'app di messaggistica sicura, decentralizzata e da pari a pari che funziona su reti mesh Bluetooth. Nessuna connessione Internet necessaria per le chat mesh, nessun server, nessun numero di telefono: solo comunicazione crittografata pura. Bitchat supporta anche canali geohash, che utilizzano una connessione Internet per metterti in contatto con altri nella tua area geografica.
Questo è il porting Android dell'originale app bitchat per iOS, mantenendo la compatibilità al 100% del protocollo per la comunicazione multipiattaforma.
Installa bitchat
Puoi scaricare l'ultima versione di bitchat per Android dalla pagina delle Release su GitHub.
Oppure puoi:

Istruzioni:
- Scarica l'APK: Sul tuo dispositivo Android, vai al link sopra e scarica l'ultimo file
.apk. Aprilo.
- Consenti origini sconosciute: Su alcuni dispositivi, prima di poter installare l'APK, potresti dover abilitare "Installa da origini sconosciute" nelle impostazioni del dispositivo. Di solito si trova in Impostazioni > Sicurezza o Impostazioni > App e notifiche > Accesso speciale alle app.
- Installa: Apri il file
.apk scaricato per iniziare l'installazione.
Licenza
Questo progetto è rilasciato nel pubblico dominio. Vedi il file LICENSE per i dettagli.
Funzionalità
- ✅ Compatibile multipiattaforma: Piena compatibilità del protocollo con bitchat iOS
- ✅ Rete mesh decentralizzata: Scoperta automatica dei peer e inoltro di messaggi multi-hop tramite Bluetooth LE
- ✅ Crittografia end-to-end: Scambio di chiavi X25519 + AES-256-GCM per messaggi privati
- ✅ Chat basate su canali: Messaggistica di gruppo basata su argomenti con protezione opzionale tramite password
- ✅ Memorizza e inoltra: Messaggi memorizzati nella cache per i peer offline e consegnati quando si riconnettono
- ✅ Privacy prima di tutto: Nessun account, nessun numero di telefono, nessun identificatore persistente
- ✅ Comandi stile IRC: Interfaccia familiare
/join, /msg, /who
- ✅ Conservazione dei messaggi: Salvataggio opzionale dei messaggi a livello di canale controllato dai proprietari del canale
- ✅ Pulizia di emergenza: Triplo tocco sul logo per cancellare istantaneamente tutti i dati
- ✅ Interfaccia Android moderna: Jetpack Compose con Material Design 3
- ✅ Temi scuro/chiaro: Estetica ispirata al terminale che corrisponde alla versione iOS
- ✅ Ottimizzazione della batteria: Scansione adattiva e gestione dell'alimentazione
Configurazione Android
Prerequisiti
- Android Studio: Arctic Fox (2020.3.1) o successivo
- Android SDK: API livello 26 (Android 8.0) o superiore
- Kotlin: 1.8.0 o successivo
- Gradle: 7.0 o successivo
Istruzioni di compilazione
-
Clona il repository:
git clone https://github.com/permissionlesstech/bitchat-android.git
cd bitchat-android
-
Apri in Android Studio:
# Apri Android Studio e seleziona "Open an Existing Project"
# Vai alla directory bitchat-android
-
Compila il progetto:
./gradlew build
-
Installa sul dispositivo:
./gradlew installDebug
Build di sviluppo
Per build di sviluppo con debug abilitato:
./gradlew assembleDebug
adb install -r app/build/outputs/apk/debug/app-debug.apk
Build di rilascio
Per versioni di produzione:
./gradlew assembleRelease
Requisiti specifici per Android
Autorizzazioni
L'app richiede le seguenti autorizzazioni (richieste automaticamente):
- Bluetooth: Funzionalità BLE principali
- Posizione: Necessaria per la scansione BLE su Android
- Rete: Espandi la tua mesh attraverso relay Internet pubblici
- Notifiche: Avvisi di messaggi e aggiornamenti in background
Requisiti hardware
- Bluetooth LE (BLE): Necessario per la rete mesh
- Android 8.0+: API livello 26 minimo
- RAM: 2 GB consigliati per prestazioni ottimali
Utilizzo
Comandi di base
/j #canale - Unisciti o crea un canale
/m @nome messaggio - Invia un messaggio privato
/w - Elenca utenti online
/channels - Mostra tutti i canali scoperti
/block @nome - Blocca un peer dal mandarti messaggi
/block - Elenca tutti i peer bloccati
/unblock @nome - Sblocca un peer
/clear - Cancella i messaggi della chat
/pass [password] - Imposta/cambia la password del canale (solo proprietario)
/transfer @nome - Trasferisci la proprietà del canale
/save - Attiva/disattiva la conservazione dei messaggi per il canale (solo proprietario)
Per iniziare
- Installa l'app sul tuo dispositivo Android (richiede Android 8.0+)
- Concedi le autorizzazioni per Bluetooth e posizione quando richiesto
- Avvia bitchat - avvierà automaticamente il networking mesh
- Imposta il tuo nickname o usa quello generato automaticamente
- Connettiti automaticamente agli utenti bitchat iOS e Android nelle vicinanze
- Unisciti a un canale con
/j #generale o inizia a chattare in pubblico
- I messaggi vengono inoltrati attraverso la rete mesh per raggiungere peer lontani
Funzionalità dell'interfaccia Android
- Interfaccia Jetpack Compose: Moderna interfaccia Material Design 3
- Temi scuro/chiaro: Estetica ispirata al terminale che corrisponde a iOS
- Feedback aptico: Vibrazioni per interazioni e notifiche
- Layout adattivo: Ottimizzato per varie dimensioni dello schermo Android
- Stato dei messaggi: Ricevute di consegna e lettura in tempo reale
- Indicatori RSSI: Colori dell'intensità del segnale per ogni peer
Funzionalità dei canali
- Protezione tramite password: I proprietari del canale possono impostare password con
/pass
- Conservazione dei messaggi: I proprietari possono abilitare il salvataggio obbligatorio dei messaggi con
/save
- Menzioni @: Usa
@nickname per menzionare utenti (con completamento automatico)
- Trasferimento di proprietà: Passa il controllo a utenti fidati con
/transfer
Sicurezza e privacy
Crittografia
- Messaggi privati: Scambio di chiavi X25519 + crittografia AES-256-GCM
- Messaggi di canale: Derivazione password Argon2id + AES-256-GCM
- Firme digitali: Ed25519 per l'autenticità dei messaggi
- Segretezza perfetta in avanti: Nuove coppie di chiavi generate ogni sessione
Funzionalità di privacy
- Nessuna registrazione: Nessun account, email o numero di telefono richiesto
- Effimero per impostazione predefinita: I messaggi esistono solo nella memoria del dispositivo
- Traffico di copertura: Ritardi casuali e messaggi fittizi impediscono l'analisi del traffico
- Pulizia di emergenza: Triplo tocco sul logo per cancellare istantaneamente tutti i dati
- Supporto Tor integrato: Integrazione della rete Tor integrata per una maggiore privacy quando la connettività Internet è disponibile
Prestazioni ed efficienza