Upgrade to Pro — share decks privately, control downloads, hide ads and more …

password_hash に詳しくなりたい - PHPオレカンファレンス

password_hash に詳しくなりたい - PHPオレカンファレンス

akatsuka

July 19, 2024
Tweet

More Decks by akatsuka

Other Decks in Programming

Transcript

  1. 14 / 23 PHP でのパスワードハッシュ password_hash でハッシュ化 password_verify で検証 以上!簡単!

    $password = "my_password"; $hash = password_hash($password, PASSWORD_BCRYPT); // $2y$10$vN1BBXwK.IWTrkRcRG2tLu67FPkpF2lLrf0By5rdzwa3NdzEgiBQi $password = "my_password"; $hash_from_db = '$2y$10$vN1BBXwK.IWTrkRcRG2tLu67FPkpF2lLrf0By5rdzwa3NdzEgiBQi' if (password_verify($password, $hash_from_db)) { echo 'Password is valid!'; } else { echo 'Invalid password.'; }
  2. 21 / 23 デモ!(crypt とpassword_hash ) salt が同じならちゃんと同じハッシュ値になるのか password_hash は毎回ランダムなsalt

    を生成するので検証がしづらい https://php-play.dev/? c=DwfgDgFmBQD0sAJCLDIToZD3DIH4ZCTDNAJGAQwGciB3AewCcATBAXgQCI ABUASiERBCICABsdWUBeo0AvxTx8oociNlUiHUoPVz8Adj8AJg7s4XgETW1ipWVA AHJcDuZcAEYABlwNhAA6BFwqnR7oAFN1CHImNZoFuwAuJjOL12--AAl- JwAKIRAAyQnujyYywQcPhcM%2BjG%2Bsy081%2B5wBQNBEN6iEmJkAMgyAADlA xk8oQ1CeGulCAAtgQdA99QFDTjTdAQAA%2BaBAA&v=8.3&f=console