1,867 reputation
1714
bio website martinstoeckli.ch
location Switzerland
age 42
visits member for 3 years, 3 months
seen yesterday

I belong to the lucky people, who can combine job and hobby, in my case writing software. Coming from the Delphi world, i'm working now mostly with CSharp and use PHP for my spare time project, an internet lost-and-found office.


Jun
9
answered How secure is it to keep the salt with the password hash?
May
22
comment Please help verify my understanding of Domain Validation (DV) SSL Certificate
@Pacerier - The prices vary very much and are dependend of your country. I can only speak for switzerland, there you can buy a domain validated certificate for about 50$ per year, and you get an ev certificate for 300-1200$ per year.
May
11
awarded  Nice Answer
May
11
comment Store password using sha1
@LoganWayne - I assume that your question targets the password_hash() function. Yes you can either use no parameters, or a cost factor alone, it is not a good idea to pass a salt though, because the function already generates a safe one. Added an example in the answer.
May
11
revised Store password using sha1
Added an example with cost factor
May
11
comment Store password using sha1
@LoganWayne - Yes that is what i would recommend, it is implemented in fast native code in PHP 5.5 and later, but there also exists a compatibility pack for earlier versions.
May
11
comment Store password using sha1
@LoganWayne - I would suggest to use the password_hash() function instead, it generates a BCrypt hash which is difficult to use on GPUs. And btw. it is also much easier, it takes care of generating a safe salt and is future proof.
May
11
revised Store password using sha1
added 1 character in body
May
11
answered Store password using sha1
Apr
27
comment Should password reset tokens be hashed when stored in a database?
@IanWarburton - I do not have a facebook account, so i cannot verify how they solved the password reset function.
Apr
27
comment Should password reset tokens be hashed when stored in a database?
@IanWarburton - A six digit number has not nearly enough entropy to be used as a token, so it is not safe to store its hash in the database. A salt won't help neither, because the salt is known and a million possibilities can be brute-forced in a fraction of a second. If you take the code as a password, you would have to use a slow salted key-derivation function at least.
Apr
27
comment Should password reset tokens be hashed when stored in a database?
@IanWarburton - No, hashing is a one-way operation and doesn't need a secret key. You probably think of an encryption algorithm which needs a key to decrypt the string. You could have a look at my tutorial about safely storing passwords to get more in-depth information.
Apr
27
comment Should password reset tokens be hashed when stored in a database?
If an attacker has read access to the database (SQL-injection), he could request a reset for any account he wants, even for admin accounts. Because he can see the new generated token, he could take over this account.
Apr
26
comment Should password reset tokens be hashed when stored in a database?
@IanWarburton - If your token has enough entropy, lets say 20 random characters 0-9 a-z A-Z, then you can calculate an unsalted fast hash (e.g. SHA-256 or SHA-512) and store it. This is safe, because it is not possible to successfully brute-force such strong "passwords". Salting is done, because passwords choosen by people are often relatively weak, because they have to be remembered.
Mar
19
comment Is it possible to perform a MITM attack with a smartphone?
Moxie Marlinspike demonstrated something similar with his notebook, and people did connect to his hotspot, see the SSL-strip demo.
Mar
11
awarded  Yearling
Mar
8
comment Why do major sites(Facebook, Google, etc) still send passwords unhashed?
@RobW - This is good news, thanks for the info. It seems that key derivation functions are not widely supported yet, but anyway it looks promising.
Mar
4
comment Why do major sites(Facebook, Google, etc) still send passwords unhashed?
@Eckster - There is no reason this cannot be done on optimized hardware. Wellknown password cracker tools like hashcat support brute-forcing SHA* on GPUs, not to mention dedicated NSA hardware.
Mar
4
comment Why do major sites(Facebook, Google, etc) still send passwords unhashed?
@Eckster - I doubt it, because this is a race between a relatively slow interpreted script language, and optimized hardware like GPUs or even dedicated hardware, which can do calculations parallel.
Mar
4
answered Why do major sites(Facebook, Google, etc) still send passwords unhashed?