상세 컨텐츠

본문 제목

[PHP] 암호화

php

by 2hansoul 2021. 9. 7. 19:11

본문

반응형

$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을 암호화합니다.

<!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <title>PHP</title> <style> body { font-family: Consolas, monospace; } </style> </head> <body> <h1>password_hash</h1> <?php $password = '123'; $encrypted_password = password_hash( $password, PASSWORD_DEFAULT); echo '<p>password : ' . $password . '<br />encrypted_password ' . $encrypted_password . '</p>'; ?> </body> </html>

예제 2

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

<!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <title>PHP</title> <style> body { font-family: Consolas, monospace; } </style> </head> <body> <h1>password_hash</h1> <?php $password = '123'; $encrypted_password = password_hash( $password, PASSWORD_DEFAULT); echo '<p>password : ' . $password . '<br />encrypted_password ' . $encrypted_password . '</p>'; $encrypted_password = password_hash( $password, PASSWORD_DEFAULT); echo '<p>password : ' . $password . '<br />encrypted_password ' . $encrypted_password . '</p>'; $encrypted_password = password_hash( $password, PASSWORD_DEFAULT); echo '<p>password : ' . $password . '<br />encrypted_password ' . $encrypted_password . '</p>'; ?> </body> </html>

반응형

관련글 더보기

댓글 영역