5 ms·
It says the username values are hashed, so they can't actually see them. It just stores the hash. So, you tell someone my username is "ABC", their Signal clien
by hnbear 3y ago
It says the username values are hashed, so they can't actually see them. It just stores the hash.
So, you tell someone my username is "ABC", their Signal client hashes it and looks up the account and messages you.
Signal can keep the mapping of hash to number, but doesn't care about the plaintext value of the username.
After the person has messaged you/added you, then you can delete the mapping, at that point they're connected to you, even if they don't see your metadata like phone number.
Then, from the article, others can reuse the username too.
- evbogue 3y agoThis is smarter than what I was imagining. So I come up with a username, on my client side it is hashed and Signal's kv store is checked to make sure no one claimed the hash yet. Next I tell the username to my peer via some other secure channel or IRL and their client sends the hashed username to this kv store to do the usual things. I guess the hash still points at the phone number behind the scenes though?
- hnbear 3y ago> I guess the hash still points at the phone number behind the scenes though? AFAIK, from the article, yes. But, you can create/delete that hash->phone mapping at will. Hence the recommendation to just create when required, or frequently change them if you're concerned. Or, use the QR code/link generation too. Those work the same way.
- Jabbles 3y ago> Then, from the article, others can reuse the username too. This sounds like a potential security hole. You have to be sure that your contact hasn't reset their username as you add them. Or maybe that's what the username registration timestamp is for? To show that this username has been in use by the same person for a while?
- wolverine876 3y agoIt would seem to make sense for a persistant attacker to collect well-publicized usernames when the original owner changes them. Imagine a journalist who publicizes a username, then changes it. The original username would linger on the Internet, in people's address books, etc. A persistant attacker might acquire it, and snap up contacts as they come in. Maybe Signal should have made usernames non-reusable, at least as an option. They still could dissociate the username from the phone number when the user 'deletest' it. The deleted username would just be shifted to the null user.
- brnt 3y agoSo security is also a function of nick length?
- autoexec 3y ago> that’s all Signal turned over because that’s all Signal itself had access to. As Signal’s website puts it, “It’s impossible to turn over data that we never had access to in the first place.” Note that this is no longer the case and signal stores a lot of data in the cloud now (name, phone number, photo, and your contacts) > It says the username values are hashed, so they can't actually see them. Even if I didn't already believe that Signal was compromised this wouldn't inspire much confidence. When they're keeping your phone number in the cloud forever (along with your contacts) not having a username doesn't mean a whole lot. Phone numbers are trivial to match up to a name/address/credit card/billing address/location.
- collinmcnulty 3y agoAs addressed in the article, all the information is stored encrypted. Signal cannot see your photo, name, etc in any practical sense. The only thing signal know is that this phone number uses signal … that’s not a lot.
- autoexec 3y agoIt's encrypted with an easy to brute force pin and stored using SGX https://community.signalusers.org/t/proper-secure-value-security-pins-are-too-easy-to-brute-force-sgx-is-not-reliable-enough/15096 https://community.signalusers.org/t/proper-secure-value-secu... Even if we forgive them for keeping/using phone numbers, all of the other data collection is entirely unnecessary and it's also exactly the kind of data the feds have been asking them to hand over.
- wolverine876 3y agoIIRC it works something like this: You can use a password of whatever complexity you like. Signal adds a PIN to enhance the password's complexity, just in case a user might choose an insecure one.
- autoexec 3y agoThey did change it to accept longer passwords while still calling it a PIN which most people associate with a 4 digit number and allowing short PINs. While it's good to increase the complexity on their end, the justification for all of this is so that users can restore their settings on a new device. That means that in the worst case the data is more secure on the server, but someone acting as if they are restoring their settings will only have to enter the weak password to get the data.