디비이전으로 인한 암호화 변경 문제 mysql password() → md5

디비이전으로 인한 암호화 변경 문제 mysql password() → md5

QA

디비이전으로 인한 암호화 변경 문제 mysql password() → md5

본문

mssql 의 디비를 그누보드5로 이전을 할려고 합니다

기존비번들이 모두 md5로 암호화가 되어 있어서, 이전할 그누보드 암호화 방식을

mysql password() 가 아닌 md5 로 변경해서 사용을 할려고 합니다

register_form_update.php 에서

get_encrypt_string($mb_password) 를 md5($mb_password) 로 변경하니 mysql에는

md5로 변경해서 들어가는건 확인했습니다

 

로그인 부분은 어디서 변경을 해야하나요?

login_check.php 에서 변경하는거 같긴한데, 어느부분을 어떻게 해야하는지 잘 모르겠어서 질문드립니다

 

이 질문에 댓글 쓰기 :

답변 4

그누보드5 5.0.33 이후 버전부터는 암호화 함수를 사용자가 지정할 수 있습니다.

config.php 파일의 G5_STRING_ENCRYPT_FUNCTION 상수 값을 sql_password 에서

md5 로 변경하시면 추가적인 수정없이 md5 로 사용할 수 있습니다.

/common.lib.php 파일의


function sql_password($value)
{
    // mysql 4.0x 이하 버전에서는 password() 함수의 결과가 16bytes
    // mysql 4.1x 이상 버전에서는 password() 함수의 결과가 41bytes
    $row = sql_fetch(" select password('$value') as pass ");
    return $row['pass'];
}

요 부분을 수정하면 될 것 같습니다. 

bbs/login_check.php 파일에서 ....

 

// md5 패스워드 적용 완료 버전

if (!$mb[mb_id] || 

    (   (sql_password($mb_password) != $mb[mb_password]) && 

        (md5($mb_password) != $mb[mb_password]))) {

    alert("가입된 회원이 아니거나 패스워드가 틀립니다.\\n\\n패스워드는 대소문자를 구분합니다.");

}

 

if( (md5($mb_password) == $mb[mb_password])){

    $mb[mb_password] = sql_password($mb_password);

}

위와 같이 혹은 약간의 수정을 하시면 사용가능하실 듯 합니다. 저같은 경우 위와같이 사용하고 있습니다. 

 

config.php 파일의 G5_STRING_ENCRYPT_FUNCTION 상수 값을 sql_password 에서

md5 로 변경하면 추가적인 수정없이 md5 로 사용할 수 있는 걸 확인했습니다.

다만 처음 설치후 관리자 비번은 sql_password 로 들어가기 때문에 디비에서 md5 값으로 변경해주면

정상적으로 사용이 가능했습니다 

답변을 작성하시기 전에 로그인 해주세요.
전체 0 | RSS
QA 내용 검색
  • 개별 목록 구성 제목 답변작성자조회작성일
  • 질문이 없습니다.

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT