News for hackers. Stuff that matters.
Re:Slack was hacked by JimmaDaRustla on Friday March 27, 2015 @02:37PM (#9278230)
Excuse my ignorance, but you probably shouldn't be able to reverse an irreversible hash.
Re:Slack was hacked by worklogin on Friday March 27, 2015 @04:12PM (#9278718)
The point of hashing passwords is that the true password is not revealable.

The point of salting password hashes is to prevent identical cleartext passwords from being stored as identical hashes in the database. Salts are often stored in the database, as well.

The point of peppering keeps a database dump from being at all useful for recovering passwords. It make sure that a component of the process of cleartext -> DB entry is not even in the database, requiring something from the app as well.

Why does encryption work here? Because you've already done a one way function on the cleartext -> salted hash. At that point, there is still no way to reverse the process all the way to get the cleartext. By using a two-way encryption function for the pepper portion, you keep the ability to rotate 'peppers' periodically, in case it is leaked, for example.

Re:Slack was hacked by ionwake on Saturday March 28, 2015 @09:27AM (#9281420)
Thanks for the informative post
Re:Slack was hacked by spullara on Friday March 27, 2015 @02:44PM (#9278269)
The pepper is being used as an encryption key in that example rather than using hashing.
Re:Slack was hacked by JimmaDaRustla on Friday March 27, 2015 @03:00PM (#9278363)
In pacofvf's example, you are correct.

But, the original example is hashing the password. No encryption involved. So what makes anyone think that they can reverse a hash?

Re:Slack was hacked by richardlblair on Friday March 27, 2015 @03:16PM (#9278443)
The problem is that pacofvf's answer assumes you don't need to do this retroactively.

This would work if you were building a new system today, but if you had a DB full of one way hashes you're not going to be able to retroactively modify the pepper.

Re:Slack was hacked by richardlblair on Friday March 27, 2015 @03:20PM (#9278466)
And more importantly, slack straight up stated they salt the password and use bcrypt. It's all one way hashes, no encrypting/decrypting going on.
Re:Slack was hacked by typedweb on Friday March 27, 2015 @02:44PM (#9278266)
It's reversing the encryption, not the hash.
Re:Slack was hacked by JimmaDaRustla on Friday March 27, 2015 @03:03PM (#9278380)
Where in the original example was encryption involved? The salt and pepper were only ever used in a hashing algorithm.
Re:Slack was hacked by typedweb on Friday March 27, 2015 @10:53PM (#9280302)
The pepper is the key to the encryption, not a hashing algorithm.
Re:Slack was hacked by JimmaDaRustla on Monday March 30, 2015 @10:08AM (#9289561)
Thanks for just ignoring my question - THERE IS NO ENCRYPTION IN THE ORIGINAL ARTICLE, so WHY are you restating that encryption is involved at all?

Straight from the original artical:

  hashed_password = scrypt(password, salt + pepper)
or

  hashed_password = scrypt(scrypt(password, salt),pepper)
Absolutely zero encryption going on here. Therefore, no ability to "decrypt" the pepper result. The pepper IS NOT a key for encryption. Period.