crypt.phpt 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. --TEST--
  2. crypt() function
  3. --SKIPIF--
  4. <?php
  5. if (!function_exists('crypt')) {
  6. die("SKIP crypt() is not available");
  7. }
  8. ?>
  9. --FILE--
  10. <?php
  11. $str = 'rasmuslerdorf';
  12. $salt1 = 'rl';
  13. $res_1 = 'rl.3StKT.4T8M';
  14. $salt2 = '_J9..rasm';
  15. $res_2 = '_J9..rasmBYk8r9AiWNc';
  16. $salt3 = '$1$rasmusle$';
  17. $res_3 = '$1$rasmusle$rISCgZzpwk3UhDidwXvin0';
  18. $salt4 = '$2a$07$rasmuslerd............';
  19. $res_4 = '$2a$07$rasmuslerd............nIdrcHdxcUxWomQX9j6kvERCFjTg7Ra';
  20. echo (CRYPT_STD_DES) ? ((crypt($str, $salt1) === $res_1) ? 'STD' : 'STD - ERROR') : 'STD', "\n";
  21. echo (CRYPT_EXT_DES) ? ((crypt($str, $salt2) === $res_2) ? 'EXT' : 'EXT - ERROR') : 'EXT', "\n";
  22. echo (CRYPT_MD5) ? ((crypt($str, $salt3) === $res_3) ? 'MD5' : 'MD5 - ERROR') : 'MD5', "\n";
  23. echo (CRYPT_BLOWFISH) ? ((crypt($str, $salt4) === $res_4) ? 'BLO' : 'BLO - ERROR') : 'BLO', "\n";
  24. var_dump(crypt($str));
  25. var_dump(crypt());
  26. var_dump(crypt("", "", ""));
  27. ?>
  28. --EXPECTF--
  29. STD
  30. EXT
  31. MD5
  32. BLO
  33. Notice: crypt(): No salt parameter was specified. You must use a randomly generated salt and a strong hash function to produce a secure hash. in %s on line %d
  34. string(%d) "%s"
  35. Warning: crypt() expects at least 1 parameter, 0 given in %s on line %d
  36. NULL
  37. Warning: crypt() expects at most 2 parameters, 3 given in %s on line %d
  38. NULL