- bitchat est une application de messagerie distribuée qui fonctionne via un réseau maillé Bluetooth, sans Internet ni serveur
- Chaque appareil agit à la fois comme client et serveur, détecte automatiquement les appareils à proximité et relaie les messages en multi-saut
- Elle offre une résistance à la censure, une protection contre la surveillance et une indépendance vis-à-vis de l’infrastructure, ce qui permet de maintenir les communications même en cas de panne d’Internet ou de catastrophe
- Des versions iOS/macOS et Android sont disponibles, avec une compatibilité complète du protocole
- Le logiciel est publié dans le domaine public, ce qui permet à chacun de l’utiliser et de le modifier librement
Présentation de bitchat
- bitchat est une application de messagerie pair à pair décentralisée reposant sur un réseau maillé Bluetooth
- Aucune connexion Internet, aucun serveur, aucun numéro de téléphone ne sont nécessaires
- Un réseau de communication ad hoc est formé uniquement avec les appareils à proximité
- Chaque appareil assure simultanément les rôles de client et de serveur
- Détection automatique des pairs à proximité
- Extension de la portée du réseau grâce à une fonction de relais multi-saut qui transmet les messages via plusieurs appareils
Caractéristiques principales
- Résistance à la censure : l’absence de serveur central rend la surveillance ou le blocage difficiles
- Protection contre la surveillance : les communications se font uniquement au sein du réseau Bluetooth local
- Indépendance vis-à-vis de l’infrastructure : fonctionnement possible en cas de panne d’Internet, de catastrophe naturelle, de manifestation ou dans les zones à connectivité limitée
Distribution du logiciel
- Version iOS/macOS
- App Store : bitchat mesh
- Code source : GitHub - permissionlesstech/bitchat
- Compatible avec iOS 16.0 ou version ultérieure, macOS 13.0 ou version ultérieure
- Compilation possible avec Xcode, XcodeGen ou Swift Package Manager
- Version Android
- Play Store : bitchat
- Code source : GitHub - permissionlesstech/bitchat-android
- Des versions APK sont proposées
- Compatible avec Android 8.0 (API 26) ou version ultérieure
- Maintient une compatibilité complète du protocole avec la version iOS
Documentation et licence
- Livre blanc technique : whitepaper.md
- Le logiciel est publié dans le domaine public (public domain) et peut être utilisé et modifié librement
1 commentaires
Commentaires sur Hacker News
Les téléphones regorgent déjà de technologies radio avancées, mais sur le plan légal ils ne peuvent pas communiquer directement à plusieurs centaines de mètres sans station de base sous contrôle centralisé
À l’inverse, un talkie-walkie à 10 dollars peut communiquer sur plusieurs kilomètres avec une technologie rudimentaire, mais le transfert de données y serait interdit
Ce n’est pas une limite technique, mais le résultat d’une réglementation imposée par l’État
Ce serait toutefois bien plus pratique si c’était intégré au téléphone. Il existe des appareils comme le LilyGo T-Deck Plus/Pro, mais cela oblige à transporter un appareil séparé plutôt qu’un téléphone
La bande passante est faible, mais suffisante pour du texte ou de l’audio. Il faut les droits root et implémenter son propre protocole ainsi qu’un code de correction d’erreurs
Cette technologie permettait une communication directe entre téléphones jusqu’à 1 km, mais nécessitait une implémentation dans le firmware, ce qui l’a cantonnée à des téléphones gouvernementaux
La 5G a aussi une fonction Device-to-Device, mais on ne sait pas clairement si elle est prise en charge
Il y a aussi des problèmes d’attribution de fréquences, et les téléphones ont des contraintes de puissance et d’antenne qui compliquent les communications longue portée
Les talkies-walkies ont des antennes plus grandes et plus de puissance, mais une bande passante étroite, donc un débit de données faible
Et les talkies-walkies aussi permettent légalement le transfert de données
J’ai utilisé Gotenna autrefois, et c’était légal à la fois aux États-Unis et en Europe
REI vend aussi le Motorola Talkabout T803, qui se connecte en Bluetooth à un smartphone pour relayer de courts messages
Il manque une fonction de propagation différée (deferred propagation) des messages
Les messages sont bien retransmis jusqu’à expiration du TTL, mais il n’y a pas de mécanisme pour les conserver lorsque le destinataire est hors ligne puis les livrer plus tard
Si l’on pouvait configurer les nœuds pour mettre les messages en cache pendant un certain temps, ils pourraient aussi jouer un rôle de courier entre groupes d’utilisateurs séparés
Il implémentait déjà parfaitement une architecture store-and-forward via des liaisons RTC et radio il y a 40 ans
C’était bien plus fiable que la portée réelle du BT5 (environ 10 m)
Les réseaux maillés Bluetooth ne fonctionnent que dans des conditions particulières, ce qui limite leur utilité pratique
J’ai vu ce genre de sujet des centaines de fois sur HN, mais les discussions réalistes sur le store-and-forward sont rares
Avec des cas récents comme l’Iran, on voit à quel point ce type de technologie est nécessaire
Même aux États-Unis, le réseau peut tomber en panne lors de grands événements ou de catastrophes, ce qui fait ressentir le besoin d’une messagerie décentralisée
En période de chaos politique, la diffusion unidirectionnelle d’informations peut être plus importante que la communication bidirectionnelle
Un mode réception seule est plus difficile à tracer et utile pour transmettre des informations essentielles
Tous ces problèmes peuvent être résolus avec un modèle store-and-forward
Un dongle LoRa est meilleur que le Bluetooth, mais peut aussi être plus risqué à utiliser
BitChat est arrivé à la première place en Ouganda pendant la coupure d’Internet avant les élections
Lien vers l’article
En Jamaïque, lors de l’ouragan, l’application est aussi devenue une application majeure après l’effondrement des communications
Ce serait bien qu’Apple intègre une telle fonction à l’iPhone
Ils ont déjà réussi avec Find My et AirTag, donc ajouter une messagerie Bluetooth hors ligne à iMessage serait parfait
J’imagine déjà une vidéo de démonstration signée Apple montrant des croisières, des stades, voire même une sortie extravéhiculaire
Les endroits où cette fonction est réellement nécessaire sont des zones de crise politique où Internet est coupé, donc la prise en charge d’Android est indispensable
Au final, les utilisateurs devraient faire confiance à Apple, et aussi au relais assuré par des inconnus plutôt qu’à un opérateur
Quand on sait que la police écoute déjà avec de fausses stations de base, la question de la confiance est majeure
Cela dit, dans des situations comme les festivals ou les croisières où une communication à courte portée est nécessaire, ce serait une fonction vraiment utile
Si les autorités ne l’autorisent pas, une telle fonction ne sera jamais lancée
Si un système décentralisé fonctionne sans infrastructure, la question devient : qu’est-ce qu’ils pourraient encore facturer ?
Si les réseaux locaux sans fil s’étaient démocratisés plus tôt, et si IPv6 avait limité la généralisation du NAT
l’architecture actuelle d’Internet aurait peut-être été complètement différente
Et sans les plateformes fermées créées par le financement VC, le tout aurait sans doute été plus ouvert
On a déjà accompli des choses étonnantes avec la petite bande libre des 2,4 GHz,
alors si des bandes VHF/UHF plus basses étaient ouvertes sans licence, l’innovation exploserait
Ils restent indispensables pour les gros volumes de données et la fiabilité, ainsi que pour l’expansion des datacenters
Il y aurait plus d’outils P2P, mais la structure globale d’Internet resterait sans doute similaire
Je me demande dans quels cas on utilise réellement une application de messagerie Bluetooth
Même avec le BT5, 400 m reste une limite, donc impossible d’envoyer des photos à un journaliste pendant une manifestation
Si c’est juste pour prévenir sa famille pour le dîner, ça ne semble pas vraiment nécessaire
La plupart des téléphones récents peuvent le prendre en charge sans changement matériel
Le problème n’est pas technique, mais relève de contraintes politiques
Ce serait utile au quotidien comme en cas de catastrophe, pourtant il n’existe aucune solution intégrée
À l’époque où l’on peut même faire de la communication satellite, l’absence d’une fonction P2P de base est ironique
C’est logique si des appareils proches n’ont pas besoin de passer par un serveur
Dans une auberge en zone rurale sans signal, je discutais en cachette avec la fille du lit voisin
C’était une soirée assez mémorable
Pas seulement lors de manifestations, mais aussi dans les concerts, festivals ou zones montagneuses
Alors que le régime mène une répression brutale, ce type de technologie est crucial
Personnellement, la participation de Jack Dorsey ne m’inspire pas confiance
C’est pour cela que je préfère Briar
On a besoin de ce type de technologie dès maintenant
Même si BitChat a commencé comme une expérimentation de Dorsey, si le projet a pris de l’ampleur, cela a déjà une valeur en soi
J’aimerais que l’API Web Bluetooth des navigateurs soit plus largement prise en charge
Avec une base PWA, on pourrait éviter la censure des app stores
Les technologies qui écartent l’État et les intermédiaires ne seront jamais réellement autorisées juridiquement
C’est pareil pour la radio longue portée, les communications P2P et les paiements décentralisés
Si l’État ne peut ni surveiller ni taxer, cela ne se généralisera pas
On vit déjà à une époque où une entreprise peut supprimer un contenu numérique pourtant acheté,
et le fait que le téléchargement via torrent soit illégal en dit long
À mon avis, Meshtastic et les kits bon marché (10 à 35 dollars) sont bien meilleurs
Avec le seul Bluetooth, la limite est d’environ 100 m, alors que Meshtastic peut atteindre 2 à 20 km
La communauté est aussi très active
Même dans un réseau de 60 stations, il est difficile de dépasser un saut
En revanche, Meshcore affiche presque 100 % de réussite à plus de 5 sauts
Avant, je m’en méfiais parce que c’était closed source, mais l’application Flutter open source se stabilise désormais