So, what happens if I download the client on one of laptops/PCs (for example my work computer) use it to communicate with peers...And then i wish to setup the client on another laptop/PC (for example my home computer) to contact my same peer/friends...How does the overall network (I guess DHT?) know that "its me!" (the same "me"), and not a different/new peer? With a centralized system there was the concept of identity...but I just don't get how this would work here.
I'll admit I'm not a networking guru here, and I'm absolutely in favor of decentralized communications ...so my question above is not at all to knock on Tox; its me really wanting to know how the above scenario would play out...because I often need to bounce between a few different computers. Anyone know how this would work?
Side note: I am currently using matrix protocol via a synapse/matrix.org home server (using the chat client from https://riot.im/), so for any computer that I use/jump to, I'm represented by my home server (up in the cloud)...so that makes sense to me. I just don't get how jumping computers would work on Tox. Anyone know?
This has been the #1 reason that I havent convinced people to use tox yet.
I sometimes get up and walk away from a computer mid conversation, expecting to continue the conversation on my phone. It's the same reason I won't be using google allo. I need conversations to "sync" across mobile and PC.
I'm not going to sit at a desk all day chatting on my phone, and I'm not going to miss messages just because I went mobile.
I saw somewhere in a previous tox chat, that a possible solution would be a way to pin identities together (i say from desktop "this mobile is me" and from mobile "this desktop is me" and when they match, allow them to pair). And then send every message encrypted to both peers. If you have 5 devices linked, tox would behind the scenes send the message to 5 different destinations.
They havent done anything like this yet as far as I know.
Be warned, Tox claims to protect users from "governments", which is a huge claim.
Yet, it's written in C, it hasn't had a security audit, it does not publish a list of security risks and mitigations, and, regarding its roots in 4chan, see for yourself: https://github.com/irungentoo/toxcore/issues/1186
As for security risks and mitigations, I'd like to do that when we have a web presence with space for it. Right now, the web presence is fairly poor (http://toktok.github.io/). The specification contains some security risks and mitigations.
Regarding security audit: my day job is developing high security software. I could do a formal audit, and it would take about 2-3 person-weeks, and be completely useless, because it would result in a huge number of trivial issues that need to be resolved before it could identify real problems. So instead of wasting time and money on that, I've decided to go and fix those trivial issues one by one, and once I'm a bit happier with the code, I'll have two other people do the formal audit.
List of security risks and Tox-ic (BDUM-KSSH) community are worrying, as is the lack of security audits.
As for the fact that it's written in C, GPG, Tor, Psyc, and many other pieces of security software that you trust are written in C. It's dangerous, but writing secure apps isn't impossible.
Yuk! I see this flaw so many products like this, just about anything p2p, blockchain addresses, commit ids, etc. I think there is zero chance of getting anyone who is not technology elite to adopt a product with UX that rotates around these untypeable/unpronounceable/immemorable identifiers. Why aren't Identicons(https://en.wikipedia.org/wiki/Identicon) or QR codes used more?
Human-meaningful: Meaningful and memorable (low-entropy) names are provided to the users.
Secure: Any entity in the system can act maliciously, including the majority of the entities or the available computational power.
Decentralized: There is still only one, unique and specific entity to which a name resolves.
ToxMe[1] seems to attempt to solve this issue by creating a public databases of emails and Tox IDs, though this defeats the object of the service being anonymous.
This isn't a flaw, it's a feature. Whoever controls the phone book controls the keys to the kingdom. If the names are numbers generated by some cryptographic system, it is harder to subvert the system.
Right now I'm not really bothered about end-to-end encryption. If a government wants to track me, they will find a way. I'm more concerned about Facebook/Google/Microsoft/Apple tracking me, reading my private conversations, and selling my data to the highest bidder. I'd like an open source, decentralised messaging platform, that has good mobile apps.
"If a government wants to track me, they will find a way."
So just hand the data right to them?
"I'm more concerned about Facebook/Google/Microsoft/Apple tracking me, reading my private conversations, and selling my data to the highest bidder."
End-to-end encryption is the only solution to that problem. Open source software and decentralization is nice and all but to become a mobile app it'll have to be compiled and run on a closed platform and will almost certainly use APIs of that platform.
riot.im [1] (which is based on matrix.org) seems a good, decentralized, open messaging app. They have relatively nice mobile apps and they promise to soon release end-to-end encryption based on the OLM [2] ratchet which is similar to the Signal encryption. In contrast to Tox, Matrix relies on federated servers. Tox is pure P2P which, in my experience, never works very well on mobile devices.
> If a government wants to track me, they will find a way
Things like OTR: https://en.wikipedia.org/wiki/Off-the-Record_Messaging Actually stops these people though, and is even labelled in some of the Snowden Files as being "Catastrophic" to their efforts. But you are right, if they can't get chat on you they can just target you inside the Internet and send a malware payload disguised as an update to your browser.
It seems robust, but I do worry about the client. Has the client been audited properly? I hope the track record's not like Pidgin's https://pidgin.im/news/security/
I tried an earlier version of a tox client. At that time, there were at least two competing clients that looked the same and did the same things. Is the tox civil war over yet?
But you realize that's like saying "Well, I tried IRC but there are dozens of competing clients that all do the same thing."
The Tox protocol is really the core tool. As long as the protocol is well-defined and maintained, I think developers should be free to make whichever clients that they want.
I used tox ages ago, and I used the Blight client or whatever it was called, and I liked it pretty well.
I think a bigger issue is convincing people to use it in small groups. My whole team is just fine using Mattermost/Hipchat/IRC and the majority of them don't see the need for something like this.
The preliminary plan is to deliver a high quality implementation of the Tox protocol and then deliver a high quality client. I personally don't have time to do both, and the team has very limited resources. The most actively developed client is currently qTox.
I've been a private beta tester for an iOS client for Tox called 'Antidote', and I can speak for its quality. I will not pretend to be an encryption or security specialist of any form however.
[+] [-] mxuribe|9 years ago|reply
I'll admit I'm not a networking guru here, and I'm absolutely in favor of decentralized communications ...so my question above is not at all to knock on Tox; its me really wanting to know how the above scenario would play out...because I often need to bounce between a few different computers. Anyone know how this would work?
Side note: I am currently using matrix protocol via a synapse/matrix.org home server (using the chat client from https://riot.im/), so for any computer that I use/jump to, I'm represented by my home server (up in the cloud)...so that makes sense to me. I just don't get how jumping computers would work on Tox. Anyone know?
[+] [-] bisby|9 years ago|reply
I sometimes get up and walk away from a computer mid conversation, expecting to continue the conversation on my phone. It's the same reason I won't be using google allo. I need conversations to "sync" across mobile and PC.
I'm not going to sit at a desk all day chatting on my phone, and I'm not going to miss messages just because I went mobile.
I saw somewhere in a previous tox chat, that a possible solution would be a way to pin identities together (i say from desktop "this mobile is me" and from mobile "this desktop is me" and when they match, allow them to pair). And then send every message encrypted to both peers. If you have 5 devices linked, tox would behind the scenes send the message to 5 different destinations.
They havent done anything like this yet as far as I know.
[+] [-] eeZah7Ux|9 years ago|reply
Yet, it's written in C, it hasn't had a security audit, it does not publish a list of security risks and mitigations, and, regarding its roots in 4chan, see for yourself: https://github.com/irungentoo/toxcore/issues/1186
[+] [-] iphy|9 years ago|reply
As for security risks and mitigations, I'd like to do that when we have a web presence with space for it. Right now, the web presence is fairly poor (http://toktok.github.io/). The specification contains some security risks and mitigations.
[+] [-] iphy|9 years ago|reply
[+] [-] qwertyuiop924|9 years ago|reply
As for the fact that it's written in C, GPG, Tor, Psyc, and many other pieces of security software that you trust are written in C. It's dangerous, but writing secure apps isn't impossible.
[+] [-] gregn610|9 years ago|reply
Look in the profile or settings panel of your client to get your Tox ID which should look something like:
56A1ADE4B65B86BCD51CC73E2CD4E542179F47959FE3E0E21B4B0ACDADE51855D34D34D37CB5"
Yuk! I see this flaw so many products like this, just about anything p2p, blockchain addresses, commit ids, etc. I think there is zero chance of getting anyone who is not technology elite to adopt a product with UX that rotates around these untypeable/unpronounceable/immemorable identifiers. Why aren't Identicons(https://en.wikipedia.org/wiki/Identicon) or QR codes used more?
[+] [-] ghgr|9 years ago|reply
[+] [-] Spydar007|9 years ago|reply
[1] https://toxme.io/
[+] [-] pantalaimon|9 years ago|reply
Nothing stops you from turning that hash into a QR code (afaik Antox does) - but then how do you copy & paste it?
[+] [-] oakwhiz|9 years ago|reply
[+] [-] alrs|9 years ago|reply
[+] [-] AdmiralAsshat|9 years ago|reply
https://en.wikipedia.org/wiki/ICQ
[+] [-] lucaspiller|9 years ago|reply
Are suggestions?
[+] [-] jasonkostempski|9 years ago|reply
So just hand the data right to them?
"I'm more concerned about Facebook/Google/Microsoft/Apple tracking me, reading my private conversations, and selling my data to the highest bidder."
End-to-end encryption is the only solution to that problem. Open source software and decentralization is nice and all but to become a mobile app it'll have to be compiled and run on a closed platform and will almost certainly use APIs of that platform.
[+] [-] mrbiber|9 years ago|reply
[1] https://riot.im/ [2] https://matrix.org/docs/spec/olm.html
[+] [-] zerognowl|9 years ago|reply
Things like OTR: https://en.wikipedia.org/wiki/Off-the-Record_Messaging Actually stops these people though, and is even labelled in some of the Snowden Files as being "Catastrophic" to their efforts. But you are right, if they can't get chat on you they can just target you inside the Internet and send a malware payload disguised as an update to your browser.
[+] [-] mei0Iesh|9 years ago|reply
[+] [-] ninesigns|9 years ago|reply
[+] [-] daveloyall|9 years ago|reply
Tech that provably prevents one will provably prevent the other.
[+] [-] hv036|9 years ago|reply
[+] [-] zaggynl|9 years ago|reply
[+] [-] akerro|9 years ago|reply
[+] [-] zaggynl|9 years ago|reply
[+] [-] Jaruzel|9 years ago|reply
[+] [-] iphy|9 years ago|reply
[+] [-] tombert|9 years ago|reply
[+] [-] dijit|9 years ago|reply
[+] [-] okket|9 years ago|reply
[+] [-] zerognowl|9 years ago|reply
[+] [-] nvk|9 years ago|reply
https://github.com/uTox/uTox/releases
[+] [-] Dowwie|9 years ago|reply
[+] [-] dysfunctor|9 years ago|reply
The Tox protocol is really the core tool. As long as the protocol is well-defined and maintained, I think developers should be free to make whichever clients that they want.
I used tox ages ago, and I used the Blight client or whatever it was called, and I liked it pretty well.
I think a bigger issue is convincing people to use it in small groups. My whole team is just fine using Mattermost/Hipchat/IRC and the majority of them don't see the need for something like this.
[+] [-] iphy|9 years ago|reply
[+] [-] MerreM|9 years ago|reply
[+] [-] msh|9 years ago|reply
[+] [-] eps|9 years ago|reply
http://i.imgur.com/3MdrSQi.png
[+] [-] mrmondo|9 years ago|reply
[+] [-] huhtenberg|9 years ago|reply
[+] [-] sgreen|9 years ago|reply
[+] [-] snowpanda|9 years ago|reply
[+] [-] superkuh|9 years ago|reply
[+] [-] setra|9 years ago|reply
[+] [-] hd4|9 years ago|reply
[+] [-] realworldview|9 years ago|reply
[+] [-] nikolay|9 years ago|reply
[+] [-] ninesigns|9 years ago|reply
[+] [-] poi519|9 years ago|reply
[+] [-] zhovner|9 years ago|reply