0

I was working on the new membership project. And when I looking at the database design there is a password_salt field , which is VARCHAR(20). In my previous project I just encrypt the password with md5, it is not secure .

 $save['password'] = md5($this->input->post('password'));

I found some code to generate a salt , it seems to be just generate a random string, but what is the suitable size, is it sufficient to use VARCHAR(20)?

protected function _create_salt()
{
    $this->CI->load->helper('string');
    return sha1(random_string('alnum', 20));
} 

Also, It would be highly appreciate if there is code example of

1) using salt to validate
2) using salt to hash the password so that it can save to database

Thanks.

user782104
  • 13,233
  • 55
  • 172
  • 312

0 Answers0