20 ms·
It would be awesome to see more technical discussion of the anonymity mechanism. How do you ensure that users accounts are not linked Personally Identifying In
by zmanian 11y ago
It would be awesome to see more technical discussion of the anonymity mechanism.
How do you ensure that users accounts are not linked Personally Identifying Information?
We've seen that when folks implement weak anonymity technologies, disaster quickly ensues.
- StavrosK 11y agoFrom the little detail in the article, I gather that they don't, which is pretty bad in the context of the article.
- swanhtet1992 11y agoHi, great point. Currently, users have to use their phone numbers to login. However, user's phone number is encrypted in the db. To ensure that everyone's comfortable with it, we're adding a new feature which doesn't require the user to login.
- zmanian 11y agoThe minimum I would consider responsible is 1. Use a hashcash style proof of work mechanism to register account. The server send a challenge and have the client compute a nonce under the difficulty. This could be turned to take an average of seconds to minutes on your median users device. This isn't a long term solution because eventually an attacker will realize that they can use more powerful machines to create sybils and abuse your network. I'm actively working on alternatives ATM. 2. Embed Tor. The Guardian Project folks will be able to give advice on embedding a tor proxy in your app. There is documentation online as well. Chatsecure has done this. This would reduce the amount of information you have in your possession for authorities to seize. This would not protect your user base if authorities compel you to ship a malicious software update. 3. Also use SSL and pin your public key for your SSL cert
- 13 11y agoHashcash is broken for any situation like this. The amount of hashcash time needed to thwart spam is higher than any user is willing to wait for, doing proof of work on a phone. Plus, spammers normally have their own Cloud Computing to resort to, and it's cheaper than Amazon AWS. https://en.wikipedia.org/wiki/Botnet https://en.wikipedia.org/wiki/Botnet
- zmanian 11y agoJust proposed as interim solution that is easy to implement and escapes the PII collection model. Blind signed auth tokens are way better but much more resource intensive to implement
- patcon 11y agoInteresting observation. I wonder if you could hide this work behind an approval period, much like waiting for a beta invite. When framed like this, it just builds anticipation, and the users doesn't necessarily need to know. But of course, this would most obviously involve a client-side component with access to system resources. Workable for a native android app, but perhaps not for desktop/browser...
- deleted 11y ago[deleted]
- tyho 11y agoThis worries me. What exactly do you mean by encrypted in the DB? If you actually mean hashed using a one-way function, it would be very easy to hash every possible phone number (there are not that many) to build a lookup table to deanonymise your users instantly. Even if you individually salt each hash it would not take very long at all to find the phone number for each entry. If you do mean encrypted, then authorities could compel you to turnover the database and the key. Why do you need to store the phone number in any way at all?
- yemyat91 11y agoYes, it is possible to match a phone number to a hash. (We are also looking at ways to make it more secure. If you have any suggestion, please let us know.) However, hushes are not connected with the phone number, we created unique token for our user when the hush is created. We needed phone numbers for our upcoming features. The newer version which won't need phone number to login is on its way.
- towelguy 11y ago> We needed phone numbers for our upcoming features. > The newer version which won't need phone number to login is on its way. So which is it? new features need the phone number but the new version won't require it? Are you gonna ask users for permission to use their phone number to access the new features? Will users who prefer their anonymity be able to interact with users who surrender their identification? Isn't the unique token good enough?
- derpleplex 11y agoPerfect security does not currently exist. A trusted source must store the information somewhere, to authorize and validate users without spreading that information elsewhere. You can't get around this problem unless you invent magic psychic computers. What is the point in finding every possible flaw with security here? There is a gradient of complexity, the time it takes to break these things. Currently, everything that exists is susceptible to being broken, misused, or modified. If you assume that your attackers know everything, and have the ability to immediately find and apply that knowledge, then yes, it can seem scary. But I tend to think that the more capacity a person has to do, it's really just a bigger intellectual burden.
- minthd 11y agoHave a look at this service: http://www.networkworld.com/article/2876796/microsoft-subnet/data-privacy-day-ibm-launches-identity-mixer-an-anonymous-credential-system.html http://www.networkworld.com/article/2876796/microsoft-subnet... I think it solves your problem. It's also outside of myanemar ,so it's helpful with regards to legal issues.
- lazylizard 11y agoi think the anonymous part was added by the article. the app's website doesn't make any such claim?