PHP & Others

Mysql PASSWORD(), olo_password() PHP 함수

컨텐츠 정보

본문

function mysqlPassword($pw) {

   //SELECT CONCAT('*', UPPER(SHA1(UNHEX(SHA1('$pw'))))); //sql 이용

    return '*'.strtoupper(sha1(sha1($pw, true)));    

}


function old_password($password) {

    if ($password == '')

        return '';

 

    $nr = 1345345333;

    $add = 7;

    $nr2 = 0x12345671;

    foreach(str_split($password) as $c) {

        if ($c == ' ' or $c == "\t")

            continue;

        $tmp = ord($c);

        $nr ^= ((($nr & 63) + $add) * $tmp) + (($nr << 8) & 0xFFFFFFFF);

        $nr2 += (($nr2 << 8) & 0xFFFFFFFF) ^ $nr;

        $add += $tmp;

    }

 

    if ($nr2 > PHP_INT_MAX)

        $nr2 += PHP_INT_MAX + 1;

 

    $bit = (1 << 31) -1;

 

    return sprintf("%08lx%08lx", $nr & $bit, $nr2 & $bit);

}

관련자료

댓글 0
등록된 댓글이 없습니다.
Today's proverb
나는 단지 한 사람의 인간에 불과하다. 그렇더라도 나는 어디까지나 인간이다. 나는 모든 것을 다 할 수는 없다. 그렇더라도 나는 어떤 것은 할 수 있다. 그리고 모든 것을 다 할 수 없다고 해서 내가 할 수 있는 어떤 것까지 포기하지는 않을 것이다. (에드워드 에버렛 해일)