So we have a column on a table where we display different user names and their recent daily activities. The admin has the option to encrypt the actual user names due to privacy concerns. The current approach that we are using is to replace the actual encrypted value, a unique identifier such as "fsdjkjhdGfdawe". On the other hand, some people suggest hiding the encrypted value with a "wild card" such as ****** and all the user names become identical.

Both approaches have their own pros and cons. Using the encrypted value allow us to distinguish the user names and monitor and track their activities without knowing the user identity. But there is a security concern that each user has certain type of activities on a daily basis, and someone can predict users' identities by monitoring their activities.

So which approach do you prefer?

  • Is this value something that's displayed to a user? Who can view this table of daily activities? – elemjay19 May 31 '14 at 4:20
  • As long as the value you put in that column is uniquely tied to a specific user, you may have put up a barrier to identification, but not much of one. If you are concerned about privacy and identifying people who exhibit X, Y or Z, leave out the identifying information altogether! Getting rid of the column is the best way. If you absolutely must have the column, replace its contents with completely RANDOM values and ensure that each actual user ends up with as many different values as there are rows for that user. That way rows tied to a specific users are at least not recognizable as such. – Marjan Venema May 31 '14 at 9:38
  • Both regular and admin are able to check the table but only the admin is able to deycript the field... – user48903 Jun 1 '14 at 4:40

If you display the actual encrypted username then someone may eventually crack it - quite by coincidence, I have just spent the afternoon reading a downloaded PDF on how to do it, hence why I am answering your question. As you state that you have privacy concerns, then you DO NOT want that to happen, however remote the possibility or long it takes.

If you asterisk out the name totally then (as you rightly say) the usernames become homogenous and indiscernible, so then the users, while only able to identify themselves, by their activity, will not actually be sure which entry they are.

The best option, IMHO, is a hybrid of the two, in a manner similar to that which eBay employs when one looks at the bid history of a particular item. For example, my username of eBay could be joedoe87, but in the bid history I would consistently appear as w******d, regardless of the item that I have bid on. That way, I will always know which (automatic) bid was mine, even though the displayed username bears no resemblance to my real username whatsoever...


Hope that helps.

  • 2
    "If you display the actual encrypted username then eventually someone will crack it," - This is not a correct statement, when cryptography is properly designed and implemented. Advice based on a faulty premise is of dubious utility. The interface design advice sounds reasonable, but the statements about cryptography are not technically sound and would be better off removed, and then see how much of your reasoning remains valid. – D.W. Jan 8 '15 at 6:01
  • I have modified the text so that the cracking of the passwords is more of a possibility rather than an eventuality. – Greenonline Jan 8 '15 at 9:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.