Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
bitchat-android — App di messaggistica decentralizzata, crittografata, peer-to-peer su reti Bluetooth mesh. Nessuna connessione internet, server o numeri telefonici richiesti. Include crittografia X25519 + AES-256-GCM, comandi in stile IRC e compatibilità multipiattaforma con iOS. | Kitploit
Strumenti/GitHubGitHub/permissionlesstech/bitchat-android
Sicurezza AndroidSicurezza BluetoothStrumenti di Crittografia/DecrittografiaSicurezza WirelessSicurezza MobilePrivacy
GitHubpermissionlesstech/bitchat-android

bitchat-android

App di messaggistica decentralizzata, crittografata, peer-to-peer su reti Bluetooth mesh. Nessuna connessione internet, server o numeri telefonici richiesti. Include crittografia X25519 + AES-256-GCM, comandi in stile IRC e compatibilità multipiattaforma con iOS.

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
7.4k1.8k8115h 9m faRevisionato da Kitploit
<p align="center">
    <img src="https://assets.kitploit.com/production/public/readmes/10897/4adee5766836e3812e7f0051931df8c63da05d8d8db9a77f8c491d1ea45d195b.png" alt="Logo di Bitchat Android" width="480">
</p>

> [!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](https://github.com/jackjackbits/bitchat), 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](https://github.com/permissionlesstech/bitchat-android/releases).

Oppure puoi:

[<img alt="Scarica da Google Play" height="60" src="https://assets.kitploit.com/production/public/readmes/10897/f72611e2df8e88204009fd896d05d5e8e83c77009c63943bbffa169559934849.png"/>](https://play.google.com/store/apps/details?id=com.bitchat.droid)

**Istruzioni:**

1.  **Scarica l'APK:** Sul tuo dispositivo Android, vai al link sopra e scarica l'ultimo file `.apk`. Aprilo.
2.  **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**.
3.  **Installa:** Apri il file `.apk` scaricato per iniziare l'installazione.

## Licenza

Questo progetto è rilasciato nel pubblico dominio. Vedi il file [LICENSE](https://github.com/permissionlesstech/bitchat-android/blob/main/LICENSE.md) 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

1. **Clona il repository:**
   ```bash
   git clone https://github.com/permissionlesstech/bitchat-android.git
   cd bitchat-android
   ```

2. **Apri in Android Studio:**
   ```bash
   # Apri Android Studio e seleziona "Open an Existing Project"
   # Vai alla directory bitchat-android
   ```

3. **Compila il progetto:**
   ```bash
   ./gradlew build
   ```

4. **Installa sul dispositivo:**
   ```bash
   ./gradlew installDebug
   ```

### Build di sviluppo

Per build di sviluppo con debug abilitato:

```bash
./gradlew assembleDebug
adb install -r app/build/outputs/apk/debug/app-debug.apk
```

### Build di rilascio

Per versioni di produzione:

```bash
./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

1. **Installa l'app** sul tuo dispositivo Android (richiede Android 8.0+)
2. **Concedi le autorizzazioni** per Bluetooth e posizione quando richiesto
3. **Avvia bitchat** - avvierà automaticamente il networking mesh
4. **Imposta il tuo nickname** o usa quello generato automaticamente
5. **Connettiti automaticamente** agli utenti bitchat iOS e Android nelle vicinanze
6. **Unisciti a un canale** con `/j #generale` o inizia a chattare in pubblico
7. **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

### Compressione dei messaggi
- **Compressione LZ4**: Compressione automatica per messaggi > 100 byte
- **Risparmio di larghezza di banda del 30-70%** su messaggi di testo tipici
- **Compressione intelligente**: Salta i dati già compressi

### Ottimizzazione della batteria
- **Modalità di alimentazione adattiva**: Si adatta automaticamente in base al livello della batteria
  - Modalità prestazioni: Funzionalità complete durante la ricarica o batteria > 60%
  - Modalità bilanciata: Funzionamento predefinito (30-60% batteria)
  - Risparmio energetico: Scansione ridotta quando batteria < 30%
  - Potenza ultra-bassa: Modalità di emergenza quando batteria < 10%
- **Efficienza in background**: Risparmio energetico automatico quando l'app è in background
- **Scansione configurabile**: Ciclo di lavoro adattato allo stato della batteria

### Efficienza di rete
- **Filtri Bloom ottimizzati**: Rilevamento più rapido dei duplicati con meno memoria
- **Aggregazione dei messaggi**: Raggruppa messaggi piccoli per ridurre le trasmissioni
- **Limiti di connessione adattivi**: Regola le connessioni peer in base alla modalità di alimentazione

## Architettura tecnica

### Protocollo binario
bitchat utilizza un efficiente protocollo binario ottimizzato per Bluetooth LE:
- Formato pacchetto compatto con campo tipo di 1 byte
- Routing dei messaggi basato su TTL (massimo 7 hop)
- Frammentazione automatica per messaggi grandi
- Deduplicazione dei messaggi tramite ID univoci

### Rete mesh
- Ogni dispositivo agisce sia come client che come periferica
- Scoperta automatica dei peer e gestione delle connessioni
- Memorizza e inoltra per la consegna di messaggi offline
- Ciclo di lavoro adattivo per l'ottimizzazione della batteria

### Ottimizzazioni specifiche per Android
- **Architettura a coroutine**: Operazioni asincrone per il networking mesh
- **Coroutine Kotlin**: Operazioni mesh concorrenti thread-safe
- **EncryptedSharedPreferences**: Archiviazione sicura per le impostazioni utente
- **Lifecycle-aware**: Gestione corretta del ciclo di vita dell'app Android
- **Ottimizzazione della batteria**: Servizio in primo piano e scansione adattiva

## Architettura tecnica Android

### Componenti principali

1. **BitchatApplication.kt**: Inizializzazione a livello di applicazione e dependency injection
2. **MainActivity.kt**: Attività principale che gestisce le autorizzazioni e l'hosting dell'interfaccia
3. **ChatViewModel.kt**: Pattern MVVM che gestisce lo stato dell'app e la logica di business
4. **BluetoothMeshService.kt**: Networking mesh BLE principale (ruoli central + periferica)
5. **EncryptionService.kt**: Operazioni crittografiche utilizzando BouncyCastle
6. **BinaryProtocol.kt**: Codifica/decodifica di pacchetti binari che corrispondono al formato iOS
7. **ChatScreen.kt**: Interfaccia Jetpack Compose con Material Design 3

### Dipendenze

- **Jetpack Compose**: Interfaccia dichiarativa moderna
- **BouncyCastle**: Operazioni crittografiche (X25519, Ed25519, AES-GCM)
- **Libreria BLE Nordic**: Operazioni Bluetooth LE affidabili
- **Coroutine Kotlin**: Programmazione asincrona
- **LZ4**: Compressione dei messaggi (quando abilitata)
- **EncryptedSharedPreferences**: Archiviazione locale sicura

### Compatibilità del protocollo binario

L'implementazione Android mantiene la compatibilità al 100% del protocollo binario con iOS:
- **Formato dell'intestazione**: Struttura dell'intestazione identica a 13 byte
- **Tipi di pacchetto**: Stessi tipi di messaggio e logica di routing
- **Crittografia**: Algoritmi crittografici e scambio di chiavi identici
- **UUID**: Identificatori di servizio e caratteristica Bluetooth identici
- **Frammentazione**: Frammentazione dei messaggi compatibile per contenuti grandi

## Pubblicazione su Google Play

### Preparazione

1. **Aggiorna le informazioni sulla versione:**
   ```kotlin
   // In app/build.gradle.kts
   defaultConfig {
       versionCode = 2  // Incrementa per ogni rilascio
       versionName = "1.1.0"  // Versione visibile all'utente
   }
   ```

2. **Crea una build di rilascio firmata:**
   ```bash
   ./gradlew assembleRelease
   ```

3. **Genera il bundle dell'app (consigliato per Play Store):**
   ```bash
   ./gradlew bundleRelease
   ```

### Requisiti del Play Store

- **API target**: Ultima API Android (attualmente 34)
- **Informativa sulla privacy**: Richiesta per app che richiedono autorizzazioni sensibili
- **Autorizzazioni dell'app**: Giustifica l'uso di Bluetooth e posizione
- **Classificazione dei contenuti**: Compila il questionario per contenuti adatti all'età

### Distribuzione

- **Google Play Store**: Canale di distribuzione principale
- **F-Droid**: Per la distribuzione open-source
- **APK diretto**: Per test e sviluppo

## Comunicazione multipiattaforma

Questo porting Android consente una comunicazione senza soluzione di continuità con l'app bitchat originale per iOS:

- **iPhone ↔ Android**: Messaggistica bidirezionale completa
- **Gruppi misti**: Utenti iOS e Android negli stessi canali
- **Parità di funzionalità**: Tutti i comandi e la crittografia funzionano su entrambe le piattaforme
- **Sincronizzazione del protocollo**: Formato del messaggio e comportamento di routing identici

**Versione iOS**: Per utenti iPhone/iPad, ottieni l'originale bitchat su [github.com/jackjackbits/bitchat](https://github.com/jackjackbits/bitchat)

## Contribuire

I contributi sono benvenuti! Aree chiave per miglioramenti:

1. **Prestazioni**: Ottimizzazione della batteria e affidabilità della connessione
2. **UI/UX**: Funzionalità aggiuntive di Material Design 3
3. **Sicurezza**: Funzionalità crittografiche potenziate
4. **Test**: Copertura dei test unitari e di integrazione
5. **Documentazione**: Documentazione API e guide di sviluppo

## Supporto e problemi

- **Segnalazione bug**: [Crea un issue](../../issues) con informazioni sul dispositivo e log
- **Richiesta funzionalità**: [Avvia una discussione](https://github.com/orgs/permissionlesstech/discussions)
- **Problemi di sicurezza**: Invia le preoccupazioni di sicurezza privatamente via email
- **Compatibilità iOS**: Riferimento incrociato con [repository iOS originale](https://github.com/jackjackbits/bitchat)

Per problemi specifici di iOS, fai riferimento al [repository originale bitchat per iOS](https://github.com/jackjackbits/bitchat).
Scarica lo strumento