일반 암호로 WordPress 해시 암호 확인
WordPress 사이트 데이터베이스 테이블 'users'에서 사용자 로그인 자격 증명을 가져올 외부 응용 프로그램을 만들고 있습니다.
WordPress는 PHP 해시를 사용합니다. 데이터베이스 테이블에서 외부 응용 프로그램의 사용자 이름과 암호를 암호로 유효성 검사할 수 없습니다.'users'
해쉬드
해시 암호를 사용하여 일반 암호를 확인하려고 합니다.wp_check_password
기능이 실패하고 있습니다. 이 코드로 다시 쓰는 것은 없습니다.
<?php
$password = '965521425';
$hash = '$P$9jWFhEPMfI.KPByiNO9IyUzSTG7EZK0';
require_once('/home/nhtsoft/public_html/project/wp-includes/class-phpass.php');
function wp_check_password($password, $hash) {
global $wp_hasher;
if ( empty($wp_hasher) ) {
$wp_hasher = new PasswordHash(8, true);
}
$check = $wp_hasher->CheckPassword($password, $hash);
return apply_filters('check_password', $check, $password, $hash);
}
?>
이 코드는 내게 빈 페이지를 주고 있습니다.
이 WordPress 자격 증명을 외부 앱 로그인에 사용하려면 이 암호를 확인하는 방법은 무엇입니까?
잘못된 해시 값을 전달했습니다. 965521425의 해시 값은 $P$BmI5G입니다.LOOEx1iH.naNqVhnSh5sMp31 이며 아래 코드를 파일에 쓰면 됩니다.
require_once($_SERVER['DOCUMENT_ROOT']."/wp-load.php");
$password = '965521425';
$hash = '$P$BmI5G.LOoEx1iH.naNqVhWnSh5sMp31';
var_dump(wp_check_password($password, $hash));
exit;
코드에 wp 라이브러리가 포함되어 있고 이름이 붙은 함수를 재정의한 것처럼 보입니다.wp_check_password
함수를 전혀 호출하지 않습니다.닫기 php 태그 앞에 다음 행을 추가합니다("?).>)를 선택한 후 다시 시도합니다.
echo (wp_check_password($password, $hash) ? 'TRUE' : 'FALSE');
일부 의존 관계를 놓치는 경우를 대비하여 오류 로그를 주시하십시오.
나는 그냥 이것을 할 것입니다.<?php wp_check_password( $password, $hash, $user_id ) ?>
참조하다
$password_hashed = '$P$Bgf2Hpr5pOVOYAvQZUhUZeLIi/QuPr1';
$plain_password = '123456';
if ((wp_check_password($plain_password, $password_hashed)) == 1) {
echo "YES, Matched";
} else {
echo "No, Wrong Password";
}
이거 먹어봐요
저는 일을 잘 합니다.
require_once( ABSPATH . WPINC . '/class-phpass.php');
$wp_hasher = new PasswordHash(8, TRUE);
$plain_password = trim($_POST['pass_current']); //user type password
$user = get_user_by('id', get_current_user_id());
$password_hashed = $user->user_pass;
if($wp_hasher->CheckPassword($plain_password, $password_hashed)) {
echo "YES, Matched";
}else{
echo "No, Wrong Password";
}
Bhumi Shah가 쓴 것은 당신이 추가해야 할 정확한 것입니다.
require_once($_SERVER['DOCUMENT_ROOT']."/wp-load.php");
당신 코드대로.
그러나 모든 암호(숫자 또는 텍스트)에 대한 해시 값은 하나의 견고한 것이 아닙니다. 많은 것이 있을 수 있기 때문에 wp_check_password와만 비교할 수 있습니다.
언급URL : https://stackoverflow.com/questions/19677563/check-wordpress-hashed-password-with-plain-password
'bestsource' 카테고리의 다른 글
Git - 로컬에서 일부 파일을 삭제했습니다. 원격 저장소에서 파일을 가져오려면 어떻게 해야 합니까? (0) | 2023.10.21 |
---|---|
워드프레스 커스텀 필드 입력 텍스트를 qTranslate X로 번역 가능하게 만드는 방법은? (0) | 2023.10.21 |
AngularJS 재스민 테스트 실패: 모듈을 인스턴스화하지 못했습니다. (0) | 2023.10.16 |
XML 스키마(XSD) 검증 도구? (0) | 2023.10.16 |
페이지를 다시 로드한 후 트위터 부트스트랩으로 현재 탭을 활성화하려면 어떻게 해야 합니까? (0) | 2023.10.16 |