Bitchat messaging

Anyone tried Bitchat? Know anything more than what’s in the Wikipedia article?

Is it open source?

Viable on the Librem 5?

Note though the comment in the above link about security i.e. might not be ready for prime-time.

2 Likes

License is Unlicense, essentially public domain.

1 Like

There is a whitepaper for more details. When I read it, it seemed feasible (and if I remember right, a month ago it did have a mention of an external security review of the protocol, that is now missing from it [according to git history, I seem to mis-remember]). The main thing is that it creates local networks via Bluetooth (maybe later with wifi) where everyone is part of a mesh, so no entity can control the network (somewhat similar to Briar). It also has several other features of a robust chat tool and the code is available. The main downside seems to be that there is no linux implementation to download and it’s written in swift, in addition to the impersonation problem. If an implementation would appear, yes, it would be a good addition to linux phones for cases where you don’t have (or want) access to regular networks in a small area. For that is seems viable and secure enough, but I’m not trusting it yet for more. I’m more curious if the network aspect is something that gets (eventually) copied by others.

3 Likes

It seemed to me also that it requires a minimum density to work at all - and that would be quite challenging unless it takes off in an area.

2 Likes

If Waydroid can be forwarded bluetooth.

2 Likes

Well, for close proximity, like a house, only two, but yeah, if you wan to cover an area. But that may be desirable also that it stays contained. For emergency kind of situations (or just for fun) it would be possible to set up relay-phones here and there. I wonder how far it will scale, as in, in a dense crowd the network is going to be busy if every message gets seven jumps (isn’t six degrees of separation enough, and hasn’t that come down already?) - I’d prefer it to have a default of three and go from there (to keep it local).

2 Likes

“six degrees of separation” doesn’t directly apply here. That refers to “social network” (in the non-technical sense of the word) i.e. person A knows person B. I know a vastly larger set of people than my phone could communicate with via Bluetooth. So the degrees of separation via Bluetooth hops are going to be much much higher.

You make a good point though as to what the intention is in terms of range and whether there is an intentional TTL limit.

A relay-phone doesn’t really even need to be a phone, just any device that has a power source, supports Bluetooth and can run the code.

I wondered whether in fact the iOS implementation is written in Swift and the Android implementation is written in Kotlin - as it is my potentially flaky understanding that those are the respective preferred development languages by Apple and Google for their respective platforms.

It may be that the latter implementation can more readily be used in Linux environments as Kotlin is ostensibly compatible with half-recent JVMs.

3 Likes