密码散列算法
password_get_info
<?php
var_dump(password_get_info('$2y$10$tKnPX1LU2PvRVZSFIz2i/.xv0NDhVI0d/OXTGW9whNcjk8F6rZJlS'));
var_dump(password_get_info('$2y$10$KQ0EO1QHPgiR8Obw8JBaSum4d9qo/9uwoEbEWM83xkyoIcj2nxLHi'));
var_dump(password_get_info('$2y$12$ZUQseXv6fia8aRIkekmjHOnBIUTmGqz2PsKRor2/h0TJxeFF9Hv7u'));
var_dump(password_get_info('$argon2i$v=19$m=65536,t=4,p=1$dGlUUTZ5Sndpb05GVDRUZg$ZYowa5FSPxSlZJaiRoc09gGZCnHCETtxCvCbv567Pbc'));
password_hash
<?php
var_dump(password_hash('password', PASSWORD_DEFAULT));
var_dump(password_hash('password', PASSWORD_BCRYPT));
var_dump(password_hash('password', PASSWORD_BCRYPT, ['cost' => 12]));
var_dump(password_hash('password', PASSWORD_ARGON2I));
password_needs_rehash
<?php
var_dump(password_needs_rehash('$2y$10$tKnPX1LU2PvRVZSFIz2i/.xv0NDhVI0d/OXTGW9whNcjk8F6rZJlS', PASSWORD_DEFAULT));
var_dump(password_needs_rehash('$2y$10$KQ0EO1QHPgiR8Obw8JBaSum4d9qo/9uwoEbEWM83xkyoIcj2nxLHi', PASSWORD_BCRYPT));
var_dump(password_needs_rehash('$2y$12$ZUQseXv6fia8aRIkekmjHOnBIUTmGqz2PsKRor2/h0TJxeFF9Hv7u', PASSWORD_BCRYPT, ['cost' => 12]));
var_dump(password_needs_rehash('$argon2i$v=19$m=65536,t=4,p=1$dGlUUTZ5Sndpb05GVDRUZg$ZYowa5FSPxSlZJaiRoc09gGZCnHCETtxCvCbv567Pbc', PASSWORD_ARGON2I));
password_verify
<?php
var_dump(password_verify('password', '$2y$10$tKnPX1LU2PvRVZSFIz2i/.xv0NDhVI0d/OXTGW9whNcjk8F6rZJlS'));
var_dump(password_verify('password', '$2y$10$KQ0EO1QHPgiR8Obw8JBaSum4d9qo/9uwoEbEWM83xkyoIcj2nxLHi'));
var_dump(password_verify('password', '$2y$12$ZUQseXv6fia8aRIkekmjHOnBIUTmGqz2PsKRor2/h0TJxeFF9Hv7u'));
var_dump(password_verify('password', '$argon2i$v=19$m=65536,t=4,p=1$dGlUUTZ5Sndpb05GVDRUZg$ZYowa5FSPxSlZJaiRoc09gGZCnHCETtxCvCbv567Pbc'));