lainchan / sec
BeeChat Network - mesh P2P encrypted legal radio comms
3iWEvuKEag · 2020-04-22 10:56
Hello /sec/. I am the main developer behind Beechat.Network ( https://beechat.network/ ), which is an open source project bringing license-free, legal (1 watt and under @ 2.4GHz or 868 MHz) radio communications to everyone.
>LOS Ranges: 3.2km-64km
>Urban ranges: 100m-12km
>Speed: 250kbps
I am reaching out to you in hopes of finding developers that might be interested in being part of this project, or advisors, any sort of help is appreciated.
Security:
NOTE: I'm waiting on NIST's report for post-quantum cryptography ( https://csrc.nist.gov/projects/post-quantum-cryptography ), as soon as we know something more this following part will be updated.
Right now, we use Public key encryption to create a symmetric shared secret. The only way I've found of doing this simply is using OpenSSL's Diffie-Hellman (ElGamal). This allows for large file sizes to be sent and fast encryption.
However, I've gotten several comments saying it's slow, and there are better options such as ECDH, however I haven't found a way of actually implementing this.
Current features:
-Chat: p2p mesh chat with anyone on your channel and range.
-Sending files: Same as chat, but the headers and footers make the receiver put the bytes into files. If connection is lost, when the nodes find each other again, they start the transfer from where it left off.
Features in development:
-Barter system: a BeeChat-based craigslist-like channel where people can post what they need or what they are offering, and what they want in exchange.
-IoT remotes: to to the nature of BeeChat's encryption, we can easily prevent replay attacks that are right now plaguing RF remotes, peripherals and IoT security.
Future features (ideas):
-BTC LN payments: Hoping to add bitcoin lightning payments to it soon, that way people can pay without the use of the Internet. In case local internet goes down momentarily people can pay each other still this way. My vision is that I think Satoshi would have wanted radio payments for bitcoin eventually, this way we don't rely on telecoms companies as middle men.
-NANO-like cryptocurrency: BTC LN is a good step toward the right direction, however internet connection is still required at all times. A system that is redundant and can work in SHTF to exchange value other than bartering.
-HTTP port: create a channel where users can beacon cryptographically signed http files, that way we can have an internet of sorts, preventing MITM attacks.
I come to you with open arms, /sec/. I know I am not a great programmer, but I do have a vision of providing people a secure alternative to telecoms controlled infrastructure, and a way we can gain back control from the system, through legal means, this way, they cannot stop us.
3iWEvuKEag · 2020-04-22 10:58
Cat Mother · 2020-04-22 16:40
great project lain, I had been looking for something like that.
Would it be possible to set up a mesh to increase range?
3iWEvuKEag · 2020-04-22 16:57
>>10739
Thanks lain.
As for your question, it's already mesh enabled by default.
As long as you are on the same channel other nodes will act as relays, and since data is encrypted they can't know what's passing through.
Also, BeeChat is only needed at the sender and receiver node, which means you could put dongles plugged into USB solar panels and as long as they have power, they will relay the data without the need for a RaspberryPi or SBC.
Delilah · 2020-04-22 20:58
interesting project lain, looks very promising
I know some Java and would like to help with the project. Where should I start? is there any other way to get in touch?
3iWEvuKEag · 2020-04-23 07:54
>>10744
First thing should be to pick a feature you'd like to improve or help flesh out. Is there anything on the list I posted of interest? Or maybe you came up with something yourself. Either way, feel free to have a look on the forum over at https://beechat.network/
Shogun · 2020-04-23 13:21
>1 watt and under @ 2.4GHz or 868 MHz
U wot, every place on Earth limits 2.4Ghz bands to under 100mW emission rate, same for ISM bands.
>LOS Ranges: 3.2km-64km
>Urban ranges: 100m-12km
>Speed: 250kbps
Gee i wonder, what sort of tech you use, LoRa, right? It's pretty cheap, 20 buckerignos per module with microcontroller and usb.
*goes to Parts list*
>beechat.network/parts-list
>SparkFun XBee Explorer Dongle $26
>XBee 3 PRO ZigBee Module (3.2 Kilometers) $ 30
Something fishy here, don't you see?
>RP-SMA male to SMA female adapter $ 7
>High Gain 2.4Ghz Antenna $ 12
$ 75 dollars and amazon referral links for what
>to create a symmetric shared secret.
So there is no one-way paging mode? Great if you want to reveal your location to everyone.
>craigslist-like channel where people can post what they need or what they are offering, and what they want in exchange.
So it's like radio-BBS? Name things without using questionable corporate reference metaphors. You could as well named your whole thing "facebook for radio"
>Secure wireless Internet of Shiet
Just what we needed department.jpg
>buttcoin payments over mesh nets
Someone drank too much N-O-D-E soykaf
>cryptographically signed http files, that way we can have an internet of sorts
Web is not Internet.
>beechat.network/artificial-intelligence
>artificial-intelligence
Yeah, tis a voice recognition software, name things what they are. Do you have a TTS on the other end, what's the purpose of speaking into microphone if you will have to read the reply, whole concept of hands-free operation goes useless.
After all, do you plan porting it to mobile devices? They seem perfect for such radio communications, same reason we have walkies-talikes instead of stationary radio transmitters.
3iWEvuKEag · 2020-04-23 18:58
>>10754
>100 mW emission rate
I have attached the screenshot from the data sheet of the XTend 900 module (long range one) which is certified for use in North America and other regions and has 1 Watt of power.
>LoRa
Nope, using ZigBee for this. Main reason I chose it is it does not have firmware-level mesh network unlike zigbee, preventing cheap relays.
>Amazon Referal Links
Actually you can check for yourself. I have 0 referal links there, not even registered as a business or anything. I am making no profit from this whatsoever, just want to put out something into the world out of my pocket and time from good will.
>one way paging mode
Yes, you can contact a node directly if it's in range. If it's not in range, your node will try to find a mid-point device so it can re-route it. And before you ask, no, not every node knows every message you send unless it passes by that node (if it acts as a relay).
>craiglist
Alright, you caught me there. I was at a loss for an analogy. Definitely not a "facebook for radio" since:
1) you don't have to make an account to use this
2) no data whatsoever is collected through the use of beechat
But yeah, my idea was to make a BBS of sorts, however as I mentioned in OP, packet radio is extremely slow, even experienced hams will tell you this. This is a license-free version with much higher bitrate (however lower range as well).
>buttcoin
Well, if you can find another way of exchanging value over radio, which I think is pretty neat idea, please, give some advice.
>web is not internet
Okay
>artificial intelligence
I do mean to add a TTS at the receiver device, implemented with tacotron. Already got it working on my device. The issue with these is they are still quite slow. STT takes about 10 seconds to process speech from what I've tested which is not bad. But TTS takes at least twice as long as that, which is why I made it an "experimental feature". Just a concept really.
Good comments lain, and you also seem quite knowledgeable. I'm really trying to get something out there out of good will though, as I said. If you can spare some help I'd really appreciate it
3iWEvuKEag · 2020-04-23 18:59
>>10764
forgot to post pic. Will also post link to datasheet.
https://www.digi.com/pdf/ds_xtendmodule.pdf
Tequila · 2020-04-24 07:05
also >>>/λ/10408
Joey · 2020-04-24 10:59
>>10764
>amzn.to
I don't care if it's shortened link or referral, you are tracking us on behalf of Amazon. You also give no option for people to choose a place where to buy, you deliberately link Amazon only. There is no further motivation to trust or help such a malicious or incompetent person. Please be kind sir and change all such links to manufacturer sites and host your local copies of their datasheets. The "High gain 2.4 GHz Antenna" is the epitome of description uselessness. You should have written "15dBi SMA connector 2400-2500MHz 220mm dipole", what it says in Amazon item description. The original non-tracking link looks like this btw:
https://www.amazon.co.uk/gp/product/B07XRGTV8H/
You say it has mesh routing in firmware, but would you trust it's implementation after you went all the way to write your own public key encryption on top? What if this routing is usual internet of crap enterprise-grade hack easily interferenced by someone's smart kettle? Lora mesh networks are not that hard, there are plenty of software implementations completely with IRC chat running over them.
As for one-way paging, you should understand that paging is a receive-only operation, so it's a hit-or-miss in terms of signal reception, but it adds location privacy to a receiver. The message could be encrypted with asymmetric cypher like ones used by GPG software.
3iWEvuKEag · 2020-04-24 18:36
>>10776
>I don't care if it's shortened link or referral, you are tracking us on behalf of Amazon.
Okay, good point, thank you for that. I have changed all the links. Also some things are even cheaper now since I went to the source.
Regarding the datasheets, would it not suffice with having a link to the datasheet instead? What's the point of self hosting it?
>What if this routing is usual internet of crap enterprise-grade hack easily interferenced by someone's smart kettle?
That's the point of encrypting the communications. Even if someone gets their hand on a message, they can't crack it. And as soon as NIST comes out with their post-quantum standards, it's extremely easy to update.
Emmanuel · 2020-04-24 19:40
>>10779
Malicious deniability attacks can render communication channel useless, so you have to have that in mind and understand how the underlying thing works and if it could be improved. I suppose since all comms are wrapped in SSL, each non-transport node would have it's own public key that can be exchanged beforehand for authenticity?
3iWEvuKEag · 2020-04-25 08:44
>>10780
There are hundreds of thousands of channels to choose from. If one were to be jammed, or too "full" (currently each channel can hold up to 65000 nodes), there will be channel switching. Haven't built that feature yet though.
The Fin · 2020-04-30 08:26
>>10737
I can't find an email address to use for contact. You should put one in the email field of your next post here. This project looks like it's licensed under the MIT, and I don't want to write MIT-licensed software for free, so is there any chance of payment for helping with this? I'd maybe change my tune if it were copyleft, and I don't want to seem like a stick in the mud, but this is my main question.
3iWEvuKEag · 2020-04-30 11:17
>>10822
Sorry, there is no chance of payment for helping with this, at least not right now since it's not making any revenue and there are no plans to do that.
What license should I change it to for it to be more attractive to developers, and yet still also be attractive for companies to use? If companies adopt the software, more devs will join. But if there aren't enough devs, no company will use it. It's sort of a vicious cycle. So what's the best match between MIT and GNU GPL v3 (if that's what you had in mind when saying copyleft)?
Drifter · 2020-04-30 22:43
>>10823
>What license should I change it to for it to be more attractive to developers, and yet still also be attractive for companies to use?
These are opposite goals to some. Companies want free labor they can take and not contribute back to; I want to write software which can't be used without contributing back, and I don't want to work for companies for free.
>So what's the best match between MIT and GNU GPL v3 (if that's what you had in mind when saying copyleft)?
I prefer the GNU AGPL v3, the strongest copyleft license, but companies are afraid of it. Good luck, but I don't want to work for free to build software only so companies can lock it away.