Make_MySQL_pass - php로 구현한 MySQL의 old_password함수 > 기술자료 | 해피정닷컴

Make_MySQL_pass - php로 구현한 MySQL의 old_password함수 > 기술자료

본문 바로가기

사이트 내 전체검색

Make_MySQL_pass - php로 구현한 MySQL의 old_password함수 > 기술자료

PHP Make_MySQL_pass - php로 구현한 MySQL의 old_password함수

페이지 정보


본문

PHP로 구현한 MySQL의 old_password() 함수 입니다.


<?php
/*
제작자이름 : 송택윤
관련사이트 : http://pia.cc
*/
// 문자열을 mysql password함수를 이용하여 암호화 한다.
if (!function_exists("get_password_str"))
{
  function get_password_str($pass)
  {
  // mysql 4.1.0 부터 passowrd 함수의 값이 무작위로 변경되어
  // 기존 password 함수와 동일한 알고리즘의 코드로 바뀌었다.
    $nr = 1345345333;
    $add = 7;
    $nr2 = 0x12345671;
    $size = strlen($pass);
    for($i=0;$i<$size;$i++)
    {
      if($pass[$i] == ' ' || $pass[$i] == '\t') continue;  // skipp space in password
      $tmp = ord($pass[$i]);
      $nr ^= ((($nr & 63)+$add)*$tmp) + ($nr << 8);
      $nr2 += ($nr2 << 8) ^ $nr;
      $add += $tmp;
    }
    $result1=$nr & ((1 << 31) -1); // Don't use sign bit (str2int)
    $result2=$nr2 & ((1 << 31) -1);
    $result = sprintf("%08x%08x",$result1,$result2);
    return $result;

    global $dbcon;
    // mysql 4.1 부터 password 함수가 old_password 로바뀌었다.
    $rs = query("SELECT old_password('$pass')",$dbcon);
    $tmp=mysql_fetch_row ($rs);
    mysql_free_result($rs);
    return $tmp[0];
  }
}
?>


사용법
<?php
$pass = "000";
$mysql_passwd = get_password_str($pass);
echo "000 = 77eecc750f0e0c90 = ". $mysql_passwd ."<br>";
?>


관련사이트
http://libphp.com/main/data/view.php?no=18
http://rgboard.com/rgboard/view.php?&bbs_id=bug&doc_num=226

댓글목록

등록된 댓글이 없습니다.


Total 2,641건 89 페이지
  • RSS
기술자료 목록
881
일반   21397  2010-03-21 11:50 ~ 2013-11-14 00:00  
880
ClassicASP   16925  2010-03-20 23:58 ~ 2011-10-11 00:00  
열람
PHP   19309  2010-03-18 22:00 ~ 2016-03-17 00:00  
878
ClassicASP   16873  2010-03-18 02:38 ~ 2015-05-28 00:00  
877
ClassicASP   17983  2010-03-17 14:27 ~ 2016-08-31 00:00  
876
그누보드   15081  2010-03-17 00:14 ~ 2017-02-24 00:00  
875
PHP   20705  2010-03-16 22:11 ~ 2020-02-08 11:51  
874
그누보드   11057  2010-03-12 20:56  
873
그누보드   14154  2010-03-12 20:39  
872
그누보드   11212  2010-03-12 19:14  
871
그누보드   12421  2010-03-12 16:51  
870
영카트   14226  2010-03-12 13:18  
869
제로보드   18449  2010-03-09 21:40  
868
Linux   20060  2010-03-08 20:43  
867
PHP   25896  2010-03-08 19:42 ~ 2010-03-08 00:00  
866
영카트   13651  2010-03-08 15:40  
865
영카트   12928  2010-02-27 23:27  
864
영카트   10640  2010-02-27 22:24  
863
영카트   11354  2010-02-23 18:47  
862
영카트   12575  2010-02-18 23:41  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.