PHP / 함수 / password_hash() / 비밀번호 암호화하는 함수

개요

password_hash()는 비밀번호를 암호화해주는 함수입니다. 입력한 값이 암호화된 비밀번호와 맞는지 확인하는 것은 password_verify() 함수로 합니다.

문법

$password

암호화할 문자열입니다.

$algo

암호화 알고리즘을 정합니다.

  • PASSWORD_DEFAULT : bcrypt 알고리즘을 사용합니다.
  • PASSWORD_BCRYPT : CRYPT_BLOWFISH 알고리즘을 사용합니다.
  • PASSWORD_ARGON2I : Argon2i hashing 알고리즘을 사용합니다. PHP를 Argon2를 사용할 수 있도록 설치한 경우에 사용 가능합니다.
  • PASSWORD_ARGON2ID : Argon2id hashing 알고리즘을 사용합니다. PHP를 Argon2를 사용할 수 있도록 설치한 경우에 사용 가능합니다.

$options

알고리즘을 PASSWORD_BCRYPT로 정했을 때 사용 가능한 옵션은 다음과 같습니다.

  • salt (string)
  • cost (integer)

알고리즘을 PASSWORD_ARGON2I 또는 PASSWORD_ARGON2ID로 정했을 때 사용 가능한 옵션은 다음과 같습니다.

  • memory_cost (integer)
  • time_cost (integer)
  • threads (integer)

예제 1

문자열 123을 암호화합니다.

예제 2

같은 문자열을 암호화해도, 암호화할 때마다 다른 문자열이 생성됩니다.

PHP 강좌