[제나플러스] [펌]패스워드 41bite 버전에서 16bite 버전으로 옮겨야할 경우. > 팁앤테크

본문 바로가기
사이트 내 전체검색

팁앤테크

[제나플러스] [펌]패스워드 41bite 버전에서 16bite 버전으로 옮겨야할 경우.

페이지 정보

본문

패스워드 41bite 버전에서 16bite 버전으로 옮겨야할 경우.

기존홈피가 41bite 암호방식을 하는 DB를 사이트 이전의 이유로 16bite 버전으로 옮겨야할 경우.

mysql 버전이 4.1이상인데도 구버전을 사용하는 경우가 있을 수 있습니다.

아마도 새로운 41bite방식을 사용하지 않고 구 16bite방식을 계속 사용하기 위해 옵션을 조절한 경우일텐데요.

일부러 이렇게 사용하는 이유는 .. 뭔 사정이 있겠지만..

암튼 구버전으로 구동되기 때문에 로그인, 정보수정 등에서 비번 정보를 물어오는데요.

이때 옮기기전 서버에서 신버전을 사용하기 때문에 일반적으로는 로그인이 되지 않습니다.

버전별 암호화 방식이 다르기 때문에 다른 문자로 인식해서 입니다.

이럴때는 구버전과 신버전의 암호를 비교하여 신버전 암호가 맞으면 암호를 구버전으로 업데이트

하라는 방식이로 구현할 수 있습니다.

좀전에 있던 것과 정반대로 하는 방식입니다.

http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=21757

위의 방식이 맞는 줄 알고 했다가 다시 로그인해보니 안되어서 다시

한 2시간 해메이다. 풀었습니다.



이럴때는 sql_query("set old_passwords=OFF"); <= 요놈을 적절하게 사용하여 설정을 잡아 줘야한다는 것이었습니다.


./lib/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];
}


=========== 를 아래와 같이 변경 ============

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

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





그리고

./bbs/login.check.php 에서


if (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password])) {

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

=============를 아래와 같이 변경 =================

if (sql_old_password($mb_password) == $mb[mb_password]) { // 옛날 패스워드를 새로운 패스워드로 바꿉니다.
    $sql = " update $g4[member_table] set mb_password='" . sql_password($mb_password) . "' where mb_id='$mb_id' ";
    sql_query($sql);

} elseif (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password])) {

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


해주시면

로그인하는 회원들의 비밀번호가 로그인 할 때 41bite 버전에서 16bite 버전으로 자동으로 바뀌게 되어
구번전으로 변경되게 됩니다.
추천0

댓글목록

등록된 댓글이 없습니다.

Total 825건 9 페이지
  • RSS
팁앤테크 목록
번호 제목 글쓴이 조회 추천 날짜
625 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 13559 0 07-13
624 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 15471 0 12-23
623 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 13974 0 12-11
622 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 14029 0 04-16
621 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 16813 0 09-21
620 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 14482 0 10-23
619 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 12640 0 11-12
618 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 12647 0 11-13
617 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 15390 0 11-24
616 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 16187 0 11-25
615 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 12079 0 02-17
614 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 19792 0 03-05
613 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 15923 0 04-21
612 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 11555 0 10-05
611 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 13416 0 07-21
610 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 14576 0 10-16
609 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 16443 0 10-16
608 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 25284 0 11-27
607 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 37040 0 11-29
606 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 12428 0 12-08
605 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 13178 0 12-09
604 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 12755 0 12-09
603 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 12517 0 12-14
602 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 15387 0 12-14
601 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 11940 0 12-15

검색

회원로그인

회원가입

사이트 정보

株式会社YHPLUS / 대표 : ZERO
〒140-0011 東京都品川区東大井2-5-9-203
050-5539-7787
오픈카카오톡 (YHPLUS) :
https://open.kakao.com/o/slfDj15d

접속자집계

오늘
3,698
어제
4,659
최대
7,259
전체
1,277,782
Copyright (c) 株式会社YHPLUS. All rights reserved.