Traditional messaging apps depend on centralized infrastructure that can be monitored, censored, or disabled. bitchat creates ad-hoc communication networks using only the devices present in physical proximity. each device acts as both client and server, automatically discovering peers and relaying messages across multiple hops to extend the network's reach.
This approach provides censorship resistance, surveillance resistance, and infrastructure independence. the network remains functional during internet outages, natural disasters, protests, or in regions with limited connectivity.
Features
- Decentralized Mesh Network: Automatic peer discovery and multi-hop message relay over Bluetooth LE
- Privacy First: No accounts, no phone numbers, no persistent identifiers
- Cover Traffic: Timing obfuscation and dummy messages for enhanced privacy
- Private Message End-to-End Encryption: Noise Protocol
- Store & Forward: Messages cached for offline peers and delivered when they reconnect
- IRC-Style Commands: Familiar /slap, /msg, /who style interface
- Universal App: Native support for iOS and macOS
- Emergency Wipe: Triple-tap to instantly clear all data
- Performance Optimizations: LZ4 message compression, adaptive battery modes, and optimized networking
Binary Protocol
bitchat uses an efficient binary protocol optimized for Bluetooth LE:
- Compact packet format with 1-byte type field
- TTL-based message routing (max 7 hops)
- Automatic fragmentation for large messages
- Message deduplication via unique IDs
Mesh Networking
- Each device acts as both client and peripheral
- Automatic peer discovery and connection management
- Store-and-forward for offline message delivery
- Adaptive duty cycling for battery optimization
What's New
Big update with changes to the bitchat protocol to make it more reliable and and private messages more secure. This update is a breaking change for private messages.
New
- Noise XX Handshake protocol with forward secrecy
- Delivery ACKs and read receipts
- Chat header icons reactive
- Lots of code cleanup
- This release has been thoroughly tested for compatibility with bitchat for iOS version 1.1.0 (permissionlesstech/bitchat@e57bfad)
What's Changed
- Implement Noise XX Handshake Protocol for Direct Messages by @callebtc in #180
- NoiseProtocol update: send nonce in packet by @callebtc in #181
- Periodidc broadcast announce by @callebtc in #183
- Centralized relay manager by @callebtc in #182
- Handle only packets addressed to me by @callebtc in #184
- Refactor fingerprint manager by @callebtc in #185
- Fix delivery acks and read receipts by @callebtc in #186
- Init handshake on dm by @callebtc in #187
- send read receipts on focus by @callebtc in #189
- Dm header icons reactive by @callebtc in #190
- UI improvements by @callebtc in #192
- bump to 0.8 by @callebtc in #188